單片機c語言范文

時間:2023-03-17 00:51:48

導語:如何才能寫好一篇單片機c語言,這就需要搜集整理更多的資料和文獻,歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。

單片機c語言

篇1

Abstract: Combining 8051, the paper introduces the advantages of C-language and the programming design of C-language's relization of MCU digital blink. Though 8051 could embed assembly code at C-language programming, the complicity is obviously improved. The practice proves that if we use C-language resonablely, the equal precision with assembler language could be got at practice.

關(guān)鍵詞:單片機;C語言;應(yīng)用

Key words: MCU; C-language; application

中圖分類號:TP31 文獻標識碼:A文章編號:1006-4311(2010)36-0146-01

1問題的提出

將C向MCU(俗稱單片機)8051上的移植始于20世紀80年代的中后期??陀^上講,C向8051 MCU移植的難點不少。經(jīng)過Keil/Franklin、Archmeades、IAR、BSO/Tasking等公司艱若不懈的努力,終于于20世紀90年代開始而趨成熟,成為專業(yè)化的MCU高級語言了。過去長期困擾人們的所謂“高級語言產(chǎn)生代碼太長,運行速度太慢,因此不適合單片機使用”的致使缺點已被大幅度地克服。

2單片機C語言的優(yōu)越性

2.1 不懂得單片機的指令集,也能夠編寫完美的單片機程序;

2.2 無須懂得單片機的具體硬件,也能夠編出符合硬件實際的專業(yè)水平的程序;

2.3 不同函數(shù)的數(shù)據(jù)實行覆蓋,有效利用片上有限的RAM空間;

2.4 程序具有堅固性:數(shù)據(jù)被破壞是導致程序運行異常的重要因素。C語言對數(shù)據(jù)進行了許多專業(yè)性的處理,避免了運行中間非異步的破壞;

2.5 C語言提供復(fù)雜的數(shù)據(jù)類型(數(shù)組、結(jié)構(gòu)、聯(lián)合、枚舉、指針等),極大地增強了程序處理能力和靈活性;

2.6 提供auto、static、const等存儲類型和專門針對8051單片機的data、idata、pdata、xdata、code等存儲類型,自動為變量合理地分配地址;

2.7 提供small、compact、large等編譯模式,以適應(yīng)片上存儲器的大?。?/p>

2.8 中斷服務(wù)程序的現(xiàn)場保護和恢復(fù),中斷向量表的填寫,是直接與單片機相關(guān)的,都由C編譯器代辦;

2.9 提供常用的標準函數(shù)庫,以供用戶直接使用;

2.10 頭文件中定義宏、說明復(fù)雜數(shù)據(jù)類型和函數(shù)原型,有利于程序的移植和支持單片機的系列化產(chǎn)品的開發(fā);

2.11 有嚴格的句法檢查,錯誤很少,可容易地在高級語言的水平上迅速地被排掉;

2.12 可方便地接受多種實用程序的服務(wù):如片上資源的初始化有專門的實用程序自動生成。

3應(yīng)用案例:C語言實現(xiàn)單片機數(shù)碼管閃爍

本應(yīng)用案例中(/*此函數(shù)主要是C語言實現(xiàn)單片機數(shù)碼管閃爍功能。效果:1――數(shù)碼管顯示0123;2――停頓;3――數(shù)碼管顯示4567;4――無窮循環(huán)1,2,3步。*/),程序為:

#include

#include

unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, 0xff}; //定義數(shù)組

int delay(int x)//聲明延遲函數(shù)

