找回密码
 立即注册

QQ登录

只需一步,快速开始

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

结合keil制作proteus 8.9的999数码管程序

[复制链接]
跳转到指定楼层
楼主
这是根据上课师傅讲的结合keil制作proteus 8.9的999数码管

  1. #include <reg51.h>
  2. #include <intrins.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. #define out2 P2
  6. #define out1 P1
  7. #define out0 P0
  8. //延时函数
  9. void delay(uint xms)
  10. {
  11.         uint i,j,k;
  12.         for(i=xms;i>0;i--)
  13.         {
  14.                 for(j=50;j>0;j--);
  15.                 for(k=50;k>0;k--);
  16.         }

  17. }
  18. //定义P1,p2端口
  19. uchar code seg2[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  20. uchar code seg1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  21. uchar code seg0[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  22. //main函数
  23. void main(void)
  24. {
  25.         //让秒的个位开始计数
  26.         uchar i,j,k;
  27.         i=0;
  28.         j=1;
  29.         k=0;
  30.         out1=seg1[0];                //让秒的十位从0开始亮
  31.         out0=seg0[0];                //让秒的百位从0开始亮

  32.         while(1)
  33.         {
  34.                
  35.                 out2=seg2[i];
  36.                 delay(500);
  37.                 i++;
  38.                 //让秒的十位开始计数
  39.                 if(i%10==0&i>9)
  40.                 {
  41.                         out1=seg1[j];
  42.                         i=0;
  43.                         j++;
  44.                 }
  45.                 if(j%11==0&j>9)
  46.                 {
  47.                         k++;
  48.                         out0=seg0[k];
  49.                         j=1;
  50.                 }
  51.         
  52.         }
  53. }
复制代码

制作的999数码管
全部资料51hei下载地址:
999.zip (72.36 KB, 下载次数: 14)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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