华科学院本科毕业设计(论文)
第4章 系统软件设计
4.1总体设计
系统软件流程图
根据自行车里程器的设计功能要求,系统程序必需实现以下任务:LCD扫描;按键扫描处理;时钟信号产生。52系列单片机实现多任务运行的方法就是分时复用,在程序设计的时候要相应地分配好各任务的CPU占用时间。对于以上几个任务稍加分析可以看出,LCD显示、按键扫描相对而言有实时要求,而时钟任务则可用单片机的定时器实现。
开始 否 启动? 是 计数器加1 检测传感器 读入里程数 否 是 已经达到1M? 里程加1 计数值-10? 否 否 里程增加 是 里程加1 开始计时 是否转一圈 REI 是 产生速度 返回 图4.1程序流程图
系统主函数
- 27 -
宋丹:基于单片机的自行车里程速度计设计
1.初始化程序
主要工作:将T0设为外部控制定时器方式;外中断0及外中断1设为边沿触发方式;将部分内存单元清零;设置轮子周长;开中断及定时器;将EEPROM中的数据调入内存等。 2.轮圈大小的设计
P1.5和P1.6两个引脚分别接两个开关,通过调节这两个开关,可以改变轮圈的半径。 3.主要程序流程图
系统在上电复位后,先对定时器0和定时器1进行设置和赋值,再进行系统各参数初始化设置,开启用于显示模块的定时器0,再进行按键扫描,通过键处理函数对各模块进行控制。在硬件没有任何触发信号时,主程序进行反复循环执行,并时刻检测触发端口是否有触发信号。系统初始化完成后,启动时钟系统随后进入正常工作状态。
开始 系统初始化 霍尔信号检测 按键扫描 液晶显示 数据处理
图4.2主函数系统框图
4.算法流程
A44E输出端OUT连到单片机外部中断T0上,用磁铁靠近A44E,输出端产生一个低电平信号,使CPU产生一次中断计一次数。假定轮圈的周长为L,在轮圈上安装m个永久磁
- 28 -
华科学院本科毕业设计(论文)
铁,则测得的里程值最大误差为L/m。本设计中取m=1。当轮子每转一圈,通过传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,可以采用两种定时器,一个定时器定位1s,一个是计数器。计数器是用来计数1s钟轮子的圈数。从而可以计算出它的里程与速度。
里程S=周长L*圈数n 速度V=周长L/t
通过计数外部中断的脉冲数,每经过1s进行一次监测,从而得出速度,并计算出路程,再通过液晶1602显示。
4.2子程序设计
4.2.1定时子程序
时间子函数部分主要用于产生时钟信号,实现对等待计时部分电路的等待计时。该部分主要采用单片机定时器0来实现,编程时需要对定时器进行各项设置并对计数器输入初始值,每次对单片机进行复位时都要重复以上步骤。在该程序中定时器0,工作于方式1, 16位定时方式。
89c52单片机内部含有两个定时器可以分别进行定时和计数的功能。在该设计中对定时器0进行设置来实现系统的显示,对定时器1进行设置以实现秒计时,设置秒计数初始值,待计数完成后就可以对变量加一,既对系统进行显示扫描的设计要求。
开始
位选 送显示数据 重设定时器初值
RETI 图4.3定时子程序图
- 29 -
宋丹:基于单片机的自行车里程速度计设计
4.2.2算法流程
A44E输出端OUT连到单片机外部中断T0上,用磁铁靠近A44E,输出端产生一个低电
平信号,使CPU产生一次中断计一次数。假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m。本设计中取m=1。当轮子每转一圈,通过传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,可以采用两种定时器,一个定时器定位1s,一个是计数器。计数器是用来计数1s钟轮子的圈数。从而可以计算出它的里程与速度。
里程S=周长L*圈数n 速度V=周长L/t
通过计数外部中断的脉冲数,每经过1s进行一次监测,从而得出速度,并计算出路程,再通过液晶1602显示 4.2.3按键扫描子程序
该键盘扫描引擎探测按键动作。当处于可信模式时,通过可信内部总线接口传送对应于按键动作的键码。当处于非可信模式时,通过一个接口传送键码以使板上键盘控制器对其进行处理。
本设计中采用了按键来切换各种不同状态,而系统需要时刻查询按键信息,因此需要采用按键扫描来实时查询按键情况,在该程序中单独编写了按键扫描子程序,在有按键信息时进行程序调用和跳转,该按键扫描子程序中还嵌套了按键扫描程序以处理在各种情况下的状态切换。
- 30 -
华科学院本科毕业设计(论文)
开始 扫描是否有按键输入 Y 再次扫描按键 判断两次数据是否相同? N Y N 按键是否释放 Y 输出按键值
图4.4按键扫描子程序图
4.2.4 LCD1602程序
LCD1602液晶模块内部的控制器共有11条控制指令,它的读写操作、屏幕和光标的操作都是通过指令编程来实现的,程序框架如下图4.5:
开始 延时40ms 功能设置 延时1ms 显示开关控制 初使化结束 进入模式设置 延时10ms 清显示 延时1ms
图4.5 LCD1602程序图
- 31 -
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于单片机的自行车里程速度计设计论文 - 图文(7)在线全文阅读。
相关推荐: