標題:
包括流水燈,時鐘,計時器,簡易的用4x4鍵盤控制的單片機匯編語言計算器
[打印本頁]
作者:
亦無奈_
時間:
2020-12-18 18:51
標題:
包括流水燈,時鐘,計時器,簡易的用4x4鍵盤控制的單片機匯編語言計算器
1.包括流水燈,時鐘,計時器,簡易的用4x4鍵盤控制的計算器
2.四個按鍵選擇功能,直接對應那種一般開發(fā)板配套的紅外遙控器的1234鍵(試過是可以的)當然仿真中不包括紅外,紅外選項是多余的
仿真中不包括紅外
3.計時器,上鍵運行,下鍵清零,右鍵暫停,右鍵長按切換時鐘
4.時鐘的右鍵切換調(diào)整,長按到計時器,調(diào)整位會閃爍
5計算器用4x4按鍵控制
6.代碼用的匯編
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.png
(44.16 KB, 下載次數(shù): 64)
下載附件
2020-12-19 01:27 上傳
51hei.png
(20.43 KB, 下載次數(shù): 61)
下載附件
2020-12-19 01:27 上傳
單片機源程序如下:
LCD_RS EQU P2.0 ;1602控制
LCD_RW EQU P2.1 ;......
LCD_E EQU P2.2 ;脈沖
LCD_D7 EQU P0.7 ;
LCD_DATA EQU P0 ;1602數(shù)據(jù)口
LCD_JISHU EQU 20H ;1602寫數(shù)據(jù)計數(shù)
LCD_CAIDAN EQU 21H ;1602菜單編號
LCD_CAIDAN_YE EQU 22H ;1602頁編號
KEY_UP EQU P2.3 ;上鍵
KEY_DOWN EQU P2.4 ;下鍵
KEY_OK EQU P2.5 ;確認鍵
KEY_EXIT EQU P2.6 ;退出鍵
LCD_BEI EQU P2.7 ;1602背光
EXIT_BIAOZHI EQU 23H.0 ;計時器,中按退出會置一標志位
OK_BIAOZHI EQU 23H.1
UP_BIAOZHI EQU 23H.2
DOWN_BIAOZHI EQU 23H.3
DINGSHI_JISHU EQU 24H ;用定時器延時計數(shù)
LED EQU P1 ;
;數(shù)碼管595 ;
MINGXIANG EQU P3.3
HC595_DATA EQU P3.4 ;數(shù)碼管數(shù)據(jù),移位輸出,,,復用hc164數(shù)據(jù)口
HC595_SLCP EQU P3.5 ;讀入數(shù)據(jù)端
HC595_SHCP EQU P3.6 ;刷新顯示端,、、復用hc164的clk
HC595_SHI EQU 25H ;時鐘的時分秒
HC595_FEN EQU 26H ;
HC595_MIAO EQU 27H ;
;矩陣鍵盤.......
JIANPAN1 EQU P3.0
JIANPAN2 EQU P3.1
HC164_DATA EQU P3.4
HC164_CLK EQU P3.7
JIANSHUXU EQU 28H ;矩陣鍵盤按下的順序,
JISUANQI_DATA1 EQU 29H ;
JISUANQI_YUNSUAN EQU 2AH ;
JISUANQI_DATA2 EQU 2BH ;
JISUANQI_JIEGUO1 EQU 2CH ;
JISUANQI_JIEGUO2 EQU 2DH ;
ANJIAN_CHANGAN EQU 2FH
OKCHANGAN_BIAOZHI EQU 23H.4 ;
HONGWAIZ_ EQU P3.2
HONGWAIZ_MA EQU 30H
LEDYANSHI_JISHU EQU 31H
ORG 0000H
AJMP MAIN
ORG 03H
LJMP WAIBU0
ORG 0BH
LJMP T0DINGSHI
ORG 001BH
LJMP T1DINGSHI;定時器中斷
ORG 0030H
MAIN:
LCALL SHUMA_JIANCE
LCALL SHUMA_QINGLING
MOV HONGWAIZ_MA,#00H
CLR LCD_BEI
LCALL LCD_XIANSHI ;1602初始化,歡迎界面
SETB PT0 ;把定時器t1設置為高優(yōu)先級
MOV TMOD,#11H ;T1為工作方式一
MOV IE,#8BH ;允許T1中斷,T0,外部中斷0
MOV TH1,#0D8H ;放入數(shù)據(jù)
MOV TL1,#0F0H
MOV TH0,#0DBH
MOV TL0,#0F0H
SETB TR1 ;啟動T1定時器
LOOP0:
LCALL ANJIAN_RENYI ;按鍵判斷
SJMP LOOP0
SJMP $
WAIBU0:
CLR EA
PUSH 01H
PUSH 02H
PUSH 03H
PUSH 04H
PUSH ACC
MOV A,HONGWAIZ_MA
CJNE A,#0,WAIBU0_JIESHU
;MOV ANJIAN_CHANGAN,#10
WAIBU0_LOOP8:
MOV R3,#10
WAIBU0_LOOP7:
LCALL DELAY840US
JB HONGWAIZ_,WAIBU0_JIESHU
DJNZ R3,WAIBU0_LOOP7
WAIBU0_LOOP13:
;MOV R1,ANJIAN_CHANGAN
;CJNE R1,#00H,WAIBU0_LOOP9
;WAIBU0_JIESHU_1:
;LJMP WAIBU0_JIESHU
WAIBU0_LOOP9:
JNB HONGWAIZ_,WAIBU0_LOOP13
LCALL DELAY4MS750US
MOV R4,#8H
MOV R3,#4H
WAIBU0_LOOP1:
;MOV R1,ANJIAN_CHANGAN
;CJNE R1,#00H,WAIBU0_LOOP10
;LJMP WAIBU0_JIESHU
WAIBU0_LOOP10:
JNB HONGWAIZ_,WAIBU0_LOOP1
LCALL DELAY840US
JB HONGWAIZ_,WAIBU0_LOOP0
CLR ACC.0
RLC A
DJNZ R4,WAIBU0_LOOP1
LJMP WAIBU0_LOOP2
WAIBU0_LOOP0:
SETB ACC.0
RLC A
WAIBU0_LOOP11:
;MOV R1,ANJIAN_CHANGAN
;CJNE R1,#00H,WAIBU0_LOOP12
;LJMP WAIBU0_JIESHU
WAIBU0_LOOP12:
JB HONGWAIZ_,WAIBU0_LOOP11
DJNZ R4,WAIBU0_LOOP1
WAIBU0_LOOP2:
RRC A
CJNE R3,#04H,WAIBU0_LOOP3
CJNE A,#00H,WAIBU0_JIESHU
LJMP WAIBU0_LOOP6
WAIBU0_LOOP3:
CJNE R3,#03H,WAIBU0_LOOP4
CJNE A,#0FFH,WAIBU0_JIESHU
LJMP WAIBU0_LOOP6
WAIBU0_LOOP4:
CJNE R3,#02H,WAIBU0_LOOP5
MOV R2,A
LJMP WAIBU0_LOOP6
WAIBU0_LOOP5:
CJNE R3,#01H,WAIBU0_LOOP6
ADD A,R2
CJNE A,#0FFH,WAIBU0_JIESHU
CJNE R2,#30H,WAIBU0_HONGWAI_J2
MOV HONGWAIZ_MA,#01H
WAIBU0_HONGWAI_J2:
CJNE R2,#18H,WAIBU0_HONGWAI_J3
MOV HONGWAIZ_MA,#02H
WAIBU0_HONGWAI_J3:
CJNE R2,#7AH,WAIBU0_HONGWAI_J4
MOV HONGWAIZ_MA,#03H
WAIBU0_HONGWAI_J4:
CJNE R2,#10H,WAIBU0_JIESHU
MOV HONGWAIZ_MA,#04H
LJMP WAIBU0_JIESHU
WAIBU0_LOOP6:
MOV R4,#08H
DJNZ R3,WAIBU0_LOOP1
LJMP WAIBU0_JIESHU
WAIBU0_JIESHU:
POP ACC
POP 04H
POP 03H
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
顯示鍵盤.zip
(173.42 KB, 下載次數(shù): 28)
2020-12-18 18:51 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1