新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 用74LS164驅(qū)動數(shù)碼管

用74LS164驅(qū)動數(shù)碼管

作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
3、實(shí)訓(xùn)進(jìn)度安排

(1)第一天上午:布置任務(wù)、分組、確定題目。

本文引用地址:http://butianyuan.cn/article/201611/323275.htm

(2)第一天下午和晚上:查找資料確定方案,畫出系統(tǒng)組成框圖、硬件電路圖、軟件流程圖。

(3)第二天上午:同步進(jìn)行元件購買和軟件設(shè)計

(4)第二天下午和晚上:同步進(jìn)行軟件設(shè)計與電路焊接

(5)第三天上午:同步進(jìn)行軟件設(shè)計與電路焊接

(6)第三天下午和晚上:同步進(jìn)行軟件仿真調(diào)試和電路調(diào)試

(7)第四天上午:軟硬件聯(lián)調(diào)

(8)第四天下午和晚上:軟硬件聯(lián)調(diào),撰寫實(shí)訓(xùn)報告(每組一份)

(9)第五天上午和下午:產(chǎn)品測試與答辯

通過本次課程設(shè)計的實(shí)踐,進(jìn)一步學(xué)習(xí)、掌握單片機(jī)應(yīng)用系統(tǒng)的有關(guān)知識,加深了解單片機(jī)的工作原理。也進(jìn)一步掌握簡單單片機(jī)應(yīng)用系統(tǒng)的設(shè)計、制作、調(diào)試的方法。同時還提高自身的動手實(shí)踐能力和科學(xué)的思維能力。

同時值得一提的是,在此設(shè)計過程中,就對時分之間的點(diǎn)閃爍體現(xiàn)是用查表輸出形式實(shí)現(xiàn)的,由于本系統(tǒng)設(shè)計是采用74LS164驅(qū)動數(shù)碼管,只有一個數(shù)據(jù)信號輸入口,所以不能對數(shù)碼管進(jìn)行“位”控,只能對數(shù)碼管的整體顯示進(jìn)行控制。所以每秒內(nèi)至少需兩次數(shù)據(jù)輸出并顯示,第一次輸出顯示的數(shù)的小數(shù)點(diǎn)都不亮,第二次輸出顯示的數(shù)(數(shù)的值不變)中第三個數(shù)碼管的數(shù)的小數(shù)點(diǎn)亮,兩者交替輸出顯示,即可實(shí)現(xiàn)點(diǎn)時分之間的點(diǎn)閃爍。在具體實(shí)現(xiàn)過程中是用查表方式實(shí)現(xiàn),即在第二次輸出顯示時,把R3的值加10,既R3查表所得的值是TAB表格中第二排數(shù)值(參看程序清單),而第二排數(shù)值所對應(yīng)顯示的數(shù)都是小數(shù)點(diǎn)亮的,在此次輸出顯示完成后,再把R3減10,返回原來的值并繼續(xù)進(jìn)行計時。另外在設(shè)計按鈕時,一開始遇到的難題是:按一下按鈕,時或分所加的數(shù)值并不為1,加的數(shù)為不確定值,最后經(jīng)過研究,使設(shè)計程序在查詢P1.2,P1.3端口時,若檢測到高電平時需延遲20ms左右后,再進(jìn)行二次檢測,以消除按鈕的抖動干擾,使之按一下能正確調(diào)節(jié)時分進(jìn)行加1調(diào)整(參看程序清單)。最后值得總結(jié)的是,在程序設(shè)計過程中還存在很多細(xì)節(jié)上的問題,如因?yàn)闆]有對進(jìn)位標(biāo)志位CY清零,在其他程序都正確的情況下卻始終調(diào)不出正確滿意的結(jié)果,最后費(fèi)了很多時間精力去查找尋錯,才得以解決,這使我認(rèn)識到在程序設(shè)計過程中,平時必須加強(qiáng)對一些細(xì)小環(huán)節(jié)的重視,這樣才能在真正程序設(shè)計時能做到正確快速的調(diào)試成功。總的說來,這次課程設(shè)計收益匪淺,通過認(rèn)真思考、查找資料,以及和同學(xué)、老師的探討,解決了很多問題,同時也增長了很多在課堂上學(xué)不到的知識。

;中斷向量程序段org    0000hajmp   start  org   000bh    ;定時器T0中斷向量地址ajmp  dingshi   org   001bh    ;定時器T0中斷向量地址ajmp  ds;*********************************************;初始化程序段org  0030h   start:  mov   sp,#30h   mov    tmod,#11h     ;定時器設(shè)置mov    th0,#3ch      ;定時1秒mov    tl0,#0b0hmov    iE,#8ah       ;打開定時中斷mov    p1,#00hsetb   tr0;*********************************************;主程序段main:   mov    p1,#00hmov    a,p1jb     acc.3,proc3    ;查詢P1.3端口電壓jb     acc.2,proc2    ;查詢P1.2端口電壓ajmp   main;*********************************************;二次檢測P1.3,P1.2端口電平proc3:  acall  delay0         ;延時20ms mov    p1,#00hmov    a,p1jb     acc.3,jiafenretproc2:  acall  delay0         ;延時20msmov    p1,#00hmov    a,p1jb     acc.2,jiashiret;*********************************************;調(diào)節(jié)分子程序jiafen: clr    p1.3mov    ie,#00hclr    tr0inc     r1cjne    r1,#0ah,xianshi0    ;十進(jìn)位mov     r1,#00hinc     r2cjne    r2,#06h,xianshi0    ;六進(jìn)位mov     r2,#00hxianshi0:acall   showmov     ie,#8ah      ;打開TO,T1中斷setb    tr0          ;使T0開始計時ret;*********************************************; 調(diào)節(jié)時子程序jiashi: clr     p1.2mov    ie,#00hclr    tr0cjne    r4,#02h,sjw   ;判斷R4是否為2;*******;二十四清零inc     r3            cjne    r3,#04h,xianshi1 ;四進(jìn)位mov     r3,#00hinc     r4cjne    r4,#03h,xianshi1 ;三進(jìn)位mov     r4,#00hajmp    xianshi1;********sjw:    inc     r3             cjne    r3,#0ah,xianshi1   ; 十進(jìn)位mov     r3,#00hinc     r4cjne    r4,#03h,xianshi1   ;三進(jìn)位mov     r4,#00hxianshi1:acall  showmov     ie,#8ah     ;打開TO,T1中斷setb    tr0         ;使T0開始計時ret;*********************************************;TO產(chǎn)生中斷計時子程序dingshi:mov    th1,#0ffh    ;T1賦初值(可任意值)mov    tl1,#0fehmov     th0,#3ch    ;T0賦初值(定時0.1s)mov     tl0,#0b0h inc     r6cjne    r6,#0ah,dings0    ; 十進(jìn)位mov     r6,#00hsetb    et1setb    tr1inc     r5cjne    r5,#3ch,dings4    ; 60進(jìn)位mov     r5,#00hinc     r1cjne    r1,#0ah,dings4    ; 十進(jìn)位mov     r1,#00hinc     r2cjne    r2,#06h,dings4    ; 六進(jìn)位mov     r2,#00hcjne    r4,#02h,sjw       ;判斷R4是否為2
				
            
                
			
							
上一頁 1 2 下一頁

關(guān)鍵詞: 74LS164數(shù)碼

評論


技術(shù)專區(qū)

關(guān)閉