亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

您現(xiàn)在的位置是:蟲蟲下載站 > 資源下載 > 單片機(jī)編程 > 4位八段數(shù)碼管的十進(jìn)制加計(jì)數(shù)仿真實(shí)驗(yàn)(含電路圖和仿真文件)

4位八段數(shù)碼管的十進(jìn)制加計(jì)數(shù)仿真實(shí)驗(yàn)(含電路圖和仿真文件)

資 源 簡 介

4位八段數(shù)碼管的十進(jìn)制加計(jì)數(shù)仿真實(shí)驗(yàn),程序采用匯編語言編寫。此程序在仿真軟件上與EDN-51實(shí)驗(yàn)板上均通過。仿真圖中的數(shù)碼管位驅(qū)動(dòng)采用74HC04,如按EDN-51板上用想同的PNP三極管驅(qū)動(dòng)在仿真軟件上則無法正常顯示。程序共分5塊,STAR0為數(shù)據(jù)初始化,STAR2為計(jì)數(shù)子程序,STAR3為4位數(shù)碼管動(dòng)態(tài)顯示子程序,STAR4為按鍵掃描子程序,STS00是延時(shí)子程序。由于EDN-51實(shí)驗(yàn)板上沒裝BCD譯碼器,所以編寫程序比較煩瑣。

程序如下:

ORG 0000H
                LJMP STAR0                        ;轉(zhuǎn)程序 SRAR0
ORG 0200H                                          ;程序地址 0200H
STAR0:   CLR 00                                  ;位 00 清 0
               MOV P1,#0FFH                    ;#0FFH-->P1
               MOV P2,#0FH                      ;#0FH-->P2
               MOV P0,#0FFH                    ;#0FFH-->P0
               MOV 30H,#00H                    ;#00H-->30H
               MOV 31H,#00H                    ;#00H-->30H
               MOV 32H,#00H                    ;#00H-->30H
               MOV 33H,#00H                    ;#00H-->30H
               LJMP STAR3                        ;轉(zhuǎn)程序 SRAR3
STAR2:   MOV A,#0AH                       ;#0AH-->A
               INC 30H                                ;30H+1
               CJNE A,30H,STJE                 ;30H 與 A 比較,不等轉(zhuǎn)移 STJE
               MOV 30H,#00H                    ;#00H-->30H
               INC 31H                                ;31H+1
               CJNE A,31H,STJE                 ;31H 與 A 比較,不等轉(zhuǎn)移 STJE
               MOV 31H,#00H                    ;#00H-->31H
               INC 32H                                ;32H+1
               CJNE A,32H,STJE                 ;32H 與 A 比較,不等轉(zhuǎn)移 STJE
               MOV 32H,#00H                    ;#00H-->32H
               INC 33H                                ;33H+1
               CJNE A,33H,STJE                 ;33H 與 A 比較,不等轉(zhuǎn)移 STJE
               MOV 33H,#00H                    ;#00H-->33H
               MOV 32H,#00H                    ;#00H-->32H
               MOV 31H,#00H                    ;#00H-->31H
               MOV 30H,#00H                    ;#00H-->30H
STJE:      RET                                        ;子程序調(diào)用返回
STAR3:   MOV R0,#30H                      ;#30H-->R0
                MOV R6,#0F7H                   ;#0F7H-->R6
SMG0:    MOV P1,#0FFH                    ;#0FFH-->P1
                MOV A,R6                            ;R6-->A
                MOV P1,A                            ;A-->P1
                RR A                                     ;A向右移一位
                MOV R6,A                           ;A-->R6
                MOV A,@R0                       ;@R0-->A
                ADD A,#04H                        ;#04H-->A
                MOVC A,@A+PC               ;A+PC-->
                MOV P0,A                            ;A-->P0
                AJMP SMG1                        ;轉(zhuǎn)程序 SMG1
SDATA:   DB 0C0H,0F9H,0A4H,0B0H,99H
                DB 92H,82H,0F8H,80H,90H
SMG1:     LCALL STAR4                    ;轉(zhuǎn)子程序 SRAR4
                LCALL STS00                     ;轉(zhuǎn)子程序 STS00
                INC R0                                 ;R0+1
                CJNE R6,#07FH,SMG0       ;#07FH 與 R6 比較,不等轉(zhuǎn)移 SMG0
                AJMP STAR3                       ;轉(zhuǎn)程序 SRAR3
STAR4:    JNB P2.0,ST1                      ;P2.0=0 轉(zhuǎn) ST1
                CLR 00                                 ;位 00 清 0
                SJMP ST3                            ;轉(zhuǎn)ST3
ST1:         JNB 00,ST2                          ;位 00=0 轉(zhuǎn) ST2
                SJMP ST3                            ;轉(zhuǎn) ST3
ST2:         LCALL STAR2                    ;調(diào)子程序 STAR2
                SETB 00                               ;位 00 置 1
ST3:         RET                                      ;子程序調(diào)用返回
ORG 0100H                                         ;地址 0100H
STS00:     MOV 60H,#003H                ;#003H-->60H  (211)
DE001:     MOV 61H,#0FFH               ;#0FFH-->61H (255)
DE002:     DJNZ 61H,DE002               ;61H 減 1 不等于 0 轉(zhuǎn) DE002
                 DJNZ 60H,DE001               ;60H 減 1 不等于 0 轉(zhuǎn) DE001
                 RET                                     ;子程序調(diào)用返回
                 END                                    ;結(jié)束

上次的程序共有293句,經(jīng)小組成員建議,本人經(jīng)幾天的研究寫了下面的這個(gè)程序,現(xiàn)在的程序用了63句,精簡了230句。功能沒有減。如誰有更簡練的程序,請發(fā)上來,大家一起學(xué)習(xí)。

4位八段數(shù)碼管的十進(jìn)制加計(jì)數(shù)仿真實(shí)驗(yàn)(含電路圖和仿真文件)

相 關(guān) 資 源

主站蜘蛛池模板: 昌吉市| 太白县| 鹤峰县| 鸡泽县| 绵竹市| 津市市| 师宗县| 信宜市| 乌鲁木齐县| 渝北区| 朝阳市| 许昌县| 湖南省| 泗洪县| 金华市| 竹溪县| 奉节县| 林州市| 扬州市| 昭苏县| 北安市| 浙江省| 景洪市| 凤冈县| 沾化县| 曲周县| 永和县| 灵寿县| 客服| 永年县| 宜丰县| 丰原市| 财经| 昌黎县| 富平县| 永康市| 体育| 安吉县| 文化| 肥东县| 科尔|