顯示和鍵盤流程圖及程序_第1頁
顯示和鍵盤流程圖及程序_第2頁
顯示和鍵盤流程圖及程序_第3頁
顯示和鍵盤流程圖及程序_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、3.2 部分軟件設計3.2.3顯示子程序動態(tài)顯示程序框圖如圖所示。顯示程序的要點有兩個:一是代碼轉換。因為直接驅動LED顯示器的是字形碼,而人們習慣的是0、1、2、F等字符,因此,必須將待顯示的字符轉換成字形碼。轉換用查表的方法進行。二是通過軟件實現(xiàn)逐位輪流點亮每個LED。為了實現(xiàn)代碼轉換,首先開辟一個顯示緩沖區(qū),將待顯示的字符預先存放在緩沖區(qū)中。由于有4位LED顯示器,故不妨假設顯示緩沖區(qū)長度為4個字節(jié)。顯示緩沖區(qū)地址為DIS0DIS3 ,DIS0單元與最左邊一位LED相對應,DIS3單元與最右邊一位LED相對應。程序清單如下:DIS: ORG 0500HMOV A,#00000011BMO

2、V DPTR,#7F00HMOVX DPTR,AMOV R0,#78HMOV R3,#7FHMOV A,R3LD: MOV DPTR,#7F01HMOVX DPTR,AINC DPTRMOV A,R0ADD A,#0DHMOVC A, DPTRACALL DLYMOV A ,R3JNB A,R0RR A,LD1MOV R3,AINC R0AJMP LD0LD1: SJMP LD1DSEG:DB 3FH,06H,5BH,4FH,66H,6DH 7DH,07H,7FH,6FHDLY: MOV R7,#02HDL: MOV R6,#0FFHDL1: DJNZ R6,DL1DJNZ R7,DLRET3

3、.2.4鍵盤子程序鍵盤掃描子程序框圖如圖圖3-4 鍵盤掃描子程序框圖鍵盤掃描子程序如下:KEY: ORG 0440H ;ACALL KS ;調(diào)用KS判別是否有鍵按下 JNZ K1 ;有鍵按下轉移 ACALL DIR ;無鍵按下,調(diào)延時子程序AJMP KEY ;K1: ACALL DIR ;加長延時時間,消除鍵抖動ACALL DIR ; ACALL KS JNZ K2 AJMP KEY K2: MOV R2MOV R4K3: MOV DPTRMOV AMOVX DPTRINC DPTR INC DPTR MOVX AJB ACC.0MOV A送A AJMP LK L1: JB ACC .1MOV

4、 AAJMP LK L2: JB ACC .2MOV A送AAJMP LK L3: JB ACC.3MOV A送ALK: ADD A PUSH ACC K4: ACALL DIR ACALL KS JNZ K4 ,#0FEH ,#00H ,#PA ,R2 ,A , DPTR ,L1 ,#00H ,L2 ,#08H ,L3 ,#10H ,NEXT ,#18H ,R4 ;調(diào)用KS子程序,再次判別有無鍵按下;有鍵按下,轉逐列掃描 ;誤讀鍵,返回 ;首列掃描字送R2;首列號送R4;A口地址送DRTR;8155A口 ;指向8155C口 ;讀取行掃描值;第0行無鍵按下,轉查第1行;第0行有鍵按下,該行的行

5、首鍵號#00H;轉求鍵號;第1行無鍵按下,轉查第2行;第1行無鍵按下,該行的行首鍵號送A;轉求鍵號 ;第2行無鍵按下,轉查第3行;第2行有鍵按下,該行的行首鍵號#10H;轉查鍵號;第3行無鍵按下,轉查下一列;第3行有鍵按下,該行的行首鍵號#18H;形成鍵釋放;未釋放,等待;鍵釋放,彈出堆棧送ACC;鍵掃描結束,返回 ;修改列號;列掃描字送 #08HPOP ACC ;RETNEXT:INC R4 ;MOV A,R2 ;JNB ACC.7,KEY ;8列掃描完返回KEYRL A ;未掃描完,掃描字左移一位,變?yōu)橄铝袙呙枳諱OV R2,A ;掃描字暫存R2AJMP K3 ;KS: MOV DPTRMOV AMOVX DPTRINC DPTRINC DPTRMOVX ACPL AANL ARET,#PA ,#00H ,A , DPTR ,#0FH

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論