{

int j=0;

for(j;j

}

main() //主函數(shù)

{

int i,j;//定義i,j

unsigned char seg;//定義seg,用于數(shù)碼管的初始化

seg= 0xfe ;//定義seg為0xfe,即11111110;使數(shù)碼管為第一個顯示

while (1)//無窮循環(huán)

{

{ for(j=0;j

{

for(i=0;i

{

P2=seg;//初始化P2

P0=dis_code[i]; //顯示數(shù)字

delay(200);//延遲約1ms

seg=_crol_(seg,1);//數(shù)碼管右移一位

if (seg==0xef) seg=0xfe; //輸出四個數(shù)字之后停止

}

}

P2=0xff;//數(shù)碼管全不接通,把0,1,2,3消去

delay(2000000); //延遲

for(j=0;j

{

for(i=4;i

{

P2=seg; //初始化P2

P0=dis_code[i]; //顯示數(shù)字

delay(200);//延遲約1ms

seg=_crol_(seg,1);//數(shù)碼管右移一位

if (seg==0xef) seg=0xfe;//輸出四個數(shù)字之后停止

}

}

}

}

}//函數(shù)結(jié)束

篇2

關(guān)鍵詞:Protues; 密碼鎖; 單片機; C語言

中圖分類號:TN433-34文獻標識碼:A

文章編號:1004-373X(2010)19-0176-03

Design and Simulation of Electronic Code Lock Using STC89C52 MCU Based on C Language

JIN Gui, XIANG Guo-liang

(Department of Physics & Electronic Information Engineering, Xiangnan University, Chenzhou 423000, China)

Abstract: The implementation of an electronic code lock which was successfully simulated by Protues is introduced. It uses high reliable microcontroller STC89C52 to achieve the unlocking and identification of the code, adopts I2C bus-based E2PROM chip to complete the code′s storage, uses LCD1602 to prompt the program′s running state and working procedures, adopts buzzer to imitate the alarm and LED to imitate the switch. It is convenient to modify and add function by using C language program,which is more transplantable and reliable compared to assembly language.

Keywords: Protues; code lock; single chip microcomputer; C language

0 引 言

電子密碼鎖是現(xiàn)代生活中常用的加密工具。它克服了機械式密碼鎖密碼量少、安全性能差的缺點,尤其是微控制器的智能電子密碼鎖,不僅具有電子密碼鎖的功能,還可引入智能化管理功能,從而使密碼鎖具有更高的安全性和可靠性。

電子密碼鎖通常使用ARM和單片機控制[1],單片機相對ARM實現(xiàn)較為簡單,功能較為完善,因此使用單片機控制較多。用單片機控制的密碼鎖常使用匯編語言編寫程序,顯示器多數(shù)用數(shù)碼管[2-3]。而本文所介紹的電子密碼鎖使用移植性及可讀性強的高級語言C語言編寫,便于修改和增減功能;同時采用顯示清楚,功率消耗小而且壽命長的1602液晶顯示器,顯示更加直觀,使用更加方便。從經(jīng)濟實用的角度出發(fā), 采用STC89C52[4]單片機設(shè)計出一種具有密碼設(shè)置、報警和防止多次試探密碼功能的電子密碼鎖,通過Protues軟件成功地進行了仿真。

1 系統(tǒng)工作原理

本系統(tǒng)以STC89C52單片機為核心,使用4×4矩陣鍵盤作為數(shù)據(jù)輸入方式,驅(qū)動1602顯示器提示程序運行過程和開鎖的步驟。本系統(tǒng)的密碼判斷過程如下:

當使用者輸入6位密碼后按下BESURE鍵,單片機通過密碼逐個比較,如果輸入的6位密碼和設(shè)定的密碼完全相同,那么能成功驅(qū)動開鎖模擬燈將鎖打開。若輸入6位密碼與設(shè)定的密碼不相同,按下BESURE鍵后,模擬燈不亮,可以按BACK鍵重新輸入。由于輸入密碼過程中難免輸入失誤,如果密碼輸錯,可直接按下BACK鍵重新輸入,但是系統(tǒng)不允許無限次地按BACK鍵,以免密碼被套用,當3次密碼輸入都錯誤,單片機將驅(qū)動蜂鳴器報警[5]。并且本系統(tǒng)輸入密碼還有時間限制,若在規(guī)定的時間內(nèi)沒有將正確密碼輸入也會報警。

修改密碼功能如下:當密碼輸入正確后,按下SET鍵可新設(shè)置密碼。每設(shè)定一位新密碼,單片機將其送給E2PROM,當6位新密碼都輸入完畢,系統(tǒng)將自動回到程序開始,重新讀取密碼并保存,使用者需輸入新的密碼才能將鎖打開。

2 系統(tǒng)設(shè)計

2.1 硬件支持

使用的元器件有:核心芯片STC89C52、存儲芯片AT24C02、液晶顯示1602、矩陣鍵盤、報警蜂鳴器、獨立按鍵(模擬門的開關(guān))、發(fā)光二極管(模擬鎖的開關(guān))和┤極管(放大電流)。

2.2 軟件設(shè)計

本系統(tǒng)軟件包括主程序模塊、密碼比較判斷模塊、修改密碼模塊、鍵盤掃描模塊、液晶顯示模塊及定時程序等模塊。系統(tǒng)程序流程如圖1所示。

圖1 系統(tǒng)程序流程圖

2.2.1 主程序模塊

主程序主要用于定義全局變量,給全局變量賦初值,初始化E2PROM,啟動定時器以及從AT24C02[6]中讀取密碼,為整個程序提供數(shù)據(jù)。

2.2.2 密碼比較判斷模塊

該模塊的功能是將鍵盤輸入的密碼利用if語句與設(shè)定的密碼進行逐個比較,若密碼完全正確則開鎖;若不正確,則按下BACK鍵,重新輸入密碼,每按下BACK鍵一次,輸入次數(shù)將自加1,當3次都出錯則報警。

2.2.3 密碼修改模塊

在密碼輸入正確情況下,可以按下SET對密碼進行重新設(shè)置,每設(shè)定一位就將密碼送給AT24C02存儲起來,當設(shè)置6位密碼完畢后,系統(tǒng)將自動跳到程序開始,調(diào)用新設(shè)置的密碼。

STC89C52向AT24C02寫入密碼子程序:

void write_byte(uchar date)

{

uchar i,temp;

temp=date;

for(i=0;i

{

temp=temp

scl=0;

delay1();

sda=CY;

delay1();

scl=1;

delay1();

}

scl=0;

delay1( );

sda=1;

delay1( );

}

STC89C52從AT24C02讀取密碼子程序:

uchar read_byte()

{

uchar i,k;

scl=0;

delay1();

sda=1;

delay1();

for(i=0;i

{

scl=1;

delay1();

k=(k

scl=0;

delay1( );

}

return k;

}

2.2.4 鍵盤掃描模塊[7]

該模塊具備功能有:逐列掃描鍵盤確定被按鍵的具置、判斷鍵盤上有無鍵按下、消除去抖動、判斷閉合的鍵是否釋放等功能。

2.2.5 定時模塊[8]

本模塊用于對密碼輸入時間控制。在程序開始運行時首先對定時器進行了初始化,從按下PUT IN鍵開始,系統(tǒng)開始計時,當輸入的時間達到規(guī)定的時間將立即報警。

2.2.6 液晶顯示模塊[9]

此模塊包括液晶初始化、命令的輸入、顯示數(shù)據(jù)的輸入。其中命令是用于控制液晶狀態(tài)是否顯示光標,光標是否閃爍,是否清除原來數(shù)據(jù)以及顯示的具置。數(shù)據(jù)顯示主要是將要顯示的信息按需要準時顯示出來。

3 系統(tǒng)仿真

為了方便程序調(diào)試,本文采用了Proteus仿真[10],仿真圖如圖2所示。

圖2 系統(tǒng)仿真圖

3.1 系統(tǒng)介紹

圖2中U1為STC89C52是整個系統(tǒng)的核心,編寫的程序以二進制的文件導入其中;U2為AT24C02,┑5和第6個引腳分別與單片機的P1.2和P1.3相連;LCD1為1602液晶顯示器,引腳連接如圖2所示;獨立按鍵DOOR,當門關(guān)上為鍵按下狀態(tài);D1為模擬開鎖燈,當密碼正確,按下BESURE鍵D1將亮;BUZ1為蜂鳴器報警。當程序編寫好并導入到單片機里后,按下┩2最下面的開始按鈕,1602液晶顯示器將提示密碼鎖的運行狀態(tài),系統(tǒng)開始工作。

3.2 開鎖功能

當電源開啟時,1602液晶顯示W(wǎng)elcome歡迎界面,當按下PUT IN鍵后,顯示器顯示PUT IN CODES提示使用者輸入密碼,如圖3所示。幾秒后液晶顯示器上提示將自動消失。此時可輸入正確密碼,且密碼輸入時顯示*而不會將輸入的數(shù)據(jù)顯示出來。當輸入密碼完畢后,按下BESURE鍵,如果輸入的密碼正確D1將亮(D1作為開鎖的模擬開關(guān))。若密碼錯誤,可以按下BACK鍵,程序?qū)⑻絣oop(開始界面),重新輸入密碼,同時輸入次數(shù)將增加一次。當3次都輸入錯誤則自動報警,并且輸入密碼的時間必須在規(guī)定的時間完成,否則也會報警。

圖3 液晶顯示

3.3 密碼設(shè)定

在密碼輸入正確后,按下SET鍵可對密碼進行重新設(shè)置,液晶顯示器顯示SET CODS。同樣幾秒后提示信息將自動消失,此時開始重設(shè)密碼。在密碼設(shè)定過程中會將設(shè)定的數(shù)字顯示出來,每輸入一位密碼需按下YES鍵確定,當設(shè)置的密碼達到6位將自動回到啟動界面。

4 結(jié) 論

(1) 成功仿真實現(xiàn)了1602液晶顯示,密碼開鎖,密碼設(shè)置,防止多次試探,報警等功能。

(2) 采用C語言編寫程序,具有很強的移植性,為系統(tǒng)增減和修改功能帶來了方便。

參考文獻

[1]郭海英.基于單片機的電子安全密碼鎖的設(shè)計[J].現(xiàn)代電子技術(shù),2005,28(13):95-97.

[2]趙益丹,徐曉林,周振峰.電子密碼鎖的系統(tǒng)原理、設(shè)計程序及流程圖[J].嘉興學院學報,2003(15):103-105.

[3]曾高榮,胡寧,高揚.一種新型電子安全密碼鎖的設(shè)計[J].電子科技,2003(8):44-45.

[4]張?zhí)旆?完全手冊51單片機C語言開發(fā)詳解[M].北京:電子工業(yè)出版社,2008.

[5]周功明.基于AT89C2051單片機的防盜自動報警電子密碼鎖系統(tǒng)的設(shè)計[J].綿陽師范學院學報,2007(4):112-115.

[6]劉振棟.EPROM芯片的特殊應(yīng)用[J].電子工程師,1999(6):26-27.

[7]唐德禮,王襄.單片機學習機及編程器的設(shè)計與制作[J].現(xiàn)代電子技術(shù),2005,28(12):117-120.

[8]倪淑艷,李曉波,于涵.單片機C8051F303在數(shù)字鎖相式頻率合成器中的應(yīng)用[J].現(xiàn)代電子技術(shù),2006,29(4):19-21.

篇3

關(guān)鍵詞:單片機;溫濕度采集;串行通訊;生態(tài)監(jiān)控

中圖分類號:TP311.1 文獻標識碼:A文章編號:1007-9599 (2010) 09-0000-02

The Research of Flower Automation System Based on AT89C51 SCM

Jiang Chen,Lai Yuanzhi,Xie Heping,Zhu Tianlong

(Harbin Institute of Technology,Harbin150006,China)

Abstract:This thesis is relied on the automation of Single Chip Micyoco and related to the latest communication technology of the network.We construct a close-loop negative feedback system based on the SCM technology and provide a creative and efficient method used for the intelligent mangement of flowers. Besides,in order to attest the function of the system we conduct the experiment under the practical environment and attain the reliable data.We hope that this instrument can bring up some impressive benefits for the intelligent control and mangement of the ecology as well as supply some constructive advice for nourishing the plants

Keywords:SCM;Collection of the temperature and humidity;Serial communication;Ecology control

生態(tài)環(huán)境是人類賴以生存的根本,它是一個極其復(fù)雜的整體,因此研發(fā)一套高效、科學、智能的生態(tài)管理系統(tǒng)具有深遠意義。同時,現(xiàn)代信息技術(shù)和自動控制技術(shù)得到了飛速的發(fā)展和應(yīng)用,將網(wǎng)絡(luò)通信技術(shù)運用到工程控制中也成為一大熱點。本課題正是利用目前計算機自動控制技術(shù)以及新興的網(wǎng)絡(luò)通信技術(shù),開發(fā)一套應(yīng)用于諸如為花卉生長或儲藏環(huán)境的控制及遠程操控系統(tǒng),實現(xiàn)智能控制和調(diào)節(jié)環(huán)境因素(如溫度、濕度、光照等條件)的功能,以解決目前花卉運輸時限短、成本高的難題。

一、花卉控制系統(tǒng)的總體分析與設(shè)計

(一)花卉智能控制系統(tǒng)的總體功能

本系統(tǒng)主要由Atmel公司的AT89C51單片機作為總控下位機,通過其對環(huán)境參數(shù)的采集以及分析,完成數(shù)據(jù)處理,數(shù)據(jù)傳輸,外設(shè)控制以及安全報警等功能。系統(tǒng)主要完成以下功能:

采集環(huán)境參數(shù):通過傳感器采集周圍環(huán)境的溫度濕度,通過光敏電阻以及模數(shù)轉(zhuǎn)換芯片完成對周圍光強的采集。

接收數(shù)據(jù):由C51單片機的P0-P3口實時接受采集到的數(shù)據(jù),并進行分析,篩選合理數(shù)據(jù)。

數(shù)據(jù)傳送:通過RS232協(xié)議以及RS232總線與上位計算機進行串口通訊,進行實時數(shù)據(jù)的保存,方便查閱分析。

數(shù)據(jù)顯示:將采集到的數(shù)據(jù)分時顯示在LCD屏幕上。

安全報警:對于超過闕值的環(huán)境參數(shù),采取一定的操作進行報警。

(二)花卉智能控制系統(tǒng)的總體分析設(shè)計

系統(tǒng)整體框架如圖1-1所示。

二、花卉控制系統(tǒng)實現(xiàn)

(一)程序設(shè)計及實現(xiàn)

本系統(tǒng)程序部分采用C51語言,C51源程序結(jié)構(gòu)與一般的C語言基本一致,利用C語言開發(fā)單片機程序,具有效率高,可讀性強,可移植性強等特點。編程使用的軟件是Keil u Vision3集成開發(fā)環(huán)境,它自帶C51優(yōu)化交叉編譯器。生成可執(zhí)行代碼快速、緊湊,在運行效率和速度上均可與匯編代碼媲美。

(二)仿真設(shè)計及實現(xiàn)

本系統(tǒng)在Proteus7.5環(huán)境下進行的仿真,針對51單片機,完成集測溫,測濕,顯示,報警于一體的閉環(huán)負反饋系統(tǒng)。系統(tǒng)主要包括一片AT89C51單片機,一個LCD屏(LM016L),兩個數(shù)字溫濕度傳感器(SHT10),一條光敏電阻,一片A/D轉(zhuǎn)換芯片(ADC0808),一片直流電機驅(qū)動器(L298),一臺電機(MOTOR),MAX232串口驅(qū)動以及若干電阻,電容,門電路,譯碼器等。在實際仿真中由于Proteus器件庫的限制,一些元件被替代為Proteus庫中功能完全相同的元件,程序設(shè)計保持不變。

1.溫濕度測量及顯示

單片機P1口連接兩個LCD顯示屏,P2.0,P2.1作為LCD的RS與RW控制信號。兩個LCD的使能端通過一個二四譯碼器控制,使得某一時刻只選通一個LCD屏。P2.5 P2.7分別連接兩個SHT10的SCK與DATA端,SCK端通過三態(tài)門控制,使某一時刻只有一個SHT10向單片機發(fā)送數(shù)據(jù)。當片選LCD1生效時,同時選通SHT10 1的SCK,使其工作,LCD2同理,通過分時工作,達到實時顯示兩個傳感器的溫濕度值。

2.光強測量

光強測量這里選用了光敏電阻,在proteus中選擇了元件TORCH_LDR,隨著光源的遠近距離變化,光敏電阻的阻值變化,引起電壓變化,在仿真時可看到volts表數(shù)據(jù)的變化。同時采用ADC0808模數(shù)轉(zhuǎn)化芯片進行模數(shù)轉(zhuǎn)換,IN0作為模擬量數(shù)據(jù)輸入,OUT1~OUT8作為數(shù)字量輸出,傳送到單片機的P1口進行接收。

3.安全報警電路

如圖2-2所示,D6代表BUZZER,程序中,設(shè)置4個標志alarm1,alarm2,alarm3,alarm4。4個標識分別用來標識兩個溫濕度傳感器的溫度和濕度,同時兩個溫度都需要報警時候,D3常亮,當只有一個溫度需要報警時候,D3閃爍,否則D3滅,濕度LED也是同樣原理,當兩個濕度都需要報警,則D4常亮,有且只有一個需要報警時候,D4閃爍,否則D4滅。D5是用來標識光強的LED,當光強過大時候D5亮,BUZZER響。只有當四個標識都不為1時候,BUZZER關(guān),否則BUZZER鳴響。

4.電機控制

此部分電機控制風扇轉(zhuǎn)動,風扇相應(yīng)SHT90 2的環(huán)境參數(shù)。由于單片機輸出電流的驅(qū)動力不足,這里采用L298直流電機驅(qū)動芯片。L298的ENA,IN1,IN2分別接在單片機的P0.0,P0.1,P0.2,由于P0口是三態(tài)口,所以連接上拉電阻以便使其正常工作。程序中通過延時實現(xiàn)定時。當溫度過高時,電機正轉(zhuǎn)。當濕度過高時,電機反轉(zhuǎn)。

5.串口調(diào)試

使用RS232與計算機串行通信,MAX232串口驅(qū)動。MAX232的R1OUT和T1IN分別連接單片機的P3.0/RXD , P3.1/TXD。波特率設(shè)置9600bps,單片機晶振選用11.0592MHZ。

6.晶振與復(fù)位電路

晶振選擇11.0592MHZ,方便單片機與串口RS232通信。

三、實際環(huán)境測試與應(yīng)用

為了進一步檢測和提升花卉控制系統(tǒng)的穩(wěn)定性和可靠性,我項目組與北京植物園合作,在仙人掌及多漿植物溫室進行了實地測量和研究。在實地研究中,我們修正了系統(tǒng)所遇到的問題,同時還在對植物的實時培育監(jiān)控中得到了寶貴的數(shù)據(jù)。

在此次實地測控中,我們首先分別在溫室的不同位置進行了測量,并且與溫室的原電子溫濕度計進行了比較,驗證了數(shù)據(jù)的準確性.以下為測量中所得到的數(shù)據(jù):

另外在測試過程中還對溫室的特殊環(huán)境進行了有針對性的測量,在溫室的風扇,濕簾處以及溫室苗床等等位置記錄了多組數(shù)據(jù),與此同時也與原文溫濕度計進行了比較得到了相符合的數(shù)據(jù)。

在此次測控中發(fā)現(xiàn)硬件控制系統(tǒng)與某些溫濕度計存在數(shù)據(jù)不一致的問題,與所配備的新式設(shè)備進行比較后發(fā)現(xiàn)是原有溫濕度計存在靈敏度下降,數(shù)據(jù)有誤的問題。溫室領(lǐng)導隨即利用我系統(tǒng)修正了環(huán)境實時參數(shù),保證了植物能夠在適宜環(huán)境下成長。

在解決問題后,我們利用本系統(tǒng)對產(chǎn)于肯尼亞,索馬里一帶的隱刺麒麟以及綺麗角兩種世界二級瀕危植物進行實時監(jiān)控。采取我系統(tǒng)培育之前發(fā)現(xiàn)隱刺麒麟已存在一定枝條萎縮的情況,經(jīng)過分析我們認為是原溫濕度計所測數(shù)據(jù)有誤導致了溫室環(huán)境調(diào)控延遲等現(xiàn)象,另外北京遭遇了近十年不遇的炎熱天氣,使得枝條萎縮情況加劇。在接下來的時間里,我們利用花卉溫室控制系統(tǒng)進行嚴密監(jiān)控,利用所得數(shù)據(jù),實時對溫室環(huán)境進行調(diào)整,隱刺麒麟枝條逐漸變粗,生長狀況有所改善。

結(jié)論:

本文通過對單片機技術(shù),傳感技術(shù)以及通信技術(shù)的利用,整合信息采集模塊、控制模塊、LCD顯示模塊、安全報警模塊,完成基于單片機的集測溫,測濕,顯示,報警于一體的閉環(huán)負反饋系統(tǒng)。

系統(tǒng)在實時環(huán)境下靈敏度高,可靠性強,測量準確,適合于花卉培育等對環(huán)境條件要求較高的場合。在實際環(huán)鏡下監(jiān)控植物生長,給出合理的培育調(diào)整方案,并取得了良好的結(jié)果。系統(tǒng)一些擴展功能還可需進一步提升,應(yīng)嘗試掛接的一些更復(fù)雜的外設(shè)。如果進行功能上的完善和細化,可以運用到生態(tài)管理以及工業(yè)生產(chǎn)中。

參考文獻:

[1]梁凱琳.單片機技術(shù)的發(fā)展及應(yīng)用[M].中小企業(yè)管理與科技,2009年12期

[2]劉攀.俞杰.張海明.基于單片機的溫度測控系統(tǒng) [J].蘭州交通大學學報,2005年

篇4

關(guān)鍵詞:超聲波 測距儀 單片機

0 引言

超聲波檢測速度快、方便、計算簡單、易于實時控制,測量精度高;結(jié)合單片機及電路,通過超聲換能器,設(shè)計了具有較高重復(fù)頻率,精度高的超聲測距儀的軟硬件系統(tǒng)。并通過RS232串行通訊將報告測距結(jié)果傳送給計算機顯示。

1 硬件設(shè)計

MCS-51系列單片機屬于8位單片計算機,因其品種齊全,兼容性強,軟硬件資源豐富等特點,而成為8為位單片機中的主流。在此選用了MCS8751單片機。

8155芯片介紹 8155H芯片內(nèi)包含有256個字節(jié)的RAM存儲器,兩個可編程的8位并行口PA和PB,一個可編程的6位并行口PC,以及一個14位減法定時器/計數(shù)器。PA口和PB口可工作于基本輸入輸出方式或選通輸入輸出方式。

數(shù)碼顯示電路 LED顯示器分為:共陰極LED顯示器的發(fā)光二極管陰極相連并接地;共陽極LED顯示器的發(fā)光二極管的陽極相連接正電壓,當某發(fā)光二極管的陰極接低電平時,二極管被點亮,顯示相應(yīng)字段。

點亮顯示器有靜態(tài)和動態(tài)兩種。靜態(tài)顯示是指顯示器顯示某一字符時,相應(yīng)的發(fā)光二極管恒定導通或截止;動態(tài)顯示就是一位一位地輪流點亮顯示器各個位,對于顯示器的每一位來說,每隔一段時間點亮一次。

若顯示器的位數(shù)不大于八位,顯示器公共極電位只需一個I/O口稱為掃描口,顯示器各位所顯示的字型也需要一個八位口稱為段數(shù)據(jù)口。4位共陰極顯示器與8155的A口相連作為掃描口,經(jīng)反向驅(qū)動器75452接顯示器公共極,B口作為段數(shù)據(jù)口,經(jīng)同向驅(qū)動器7407接顯示器的各個極。

RS232接口電路在PC機中一般有兩個標準RS-232C串行接口COM1和COM2.MCS8751單片機片內(nèi)含一個全雙工的串行接口,通過編程即可實現(xiàn)串行通信。然而PC機的RS-232C標準的電平采用負邏輯,規(guī)定+3V~+15V之間的任意電平為邏輯“0”,-3V~-15V之間的任意電平為邏輯“1”,計算機接口芯片大都為TTL或CMOS電平,在通信時,須進行電平轉(zhuǎn)換,以便與RS-232C標準的電平匹配。選用了MAX232芯片完成電平轉(zhuǎn)換工作。

超聲波換能器 壓電式超聲波發(fā)生器實際上是利用壓電晶體的諧振來工作的,內(nèi)部有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片將會發(fā)生共振,并帶動共振板振動,產(chǎn)生超聲波。

超聲波傳感器采用UCM40的壓電陶瓷傳感器,它的工作電壓是40kHz的脈沖信號,發(fā)射頭為UCM40T和接收頭UCM40R配套使用。單片機在P1.0端口輸出一個40kHz的脈沖信號,經(jīng)過三極管T放大,驅(qū)動超聲波發(fā)射頭UCM40T,發(fā)出40kHz的脈沖超聲波,且持續(xù)發(fā)射200ms。接收頭UCM40R,將超聲波調(diào)制脈沖變?yōu)榻蛔冸妷盒盘枺?jīng)放大整形后加至單片機中斷入口,當信號電平由高電平躍變?yōu)榈碗娖?,作為中斷請求信號,送至單片機處理。

硬件電路 MCS8751單片機接6M晶振,同時具有上電復(fù)位和手動復(fù)位功能,P1.0口作為輸出口,輸出40KHz方波。方波信號經(jīng)晶體管T放大后,送給超聲波發(fā)射頭UCM40T,驅(qū)動UCM40T發(fā)出40KHz超聲波。超聲波反射回來后,被超聲波接收頭UCM40R接收。UCM40R將超聲波信號轉(zhuǎn)換為交變電壓信號,信號由差動放大器兩級放大后送給音頻譯碼器LM567,經(jīng)LM567分頻后,40KHz方波信號被選出來,此信號作為中斷輸入信號接到單片機的外部中斷入口INT0。

為了接四位LED數(shù)碼顯示,單片機需外擴一片I/O接口芯片8155。8155加上電復(fù)位電路,數(shù)據(jù)口接單片機P0口,單片機P2.0,P2.7分別接8155的CE和IO/M端。8155的PA口作為輸出口,掃描四位LED顯示器。PB口作為顯示器的段數(shù)據(jù)口。同時PA口和PB口分別加反向驅(qū)動器75452和同向驅(qū)動器7407。LED顯示器接為共陰極型。

2 軟件設(shè)計

方波發(fā)生 MCS-51單片機內(nèi)有兩個可編程的定時器/計數(shù)器,具有計數(shù)器、定時器兩種工作模式及4種工作方式通過對特殊功能寄存器TCON的編程,可選擇適當?shù)墓ぷ髂J胶凸ぷ鞣绞健L厥夤δ芗拇嫫饔糜诳刂芓0,T1的啟動和停止計數(shù),同時包含了T0,T1的狀態(tài)。TMOD,TCON這兩個寄存器的內(nèi)容由軟件設(shè)置。

在本設(shè)計中,時鐘頻率采用6MHZ,要在P1.0上輸出一個周期為2ms的方波,方波的周期用定時器T0來確定,采用中斷的方法來實現(xiàn)。首先確定定時常數(shù),根據(jù)13位定時器特性,初值應(yīng)為:TH0=0F0H TL0=OCH;其次對IP,IE,TCON,TMOD的相應(yīng)位進行初始化設(shè)置,并將時間常數(shù)送入定時器中。

計時程序 當M1,M0為10時,定時器/計數(shù)器工作于方式2,方式2為自動恢復(fù)初值(常數(shù)重裝入)的8位定時器/計數(shù)器,TLX作為常數(shù)緩沖器,當TLX計數(shù)溢出時,在置1溢出標志TFX的同時,還自動的將THX中的常數(shù)送至TLX,使TLX從初值開始重新計數(shù)。將T1定義方式2計數(shù),計數(shù)初值為00H,計數(shù)從0開始。把T0(P3.4),作為外部中斷請求輸入線,即T0引腳發(fā)生負跳變時,向CPU請求中斷。

3 結(jié)論

基于MCS8751單片機利用超聲波原理設(shè)計的測距儀能完成遠距離的測量,滿足測量精度的要求,在數(shù)據(jù)通信方面還有待改進和提高,尤其是遠距離通信方面。

參考文獻:

[1]童峰,許天增.一種用于移動機器人導航的全向高精度超聲測距處理方法[J].中南工業(yè)大學學報,2000.

[2]楊勁松,王敏,黃心漢.超聲波可變閾值測距裝置[J].電子技術(shù)應(yīng)用,1998(7):7-9.

篇5

關(guān)鍵詞:AT89C52;LCD顯示終端;工業(yè)控制現(xiàn)場

中圖分類號:TP39 文獻標識碼:A 文章編號:1674-7712 (2013) 02-0007-02

隨著工業(yè)應(yīng)用環(huán)境的變化,在工業(yè)生產(chǎn)中應(yīng)用LCD顯示技術(shù)得到了廣泛的關(guān)注。通過LCD顯示終端,可以將遠程指令進行編碼轉(zhuǎn)換,以漢字或者ASCII碼的方式顯示出來。該系統(tǒng)的實現(xiàn)需要綜合利用單片機控制系統(tǒng)以及相關(guān)連接器件或者芯片來完成。

一、LCD顯示終端的功能分析

為滿足工業(yè)控制和應(yīng)用中的需求,通常LCD顯示終端需要具有如下幾個功能。

(1)LCD終端可以與控制部分組成一個完整系統(tǒng),控制部分主要通過單片機實現(xiàn)。LCD終端與控制系統(tǒng)通過RS-485芯片實現(xiàn)與遠程控制主機的通信與指令接收發(fā)送。為保證工業(yè)使用需求,顯示模塊可采用單色可顯示漢字屏。

(2)LCD終端應(yīng)該具有對1,2級漢字字庫和任意ASCII碼的顯示功能,為滿足該需求,終端應(yīng)該具有外接圖形點陣信息存儲芯片。

(3)LCD終端應(yīng)該具有緩沖區(qū),以便于對遠程控制指令進行及時有效的更新和執(zhí)行。同時,遠程指令存在不確定性,設(shè)置緩沖區(qū)可以有效預(yù)防大量信息同時涌入時所帶來的影響。

(4)為有效應(yīng)對多指令同時執(zhí)行需求或者分模塊控制功能,可以再終端的設(shè)計方案中引入多任務(wù)處理機制,此功能還可以很好的解決多模塊的獨立開發(fā)與調(diào)試需求。

二、LCD顯示終端的硬件設(shè)計

按照設(shè)計需求,顯示終端的硬件結(jié)構(gòu)圖如下:

其中,核心部件為單片機,本系統(tǒng)采用AT89C52單片機,該型號單片機內(nèi)置了8KB的ROM空間、256B的RAM空間,基本可以滿足功能需求。

對于譯碼器部分的硬件選擇為GAL16V8D,該邏輯編程器件可以在RTX51實時操作系統(tǒng)中工作,對地址進行譯碼。

工業(yè)應(yīng)用中的信息顯示相對較為簡單,一塊單色320×240分辨率的LCD模塊已經(jīng)可以滿足顯示需求,該模塊與單片機之間的數(shù)據(jù)和指令傳輸主要通過SED1335芯片實現(xiàn)。

字庫則使用27C020 OTP存儲芯片,該芯片最大存儲量為256KB,可以存儲全部系統(tǒng)所使用的點陣漢字庫。但是需要注意的是,該芯片的存儲容量超出了單片機的直接尋址范圍,為保證全部字庫的正常訪問,在硬件部分還要由單片機進行芯片地址線模擬擴展,具體實現(xiàn)方式可以使用單片機的一個I/O端口的低4位控制4-16位轉(zhuǎn)換器進行地址轉(zhuǎn)換器。

緩沖區(qū)需要采用靜態(tài)隨機存儲RAM,可使用HD62256實現(xiàn)。

通信電路主要用于與遠程控制端進行通信,發(fā)送當前工作狀態(tài),接收遠程控制指令。但是單片機無法直接與計算機連接,需要使用一片RS-485芯片進行電平轉(zhuǎn)換。

蜂鳴器主要用于設(shè)定情況下的蜂鳴。

復(fù)位及看門口部分硬件電路主要是在系統(tǒng)出現(xiàn)死機或者故障時起作用。本系統(tǒng)使用看門狗芯片為MAX813L,可實現(xiàn)上電復(fù)位、手動復(fù)位、看門狗、掉電報警等功能。

三、系統(tǒng)的軟件實現(xiàn)

本功能實現(xiàn)使用RTX51實時操作系統(tǒng),該操作系統(tǒng)對于按照MCS0851標準開發(fā)的單片機都可以實現(xiàn)有效控制,同時該系統(tǒng)屬于實時多任務(wù)操作系統(tǒng)。按照功能實現(xiàn)對軟件設(shè)計進行任務(wù)分解。系統(tǒng)任務(wù)流程如圖2所示。

(1)按照RTX51系統(tǒng)的使用規(guī)則,軟件任務(wù)的執(zhí)行需要從0號任務(wù)開始,因此將0號任務(wù)設(shè)定為系統(tǒng)初始化。鑒于多任務(wù)執(zhí)行時對RAM的需求較高,而0號任務(wù)執(zhí)行完畢后系統(tǒng)處于空閑狀態(tài),故可以將看門狗的電路控制功能添加到0號任務(wù)中。宏定義0號任務(wù)為:#define TASK_ID_INIT 0。

任務(wù)主要內(nèi)容為硬件初始化,檢查62256存儲芯片是否連接,設(shè)置SED1335的工作模式。

(2)在0號任務(wù)執(zhí)行完畢后開始執(zhí)行系統(tǒng)任務(wù)即LCD顯示任務(wù),該任務(wù)為系統(tǒng)運行的核心任務(wù),故設(shè)定為任務(wù)1。該任務(wù)在執(zhí)行時,LCD顯示內(nèi)容和顯示時間均需由遠程控制端決定,因而該任務(wù)在實際執(zhí)行時存在諸多不確定性,單獨設(shè)定該任務(wù)可以及時有效完成對顯示控制命令的解釋與執(zhí)行,LCD屏幕繪制等功能。宏定義1號任務(wù)為#define TASK_DISPLAY 1

(3)系統(tǒng)默認提供蜂鳴報警功能。此時多任務(wù)操作系統(tǒng)的優(yōu)勢就體現(xiàn)出來了,在系統(tǒng)中建立一個單獨的發(fā)生任務(wù),該任務(wù)不按照單任務(wù)操作模式進行順序執(zhí)行,而是可以被隨時調(diào)用相應(yīng),實現(xiàn)連續(xù)蜂鳴報警的目的。宏定義任務(wù)為#define TASK_ID_INIT 2。

(4)通信任務(wù)則是由遠程控制端控制的,不屬于LCD終端系統(tǒng),該任務(wù)通過中斷的方式更改LCD顯示終端系統(tǒng)的任務(wù)屬性。

由圖2可知,系統(tǒng)運行時首先需要對硬件進行初始化,對各硬件進行檢查和配置,該過程完畢后系統(tǒng)開始建立上文所述任務(wù),任務(wù)建立完畢后系統(tǒng)進入等待狀態(tài)。若遠程控制終端發(fā)來顯示控制指令,則該指令通過單片機的中斷服務(wù)程序進入系統(tǒng)內(nèi)核。系統(tǒng)內(nèi)核根據(jù)指令進行任務(wù)分配,同時檢測是否需要執(zhí)行看門狗。各任務(wù)接到控制指令后進入執(zhí)行階段,例如出現(xiàn)顯示任務(wù)時,系統(tǒng)首先從緩存區(qū)讀取顯示指令,根據(jù)指令從字庫中選取相應(yīng)的顯示信息,該信息經(jīng)過譯碼后傳遞給LCD顯示屏進行顯示。任務(wù)執(zhí)行完畢后系統(tǒng)重新進入等待。

四、總結(jié)

基于單片機的LCD顯示終端可以將遠程控制端傳遞到工業(yè)現(xiàn)場的信息進行編譯和顯示,以便于工作人員了解當前工作狀態(tài)或者執(zhí)行其他任務(wù)。該終端成本較低,穩(wěn)定性和可靠性較高,可滿足一般的工業(yè)現(xiàn)場顯示需求,具有廣泛的應(yīng)用環(huán)境。

參考文獻:

[1]李佳立.單片機的LCD顯示終端沒計分析[J].華人時刊(中旬刊),2012,2.

[2]陳京培,徐永梅.基于AT89S52單片機的液晶顯示控制電路設(shè)計[J].現(xiàn)代電子技術(shù),2008,31(22).

[3]胡曉穎.基于單片機的LCD的滾動顯示[J].硅谷,2012,3.

篇6

關(guān)鍵詞:RFID 單片機 超高頻

【分類號】:TP391.44

1 引言

RFID無線射頻識別系統(tǒng)是一種非接觸自動識別技術(shù),其基本原理是利用射頻信號的空間耦合的傳輸特性,實現(xiàn)對識別物體所帶信息的自動化讀取和識別。本文從硬件電路設(shè)計和軟件設(shè)計方面介紹了一種RFID系統(tǒng)中讀寫器(Reader)的實現(xiàn)方案,該方案以AS399x射頻芯片為核心,輔以C8051F340單片機和其他相關(guān)模塊實現(xiàn)。由于AS399x射頻芯片的集成資源豐富,使得外置芯片減少,電路簡單。

2 系統(tǒng)總體方案

2.1 RFID系統(tǒng)

RFID系統(tǒng)主要由三部分組成:

電子標簽:由天線、耦合元件及芯片組成,作為物體所帶信息的識別編碼,一般附著在目標對象上。

讀寫器:由天線、射頻電路、基帶處理電路、電源模塊以及必要的接口電路組成,對電子標簽內(nèi)的信息進行采集并傳給上位機進行處理。

應(yīng)用系統(tǒng)軟件:作為應(yīng)用層軟件,對讀寫器收集來的數(shù)據(jù)進行存儲和處理。

讀寫器與電子標簽之間通過詢問、應(yīng)答的方式進行雙向數(shù)據(jù)通信,讀寫器發(fā)出詢問信號,附著電子標簽的物體進入到讀寫器的工作距離范圍內(nèi)后對讀寫器進行應(yīng)答。讀寫通過天線接收電子便簽存儲的物體信息并上傳給上位機應(yīng)用軟件進行信息存儲和處理,然后上位機把處理結(jié)果或者相關(guān)控制命令通過讀寫器和天線發(fā)回給電子標簽。

2.2 RFID讀寫器

RFID讀寫器作為中間媒介,實現(xiàn)電子標簽與上位機應(yīng)用軟件之間的信息交流。

振蕩器:振蕩器電路產(chǎn)生符合RFID系統(tǒng)要求的射頻振蕩頻率,一路經(jīng)過時鐘電路產(chǎn)生MCU所需要的時鐘信號,另外一路經(jīng)過載波形成電路產(chǎn)生讀寫器工作的載波信號。

發(fā)送通道:發(fā)送通道包括編碼、調(diào)制和功率放大電路,用于向電子標簽傳送命令和寫數(shù)據(jù)。

接收通道:接收通道包括解調(diào)、解碼電路,用于接收電子標簽返回的應(yīng)答信息和數(shù)據(jù)。同時還應(yīng)該考慮防碰撞電路的設(shè)計。微控制器(MCU):MCU是讀寫器工作的核心,完成收發(fā)控制、向標簽發(fā)送命令和寫數(shù)據(jù)、標簽數(shù)據(jù)讀取和處理、與應(yīng)用系統(tǒng)的高層進行通信等任務(wù)。

3 硬件電路組成

3.1射頻收發(fā)模塊

射頻收發(fā)部分是讀寫器很重要的部分,負責接收上位機系統(tǒng)發(fā)送到主控芯片的命令,讀寫器根據(jù)命令對數(shù)據(jù)信息進行編碼和調(diào)制,發(fā)送到電子標簽中以實現(xiàn)數(shù)據(jù)通信。同時,讀寫器接收來自電子標簽的信號并進行解調(diào)和解碼,再根據(jù)上位機的命令對接收的數(shù)據(jù)進行處理。

在發(fā)射電路端,集成了功率放大器(PA)、鎖相環(huán)(PLL)、壓控振蕩器(VCO)、頻率合成器、調(diào)制器等模塊;在接收電路端集成了低噪聲放大器(LNA)、混頻器(Mixer)、中頻放大器、解調(diào)器等模塊。同時還集成了電源電壓管理、協(xié)議控制等工作模塊,從而使芯片電路大大簡化。芯片控制通過32個寄存器的設(shè)置來實現(xiàn)全部RF、濾波及協(xié)議控制功能。收發(fā)模塊支持自動生成幀頭和CRC校驗碼,組裝成幀的數(shù)據(jù)塊通過片上的24字節(jié)FIFO寄存器傳輸?shù)缴衔粰C系統(tǒng)中。電源管理模塊可以對片外MCU以及其他芯片供1.5~3.3伏電壓以及提供時鐘輸出。

片上的功率放大器(PA)具有高達20dBm的輸出功率,片上VCO和PLL可產(chǎn)生840MHz-960MHz的振蕩頻率。

3.2主控制器

RFID讀寫器一般使用單片機作為主控制器,主要功能是與應(yīng)用系統(tǒng)軟件進行通信;執(zhí)行從應(yīng)用系統(tǒng)軟件發(fā)來的動作命令;控制射頻模塊與標簽的通信過程;基帶信號的編碼和解碼;執(zhí)行防沖突算法:對讀寫器和標簽之間傳輸?shù)臄?shù)據(jù)進行加密和解密;進行讀寫器和標簽之間的身份認證等等。本方案中采用的是Silicon Labs公司推出的C8051F系列單片機。

