找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: zhugehei
打印 上一主题 下一主题
收起左侧

基于单片机的自行车里程表设计(有原理图 仿真电路 源程序 pcb)

  [复制链接]
41#
ID:347274 发表于 2018-6-29 19:35 | 只看该作者
要是有各元器件的解释和备注就完美了
回复

使用道具 举报

42#
ID:295874 发表于 2018-10-26 11:28 | 只看该作者
程序从头到尾认真研究与学习了一下,就程序整体逻辑而言,个人以为还是不错的,但是其中有一处个人以为还可以进一步优化,其中正常显示的逻辑中,关于里程的存储处理函数SETS();,放在if(Mode==0&&bike_set==0)中,具体见下属函数,会导致里程存储过于频繁,对于FLASH是一种考验,又因为本程序的逻辑中,测速计算处于定时器中断中,每隔500ms才计算一次速度及里程数据,所以更没有必要那么频繁的存储里程数据。还有其中的/40注释没有说明,其实我以为就是前面别人所说的磁极脉冲数。个人见解欢迎批评指正,谢谢。
if(Mode==0&&bike_set==0)//正常显示模式
        {
                //读时间
                        Ds1302_Read_Time();
                        //显示时间
                        write_1602com(0x80);
                        write_1602dat(0x30+time_buf1[1]/10);
                        write_1602dat(0x30+time_buf1[1]%10);
                        write_1602com(0x80+3);
                        write_1602dat(0x30+time_buf1[2]/10);
                        write_1602dat(0x30+time_buf1[2]%10);
                        write_1602com(0x80+6);
                        write_1602dat(0x30+time_buf1[3]/10);
                        write_1602dat(0x30+time_buf1[3]%10);
                        write_1602com(0x80+9);
                        write_1602dat(0x30+time_buf1[4]/10);
                        write_1602dat(0x30+time_buf1[4]%10);
                        write_1602com(0x80+12);
                        write_1602dat(0x30+time_buf1[5]/10);
                        write_1602dat(0x30+time_buf1[5]%10);
                        write_1602com(0x80+15);
                        write_1602dat(time_buf1[7]-1);               

                        if(before_sec!=time_buf1[6])//:显示周期为1s,500ms显示:500ms显示空
                        {
                                before_sec=time_buf1[6];
                                write_1602com(0x80+11);
                                write_1602dat(':');
                                LED_SEC=1;
                        }
                        if(LED_SEC==0)
                        {
                                write_1602com(0x80+11);
                                write_1602dat(' ');       
                        }

                        write_1602com(0x80+0x40);//显示固定符号写入位置,从2行第2个位置后开始显示
                        if(Mileage/1000000==0)
                        write_1602dat(' ');
                        else
                        write_1602dat(0x30+Mileage/1000000);//数字+0x30得到该数字的LCD1602显示码
                        if(Mileage%1000000/100000==0)
                        write_1602dat(' ');
                        else       
                        write_1602dat(0x30+Mileage%1000000/100000);//数字+0x30得到该数字的LCD1602显示码
                        write_1602dat(0x30+Mileage%1000000%100000/10000);//数字+0x30得到该数字的LCD1602显示码
                        write_1602com(0x80+0x40+4);
                        write_1602dat(0x30+Mileage%1000000%100000%10000/1000);//数字+30得到该数字的LCD1602显示码
                        write_1602dat(0x30+Mileage%1000000%100000%10000%1000/100);//数字+30得到该数字的LCD1602显示码
                        write_1602dat(0x30+Mileage%1000000%100000%10000%1000%100/10);//数字+30得到该数字的LCD1602显示码
                        SETS();
       
                        write_1602com(0x80+0x40+10);
                        write_1602dat(0x30+Velocity/10);
                        write_1602dat(0x30+Velocity%10);//数字+30得到该数字的LCD1602显示码
        }
回复

使用道具 举报

43#
ID:409381 发表于 2018-10-29 22:35 | 只看该作者
给力 学习学习
回复

使用道具 举报

44#
ID:419294 发表于 2018-11-1 20:45 | 只看该作者
版主能否解释一下里面的参数

Mileage=Mileage+10*(Velocity/3.6)/2;                 //里程m=里程+速度km/h/3.6/2
Velocity=count *2*3.14*RADIUS /100000*2*3600  /40;//将500ms的距离经过运算得到km/h,将速度/100,方便显示
回复

使用道具 举报

45#
ID:419294 发表于 2018-11-3 21:38 | 只看该作者
值得学习
回复

使用道具 举报

46#
ID:443027 发表于 2018-12-19 10:58 来自手机 | 只看该作者
我正需要这个太感谢了  万岁
回复

使用道具 举报

47#
ID:491184 发表于 2019-3-16 15:20 | 只看该作者
sec是什么功能??? 看不懂哎
回复

使用道具 举报

48#
ID:492079 发表于 2019-3-16 16:35 | 只看该作者
很好的分享,谢谢楼主
回复

使用道具 举报

