2026/2/17 7:33:41
网站建设
项目流程
网站图标怎么做,四年级2023新闻摘抄,wordpress建立模板下载,seo发贴软件第二章 步进电机式车速里程表的硬件构成
在上一章中我们论证了车速里程表的设计方案#xff0c;步进电机式车速里程表是本文选取的最优方案。本章将重点介绍该方案的具体实施内容#xff0c;其中包括车速、里程信号模块、控制模块、LCD显示模块、步进电机指示模块和掉电保护…第二章 步进电机式车速里程表的硬件构成在上一章中我们论证了车速里程表的设计方案步进电机式车速里程表是本文选取的最优方案。本章将重点介绍该方案的具体实施内容其中包括车速、里程信号模块、控制模块、LCD显示模块、步进电机指示模块和掉电保护模块等。下面我们分别对各个模块进行一一介绍。2.1 总体结构的设计和原理概述步进电机式车速里程表机芯研制的硬件原理框图如图2-1所示。其中车速、里程信号部分是由霍尔传感器组成。霍尔传感器安装在变速箱输出轴上霍尔传感器采集到的信号送是给单片机的定时器/计数器T0和定时器/计数器T2中。单片机构成了控制部分单片机把霍尔传感器送来的信号通过单片机的计数器T0做相应编程记录下汽车行驶0.1km时霍尔传感器所产生的信号脉冲个数通过单片机转换为BCD码送给LCD显示也就实现了最小显示为0.1km 如果累计到1km就把1km累加到总里程并送入E2PROM保存再从E2PROM中调入LCD中进行总里程显示。在LCD显示中分为小计里程显示和总里程显示小计里程可实现单次行驶路程总里程记录汽车总行驶路程。在E2PROM中只保存总里程值以备单片机掉电时总里程数据丢失。定时器/计数器T2用于记录单个脉冲的周期把这个周期值通过软件编译转化为车速值再由单片机的P0口送给步进电机指示瞬时车速值。图2-1 步进电机式车速里程表机芯的原理框图显示模块由驱动芯片PCF8566和LCD显示屏组成。在显示模块中显示里程的信号是由P2口送入的P2输出的信号要先经过驱动芯片PCF8566再送给LCD显示。步进电机模块同样也由驱动芯片组成本系统选择的驱动芯片是ULN2003速度信号经由单片机P0口送给驱动芯片再由驱动芯片送给步进电机指示相应车速值。2.2 车速、里程信号电路的设计第四代汽车仪表对于传感器的选择一般常用的是霍尔式和干簧管式转速传感器也比较少的用到磁电式转速传感器。因为随着车速的提高用软轴驱动的传统车速里程表受到前所未有的挑战这是因为软轴在高速旋转时由于受钢丝交变应力极限的限制而容易断裂同时软轴布置过长会出现形变过大或运动迟滞等现象。第四代车速里程表无论选择哪种传感器它们输出的信号都要是脉冲信号从而使得非接触式转速传感器得以迅速发展。也只有选择产生脉冲信号的传感器才能满足本课题的要求。故本系统选用霍尔式转速传感器。霍尔探头组件安装在变速箱输出轴上里程计数、车速计时脉冲产生的工作原理如图2-2所示。八个磁钢与变速箱输出轴同步旋转。霍尔探头固定在变速箱壳体上静止不动当输出轴上某只磁钢转动到霍尔探头对应位置时霍尔探头中的霍尔敏感器件受到磁钢磁场作用霍尔探头输出一个低电平当没有磁钢与霍尔探头对准时霍尔探头不再受到磁场作用输出高电平。输出轴转动一周霍尔探头有八个方波输出。如果以速比为1624的车型为例汽车行驶一公里则霍尔传感器发出的脉冲数共为8×6244992个。步进电机式车速里程表机芯的转动和LCD中里程的显示都是受控于霍尔探头输出的方波个数。记录4992个脉冲表示汽车行驶1公里记录单个脉冲的周期算出汽车行驶的速度具体应用将在相应章节中介绍。图2-2 霍尔传感器组件2.3 控制模块电路的设计控制模块由单片机构成单片机的复位电路和振荡电路的连接如图2-3所示复位选用自动上电复位方式晶振选用典型值11.0592MHz。电容C01和C02的作用是帮助起振。由于AT89S52有8k字节的ROM对于本系统来说存储器能够满足要求因此1。图2-3 开关按钮复位和晶振连接图P0口的低四位承担着传送步进电机时序信号的任务这个时序信号用来指示相对应的速度因此P0口的低四位接ULN2003。由于P0口是一个8位漏极开路的双向I/O口。作为输出口每位能驱动8个TTL逻辑电平。对P0端口写“1”时引脚用作高阻抗输入。故需要接上拉电阻来实现“1”的输出。P2口中的P2.0和P2.1接E2PROM芯片AT24C02的SDA和SCL管脚P2.2和P2.3接PCF8566的SDA和SCL管脚。连线之间均接上拉电阻。2.4 里程显示电路的设计里程显示可由LED和LCD来显示。由于LCD显示屏具有零辐射、低功耗、散热小、体积小、显示清晰等优点并且显示视觉效果较好可有效地缓解驾驶员的眼疲劳。对于功耗要求越低越好的汽车仪表来说优先选用LCD来显示里程是它最终的选择。本文选择的是PCF8566驱动器和专用LCD组成LCD显示模块。之所以如此选择是因为PCF8566芯片是低功耗的LCD驱动器。图2-4为LCD显示模块连线图。PCF8566的SDA和SCL管脚分别接单片机的P2.0和P2.1在这两者的连线之间接上拉电阻。PCF8566的四个背极输出BP0-BP3分别直接与LCD的背极输入BP0-BP3相连PCF8566的24个段输出也同样直接与LCD相连。PCF8566器件地址和控制命令字要通过I2C总线发送进来它们发送的顺序为器件地址——方式设置——数据指针——器件选择——闪烁控制。但本系统只用到一个PCF85 66器件器件的默认子地址为00H不需要再进行器件选择故可省去器件选择这个控制命令字。那么控制命令字的发送顺序改为器件地址——方式设置——数据指针——闪烁控制。PCF8566的VDD脚接5VOSC、A0、A1、A2、VSS和VLCD接地。图2-4 LCD显示模块连线图里程显示的程序设计AT89S52和一般单片机一样支持C51高级语言和asm51汇编语言两种语言编程。但我们在大学的学习中用的是asm51汇编语言为了更好的对大学所学课程知识的一次再认识和连贯性总结故本论文仍然选用汇编语言。且本程序在设计上主要具有以下特点在软件结构上各功能程序实现模块化、子程序化在显示方式上采用循环显示队列速度信号采用脉冲周期测量法根据车轮周长推算出速度值里程计数由脉冲个数换算成公里数。图3-1 主程序流程图主程序流程图如图3-1所示。在主程序中用来对系统进行初始化将系统中所有的命令状态以及有关的存储单元置位成初始状态设置AT89S52的堆栈指针、读E2PROM中的总里程并转化为BCD码初始化LCD显示初始化步进电机并使之逆时针旋转280度进行回零然后判断20H.0是否为1如为1则保存里程信号到E2PROM中否则调用里程显示模块再判断20H.3是否为1如为1则调用速度显示模块否则返回继续判断20H.0。中断实现了对采集的信号处理、置判断标志、存储、送显示、指示等。3.1.1 里程的累加T0中断里程计数子程序中计499个脉冲表示行走了0.1公里并产生中断进入T0中断子程序。在这里首先关闭中断小计里程单元加一并送备调用显示单元。如果进位达到一公里则总里程单元也加一并把总里程单元送入E2PROM芯片保存。其中写里程子程序如图3-2所示。起始地址SLA24赋值00H发送数据缓冲区首址为50H传送字节数为06H所以发送数据单元为50H、51H、52H、53H、54H、55H六个单元。寻址字节为0A0H表示为写字节。最终发送的六个数据保存在AT24C02的00H、01H、02H、03H、04H和05H中。图3-2 写里程子程序 图3-3 读里程子程序读里程子程序如图3-3所示其中起始地址SLA24同样赋值00H接收数据缓冲区首址为40H传送字节数为06H所以接受数据单元为40H、41H、42H、43H、44H和45H六个单元。寻址字节为0A0H时为写字节为0A1H时为读字节。同样是从00H、01H、02H、03H、04H和05H这六个地址中读出的。基于红外线的电灯亮度遥控器的设计原理简介一、编码格式红外遥控输出40KHz的载波编码改变R3大小可以改变发射距离。遥控器采用脉冲个数编码不同的脉冲个数代表不同的码。电灯的亮度可分别用不同的脉冲个数来控制。为了使接收可靠第一位码宽为3ms其余为1ms遥控码帧间隔大于10ms。二、遥控码发射当某一个按键按下时单片机先读出键值然后根据键值设定遥控码的脉冲个数再调制成40KHz方波由红外线发射出去。输出调制波如图3所示。一、数据帧的接收处理当红外线接收器输出脉冲帧数据时第一位码的低电平将启动中断程序实时接收数据帧。在数据帧接收时将对第一位起始码的码宽进行验证若第一位低电平码的脉宽小于2ms,将作为错误码处理当间隔位的高电平脉冲宽度大于3ms时结束接收然后根据累加器A中的脉冲个数执行相应输出口的操作。图4为红外线接收器输出的一帧遥控码波形。图1 红外发射电路图2 红外接收电路图3 输出编码波形图 图4 一帧遥控码波形