C8051F340單芯片集成度十分高,片上集成了晶振電路、復(fù)位電路以及電路等豐富的模擬和數(shù)字資源。同時,C8051F340單片機內(nèi)集成了電源管理模塊、USB管理模塊、JTAG接口、SPI以及UART串行接口。具有與8051兼容的高速CIP-51內(nèi)核,單片機處理速度和性能都有很大的提升。高集成度使得系統(tǒng)所需要的芯片以及電路得到減少和簡化,從而有效降低系統(tǒng)功耗和成本。

3.3 其他電路

為了實現(xiàn)讀寫器與上位機之間通信以及擴展應(yīng)用,本方案采用USB接口,并且引出TTL/UART 接口和與AS3991相連的MCU I/O口,電源3.3V、5V、GND。

此外,由AS3991射頻芯片引腳輸出的差分數(shù)據(jù),需要轉(zhuǎn)化為單端信號并且濾波后才能通過耦合器發(fā)送出去。本方案中采用的是Balum平衡變壓器用于將雙端差分輸出轉(zhuǎn)化為單端輸出,然后經(jīng)過LFCN1000 LC低通濾波器濾除噪聲,最后通過定向耦合器RCP890A05發(fā)送出去。

4 工作程序設(shè)計

4.1總體程序結(jié)構(gòu)

