AT90S8515單片機對LED數(shù)碼顯示管的控制設計
出處:電子發(fā)燒友 發(fā)布于:2019-03-02 13:39:09
AT90S8515單片機對LED數(shù)碼顯示管的控制設計
二、字符8右循環(huán)移位顯示程序
在SL-AVR開發(fā)實驗器LED上實現(xiàn)字符8右循環(huán)移位顯示的源程序清單如下:
AT90S8515單片機對LED數(shù)碼顯示管的控制設計
AT90S8515單片機對LED數(shù)碼顯示管的控制設計
第1行表示程序中包含定義AT90S8515特殊功能寄存器的頭文件8515def.inc,指明所用器件為AT90S85150接著定義寄存器r16、r22分別為暫存器temp、scndp。在程序前面用偽指令equ為寄存器賦予能幫助編程者識別數(shù)據(jù)用途的符號,提高了程序的可讀性,便于程序的修改,讀者也應養(yǎng)成用這種方法編程的習慣。程序中其他語句的功能見注釋。
本程序在SL-AVR開發(fā)實驗器的隨機光盤中的文件名為SLAVR731.ASM。
三、編輯、匯編、串行和運行
1.編輯、匯編
運行匯編程序wavr.asm,編輯SIJAVR731.ASM。
執(zhí)行Assemble命令對SLAVR731.ASM程序進行匯編,生成SLAVR731.EEP、SLAVR731.OBJ、SLAVR731.HEX、SLAVR731.LST文件。
2.串行和運行
用串行線將SL-AVR的C22與AT3接好,將單片機AT90S8515插入鎖緊插座并鎖緊。將SL-AVR開發(fā)實驗器與PC機串口連接好,接上電源,開電源,運行串行一F載程序Avl‘Prog,將SLAVR731.
HEX文件到SL-AVR開發(fā)實驗器中的AT90S8515中。按復位鍵,程序開始運行,符號8從塊接至左側的發(fā)光二.極管,因此,程序運行時鎖綮插座左側對應于PD0一PD5輸出狀態(tài)指示的發(fā)光二極管也在同時循環(huán)顯示。
四、修改顯示程序練習
1.修改、顯示字符
共陰數(shù)碼管顯示0—F,所對應的段碼為3FH、06H、SBH、4FH、66H、6DH7DH、07H、7FH、6FH、77H、7CH、39H、5EH、79H、71H、F3H、76H.如欲點亮小數(shù)點;則要將位高位寫為1.$修改顯示字符只需修改源程序中的指令$lclitemp,穢’o如要循環(huán)顯示字符A,則將“l(fā)ditemp,7f”改成“l(fā)ditemp,77”。tSL-AVR開發(fā)實驗器的隨機光盤中的SLAVR731.ASM為只讀文件。先將其屬性改為“正?!薄缎薷奈募傩缘牟僮魅缦拢哼x中待改文件SLAVR731.ASM,從顯示框的左邊可見文件屬性為“只讀”。單擊鼠標右鍵,,彈出選擇菜單,點擊“屬性”彈出屬性顯示框,取消屬性顯示選擇框中只讀欄的黑點,按“確定”鍵,就將SLAVR731.ASM文件的屬性改為“正?!绷恕4藭r,從顯示框的左邊可見文件屬J為“正?!保?。運行匯編程序wavr.a(chǎn)$ni,打開文件SLAV$731.ASM,將指令“l(fā)ditemp.7f”改成“l(fā)dlitemp.‘77”。按第三條進行匯編,串行“,并運行程序,顯示的字符就改變了。
2.顯示2位字符
置顯示初值指令“l(fā)discndp,Ob11()11111”中的二進制數(shù)Ob11011111的低6位對應LED數(shù)碼管的顯示。
狀態(tài)。其O的個數(shù)表示顯示字符的個數(shù)。因此,簡單的方法是修改Ob11011111來改變同時顯示的字符數(shù)。如要同時顯示2位數(shù),可將Ob11011111改成Ob11001111。但應當注意的是,由于數(shù)碼管DO~D5的a—h直接接到單片機的PBO—PB7,同時顯示的位數(shù)多了,會增加口線的負載電流,必須考慮單片機的口線驅動能力,故用此法同時顯示的位數(shù)不宜多。
采用動態(tài)掃描的方式顯示兩位數(shù)若干次后,再向右循環(huán)顯示下兩位數(shù),依此類推,則可根據(jù)需要同時顯示任意位數(shù)的字符。
3.改變字符移動的方向
將指令“l(fā)discndp,Ob11011111”改為“l(fā)discndp,Ob11111110”,指令“rors.cndp”改為“r1scndp”,便可以將字符移動的方向改成從右向左。
4.改變字符移動的$速度
將指令“l(fā)ditemp,40”中的立即數(shù)40改大,字右到左循環(huán)顯示。由于SL-AVR中的PDO~PD5用短路符移動的.速度變慢,反之字符移動的速度變快。
以上為同一字符的移動顯示,也可以:過程序進行修改,增加查表程序,實現(xiàn)字符O~F交替循環(huán)移動,還可以先將欲顯示的字符存到指定的顯示緩沖區(qū),用查表的方式取出對應的段碼,再進行動態(tài)顯示。
通過以上實驗,讀者對AVR單片機的指令系統(tǒng)、AVR匯編軟件、AVR串行軟件,以及SL-AVR開發(fā)實驗器的硬件環(huán)境有了進一步的了解,同時熟悉了利用SL-AVR開發(fā)實驗器隨機光盤中提供的程序進行編程實驗的方法。
SL-AVR開發(fā)實驗器隨機光盤中的實驗程序很多,讀者可以自選程序進行實驗,通過此法掌握AVR單片機的設計開發(fā)方法。
版權與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關法律責任。
本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。
如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
- LED驅動電源技術參數(shù)與選型指南2025/12/22 11:50:29
- LED 手電筒控制器/驅動器參考設計2023/9/13 16:18:33
- 在 LED 照明和 LCD 背光設計中實現(xiàn)最高效率2023/7/17 15:35:18
- ADALM2000實驗:LED作為光傳感器2023/5/24 16:33:23
- 如何使用 LED 作為光傳感器2023/1/31 15:53:50









