找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机出租车计费系统仿真及源程序

  [复制链接]
跳转到指定楼层
楼主
一个51单片机做的出租车计费系统proteus仿真,采用数码管来显示数据,下面是原理图:

所有资料下载:
出租车计费系统.rar (59.49 KB, 下载次数: 207)

c51源程序:
  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define        uint unsigned int
  4. #define T 100         
  5. sbit RES=P3^7;        
  6. int S=0,M=30;
  7. uchar count=0,ct=0;

  8. uchar tab_d[10]={0X3F,0X06,0X5B,0X4F,0X66,         //段码
  9. 0X6D,0X7D,0X07,0X7F,0X6F};
  10. uchar tab_wei[8]={0xfe,0xfd,0xfb,0xf7,                 //位码
  11. 0xef,0xdf,0xbf,0x7f};

  12. //延时函数
  13. void delay(uint t)  // tms
  14. {
  15.         uchar i=0;
  16.         while(t--)
  17.         for(i;i<120;i++);
  18. }

  19. //数码管显示函数
  20. void disp(uchar d,uchar x,uchar w)        //d为段选,x为小数点,w为位选
  21. {
  22.         P2=0xff;         //位码选择         只能先设置位码再设置段码
  23.         P2=tab_wei[w];               
  24.         P0=0;
  25.         P0=tab_d[d]|x;                 // 加上小数点        
  26.         delay(T);                        
  27. }

  28. //计数函数
  29. void timer()
  30. {        
  31.         disp(M%10,0,0);                                //   角                                       
  32.         disp(M/10%10,0x80,1);                 //         元                  0x80表示加上小数点
  33.         if(M>=100)
  34.         disp(M/100%10,0,2);                           //        十元
  35.         if(M>=1000)
  36.         disp(M/1000%10,0,3);                 //        百元
  37.         disp(S%10,0,4);                             //          公里               
  38.         disp(S/10%10,0x80,5);
  39.         if(S>=100)
  40.         disp(S/100%10,0,6);
  41.         if(S>=1000)
  42.         disp(S/1000%10,0,7);                  
  43. }

  44. //定时器0中断
  45. void time_50ms() interrupt 1        
  46. {
  47.         ct++;
  48.          if(ct==5)
  49.         {
  50.                 ct=0;
  51.                 S+=5;
  52.                 if(S>20)
  53.                 M+=8;                        
  54.         }
  55. }        

  56. //主函数
  57. void main()
  58. {               
  59.         P0=0;
  60.         P2=0XFF;
  61.         TMOD=0X0E;          //设置计数器模式
  62.         IT0=1;                 //电平触发
  63.         TH0=255;           //1个脉冲延时
  64.         TL0=255;
  65.         TR0=1;
  66.         IE=0X82;
  67.         while(1)
  68.         {
  69.                 if(RES==0)
  70.                 {
  71.                         S=0;
  72.                         M=30;
  73.                 }        
  74.                 timer();
  75.         }
  76. }
复制代码

评分

参与人数 5黑币 +21 收起 理由
FLC123 + 5
348652560 + 5 很给力!
fx123123 + 5 很给力!
161215 + 3 赞一个!
wzfsj + 3 很给力!

查看全部评分

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

使用道具 举报

沙发
ID:149250 发表于 2016-11-21 16:23 | 只看该作者
问下大神们   这个程序是完整的好使的吗?
回复

使用道具 举报

板凳
ID:150967 发表于 2016-11-29 12:54 | 只看该作者
刚想做这个,希望这这里获得一些有用的信息,感谢楼主分享,谢谢啦
回复

使用道具 举报

地板
ID:150967 发表于 2016-11-29 12:57 | 只看该作者
刚想做这个设计,没什么头绪,希望从这里学习到东西,感想楼主分享
回复

使用道具 举报

5#
ID:150412 发表于 2016-12-2 21:40 | 只看该作者
这个陈序有错误呀,求大神指教
回复

使用道具 举报

6#
ID:157216 发表于 2016-12-23 20:10 | 只看该作者
感谢楼主,刚刚想做这个,就有了参考的东西
回复

使用道具 举报

7#
ID:157216 发表于 2016-12-23 20:59 | 只看该作者
为甚么下载黑币扣了,但是下不到资源啊,点下载没反应
回复

使用道具 举报

8#
ID:1 发表于 2016-12-23 22:05 | 只看该作者
wzfsj 发表于 2016-12-23 20:59
为甚么下载黑币扣了,但是下不到资源啊,点下载没反应

我测试了没有问题啊,你换个浏览器试试
回复

使用道具 举报

9#
ID:204113 发表于 2017-6-13 16:20 | 只看该作者
请问原理图中右下角那个方块是啥呀?
回复

使用道具 举报

10#
ID:204113 发表于 2017-6-13 16:25 | 只看该作者
右下角那个方块是啥???
回复

使用道具 举报

11#
ID:211405 发表于 2017-6-15 09:04 | 只看该作者
很棒
回复

使用道具 举报

12#
ID:211405 发表于 2017-6-15 09:05 | 只看该作者
真的不错
回复

使用道具 举报

13#
ID:211405 发表于 2017-6-15 09:46 | 只看该作者
谢谢楼主的分享,帮助我认识了 谢谢赞一个
回复

使用道具 举报

14#
ID:357536 发表于 2018-6-24 00:22 | 只看该作者
哇,大神,点赞
回复

使用道具 举报

15#
ID:366621 发表于 2018-7-9 07:57 | 只看该作者
不过  设计思路还是很清晰的
回复

使用道具 举报

16#
ID:366621 发表于 2018-7-9 07:57 | 只看该作者
那个 DSN文件打不开 是为什么
回复

使用道具 举报

17#
ID:366621 发表于 2018-7-9 09:33 | 只看该作者
设计的很简单  但是也比较合理  实现了简单的里程计费功能
回复

使用道具 举报

18#
ID:391987 发表于 2018-8-31 14:01 | 只看该作者
谢谢谢
回复

使用道具 举报

19#
ID:388870 发表于 2018-9-11 14:19 | 只看该作者
谢谢分享,参考一下
回复

使用道具 举报

20#
ID:435149 发表于 2020-6-6 14:54 | 只看该作者
楼主价格和里程是不是弄反了?
回复

使用道具 举报

21#
ID:435149 发表于 2020-6-6 15:19 | 只看该作者
收费和里程是不是反了
回复

使用道具 举报

22#
ID:927515 发表于 2021-5-27 00:49 | 只看该作者
这个是用模拟脉冲信号来计里程的吗?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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