999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

發揮 Proteus 和 Keil 軟件在單片機教學中的作用

2019-09-07 07:13:32張正明王麗娟石建國電子科技大學中山學院
數碼世界 2019年9期
關鍵詞:單片機程序

張正明 王麗娟 石建國 電子科技大學中山學院

1 引言

單片機課程是電子信息類專業必修的專業課程,是一門綜合性和實踐性都很強的課程,通過該課程的學習,使學生了解單片機的基本原理及其應用,了解匯編指令功能、編程方法,掌握單片機應用系統的硬件組成,能夠使用C51 語言進行軟件開發,培養學生分析、解決實際問題的能力。

在進行傳統的理論教學時,要想課堂教學安排生動、有趣,難度比較大,難以讓學生看到電路變化、程序變化對實驗結果的影響,難有切身感受;在進行實踐教學時,受教學場地、設備數量和實驗箱產品更新慢等因素的影響,操作靈活性有限。鑒于此,我們在教學過程中引入 Proteus 軟件和Keil 軟件,可以方便地在 Proteus 平臺上中繪制和修改硬件電路圖,加深學生對單片機應用系統硬件電路的理解;在 Keil 軟件中編寫和修改相應指令,然后在 Proteus 平臺上進行聯合仿真。

在虛擬的硬件平臺上看到程序運行的結果,可以加深學生對電路連接和指令功能的理解。這樣,課堂上方便老師演示和講解,實驗課上和課下方便學生進行各種應用的設計,激發學生學習的興趣和積極性,增強學習效果。

發揮Proteus 軟件和 Keil 軟件的聯合應用,可以節約耗材,縮短開發周期,具有逼真效果。下面以矩陣鍵盤的輸入和數值顯示為例說明該方法的優勢。

2 4*4 矩陣鍵盤及顯示

4*4 矩陣鍵盤,共16 個按鍵,如果連接成獨立按鍵就需要16 個IO 管腳,而連接成矩陣鍵盤只需要8 個IO 管腳,節省了8 個管腳,按鍵越多節省的管腳越多,這就是矩陣鍵盤的優點,當然其缺點就是判斷具體按鍵的過程要復雜一下,這是以軟件的復雜性來換取硬件資源的節省的。

在Keil 平臺上建立工程文件并編輯程序,匯編鏈接產生HEX文件,在Proteus 平臺上連接電路圖,并在單片機芯片的屬性中鏈接對應的HEX 文件,即可以運行單片機應用系統。

圖1 4*4 矩陣鍵盤及顯示

在圖1 中,第0、1、 2、 3 列分別與P1.0、P1.1、 P1.2、 P1.3 相連接,第0、1、 2、 3 行分別與P1.4、 P1.5、P1.6、P1.7 相連接。在程序中可以先對管腳做適當定義,后面的程序就可以只考慮行列位置,而忽略具體管腳。由于采用逐行掃描方式,我們這里只定義列管腳,不定義行管腳。逐行掃描時,只有加到檢查行的信號為0,而其他行和所有列信號為1,4 次掃描的輸出信號我們用4 個元素的一維數組output 來表示。

sbit COL0=P1^0;

sbit COL1=P1^1;

sbit COL2=P1^2;

sbit COL3=P1^3;

uchar code output[4]={0xEF,0xDF,0xBF,0x7F};

我們用一個函數getkey( )來實現按鍵的讀入和判斷,當K0~K15 按下時,函數返回0-F,如果沒有按鍵按下,函數返回0xFF。下面就是函數中的關鍵程序段。每個for 循環都執行4 次循環,相應地對4 行按鍵進行行掃描判別,i 對應第i 行,然后根據COL0~3的值判別按鍵列的位置,從而得到按鍵值。

if(P1= =0x0F)

result=0xFF;

else

{

for(i=0;i<4;i++)

{

P1=output[i];

if(!COL0) {result=0+4*i;break;}

else if(!COL1) {result=1+4*i;break;}

else if(!COL2) {result=2+4*i;break;}

else if(!COL3) {result=3+4*i;break;}

}

}

有了getkey( )函數,就可以在需要的時候調用該函數,讀取按鍵值,并進行顯示,下面展示了本程序的主函數。void main()

{

uchar x=0;

ledtube(x);

while(1)

{

x=getkey();

if(x!=0xff)

ledtube(x);

}

}

