找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 746|回复: 0
打印 上一主题 下一主题
收起左侧

PROTEUS仿真:动态驱动显示1-99(汇编程序)

[复制链接]
跳转到指定楼层
楼主


仿真电路图




仿真汇编程序:

  1. A_Bit EQU 20H
  2. B_Bit EQU  21h  ;十位数存放处
  3. TEMP  EQU 22h

  4. STAR:  MOV  TEMP, #0 ;初始化计数器

  5. STLOP:  
  6. ACALL  DISPLAY
  7. INC  TEMP
  8. MOV  A,TEMP
  9. CJNE  A,#100,NEXT ;=100重来
  10. MOV  TEMP,#0

  11. NEXT:
  12. LJMP  STLOP

  13. ;显示子程序
  14. DISPLAY:
  15.       MOV A, TEMP ;将temp中 的数转换成10进制
  16.       MOV B,#10;
  17.       DIV AB;
  18.       MOV B_Bit,A ;十位在A
  19.       MOV A_Bit,B;个位在B
  20.       MOV DPTR,#TAB;指定查表启始地址
  21.       MOV R0,#2;4

  22. DPL1:  MOV  R1,#100;250 ;显示1000次
  23. DPLOP: MOV A,A_Bit;取个位数
  24.       MOVC A,@A+DPTR;查个位数的7段代码
  25.       ;CPL A;
  26.       MOV  P1 ,A;送出个位的7段代码
  27.       CLR  P2.7;
  28.       ACALL D1MS;延时显示1ms
  29.       SETB P2.7;
  30.       MOV  A,B_Bit  ;取十位数
  31.       MOVC A, @A+DPTR ;查十位数的7 段代码
  32.       ;CPL A;
  33.       MOV  P1 ,A;送出十位的7段代码
  34.       CLR  P2.6;
  35.       ACALL D1MS;
  36.       SETB P2.6;
  37.       DJNZ  R1,DPLOP  ;100次没完循环
  38.       DJNZ  R0,DPL1  ;2个100次没完循环RET
  39.       ;延时4毫秒即2微秒* R7*R6(按12MHZ算)


  40. D1MS: MOV  R7 ,#5;10
  41.       D1:  MOV  R6,#50;
  42.            DJNZ R6,$;
  43.            DJNZ R7,D1;
  44.            RET;

  45. ;7段数码管各划的数字排列表,共阳的七段花数
  46. TAB:
  47. DB 3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,07h,7Fh,6Fh,77h,7Ch,39h,5Eh,79h,71h;
  48. END;

复制代码



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表