找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机00-99计数器 仿真及程序源码

[复制链接]
跳转到指定楼层
楼主
51单片机仿真00-99计数器,下面是原理图:

汇编语言程序源码:
  1. Count                EQU 30H
  2. SP1                        BIT P3.7
  3.                         ORG 0
  4. START:                MOV Count,#00H
  5. NEXT:                MOV A,Count
  6.                         MOV B,#10
  7.         DIV AB
  8.                         MOV DPTR,#TABLE
  9.         MOVC A,@A+DPTR
  10.                         MOV P0,A
  11.                         MOV A,B
  12.         MOVC A,@A+DPTR
  13.                         MOV P2,A
  14. WT:                        JNB SP1,WT
  15. WAIT:                JB SP1,WAIT
  16.                         LCALL DELY10MS
  17.         JB SP1,WAIT
  18.                         INC Count
  19.                         MOV A,Count
  20.         CJNE A,#100,NEXT
  21.                         LJMP START
  22. DELY10MS:        MOV R6,#20
  23. D1:                        MOV R7,#248
  24.                         DJNZ R7,$
  25.         DJNZ R6,D1
  26.                         RET
  27. TABLE:                DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
  28.                         END
复制代码
c语言源码:
  1. #include <AT89X51.H>
  2. unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
  3.                             0x6d,0x7d,0x07,0x7f,0x6f};
  4. unsigned char Count;
  5.   
  6. void delay10ms(void)
  7. {
  8.   unsigned char i,j;
  9.   for(i=20;i>0;i--)
  10.   for(j=248;j>0;j--);
  11. }
  12.   
  13. void main(void)
  14. {
  15.   Count=0;
  16.   P0=table[Count/10];
  17.   P2=table[Count%10];
  18.   while(1)
  19.     {
  20.       if(P3_7==0)
  21.         {
  22.           delay10ms();
  23.           if(P3_7==0)
  24.             {
  25.               Count++;
  26.               if(Count==100)
  27.                 {
  28.                   Count=0;
  29.                 }
  30.               P0=table[Count/10];
  31.               P2=table[Count%10];
  32.               while(P3_7==0);
  33.             }
  34.         }
  35.     }
  36. }

复制代码

10. 00-99计数器.zip

110.72 KB, 下载次数: 13, 下载积分: 黑币 -5

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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