其中,ledtube(x)函數把x 值以數碼管形式顯示出來,這里的數碼管與P2 口相連接,數碼管采用共陰極數碼管。圖1 中顯示的是當按鍵K9 按下時的運行情況。

上例中還可以通過改變R2 的值,觀察限流電阻的作用,當電阻值由51 歐姆變小時數碼管亮度增強,而當電阻值由51 歐姆增大時數碼管亮度減弱,電阻增大到120 歐姆時,數碼管不亮。

如果以上矩陣鍵盤接線有變化,只需要在定義相應的管腳和output 初始化時做相應的修改即可。也可以按列掃描的方法讀取按鍵值。

3 6*6 矩陣鍵盤及顯示

圖2 6*6 矩陣鍵盤及顯示

如果增加按鍵數量,也可以由以上的程序稍作修改,就可以完成相應的任務。同時也可以增加獨立數碼管的數量顯示更多的信息。

圖2 是6*6 矩陣鍵盤的連接圖,為簡單起見,將列信號與P1 口相連接,將行信號與P3 口相連接,再增加一個數碼管,通過修改程序可以實現36 個按鍵的讀入和值的顯示。

兩個數碼管分別連接到P0 口和P2 口,但是這時必須采用共陽極數碼管,同時在P0 口的管腳處增加了上拉電阻,上拉電阻值為10K歐姆。這是P0 端口在使用時和其它三個端口的區別。所有這些設置和現象在仿真環境下可以輕易做到,圖2 是按下K26 時的運行情況。

4 結束語

本文以矩陣鍵盤的讀取和值的顯示為例,介紹了Proteus 軟件和Keil 軟件在單片機學習中的作用,有效利用好這兩個軟件可以方便介紹電路和指令的作用,提高教學效果。

猜你喜歡
單片機程序
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
主站蜘蛛池模板: 色综合热无码热国产| a级毛片在线免费| 欧美国产在线一区| 黄色网址手机国内免费在线观看| 亚洲成人黄色在线| 99久久精品美女高潮喷水| 日本91视频| 老司机久久精品视频| 国产午夜在线观看视频| 国产精品成人AⅤ在线一二三四| 国模私拍一区二区| 国产一区二区福利| 日本一区二区三区精品国产| 国产三区二区| 国产精品私拍在线爆乳| 91在线日韩在线播放| 91福利片| 成人在线观看不卡| 欧美成人精品一区二区| 成人午夜网址| 婷婷亚洲视频| 午夜视频免费试看| 最新国产在线| 51国产偷自视频区视频手机观看 | 91精品啪在线观看国产60岁 | 国产麻豆另类AV| 2020久久国产综合精品swag| 亚洲无线视频| 天堂成人在线| 免费a在线观看播放| 性欧美在线| www.精品国产| 国内a级毛片| 婷婷六月综合| 国产特级毛片| 国产成人无码播放| 四虎免费视频网站| 国产在线麻豆波多野结衣| 亚洲Av综合日韩精品久久久| 午夜a视频| 亚洲一区二区在线无码| 国产一区在线观看无码| 亚洲国产日韩欧美在线| 亚洲激情区| 国产伦片中文免费观看| 99999久久久久久亚洲| 国产午夜无码片在线观看网站 | 首页亚洲国产丝袜长腿综合| 国产呦视频免费视频在线观看| 亚洲人成影视在线观看| 成人午夜久久| 亚洲无码37.| 亚洲成肉网| 免费A∨中文乱码专区| 日韩一区精品视频一区二区| 特级毛片免费视频| 亚洲日本中文字幕乱码中文 | 重口调教一区二区视频| 国产原创演绎剧情有字幕的| 在线观看国产网址你懂的| 制服丝袜 91视频| 国产91精品调教在线播放| 免费又爽又刺激高潮网址| 亚洲中文久久精品无玛| 91国内外精品自在线播放| 全部免费毛片免费播放| 国产日韩欧美在线播放| 国产高清自拍视频| 三级毛片在线播放| 99久久国产精品无码| 亚洲人成影院午夜网站| 最新日韩AV网址在线观看| 亚洲国产欧美自拍| 久久人体视频| 欧洲成人免费视频| 直接黄91麻豆网站| 亚洲免费成人网| 国产成人精品免费视频大全五级| av色爱 天堂网| 亚洲精品无码AV电影在线播放| 毛片免费高清免费| 欧美午夜小视频|