射頻識別系統(tǒng)是一種實時系統(tǒng)。在軟件結(jié)構(gòu)上,可以分成兩部分:主程序和中斷程序。主程序的主要任務(wù)是不斷進行系統(tǒng)自檢,和等待上位機發(fā)送信息包,若UART或USB收到正確的數(shù)據(jù)包,則發(fā)送中斷標志,處理上位機發(fā)送過來的指令,一般為啟動RFID操作標簽流程。若UART或USB沒有接收到有效的命令,則繼續(xù)循環(huán)等待。

本系統(tǒng)RFID讀寫器程序結(jié)構(gòu)如圖5所示。系統(tǒng)應(yīng)用層運行相關(guān)應(yīng)用程序,在本設(shè)計中,集中表現(xiàn)為UART串口通信程序。協(xié)議層初始化讀寫器通信協(xié)議,包括IS018000 6B和EPC Gen2,確定調(diào)制編碼方式和數(shù)據(jù)格式。AS399x驅(qū)動包括初始化32個芯片寄存器和包括內(nèi)部VCO和PLL、內(nèi)部PA等在內(nèi)的所有工作模塊。硬件底層驅(qū)動包括初始化串口和USB口,以及相關(guān)底層硬件。

4.2 程序設(shè)計

底層軟件主要是PC機通過USB接口、串口等接口與上位機進行數(shù)據(jù)交換,對讀寫器進行讀標簽信息、讀標簽或寄存器數(shù)據(jù)、寫標簽或寄存器數(shù)據(jù)、上鎖/解鎖、滅活標簽等操作。

單片機控制讀寫器持續(xù)對有效范圍進行掃描,直到出現(xiàn)有標簽的信息傳回,暫時停止掃描,對傳回的信息進行處理。若標簽?zāi)芘c讀寫器能進行匹配,則繼續(xù)對標簽的操作,包括對標簽工作狀態(tài)的轉(zhuǎn)變和數(shù)據(jù)的讀取、寫入。處理完畢后,讀寫器繼續(xù)進行掃描,重復(fù)上述步驟。則基本軟件部分應(yīng)要有主控制程序控制硬件電路進行掃描,還要有中斷程序控制讀寫器對標簽的處理,另外就是通信協(xié)議部分和防碰撞算法。

5 結(jié)束語

隨著物聯(lián)網(wǎng)的發(fā)展,RFID技術(shù)將會有越來越大的應(yīng)用空間。本文介紹了以AS399x射頻芯片為核心,配合C8051F340單片機輔以其他電路的讀寫器實現(xiàn)方案,由于這兩款芯片具有較高的集成度,使得系統(tǒng)所需要的芯片以及電路得到減少和簡化,從而有效降低系統(tǒng)的功耗和成本。由于一個完整的RFID系統(tǒng)涉及多學科交叉,如電磁場學,集成電路,高頻電路等,要完成一個完整的RFID系統(tǒng),并且做到高性能指標是有很大難度的,需要大量的時間學習、實踐和改進。

參考文獻

篇7

【關(guān)鍵詞】單片機 理論與實驗 課程設(shè)計 協(xié)同教學

【中圖分類號】G64 【文獻標識碼】A 【文章編號】2095-3089(2016)31-0243-01

引言

單片機理論、實驗和課程設(shè)計相關(guān)課程體系是各高等院校電子電氣信息類工科專業(yè)基礎(chǔ)專業(yè)課程設(shè)置的重要組成部分,為大學生深入學習掌握單片機的基本原理,設(shè)計方法,實踐應(yīng)用等打下基礎(chǔ)。大多數(shù)理工科高校開設(shè)這些課程,對學生進行綜合培養(yǎng)。對于單片機的理論與實踐教學,既可以選擇匯編語言,也可以選擇C語言進行。在高校的實際教學工作中,大多數(shù)老師是選擇匯編語言進行教學的,因為從匯編語言入手能更好的掌握單片機的硬件資源使用原理等,也有部分老師是直接使用C語言進行教學,認為匯編語言編程過于繁瑣,而C語言編程能夠在將來的實踐工作中得到更好的應(yīng)用。本文通過總結(jié)作者多年來在單片機相關(guān)課程教學積累的經(jīng)驗和教學研究心得,以51單片機理論、實驗和課程設(shè)計教學為例,對如何在使用不同編程語言進行繁瑣和復(fù)雜的教學中使學生更好地掌握單片機知識體系進行了探討。

1.單片機理論教學

1.1 匯編語言理論教學

單片機是一個把中央處理器CPU、數(shù)據(jù)存儲器RAM、程序存儲器ROM、并行IO接口、串行IO接口、定時器計數(shù)器、時鐘振蕩電路等集成在一起的控制芯片,硬件資源簡單且豐富,也易于擴展電路,所以單片機的學習側(cè)重點首先在于掌握硬件資源使用方法。因為匯編語言實際上是CPU能夠識別的機器碼的助記符,從匯編語言入手開始教學,能夠使學生更好地掌握單片機的硬件資源使用原理。使用匯編語言編程可以很方便地對單片機存儲器地址直接進行存取操作,也能很方便地對存儲器地址進行整體安排分配,前提是對單片機硬件資源非常熟悉,能夠靈活調(diào)用。比如指令MOV、MOVC和MOVX可以分別訪問單片機內(nèi)部的數(shù)據(jù)存儲器、程序存儲器和外部擴展的數(shù)據(jù)存儲器。匯編編程的缺點在于進行算術(shù)運算和邏輯判斷跳轉(zhuǎn)等比較繁瑣。

1.2 C語言理論教學

國內(nèi)的單片機C語言程序設(shè)計教程多數(shù)的編排都會在前面開始的章節(jié)介紹單片機硬件資源以及匯編語言指令系統(tǒng),然后以更大篇幅講述C語言程序設(shè)計語法和針對硬件資源的編程。針對單片機的C語言程序設(shè)計語法與計算機C語言高級程序設(shè)計編程語法基本一致,而針對硬件資源的指令又類似于匯編語言指令系統(tǒng),所以應(yīng)該可以說單片機C語言程序設(shè)計是計算機C語言高級程序設(shè)計和匯編語言指令結(jié)合體。要掌握好C語言編程依然要對于單片機的硬件資源理解透徹并能靈活調(diào)用。但是C語言針對硬件資源的指令與匯編語言指令比較起來卻不如匯編那么直觀,也不如匯編指令那樣更加有助于單片機硬件體系結(jié)構(gòu)的理解。

為了使初學者能夠更好地理解單片機硬件體系結(jié)構(gòu),掌握硬件資源的調(diào)用,選擇匯編語言進行教學顯然是更加合適的。

2.單片機實驗教學

單片機作為電子電氣信息類專業(yè)的一門專業(yè)基礎(chǔ)核心課程,比某些專業(yè)基礎(chǔ)課程如電路原理、數(shù)字電子技術(shù)、模擬電子技術(shù)等更加注重編程實踐的練習。單片機實驗課程一般都是配套安排在單片機理論課程的下半學期,這樣能夠更加有助于理論的理解和掌握。作為理論課程的配套課程,單片機實驗課程在教學上必須與理論課程保持一致性,選擇匯編語言進行實驗教學就是必然和最好的選擇。

在實驗設(shè)備的選擇上,學院實驗室早期購置過星研單片機Star ES51實驗箱,后來又購置了大批光佑STC開發(fā)板,可以兩者選其一。

早期的單片機實驗都是集中在實驗室進行,兩人共用一臺實驗箱,通過連線和讀寫配套程序仿真運行來進行實驗。這樣的實驗有一些明顯的不足,比如配套程序調(diào)用了很多鍵盤顯示的子程序,而這些子程序沒有直接給出來,實驗箱的很多硬件電路連接也沒有給出詳細原理圖,所以造成了實驗結(jié)束后多數(shù)學生也是對實驗原理和編程似懂非懂的結(jié)果。

有了STC開發(fā)板后,每個學生可以分配一塊開發(fā)板,各自進行單片機的編程仿真實驗,還可以將開發(fā)板帶回宿舍課后繼續(xù)練習,實驗可以更方便地進行。實驗開發(fā)板的原理圖清晰,例子程序豐富,通過讀寫配套例程可以較好的掌握單片機的基本原理。

顯然使用匯編語言選擇STC開發(fā)板進行單片機實驗是實驗教學的最好安排。實驗課程的要求注重于單片機基礎(chǔ)知識的掌握和硬件資源的調(diào)用。

3.單片機課程設(shè)計教學

單片機課程設(shè)計的安排是為了進一步提高學生的實踐能力,所以課程設(shè)計的教學就不再局限于基本原理的掌握,而是必須達到更高程度的實踐效果。匯編語言編程有利于對基礎(chǔ)知識的理解和單片機硬件資源的掌握,卻不利于復(fù)雜邏輯的處理。所以在學生已經(jīng)基本掌握了基礎(chǔ)理論的情況下,課程設(shè)計選擇C語言編程,可以讓學生更加方便的進行復(fù)雜程序的編寫。

單片機課程設(shè)計實踐項目內(nèi)容的安排上,必須注重單片機內(nèi)部和外部硬件資源的綜合調(diào)用,以便完成具有實際意義的綜合程序的編寫。課程設(shè)計實踐項目安排了可以綜合調(diào)用單片機I/O口資源進行鍵盤掃描數(shù)碼管顯示以及中斷處理的實現(xiàn)計算器功能的程序編寫,和能夠使用I2C總線進行通訊的AD/DA處理的程序編寫。這兩種程序的綜合度和復(fù)雜度都遠遠大于單片機實驗題目的要求。從實踐結(jié)果來看,通過這種綜合性復(fù)雜程序的編寫練習,能夠大大提高學生的開發(fā)設(shè)計實際項目的動手實踐能力。

結(jié)束語

在我國大力實行人才戰(zhàn)略強調(diào)人才培養(yǎng)的大環(huán)境下,本文作者所在高校也響應(yīng)國家號召加強本科生培養(yǎng),實施卓越工程教育,取得了積極可喜的成績。本文積極探索和提高單片機理論實驗課程設(shè)計協(xié)同教學的方法,取得了長足的進步和發(fā)展,也得到了學生的高度認同。以此方法培養(yǎng)出來的本科生在參加全國大學生電子設(shè)計競賽的過程中也取得了驕人的成績。本文作者經(jīng)驗和方法也可以為兄弟院校相關(guān)專業(yè)的教學提供參考和借鑒。

參考文獻:

[1]李朝青.單片機原理及接口技術(shù)(第4版),北京航空航天大學出版社,2013.7

[2]郭天祥.新概念51單片機C語言教程――入門、提高、開發(fā)、拓展, 電子工業(yè)出版社,2009.1

[3]彭偉.單片機C語言程序設(shè)計實訓100例――基于8051+Proteus仿真(第2版), 電子工業(yè)出版社,2012.10

篇8

關(guān)鍵詞:單片機技術(shù);教學改革;培養(yǎng)興趣;教學手段;實踐應(yīng)用

【中圖分類號】TP368.1-4

1引言

“單片機技術(shù)及應(yīng)用”是大學計算機科學與技術(shù)專業(yè)的一門專業(yè)必修課程,對于高校學生來說,學習該課程是初步認識單片機的整體設(shè)計過程,為將來從事信息系統(tǒng)工作及電子產(chǎn)品的設(shè)計、檢測和維修奠定堅實的基礎(chǔ),具有不可替代的作用和意義。

2培養(yǎng)學習興趣

單片機技術(shù)與應(yīng)用課程是大四學生需要學習的一門專業(yè)課程,因此在課堂教學過程中,教師要結(jié)合學生的培養(yǎng)目標、就業(yè)方向,從實際出發(fā),注重理論基礎(chǔ)與實際應(yīng)用的結(jié)合,多給學生展示單片機廣闊的應(yīng)用前景和具體產(chǎn)品,使他們體會到單片機技術(shù)在以后的工作生活中都具有很強的實用性,認識到單片機技術(shù)強大的潛能和發(fā)展空間,從而激發(fā)他們學習的興趣和求知欲。

2.1 聯(lián)系實際

為使學生更好的接受抽象的知識,在講述具體內(nèi)容之前,可以列舉大量單片機的應(yīng)用實例。如在日常生活中常見的洗衣機、冰箱、熱水器和空調(diào)等家用電器的智能化控制[1],這些都離不開單片機。抽象的教學內(nèi)容與身邊活生生的應(yīng)用實例相結(jié)合,給學生一個看得到、聽得見、摸得著的學習目標,大大提高了學生學習單片機的興趣。

2.2 組織競賽

學以致用是教學的根本目標,結(jié)合新形勢下教育目標模式轉(zhuǎn)型,對學生的培B重在能力的培養(yǎng),這就需要給學生一個平臺,讓學生自己去動手、去實踐。單片機課程為學生安排了對應(yīng)的實驗課程,但這在實際應(yīng)用中是遠遠不夠的,因此可以組織一些電子設(shè)計大賽,讓學生積極的參與其中,為其學習興趣的培養(yǎng)提供一個積極的推進作用,大大激發(fā)學生的學習主動性。

3優(yōu)化教學內(nèi)容

3.1 緊跟時代步伐

在課堂教學中,教師應(yīng)選用應(yīng)用廣泛、實用性好、易學易懂易掌握的優(yōu)秀教材。但教材往往是落后于科技發(fā)展的,所以教師還要了解單片機技術(shù)的發(fā)展現(xiàn)狀以及前沿技術(shù),根據(jù)實際需要,在課堂上適時適當?shù)叵驅(qū)W生補充當前使用比較熱門的硬件接口和軟件編程技術(shù),了解當前有關(guān)單片機的新信息、新技術(shù)和新發(fā)展,來拓寬學生的知識面,延伸和補充課堂之外的教學內(nèi)容,讓學生緊跟時代步伐。

3.2 選取合適的編程語言

單片機課堂教學注重的不只是基本原理的講解,更多的是應(yīng)用設(shè)計。單片機教學通常采用純匯編語言教學,這需要有前導課程“微機原理及應(yīng)用”所學習的匯編語言作支撐,而在教學過程中,學生普遍認為匯編語言不易掌握,并且目前在實際的單片機應(yīng)用項目開發(fā)中,使用較多的開發(fā)語言并不是匯編語言,而是單片機C51語言。單片機C51語言是由C語言繼承而來的。因此,可以將“微機原理及應(yīng)用”與“單片機技術(shù)及應(yīng)用”進行整合,在單片機編程設(shè)計上以C51語言為主,特別注意C51與C語言的區(qū)別,以匯編語言為輔的形式進行講解,降低由語言選擇帶來的編程難度,提高教學質(zhì)量。

3.3 選取適合的軟件平臺

與C語言不同的是,C51語言運行于單片機平臺,而C語言則運行于普通的桌面平臺。因此,可以采用專門針對MSC-51系列單片機的軟件開發(fā)平臺Keil C51,以加強培養(yǎng)學生對C51的編程能力。在選用實驗箱時,還要考慮到培養(yǎng)學生的創(chuàng)新能力要求,盡量使用具有現(xiàn)在先進技術(shù)接口的實驗箱,通過課程設(shè)計或畢業(yè)設(shè)計積極引導學生使用C51開發(fā)語言進行相關(guān)軟件設(shè)計,設(shè)計難度明顯減小,程序也更加簡潔清晰[2]。

4豐富教學手段

新型人才的培養(yǎng)最重要的是能力的培養(yǎng)。知識轉(zhuǎn)化為能力必須通過實踐,實踐性教學結(jié)合理論與實際、綜合思維和感官、提高個性與社會化水平,是培養(yǎng)學生創(chuàng)新意識和創(chuàng)新能力的重要途徑。因此,在高校單片機的課程教學中,一定要從實際需要出發(fā)。

4.1 借助多媒體教學手段

單片機課程內(nèi)容抽象,要在有限的課時內(nèi)講深懂、講透課程內(nèi)容,依靠傳統(tǒng)的教學手段很難實現(xiàn),這就需要教師精心設(shè)計講解內(nèi)容,制作生動形象的多媒體課件,將抽象難懂的概念具體化、形象化,單調(diào)枯燥的理論多樣化、生動化,將重難點知識內(nèi)容通過多媒體進行演示,可以加深理解,便于記憶。

4.2 利用仿真軟件演示

在單片機應(yīng)用開發(fā)過程中,更側(cè)重于硬件設(shè)計。而在單片機教學過程中,由于硬件條件或時間條件的限制,教師在課堂上很難向?qū)W生直接具體的展示硬件設(shè)計的整個過程。而在實踐教學過程中,可以有效利用仿真軟件來達到更好的教學效果。Keil-C51和Proteus professional的出現(xiàn)可以滿足對單片機進行隨堂編程和電路仿真的需求。Keil軟件為項目的開發(fā)制定了一套完整的方案,學生在使用時可以直接進行編程,編譯和仿真方面的練習;Proteus是集電路分析和硬件電路仿真于一體的軟件,可以很好的實現(xiàn)一個完整的電路設(shè)計系統(tǒng)。

5 提高教師的業(yè)務(wù)能力

5.1 及時補充新知識

要培養(yǎng)高素質(zhì)的學生,必須要有高素質(zhì)的教師隊伍,授課教師應(yīng)緊跟軟硬件技術(shù)的發(fā)展動態(tài),不斷學習充實自己,才能夠勝任工作的需要,才能跟上時代的步伐。單片機的發(fā)展速度較快,利用單片機技術(shù)來進行產(chǎn)品開發(fā)、控制系統(tǒng)設(shè)計的過程中,需要用的知識較多,這就需要教師具有電子產(chǎn)品研發(fā)和工程實踐的經(jīng)驗,否則就無法使學生對該課程產(chǎn)生深刻的理解。

5.2 提高科研能力

教師在課堂上的旁征博引,大都以科研經(jīng)驗為背景,正所謂見多識廣,見得多用得多,自然能夠講的深入淺出、得心應(yīng)手。教學和科研是相輔相成的,教學是科研的基礎(chǔ),科研是教學的提高,教學與科研的這種關(guān)系,反映了教學與科研的內(nèi)在聯(lián)系,決定了高校離不開科研的職能。用科研實例的形式來調(diào)動學生學習的積極性、主動性,培養(yǎng)學生的創(chuàng)新能力。

6 總結(jié)

“單片機技術(shù)及應(yīng)用”是一門應(yīng)用性極強的課程,隨著單片機新技術(shù)的飛速發(fā)展,給單片機課程內(nèi)容本身增了很多新的元素。而對于高校來說,教育的基本任務(wù)是從學生原有基礎(chǔ)和身心發(fā)展特點出發(fā),使他們的素質(zhì)獲得發(fā)展,逐步適應(yīng)社會建設(shè)和發(fā)展的客觀需要。因此高校教師在教學過程中,要不斷探索研究行之有效的方法措施,緊緊抓住“應(yīng)用”這個綱領(lǐng),注重學生實際設(shè)計能力的培養(yǎng),實現(xiàn)教與學的最佳統(tǒng)一。

參考文獻:

篇9

關(guān)鍵詞:單片機 教學改革 單片機開發(fā)板 單片機課程設(shè)計

0 引言

單片機因體積小、功能強、可靠性高和價格低廉等一系列優(yōu)點,已滲入到人們工作和生活的各個角落,應(yīng)用前景廣闊[1]。目前多數(shù)高職院校的機械專業(yè)都開設(shè)了單片機課程,但大多院校的教學思路仍然借鑒本科先基礎(chǔ)后應(yīng)用的常規(guī)教學模式,理論教學與實際應(yīng)用結(jié)合較少。對于高職學生,課程入門比較困難,知識不易掌握,實際應(yīng)用較少,學習興趣不高,該課程的實際教學效果并不理想。因此,單片機的教學模式亟需改革,改變原來以知識傳授為目標的教學方式,要理論與實踐并重,以實踐入門來吸引學生學習的興趣,提高教學質(zhì)量。

1 高職機械專業(yè)單片機教學現(xiàn)存的難點

單片機是一門理論性很強的專業(yè)基礎(chǔ)課程,同時也是一門實踐性和技術(shù)性很強的學科。要求學生掌握一定的電子電路知識,還要熟練掌握計算機的相關(guān)知識,掌握編程的思維和方法。高職學生的基礎(chǔ)知識相對薄弱,對于單片機的學習有一定的困難。

1.1 對于單片機中的專業(yè)術(shù)語和電路很難理解

學習單片機要以電路原理、模擬電子技術(shù)、數(shù)字電子技術(shù)、計算機基礎(chǔ)知識等相關(guān)課程的理論知識為基礎(chǔ)。與電子專業(yè)學生不同的是,我校機械專業(yè)學生只開設(shè)一門電工電子課程,所有的電路、模電和數(shù)電的相關(guān)知識都集中在一門課程中講授,知識點多且課時量偏少,知識點講授較為粗淺,不能深入展開。因此,學生對于單片機中遇到的一些專業(yè)術(shù)語和電路,如集電極開路、上拉電阻、存儲器地址、D觸發(fā)器、555振蕩電路等,很難理解。這些知識都需要重新講授,且講授效果不佳。學生往往在學到單片機的硬件電路部分時,突然間覺得很難,學習的積極性下降,甚至有了厭學的情緒。

1.2 對于匯編指令不易理解

像所有其他的指令一樣,匯編指令也是英文的,我校機械專業(yè)大部分學生的英語能力比較差,遇到有英文的地方,本能地會回避,更不要說進行深入的研究。單片機中要求他們短時間記憶和理解數(shù)十條甚至上百條指令的格式和功能,他們覺得比較有壓力,很多學生達不到這個目標。

匯編語言是一種低級語言,每一條匯編指令都與機器的硬件結(jié)構(gòu)密切相關(guān),

如果學生對于硬件結(jié)構(gòu)沒有掌握好,那么對于匯編語言的指令也很難完全理解。即使學生勉強知道每條指令的大概意思,但由于沒有充分理解其內(nèi)涵,不能做到融會貫通,常常錯誤地運用指令,即使在一個程序里運用正確,可能題型改變,就做不出來了。

1.3 對于單片機的應(yīng)用比較陌生

我們在學校的教學中,受制于課時量的不足和傳統(tǒng)教學思維和方法的限制,通常都以傳授理論知識為主,實際應(yīng)用提到的比較少。因此,出現(xiàn)一些學生直到學完這門課程,都不知道單片機能干什么。有些學生告訴老師,以前我們學過的課程,如機械制圖,很有實用性,單片機講的這么多、這么復(fù)雜,到底有什么用,我們機械專業(yè)為什么要學這一門課程。學生不能深入理解該門課程的實際應(yīng)用,認為學了無用知識。

2 高職機械專業(yè)單片機教學改革的具體措施

學習單片機的最終目標是能運用單片機進行一些項目的開發(fā),解決生產(chǎn)和生活中遇到的實際問題。人才市場需要的不是只懂理論、不懂實踐的研究型人才,而是既懂理論,又能實踐的應(yīng)用型人才。因此,單片機的改革也要以就業(yè)市場為導向,結(jié)合高職機械類學生的特點,做一些針對性的調(diào)整,使學生既能學好,又能快速地適應(yīng)社會的需求。本文針對單片機課程在教學方面現(xiàn)有的種種弊端,提出了單片機課程教學改革實施的一些具體措施。

2.1 實施“項目任務(wù)驅(qū)動法”,理論教學緊扣實踐應(yīng)用

單片機教學應(yīng)該采用工程實際應(yīng)用課題或?qū)嵺`案例進行教學的方法,實施“項目任務(wù)驅(qū)動法”,即課程教學以單片機應(yīng)用技術(shù)的典型實用案例進行分析講授的一種教學方法。授課時以單片機技術(shù)“案例”演示作為引入,以實現(xiàn)“案例”為主線講述各相關(guān)理論知識。為鞏固理論知識的學習和培養(yǎng)學生實際動手的能力,理論教學應(yīng)與實際“案例”實驗教學穿行,以實驗教學充實理論內(nèi)容,使兩者融會貫通。整個教學過程的思路設(shè)計如下:

例如,在第一次上單片機的課時,就應(yīng)該給學生演示單片機的用途,如單片機驅(qū)動流水燈、驅(qū)動數(shù)碼管顯示數(shù)字,驅(qū)動16×16點陣顯示漢字,驅(qū)動蜂鳴器演奏一段鈴聲等,讓學生了解單片機的應(yīng)用,領(lǐng)略單片機的妙處,激發(fā)學生學習的興趣。興趣對一個學生學習一門課程很重要,如果學生對某門課程失去興趣,即使再好的老師也教不好。第二次上課可以選擇一個簡單的應(yīng)用,如單片機驅(qū)動一個LED的亮滅,通過仿真軟件,當堂給學生畫電路圖,編寫軟件,使學生感到單片機并不是很難,自己也可以學會,打消他學不好的顧慮。后面每次課都以項目任務(wù)為導向,每次課時可以先將我們要實現(xiàn)的功能給學生演示一遍,然后告訴學生我們實現(xiàn)這個功能的思路是什么,我們要實現(xiàn)這個功能,需要學習哪些基礎(chǔ)知識,讓學生有一個清晰的概況和熱切學習的期盼。下表為四個常用的典型項目的實驗任務(wù)設(shè)置:

每個項目的設(shè)計都要以實踐應(yīng)用為導向,讓學生感覺到能學以致用。任務(wù)的設(shè)計應(yīng)遵循由淺到深、循序漸進的手法,與理論章節(jié)知識的進度遙相呼應(yīng),使學生能夠逐步接受并加深理解。同一個知識點,可以舉不同項目中的相近任務(wù)反復(fù)講解,使學生對所學知識點理解透徹,達到舉一反三的目的。

2.2 以C語言為主,匯編語言為輔,講授單片機的指令系統(tǒng)

目前單片機的實際項目開發(fā)多采用C語言程序編寫,傳統(tǒng)的單片機教材和教學,大多采用匯編語言講授單片機的指令系統(tǒng)[2]。為了改變傳統(tǒng)所學與實際所用的差別,單片機指令系統(tǒng)的教學,應(yīng)在匯編語言的基礎(chǔ)上,增加單片機C語言程序設(shè)計內(nèi)容,采用以C語言為主,匯編語言為輔的編程方式。這樣可以使學生盡快與實踐接軌,提高單片機的開發(fā)效率,使學生畢業(yè)后更快更好地適應(yīng)工作環(huán)境。例如:在采用案例教學過程中,同一程序分別用匯編語言和C語言編寫,通過比較二者的優(yōu)缺點,可以真正理解兩種語言在實際應(yīng)用中的效果。Keil C51程序編譯工具,既可以實現(xiàn)匯編語言的編程,又可以實現(xiàn)C語言的編程。因此,在我們實際教學工作中,完全可以用Keil C51軟件實現(xiàn)了單片機軟件開發(fā)和應(yīng)用案例的日常教學,簡化理論課學習的內(nèi)容,降低學習難度,使學生能盡快上手單片機,這樣就提高了同學們學習單片機的熱情,同時也非常適合實踐應(yīng)用的需求,為將來工作中單片機的開發(fā)應(yīng)用奠定了良好的軟件基礎(chǔ)。

2.3 單片機仿真軟件和實驗開發(fā)板并重的雙重實驗教學模式

實驗教學中應(yīng)實施單片機仿真軟件和實驗開發(fā)板并重的雙重實驗教學模式。開發(fā)板是在一塊電路板上集成了單片機常用功能模塊,雖然體積小,但涵蓋了絕大多數(shù)單片機常用的實驗,并可以根據(jù)教學需求,開發(fā)擴展相關(guān)功能模塊[3]。課堂教學結(jié)束后,學生可將開發(fā)板帶回宿舍,只需要一臺電腦、一根USB下載線,就可在開發(fā)板上自學單片機或是做一些小項目鍛煉實際動手能力,充分調(diào)動學生學習單片機的積極性。開發(fā)板價格便宜,現(xiàn)在市面上簡單通用的單片機開發(fā)板(適用入門者學習),每套均價不到200元,完全滿足初學者做一些常用的開發(fā)應(yīng)用。實驗教學中,可先讓學生在Keil C51和Proteus軟件中編寫和仿真單片機案例程序,程序仿真正確無誤后,將程序下載到單片機開發(fā)板中,在開發(fā)板上實現(xiàn)實際電路功能的運行,強化對實際電路的認識和理解。

2.4 增添單片機課程設(shè)計專項實訓,實施理論與實踐并重的考核方案

在單片機課程結(jié)束前,可在臨近期末設(shè)置3周的單片機課程設(shè)計專項實訓,一周調(diào)研選題,一周設(shè)計軟硬件、一周焊接電路板,完成作品。具體實施的方法是讓學生獨立在單片機開發(fā)板上完成自選項目的設(shè)計與實現(xiàn),如“數(shù)字鐘”、“LED顯示器”、“數(shù)字溫度顯示計”等智能化小產(chǎn)品。3-4人一組,查閱資料,自選題目,自行設(shè)計電路圖、編輯程序,然后選擇并購買相應(yīng)的元器件,親自焊接并完成電路,提交課題設(shè)計報告。該課程設(shè)計的開展,可以使學生了解市場行情,培養(yǎng)學生開發(fā)項目的能力,團隊合作能力等,同時也可以作為學生期末考試實踐環(huán)節(jié)的考核成績。

為防止學生原搬照抄網(wǎng)上和有關(guān)資料的單片機實驗設(shè)計,達不到課程考核的初衷,單片機的考核還應(yīng)保留原有的理論考試。應(yīng)將傳統(tǒng)的以理論考核為主的期末閉卷考試與以實踐開發(fā)應(yīng)用為主的單片機課程設(shè)計考核相結(jié)合,將二者的成績共同作為單片機課程的最終考核成績。這樣,能同時對學生的理論基礎(chǔ)知識和實踐動手開發(fā)能力做出合理的考核評價。

3 結(jié)語

單片機是高職機械專業(yè)學生的重要基礎(chǔ)課程,目前教學效果普遍不佳。在分析高職機械專業(yè)學生單片機教學難點的基礎(chǔ)上,針對傳統(tǒng)教學模式的弊端,提出了該課程教學改革的具體實施措施。在教學方法上,實施了“項目任務(wù)驅(qū)動法”,較好地融合了理論與實踐教學;在教學內(nèi)容上,緊貼能實際運用的教學理論與技術(shù),如以C語言為主,匯編語言為輔的單片機編程語言;在教學手段上,實行單片機仿真軟件和實驗開發(fā)板并重的雙重實驗教學模式;在考核方式上,采用理論與實踐并重的考核方案。實踐教學結(jié)果表明,改進后的教學模式要優(yōu)于過去傳統(tǒng)教學模式的教學效果,達到了單片機課程教學改革的預(yù)期目標。

參考文獻:

[1]王效華,張詠梅.單片機原理與應(yīng)用[M].北京:北京交通大學出版社,2007:5.

[2]謝維成.單片機原理及應(yīng)用C51程序設(shè)計[M].北京:清華大學出版社,2008.

[3]周潤景,張麗娜.基于Proteus的電路及單片機系統(tǒng)的設(shè)計與仿真[M].北京:北京航空航天大學出版社,2006.

篇10

關(guān)鍵詞:C+PROTEUS;科技創(chuàng)新;單片機綜合設(shè)計

中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2015)30-0094-02

《單片機應(yīng)用技術(shù)》課程是一門理論與實踐性均很強的學科,是工科電類專業(yè)一門很重要的專業(yè)基礎(chǔ)課,它將數(shù)字電路和模擬電路的基礎(chǔ)知識、匯編語言及C語言編程技術(shù)、通信原理和微處理器知識等綜合在一起,屬于技術(shù)性、工程性、實踐性很強的一門課程。

《單片機原理及應(yīng)用》課程的特點是涉及硬件結(jié)構(gòu)復(fù)雜,涉及知識面較廣,經(jīng)常涉及到電子技術(shù)基礎(chǔ)、電路原理及編程C語言等知識,因此,要想將課堂所學的單片機系統(tǒng)結(jié)構(gòu)及應(yīng)用技術(shù)與所學知識有機融合,能夠在實踐中游刃有余地應(yīng)用,還需要反復(fù)的實際設(shè)計與實踐。針對《單片機原理及應(yīng)用》課程抽象難學,尤其難于應(yīng)用于實踐開發(fā)的現(xiàn)狀,我們在教學中注意做到理論聯(lián)系實際,將課堂教學與科研開發(fā)和科技創(chuàng)新緊密結(jié)合。

在課堂教學中,初期階段,采用C+PROTEUS的教學模式,引導學生應(yīng)用C語言編寫應(yīng)用驅(qū)動程序,然后在PROTEUS環(huán)境下仿真運行,逐步理解和領(lǐng)會單片機的設(shè)計思路。在綜合應(yīng)用階段,通過引入實際工程應(yīng)用實例,接觸實際科研項目中設(shè)計開發(fā)產(chǎn)品,使學生了解所學知識的應(yīng)用價值,激發(fā)學生的學習興趣,深化學生對知識點的理解。

在實踐環(huán)節(jié),由專業(yè)課教師指導,學生設(shè)計為主,帶動學生自己設(shè)計單片機課程的實驗開發(fā)平臺,并在所設(shè)計的開發(fā)系統(tǒng)基礎(chǔ)上,增設(shè)大量綜合性、設(shè)計性實驗,啟發(fā)學生的思維,以提高學生綜合分析問題和解決問題的能力。同時,在大學生科技創(chuàng)新和各類電子設(shè)計競賽活動中,積極引導學生應(yīng)用所學單片機技術(shù)進行開發(fā)設(shè)計,進而培養(yǎng)學生實踐能力、創(chuàng)新能力。

通過上述各個環(huán)節(jié),分層次、分階段,層層深入,真正在單片機課程教學中做到理論與實踐緊密結(jié)合,真正實現(xiàn)提高學生應(yīng)用單片機技術(shù)解決實際問題能力,進而探索一條在課程教學中如何提高大學生科技創(chuàng)新能力的可行之路。

一、改革教學環(huán)節(jié)

1.初期的課堂教學中,將C語言與PROTEUS軟件有機結(jié)合,提高學生對單片機的實際應(yīng)用能力。從目前單片機技術(shù)應(yīng)用層面上看,對單片機系統(tǒng)的開發(fā)一般采用C語言完成,因此,在課堂教學中強化推廣采用C語言進行編程設(shè)計的技術(shù),并逐步取代原來采用匯編語言進行設(shè)計的模式。從而,提高學生對單片機技術(shù)的實際應(yīng)用水平。PROTEUS軟件是一種近年來逐漸流行的單片機系統(tǒng)設(shè)計的專業(yè)仿真軟件,可以仿真51系列、AVR、PIC等常用的MCU,并提供周邊設(shè)備的仿真,例如373、led、示波器等。Proteus提供了大量的元件庫,有RAM、ROM、鍵盤、馬達、LED、LCD、AD/DA、部分SPI器件、部分IIC器件,編譯方面支持Keil和MPLAB等編譯器。在單片機教學初期,采用C語言+PROTEUS仿真的教學模式,引導學生應(yīng)用C語言編寫應(yīng)用驅(qū)動程序,然后在PROTEUS環(huán)境下,繪制原理圖并仿真運行,觀察設(shè)計效果是否正確,發(fā)現(xiàn)問題在修正編寫的C語言程序,如此反復(fù),逐步提高學生控制單片機和設(shè)計單片機系統(tǒng)的能力。

2.綜合應(yīng)用階段,通過工程設(shè)計實例,深化學生對知識點的理解。作為多年從事單片機課程教學的教師,具備多年來單片機開發(fā)與實踐的工作經(jīng)驗,在應(yīng)用單片機技術(shù)進行智能儀器儀表開發(fā)上有許多成功的設(shè)計項目,如基于單片機系統(tǒng)設(shè)計的大慶油田的井地電位成像監(jiān)測系統(tǒng)、開關(guān)磁阻電機設(shè)計、過套管電阻率測量儀開發(fā)設(shè)計等等,都是應(yīng)用單片機處理器進行設(shè)計的,在課堂教學中,結(jié)合上述實際開發(fā)項目,講述單片機的設(shè)計及應(yīng)用技術(shù),使學生直接接觸實際科研項目中設(shè)計開發(fā)產(chǎn)品,深化學生對知識點的理解,認識到所學知識的應(yīng)用價值,從而,激發(fā)學生的學習興趣,啟發(fā)學生思維。以單片機中應(yīng)用IO端口控制數(shù)據(jù)采集芯片為例:模數(shù)轉(zhuǎn)換器是實際工程應(yīng)用中較為常用的一種數(shù)據(jù)采集芯片,目前,主流的控制數(shù)據(jù)采集芯片的技術(shù)是通過單片機IO引腳控制方式實現(xiàn),通過單片機的引腳模擬數(shù)據(jù)采集芯片的工作時序,再通過C語言編程,完成對數(shù)據(jù)采集芯片的控制。在學習中,學生對于模數(shù)轉(zhuǎn)換芯片的工作時序圖始終感到很抽象,因此,在編程設(shè)計上往往不知從何入手。我們在教學中,結(jié)合橫向科研項目“過套管數(shù)據(jù)采集”中數(shù)據(jù)采集,通過實物演示、數(shù)據(jù)讀取實際設(shè)計案例講解,從工程數(shù)據(jù)采集需求,到硬件電路設(shè)計原理,以及最終程序上的編程實現(xiàn),在講解中,學生不僅了解了數(shù)據(jù)采集芯片的工作時序邏輯,而且也能夠獨立應(yīng)用單片機IO端口進行數(shù)據(jù)采集接口的設(shè)計。

二、改革實踐環(huán)節(jié)

1.在單片機課程實驗內(nèi)容上更多增設(shè)綜合性、設(shè)計性實驗,提高系統(tǒng)設(shè)計能力。由專業(yè)課教師指導,學生設(shè)計為主,更多增設(shè)綜合性、設(shè)計性實驗,以提高學生的系統(tǒng)設(shè)計能力。預(yù)計增加設(shè)計性、綜合性實驗:8_8LED點陣掃描輸出實驗、直流電機正反轉(zhuǎn)調(diào)速實驗、基于I2C通信接口的數(shù)據(jù)采集顯示實驗和基于串行通信接口的智能遠程數(shù)字鐘實驗等。通過大量綜合性設(shè)計性實驗,要求學生自行設(shè)計電路,編寫驅(qū)動控制程序,不僅可以幫助學生加深對單片機知識結(jié)構(gòu)的理解,而且可以提高基于單片機處理器的系統(tǒng)設(shè)計能力,培養(yǎng)學生的實際動手能力、學習興趣和創(chuàng)新精神。

2.強化單片機綜合課程設(shè)計環(huán)節(jié),提高應(yīng)用單片機綜合設(shè)計能力。在完成單片機基本課程及實踐基礎(chǔ)上,對機電、自動化、儀器類專業(yè)應(yīng)強化安排綜合課程設(shè)計,以課題項目的形式要求學生組隊共同完成,采取開放式管理的模式,在2~4周內(nèi),首先運用所學電子技術(shù)基礎(chǔ)知識,查閱相關(guān)文獻資料、電子線路參考設(shè)計手冊、電子元器件手冊,進行電路設(shè)計、程序編制,在設(shè)計過程中,鍛煉自己熟練掌握和使用先進的計算機電路仿真軟件工具,提高設(shè)計效率;其次進行電子市場調(diào)研、購買相應(yīng)元器件,完成電路設(shè)計制作、功能調(diào)試、參數(shù)測定、寫出設(shè)計總結(jié)報告;最后由教師組織全班進行設(shè)計交流、現(xiàn)場功能演示和提問答辯,同時教師完成每組的成績評定和設(shè)計總結(jié),為下次的課程設(shè)計提出合理化建議。在課程設(shè)計的選題上,發(fā)揮廣大教師的積極參與,不斷對課程設(shè)計的題目進行更新,修改課程設(shè)計的內(nèi)容,增加設(shè)計性、綜合性設(shè)計內(nèi)容。目前,開設(shè)的新增加的課程設(shè)計題目包括:模擬交通信號燈控制系統(tǒng);基于P89C51RD2單片機數(shù)據(jù)采集板卡設(shè)計實現(xiàn);基于凌陽單片機的音樂播放器設(shè)計開發(fā)實例;公交語音報站播放器設(shè)計;簡單計算器設(shè)計實現(xiàn);通過大量新穎的具有高技術(shù)含量的綜合設(shè)計,充分調(diào)動學生的熱情,讓學生從實驗中既學到知識,由學會探索問題進而解決問題,發(fā)揮潛能,提高創(chuàng)造能力。

3.積極引導學生將所學單片機技術(shù)應(yīng)用于大學生科技創(chuàng)新和各類電子設(shè)計競賽活動。單片機技術(shù)是現(xiàn)代電子系統(tǒng)設(shè)計開發(fā)的主流技術(shù),在科技創(chuàng)新和電子設(shè)計競賽中應(yīng)用這些技術(shù),往往有事半功倍的效果。鼓勵單片機課程學習好的同學積極參與科技創(chuàng)新和電子競賽,應(yīng)用單片機技術(shù)進行相關(guān)項目和題目的設(shè)計,以2013年為例,我校學生參加北京市電子設(shè)計競賽,設(shè)計中采用單片機技術(shù)進行設(shè)計開發(fā),獲得二等獎2項、三等獎3項,為學校爭光。通過學生間影響,激發(fā)學生學習單片機技術(shù)的熱情,形成一個較好的學習氛圍。

三、結(jié)束語

單片機原理及應(yīng)用課程是一門應(yīng)用性和實踐性很強的專業(yè)課,把握課程特點,了解學生理解上的薄弱環(huán)節(jié),通過課堂教學和實驗環(huán)節(jié)的改革與創(chuàng)新,各個環(huán)節(jié),分層次、分階段,層層深入,真正在單片機課程教學中做到理論與實踐緊密結(jié)合,激發(fā)學生學習的興趣,啟發(fā)學生的創(chuàng)造力,將單片機課程教學中所亟待解決的提高學生應(yīng)用單片機技術(shù)解決實際問題能力落到實處,進而,使學生創(chuàng)新能力和綜合實踐能力得到提高。

參考文獻:

[1]潘言全.單片機教學改革的思考[J].湖南師范學院學報:自然科學版,2007,(27).

[2]張琪,李菲,柴新.構(gòu)建高職院校開放式電子實驗室的研究[J].科技信息,2009,(10):18-21.

[3]王英紅.淺析開放式電工電子實驗室的建設(shè)[J].電氣電子教學學報,2012,(8):24-27.

[4]江錦花,大學生科技創(chuàng)新與開放實驗室管理模式[J].實驗室研究與探索,2009,(12):32-48.

[5]李麗宏.《單片機原理及應(yīng)用》課程教學改革嘗試[J].太原理工大學學報:社會科學版,2001,(02).

[6]覃金昌,王為慶.機械類單片機應(yīng)用實踐能力培養(yǎng)體系的構(gòu)建[J].考試周刊,2010,(47).

[7]曹建樹,薛龍,蔣力培,焦向東,俞建榮,黃愛峰.單片機創(chuàng)新實踐教學改革與實驗室建設(shè)[J].實驗室研究與探索,2005,(09).