久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 滾動顯示程序 [打印本頁]

作者: daniu    時間: 2014-12-26 23:31
標題: 滾動顯示程序
  1. 顯示字用查表法,不占內(nèi)存,用四個16*16共陽LED點陣顯示,

  2. ;效果:向上滾動顯示字,每次四個,重復循環(huán)。

  3. ;R2:行掃描地址(從00-0FH)。

  4. ;R3:滾動顯示時控制移動速度,也可控制靜止顯示的時間。

  5. ;************;

  6. ;中斷入口程序;

  7. ;************;

  8. ;

  9. ORG    0000H

  10. LJMP    START

  11. ORG    0003H

  12. RETI

  13. ORG    000BH

  14. LJMP    INTT0

  15. ORG    0013H

  16. RETI

  17. ORG    001BH

  18. RETI

  19. ORG    0023H

  20. RETI

  21. ORG    002BH

  22. RETI

  23. ;

  24. ;************;

  25. ; 初始化程序 ;

  26. ;************;

  27. ;

  28. ;

  29. ;************;

  30. ;  主程序  ;

  31. ;************;

  32. ;

  33. START:          MOV    20H,#00H            ;清標志,00H為1幀掃描結(jié)束標志

  34.                 MOV    A,#0FFH              ;端口初始化

  35.                 MOV    P1,A

  36.                 MOV    P2,A

  37.                 MOV    P3,A

  38.                 MOV    P0,A

  39.                 CLR    P1.6            ;串行寄存器打入輸出端控制位

  40.                 MOV    TMOD,#01H      ;使用T0作16位定時器,行掃描用。

  41.                 MOV    TH0,#0FCH      ;1ms初值(12MHZ)

  42.                 MOV    TL0,#18H

  43.                 MOV    SCON,#00H      ;串口0方式傳送顯示字節(jié)

  44.                 MOV    IE,#82H        ;T0中斷允許,總中斷允許

  45.                 MOV    SP,#70H

  46.                 LCALL  DIS1            ;顯示準備,黑屏,1.5秒

  47. MAIN:          MOV    DPTR,#TAB

  48.                 LCALL  MOVDISP        ;逐排顯示,每次四字)

  49.                 MOV    DPTR,#TAB

  50.                 LCALL  MOVDISP1        ;滾動顯示,每排四字)

  51.                 AJMP    MAIN

  52. ;

  53. ;

  54. ;********************;

  55. ; 四字逐排顯示子程序 ;

  56. ;********************;

  57. ;每次四字移入移出顯示方式,入口時定義好DPTR值

  58. ;

  59. MOVDISP:        MOV    R1,#6          ;顯示6排字,每排四字(R1=排數(shù))

  60. DISLOOP:        MOV    R3,#100        ;每排顯示時間1.6*100=1.6S

  61. DISMOV:        MOV    R2,#00H        ;第0行開始

  62.                 SETB    TR0            ;開掃描(每次一幀)

  63. WAITMOV:        JBC    00H,DISMOV1    ;標志為1掃描一幀結(jié)束(16毫秒為1幀,每行1毫秒)

  64.                 AJMP    WAITMOV

  65. DISMOV1:        DJNZ    R3,DISMOV      ;1幀重復顯示(控制顯示時間)

  66.                 MOV    A,#128          ;顯示字指針移一排(每排4字*32=128)

  67.                 ADD    A,DPL          ;

  68.                 MOV    DPL,A

  69.                 MOV    A,#0

  70.                 ADDC    A,DPH

  71.                 MOV    DPH,A

  72.                 DEC    R1              ;R1為0,顯示完

  73.                 MOV    A,R1

  74.                 JZ      MOVOUT          ;

  75.                 AJMP    DISLOOP        ;

  76. MOVOUT:        RET                    ;移動顯示結(jié)束

  77. ;

  78. ;********************;

  79. ; 四字滾動顯示子程序 ;

  80. ;********************;

  81. ;每排四字向上移出顯示方式,入口時定義好DPTR值

  82. ;

  83. MOVDISP1:        MOV    R1,#255          ;向上移動顯示6排字,每排四字(R1=排數(shù)*16)

  84. DISLOOP1:        MOV    R3,#10          ;移動速度1.6*10=0.16S

  85. DISMOV2:        MOV    R2,#00H        ;第0行開始

  86.                 SETB    TR0            ;開掃描(每次一幀)

  87. WAITMOV1:        JBC    00H,DISMOV3    ;標志為1掃描一幀結(jié)束(16毫秒為1幀,每行1毫秒)

  88.                 AJMP    WAITMOV1

  89. DISMOV3:        DJNZ    R3,DISMOV2      ;1幀重復顯示(控制移動速度)

  90.                 INC    DPTR            ;顯示字指針移一行(二字節(jié)位置)

  91.                 INC    DPTR

  92.                 DEC    R1              ;R1為0,顯示完

  93.                 MOV    A,R1

  94.                 JZ      MOVOUT1        ;

  95.                 AJMP    DISLOOP1        ;

  96. MOVOUT1:        RET                    ;移動顯示結(jié)束

  97. ;

  98. ;

  99. ;*****************;

  100. ; 四個字顯示子程序  ;

  101. ;*****************;

  102. ;靜止顯示表中某四個字

  103. DIS1:          MOV    R3,#5AH        ;靜止顯示時間控制(16MS*#=1.6秒)

  104. DIS11:          MOV    R2,#00H        ;一幀掃描初始值(行地址從00-0FH)

  105.                 MOV    DPTR,#TAB      ;取表首址

  106.                 SETB    TR0            ;開掃描(每次一幀)

  107. WAIT11:        JBC    00H,DIS111      ;為1,掃描一幀結(jié)束

  108.                 AJMP    WAIT11

  109. DIS111:        DJNZ    R3,DIS11

  110.                 RET

  111. ;

  112. ;

  113. ;************;

  114. ;  掃描程序  ;

  115. ;************;

  116. ;1MS傳送一行,每行顯示1毫秒,一次傳送四個字的某行共8個字節(jié).

  117. ;

  118. INTT0:          PUSH    ACC

  119.                 MOV    TH0,#0FCH      ;1ms初值重裝

  120.                 MOV    TL0,#18H

  121.                 MOV    A,#97          ;指向第四個字行右字節(jié)

  122.                 ADD    A,DPL

  123.                 MOV    DPL,A

  124.                 MOV    A,#0

  125.                 ADDC    A,DPH

  126.                 MOV    DPH,A

  127.                 MOV    A,#0

  128.                 MOVC    A,@A+DPTR      ;查表

  129.                 MOV    SBUF,A          ;串口0方式發(fā)送

  130. WAIT:          JBC    TI,GO          ;等待發(fā)送完畢

  131.                 AJMP    WAIT            ;

  132. GO:            MOV    A,DPL          ;指向第四個字行左字節(jié)

  133.                 SUBB    A,#1

  134.                 MOV    DPL,A

  135.                 MOV    A,DPH

  136.                 SUBB    A,#0

  137.                 MOV    DPH,A

  138.                 MOV    A,#0

  139.                 MOVC    A,@A+DPTR

  140.                 MOV    SBUF,A

  141. WAIT1:          JBC    TI,GO1

  142.                 AJMP    WAIT1

  143. ;

  144. GO1:            MOV    R0,#03H

  145. MLOOP:          MOV    A,DPL          ;指向前三個字行右字節(jié)

  146.                 SUBB    A,#31

  147.                 MOV    DPL,A

  148.                 MOV    A,DPH

  149.                 SUBB    A,#0

  150.                 MOV    DPH,A

  151.                 MOV    A,#0

  152.                 MOVC    A,@A+DPTR      ;查表

  153.                 MOV    SBUF,A          ;串口0方式發(fā)送

  154. WAIT2:          JBC    TI,GO2          ;等待發(fā)送完畢

  155.                 AJMP    WAIT2            ;

  156. GO2:            MOV    A,DPL          ;指向前三個字行左字節(jié)

  157.                 SUBB    A,#1

  158.                 MOV    DPL,A

  159.                 MOV    A,DPH

  160.                 SUBB    A,#0

  161.                 MOV    DPH,A

  162.                 MOV    A,#0

  163.                 MOVC    A,@A+DPTR

  164.                 MOV    SBUF,A

  165. WAIT3:          JBC    TI,GO3

  166.                 AJMP    WAIT3

  167. GO3:            DJNZ    R0,MLOOP        ;執(zhí)行三次

  168. ;

  169. ;

  170.                 SETB    P1.7            ;關(guān)行顯示,準備涮新

  171.                 NOP                    ;串口寄存器數(shù)據(jù)穩(wěn)定

  172.                 SETB    P1.6            ;產(chǎn)生上升沿,行數(shù)據(jù)打入輸出端

  173.                 NOP                    ;

  174.                 NOP                    ;

  175.                 CLR    P1.6            ;恢復低電平

  176.                 MOV    A,R2            ;修改顯示行地址

  177.                 ORL    A,#0F0H        ;修改顯示行地址

  178.                 MOV    R2,A            ;修改顯示行地址

  179.                 MOV    A,P1            ;修改顯示行地址

  180.                 ORL    A,#0FH          ;修改顯示行地址

  181.                 ANL    A,R2            ;修改顯示行地址

  182.                 MOV    P1,A            ;修改完成

  183.                 CLR    P1.7            ;開行顯示

  184.                 INC    R2              ;下一行掃描地址值

  185.                 INC    DPTR            ;

  186.                 INC    DPTR            ;下一行數(shù)據(jù)地址

  187.                 MOV    A,R2

  188.                 ANL    A,#0FH

  189.                 JNZ    GO4

  190.                 SETB    00H            ;R2為10H,現(xiàn)為末行掃描,置1幀結(jié)束標志

  191.                 MOV    A,DPL          ;指針修正為原幀初值

  192.                 SUBB    A,#32

  193.                 MOV    DPL,A

  194.                 MOV    A,DPH

  195.                 SUBB    A,#0

  196.                 MOV    DPH,A

  197.                 CLR    TR0            ;一幀掃描完,關(guān)掃描

  198. GO4:            POP    ACC

  199.                 RETI                    ;退出

  200. ;

  201. ;

  202. ;***************;

  203. ;  掃描文字表  ;

  204. ;***************;

  205. ; 共五排字,每排四個字,前后為黑屏

  206. TAB:    DB  ;黑屏

  207.               ;黑屏

  208.               ;黑屏
