全文预览

基于单片机的电动车里程记录仪的设计

上传者:相惜 |  格式:doc  |  页数:31 |  大小:0KB

文档介绍
数据写入DDRAM或CGRAM指令Р(11)void Read_data(); //从CGRAM或DDRAM读出数据的指令Р2.6 报警电路Р当速度超过30时,蜂鸣器报警,速度可以设定Р Р第 3 章软件的设计与调试Р3.1子程序和主函数的设计Р一、子程序的设计Р设汽车轮子半径为r,脉冲数为n,t=50毫秒,一个脉冲的时间为time,速度为v(km/h),路程为s(km),pi=3.14。Р子程序按模块化的思路编写。各子程序如下:Р1.初始化:设置 T0计时器工作方式1,输入口为p3.2 Р开总中断。?Р打开外中断0中断控制位.Р设置外部中断0优先级控制位。Р设置外部中断0触发方式为边沿触发方式。?Р打开T0中断允许。Р2.外部中断:当P3.2口有脉冲时进入外部中断0。Рtime=sec+t*0.05,记一个脉冲的时间。Рtab_v[5]=0.9*pi*r/time,计算速度并放入数组中。Р高低速的判断,当V>=5时为高速,并用flag = 0,记高速标志位,Рflag=1,记低速标志位;Рfor(i = 0;i<6;i++)Рtab_v[i] = tab_v[i+1];?//数组移数据Р关闭T0,给T0赋50毫秒初值。Р开启T0 ,当来一个脉冲n++; Р当n == 50000时,n清零n = 0;Р3.定时器0中断:当来一个脉冲进入定时器0中断,给T0定时器赋50毫秒初值,当记满50毫秒t++。Р4.处理函数:计算速度分高速和低速。Р速度计算公式:tab_v[5]=0.9*pi*r/time;(单位km/h)Р低速时: v=tab_v[5],即显示第五个速度值。Р高速时: v+=tab_v[i];计算五个速度之和。Рv=v/5;求得平均速度。Р路程公式:s=0.00025*pi*r*n,随着脉冲n的增加s不断累加。Р3.2 PROTEUS仿真过程Р一、电路原理图如下图:

收藏

分享

举报
下载此文档