找回密码
 立即注册

QQ登录

只需一步,快速开始

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

简易单片机车辆里程表源程序+Proteus仿真

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


单片机源程序如下:
  1. #include <REG52.H>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. uint count_km;        //记录里程数
  5. uchar count0,count1,count2,count3;//用于分离里程数的各位数字  
  6. sbit P20=P2^0;
  7. sbit P21=P2^1;
  8. sbit P22=P2^2;
  9. sbit P23=P2^3;

  10. const uchar table0[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//显示码显示数字0~9

  11. void delay()
  12. {
  13.          uint i;
  14.          for(i=0;i<256;i++);
  15. }

  16. void timer0isr(void) interrupt 1 using 1
  17. {
  18.     count_km=count_km + 1500;
  19.         if(count_km>9999)
  20.         count_km=9999;
  21. }

  22. void main(void)
  23. {
  24.         TMOD = 0x06;  //设定T/C0工作在计数器,工作方式2               
  25.         TH0 = 0xFB;
  26.         TL0 = 0xFB;         //装载计数初值
  27.         EA = 1;                 //开总中断
  28.         ET0 = 1;         //开T/C0中断
  29.         TR0 = 1;         //启动T/C0

  30.         while(1)
  31.         {
  32.                   count0=count_km%10;
  33.                   count1=count_km/10%10;
  34.                   count2=count_km/100%10;
  35.                   count3=count_km/1000%10;
  36.                   P1=table0[count0];
  37.                   P23=1;delay();P23=0;
  38.                   P1=table0[count1];
  39.                   P22=1;delay();P22=0;
  40.                   P1=table0[count2];
  41.                   P21=1;delay();P21=0;
  42.                   P1=table0[count3];
  43.                   P20=1;delay();P20=0;               
  44.         }
  45. }
复制代码

所有资料51hei提供下载:
简易车辆里程表.rar (60.91 KB, 下载次数: 91)

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

使用道具 举报

沙发
ID:833323 发表于 2020-10-22 19:47 | 只看该作者
6位数码管的怎么改啊?
回复

使用道具 举报

板凳
ID:526281 发表于 2020-10-28 20:32 来自手机 | 只看该作者
Unique。 发表于 2020-10-22 19:47
6位数码管的怎么改啊?

单片机的P2口再加两个数码管。程序开头添加对应的位声明,主程序中的while循环中添加两位数码管的数值计算表达式,并且添加两条显示程序就好了。
回复

使用道具 举报

地板
ID:839011 发表于 2020-11-4 21:13 | 只看该作者
请问用脉冲控制的,咋改
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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