基于单片机出租车多功能计价器设计(7)

2019-05-17 13:51

基于单片机出租车多功能计价器设计

void main() {

uchar i=0;

KongChe_Led=0; init_device(); }

SDA = 1; SCL = 1; while(1) { }

data_process(); keyscan();

3.2 定时中断服务程序

在定时中断服务程序中,每 10ms 产生一次中断,当产生 100次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。 当选择定时/计数器作为定时器工作时,计数器的加1,信号由振荡器(晶振)的12分频产生,即每经过1个机器周期,计数器增1,直至计数溢出为止。显然,定时器的定时时间与系统的振荡频率有关。 本设计的晶振频率为12MHZ。由于晶振的频率为12MHz,则计数周期为: T=1/(12000000Hz)*12=1us ,本设计选用定时器0,TMOD=0X11, 选用模式1,故T0、T1为16位计数器,计数最大值为65536 。要定时 10 ms,需要计数10000个1us(计数周期) 计数初值=最大值-计数周期数=65536-10000=55536

55536转换为十六进制即为D8F0,计数器从D8F0开始计数,计数到65536溢出,产生定时中断。定时中断服务程序流程图如图3-2所示:

24

基于单片机出租车多功能计价器设计

开始 保护现场 重置计数初值 否 中断100次 是 数据送显示子程序 调用子程序 恢复现场中断返回

图3-2 定时中断服务程序流程图

3.3 里程计数中断服务程序

每当霍尔传感器输出一个低电平信号就使单片机中断一次,当里程计数器对里程脉冲计满1000 次时,使微机进入里程计数中断服务程序中。在该程序中,需要完成当前行驶里程数和总额的累加操作,并将结果存入里程和总额寄存器中。

本设计是用外部中断INT0测量从P3.2引脚输出的负跳变信号累计数,要使用外部中断,必须对中断允许控制寄存器IE和定时器/计数器控制寄存器TCON进行如下设计: void int0_init()

25

基于单片机出租车多功能计价器设计

{ EX0=1; }

//外中断0 允许

IT0=1; //外中断0 触发方式设为 下降沿触发 每当车轮转动一圈,车轮的磁铁与霍尔传感器感相遇时,霍尔传感器就会产生一个下降沿的脉冲信号。脉冲信号传到P3.2引脚,外部中断请求源INT0,单片机就会产生一次中断。根据源代码: void int0() interrupt 0 using 1 INT0——霍尔脉冲计数 { EA=0; Count++; EA=1; if(count=1000) {count=0; }}

Count为车轮转动圈数,总路程等于圈数乘以车轮周长,把总路程的数据送到里程相识单元显示。再按照里程收费标准,将价格数据送到计费显示单元。里程技术中断服务程序流程图如图3-3所示:

开始

初始化 N 中断请求? Y开外中断 Count++ N Count=10000? Y Count=0

图3-3 里程计数中断服务程序流程图

26

基于单片机出租车多功能计价器设计

3.4 中途等待程序

当出租车的速度5km/h时,等待时间开始计时,出租车进入中途等待模式时,片内的T0定时启动,中途等待程序流程图如3-4所示:

开始 定时器T0启动 是 1s到了吗? 否 加1处理 否 60s到了吗? 是 分钟数加1 数据送显示子程序 返回 图3-4 中途等待程序流程图

27

基于单片机出租车多功能计价器设计

void timer0() interrupt 1 using 2 T0等待时间计算 {

TH0=0XD8; TL0=0XF0; Count1++;

if(Count1==100) 脉冲记满100 {

Count1=0; 脉冲清零 Second++; 加一秒

if(Second==60) 有60S? {

Second=0; 秒清零 Minute++; 分加一 } } }

3.5 键盘扫描子程序

键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦右按键按下,便转向相应的子程序处理,处理结束再返回。键盘扫描子程序流程图如图3-5所示:

功能键。按下时进入白天黑夜选择模式,再按回到实时时间显示状态。

切换键。按功能键进入白天黑夜选择模式后再按此键可进行白天和黑夜之间切换。

停止键。运行状态按下此键即停止计程计费。

清除键。按下时清除里程和金额等数据信息,并将此次信息送入存储电路储存。

查询、确认键。功能选择模式时按下此键确认选择,运行时按下此键可查询等待时间,再次按下回到显示里程数、金额状态。

28


基于单片机出租车多功能计价器设计(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:赵兵-初稿

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: