單片機(jī)虛擬試驗箱設(shè)計與研究
(1) 利用51單片機(jī)的定時器設(shè)計一個時鐘系統(tǒng);
(2) I2C總線擴(kuò)展DS1307時鐘芯片設(shè)計一個高精度時鐘系統(tǒng);
(3) I2C總線擴(kuò)展DS1621溫度芯片設(shè)計一個實(shí)時溫度報警的時鐘系統(tǒng)。
4 單片機(jī)虛擬試驗箱實(shí)現(xiàn)教學(xué)使用實(shí)例
下面就以六位數(shù)碼管動態(tài)顯示實(shí)驗為例說明基于Proteus的單片機(jī)虛擬試驗箱的使用。
實(shí)驗內(nèi)容:六位共陰數(shù)碼管動態(tài)掃描顯示數(shù)123456;
實(shí)驗?zāi)康模豪斫鈹?shù)碼管動態(tài)顯數(shù)原理并學(xué)會單片機(jī)控制數(shù)碼管動態(tài)顯數(shù)。
實(shí)驗電路圖說明:使用了兩個74HC573鎖存器,取名為段鎖存器和位鎖存器,分別控制數(shù)碼管(共陰極)的段選端和位選端,兩個鎖存器都使用P0口送數(shù);并分別使用P2.0和P2.1來控制兩鎖存器的LE鎖存控制端,LE=1時選通,LE=0時鎖存。
實(shí)驗操作步驟:(1)根據(jù)實(shí)驗電路圖使用Keil C51 uVision2編寫代碼;(2)將編寫好的代碼編譯生成HEX格式文件加載到試驗箱中的51單片機(jī)中;(3)點(diǎn)擊試驗箱左下角運(yùn)行按鍵即可完成實(shí)驗。
本實(shí)驗部分C51語言代碼如下:
uchar code d_table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d}; //共陰0~6段碼
uchar code w_table []={
0xff/*空選*/,0xfe/*選中第一位*/,0xfd,0xfb,0xf7,0xef,
0xdf}; //1~6位選碼
sbit duan=P2^0; //段鎖存器選通/鎖存端
sbit wei=P2^1; //位鎖存器選通/鎖存端
void Display_123456() //動態(tài)顯示123456函數(shù)
{
for(num=1;num7;num++)
{
P0=w_table[num];
//送位碼(選中相應(yīng)數(shù)碼管)
wei=1; //選通
wei=0; //鎖存
P0=d_table[num];
//送段碼(即字型碼)
duan=1;
duan=0;
delay(5); //延遲5 ms
}
}
實(shí)驗效果:如圖2所示,六位數(shù)碼管同時顯示123456。
利用Proteus軟件設(shè)計的單片機(jī)虛擬試驗箱具有很好的實(shí)用性。單片機(jī)虛擬試驗箱,不僅克服了傳統(tǒng)試驗箱購買價格昂貴,實(shí)驗內(nèi)容固定,保養(yǎng)維護(hù)困難的缺點(diǎn),而且可以幫助學(xué)生隨時隨地更快、更好地掌握課堂講述的內(nèi)容,加深對單片機(jī)概念、原理的理解,彌補(bǔ)課堂理論教學(xué)的不足,更進(jìn)一步增強(qiáng)學(xué)生學(xué)習(xí)單片機(jī)的興趣,大大提高學(xué)生的動手創(chuàng)新能力,并且作為個人實(shí)驗平臺,可以充分利用它所提供的資源,幫助學(xué)生提高工程應(yīng)用能力。
參考文獻(xiàn)
[1] 周潤景,張麗娜.基于Proteus的電路及單片機(jī)系統(tǒng)設(shè)計與仿真[M].北京:北京航空航天大學(xué)出版社,2006.
[2] 張毅剛.新編MCS-51單片機(jī)應(yīng)用設(shè)計[M].第三版.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2006.
[3] 李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航天航空大學(xué)出版社,2005.
[4] 唐勇波,徐東輝.基于Proteus的單片機(jī)課程教學(xué)與實(shí)驗改革初探[J].宜春學(xué)院學(xué)報,2009,4(31):147-149.
[5] 蘇紅旗,朱紅.關(guān)于虛擬實(shí)驗室建設(shè)的思考與探討[J].科技創(chuàng)新導(dǎo)報,2010,1:31.
[6] 葛海江,陶姍.融合Proteus于KeiluVision的C51教學(xué)模式探索與實(shí)踐[J].中國科技信息,2009,24:238.
評論