<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)秒表課程設(shè)計(jì)

          單片機(jī)秒表課程設(shè)計(jì)

          作者: 時(shí)間:2013-03-12 來源:網(wǎng)絡(luò) 收藏

          ;***********************************************************
          ; 暫停鍵K3,快加鍵K4程序
          ;***********************************************************
          here:jb p1.0,here
          show:clr tr1
          clr tr0
          acall xianshi
          kuaijia:jb p1.2,kuaijia ;等待P1.2為0 快加
          clr tr0
          setb tr1
          here3:jnb p1.2,here3
          ajmp here
          ;***********************************************************
          ; 外部中斷INT0子程序-----計(jì)時(shí)按鍵K1子程序
          ;***********************************************************
          zhongduan0: setb tr0 ;計(jì)時(shí)按鍵
          reti
          ;***********************************************************
          ; 外部中斷INT1子程序----復(fù)位按鍵K2子程序
          ;***********************************************************
          zhongduan1:clr tr0 ;復(fù)位按鍵
          clr tr1
          mov 12h,#00h
          mov 11h,#00h
          acall xianshi ;調(diào)用顯示子程序
          mov r1,#00h
          mov r2,#00h
          reti
          ;***********************************************************
          ; 加一子程序
          ;***********************************************************
          jia1: inc r1 ;加1子程序
          cjne r1,#0ah ,loop ;判斷是否到表尾
          mov r1,#00h
          inc r2
          cjne r2,#0ah,loop
          mov r2,#00h
          loop: mov 12h,r1 ;重新賦值
          mov 11h,r2
          ret
          ;***********************************************************
          ; 顯示子程序
          ;***********************************************************
          xianshi:mov r7,#02h ;2個(gè)數(shù)碼管顯示子程序
          mov r0,#12h
          loop5: mov r6,#08h ;8位2進(jìn)制數(shù)
          mov a,@r0
          movc a,@a+dptr
          loop6:rlc a ;循環(huán)左移
          clr p3.1
          mov p3.0,c
          setb p3.1
          djnz r6,loop6
          dec r0
          djnz r7,loop5
          ret
          ;***********************************************************
          ; 定時(shí)器T0子程序
          ;***********************************************************
          yanshi: mov tl0,#2Ch ;定時(shí)子程序
          mov th0,#0CFh
          djnz r3,loop7
          acall jia1 ;調(diào)用加1子程序
          acall xianshi ;調(diào)用顯示子程序
          mov r3,#40
          loop7: reti
          ;***********************************************************
          ;定時(shí)器T1子程序
          ;***********************************************************
          dingshi1:mov tl1,#78h ;置初值,定時(shí)10MS
          mov th1,#0ech
          clr tr0
          setb tr1
          mov 12h,r1
          mov 11h,r2
          jnb p1.0,show
          acall jia1
          acall xianshi
          lop7:reti
          ;***********************************************************
          tab:db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
          end

          十一、課程設(shè)計(jì)心得體會(huì)
          1、 認(rèn)真審題,看懂題目的要求!選擇適當(dāng)?shù)恼n題,不益太簡(jiǎn)單或者太難。做到既能把課題完成又能鍛煉自己的能力!
          2、 根據(jù)課題要求,復(fù)習(xí)相關(guān)的知識(shí),查詢相關(guān)的資料。
          3、 根據(jù)實(shí)驗(yàn)條件,找到適合的方案,找到需要的元器件及工具,準(zhǔn)備實(shí)驗(yàn)。
          4、 根據(jù)課程設(shè)計(jì)的要求和自己所要增加的功能寫好程序流程圖,在程序流程圖的基礎(chǔ)上,根據(jù)芯片的功能寫出相應(yīng)的程序。然后再進(jìn)行程序調(diào)試和相應(yīng)的修改,以達(dá)到能夠?qū)崿F(xiàn)所要求的功能的目的。
          5、 還要根據(jù)實(shí)驗(yàn)的實(shí)際情況,添加些額外程序來使系統(tǒng)更加的穩(wěn)定,如開關(guān)的消震蕩(采用延遲)。
          6、 程序要盡量做到由各個(gè)子程序組成,在有些程序后面最好加注釋,這樣在程序出錯(cuò)的檢查過程中可以更容易查找的到,也更簡(jiǎn)潔,更明白易懂。
          7、 該實(shí)驗(yàn)的程序可以參考DVCC系列微機(jī)仿真實(shí)驗(yàn)系統(tǒng)實(shí)驗(yàn)指導(dǎo)書中的串并轉(zhuǎn)換實(shí)驗(yàn),也可自己根據(jù)自己熟悉的方法來編程。
          8、 在設(shè)計(jì)控制開關(guān)時(shí),注意2個(gè)中斷的打開和關(guān)閉的先后順序,否則就會(huì)出錯(cuò)。
          9、 這次的課程設(shè)計(jì)重點(diǎn)是理論與實(shí)際的相結(jié)合。不再只讀書了。
          10、 該設(shè)計(jì)從頭到尾都要自己參與,熟悉了對(duì)整個(gè)設(shè)計(jì)的過程,更系統(tǒng)的鍛煉了自己。

          此設(shè)計(jì)完畢?。?/P>

          -------------------------------------------------------
          下面提供一個(gè)程序(供參考的)
          ;開機(jī)初始化
          MOV P3,#0FFH;對(duì)P3口初始化,設(shè)置為高電平,用于
          MOV P0,#0FFH;使顯示時(shí)間數(shù)碼管熄滅
          CLR F0
          CLR F1
          MOV DPTR,#NUMTAB ;指定查表啟始地址
          ;等待
          ;根據(jù)按鍵的輸入判斷執(zhí)行什么功能

          ;按鍵1按下則執(zhí)行功能1
          MOV P3,#0FFH;對(duì)P3口初始化,設(shè)置為高電平,用于
          MOV P0,#0FFH;使顯示時(shí)間數(shù)碼管熄滅
          START:JB P3.6,START1;循環(huán)判斷開始按鈕K1是否按下?
          ACALL DELAY10;延時(shí)10毫秒觸點(diǎn)消抖
          JB P3.6,START;如果是干擾就返回
          JNB P3.6,$;等待按鍵松開
          LJMP GN1

          ;按鍵2按下則執(zhí)行功能2

          START1: JB P3.7,START;循環(huán)判斷開始按鈕K2是否按下?
          ACALL DELAY10;延時(shí)10毫秒觸點(diǎn)消抖
          JB P3.7,START1;如果是干擾就返回
          JNB P3.7,$
          LJMP GN2



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();