49#
ID:551568 发表于 2019-6-1 00:57 | 只看该作者
denminshen 发表于 2018-6-24 00:19
终于弄明白了,那个除以40是楼主随便写的样,我没有要,参考楼主朋友的程序,我打算用在电动车里程表上,所 ...

你好,能想你请教一些这个程序的相关问题吗,谢谢了
回复

使用道具 举报

50#
ID:551568 发表于 2019-6-1 00:58 | 只看该作者
liyongan_1985 发表于 2018-10-26 11:28
程序从头到尾认真研究与学习了一下,就程序整体逻辑而言,个人以为还是不错的,但是其中有一处个人以为还可 ...

你好 能想你请教一些关于这个程序的一些问题吗  谢谢
回复

使用道具 举报

51#
ID:551568 发表于 2019-6-1 01:18 | 只看该作者
你好 ,可以想你请教一些相关问题吗 谢谢
回复

使用道具 举报

52#
ID:565674 发表于 2019-7-6 11:09 | 只看该作者
是用的protel99吗?怎么没有pcb的源文件啊
回复

使用道具 举报

53#
ID:565674 发表于 2019-7-6 11:10 | 只看该作者
是用的protel99吗,怎么没找到pcb的源文件啊
回复

使用道具 举报

54#
ID:556689 发表于 2019-11-13 09:44 来自手机 | 只看该作者
yilinghai 发表于 2017-11-10 16:43
亲测能用,仿真图如下

为什么我下载后用不了啊求解
回复

使用道具 举报

55#
ID:556689 发表于 2019-11-22 09:27 来自手机 | 只看该作者
faridzled 发表于 2017-11-14 19:07
thanks for sharing

这个霍尔传感器是怎么实现和单片机的连接呢  大佬
回复

使用道具 举报

56#
ID:556689 发表于 2019-11-22 09:28 来自手机 | 只看该作者
a422714088 发表于 2018-3-13 17:44
如果做成实物的话,怎么添加信号源呢  就是把这块板子放去哪里才可以测速呢。。。

我也是不知道
回复

使用道具 举报

57#
ID:538392 发表于 2019-11-29 20:04 | 只看该作者
非常给力老铁!
回复

使用道具 举报

58#
ID:620287 发表于 2019-12-1 15:09 来自手机 | 只看该作者
希望楼主做一个摩托车智能防盗的
回复

使用道具 举报

59#
ID:171036 发表于 2020-3-23 21:55 | 只看该作者
denminshen 发表于 2018-6-24 00:19
终于弄明白了,那个除以40是楼主随便写的样,我没有要,参考楼主朋友的程序,我打算用在电动车里程表上,所 ...

老兄  你那maichong是脉冲个数还是磁钢个数 ?为什么除以maichong?还要除以10?
回复

使用道具 举报

60#
ID:722227 发表于 2020-4-6 23:16 | 只看该作者
十分感谢分享,很受用
回复

使用道具 举报

61#
ID:524001 发表于 2020-4-28 15:44 | 只看该作者
liyongan_1985 发表于 2018-10-26 11:28
程序从头到尾认真研究与学习了一下,就程序整体逻辑而言,个人以为还是不错的,但是其中有一处个人以为还可 ...

请问mode和bike set代表什么啊?我是小白看不懂求回答
回复

使用道具 举报

62#
ID:783980 发表于 2020-6-21 09:08 | 只看该作者
多谢,帮大忙了。
回复

使用道具 举报

63#
ID:783980 发表于 2020-6-21 09:44 | 只看该作者
请问一下那个源程序复制到Keil4里编译不成功呀?
回复

使用道具 举报

64#
ID:744853 发表于 2020-6-23 22:49 | 只看该作者
admin 发表于 2016-9-7 23:43
下面是主程序:

找到宝了,切换能切换到初始模式吗
回复

使用道具 举报

65#
ID:784145 发表于 2020-6-30 01:15 | 只看该作者
仿真测试不是从0开始计里程数的,从何修改?
回复

使用道具 举报

66#
ID:860145 发表于 2020-12-15 19:08 | 只看该作者
您好,想问一下,这个pcb文件打开后与您的pcb截图不一样
回复

使用道具 举报

67#
ID:357153 发表于 2020-12-28 13:51 | 只看该作者
感谢楼主的分享。收藏、值得学习
回复

使用道具 举报

68#
ID:895892 发表于 2021-3-24 14:29 | 只看该作者
跟樓主好好學習
回复

使用道具 举报

69#
ID:905107 发表于 2021-4-13 16:13 | 只看该作者
CYQ-1011 发表于 2017-4-18 19:31
**** 作者被禁止或删除 内容自动屏蔽 ****

能把文件分享一下吗
回复

使用道具 举报

70#
ID:912838 发表于 2021-5-13 20:14 | 只看该作者
里程表怎么清零
回复

使用道具 举报

71#
ID:891876 发表于 2022-8-22 12:31 | 只看该作者
请问查看原理图用什么软件?
回复

使用道具 举报

72#
ID:1075254 发表于 2023-5-7 14:51 | 只看该作者
帮助很大,希望继续出帖子!嘿嘿
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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