復制代碼







歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产精品1区 | 激情五月婷婷 | 粉嫩一区二区三区性色av | 国产激情一区二区三区 | 日韩av啪啪网站大全免费观看 | 精品免费视频一区二区 | 免费xxxx大片国产在线 | 999精品视频在线观看 | 黄色国产视频 | 欧美成人精品激情在线观看 | 亚洲精品一区二区三区蜜桃久 | 亚洲狠狠爱一区二区三区 | 成人免费观看视频 | 国产麻豆乱码精品一区二区三区 | 精品久久久久久中文字幕 | 夜夜爆操| 精品九九 | 欧美v在线观看 | 午夜欧美 | 国产视频1区2区 | 国产精品久久 | 欧美v免费| 亚洲精品欧美一区二区三区 | 亚洲国产免费 | 精品国产一区二区三区久久久久久 | www.色婷婷| 精品国产乱码久久久久久图片 | 99爱免费 | 国产99久久久国产精品下药 | 欧美黑人一区二区三区 | 91 在线 | 黑人巨大精品欧美一区二区一视频 | 日本欧美国产 | 亚洲精品在线免费观看视频 | 欧美日韩18 | 日韩手机在线看片 | 国产一区二区三区久久 | 亚洲性免费 | 国产高清在线 | 亚洲国产精品一区二区三区 | 成人毛片视频免费 |