基于单片机的数字车用仪表设计内容摘要:

功能:8k 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。 另外,AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。 空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。 掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。 该反向放大器可以配置为片内振荡器。 石晶振荡和陶瓷振荡均可采用。 如采用外部时钟源驱动器件,XTAL2应不接。 有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 芯片擦除:整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。 在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前, 该操作必须被执行。 此外,AT89S52设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。 在闲置模式下,CPU停止工作。 但RAM,定时器,计数器,串口和中断系统仍在工作。 在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 看门狗定时器WDT 是一种需要软件控制的复位方式。 WDT由 13 位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成。 WDT 在默认情况下无法工作;为了激活WDT,户用必须往WDTRST寄存器(地址:0A6H)中依次写入 01EH 和 0E1H。 当WDT 激活后,晶振工作,WDT 在每个机器周期都会增加。 WDT 计时周期依赖于外部时钟频率。 除了复位(硬件复位或 WDT 溢出复位),没有办法停止WDT工作。 当WDT溢出,它将驱动 RSR 引脚一个高个电平输出。 (1)WDT 的使用为了激活 WDT,用户必须向WDTRST寄存器(地址为0A6H的SFR)依次写入0E1H和0E1H。 当WDT激活后,用户必须向WDTRST写入01EH和0E1H喂狗来避免WDT溢出。 当计数达到 8191(1FFFH)时,13 位计数器将会溢出,这将会复位器件。 晶振正常工作WDT激活后,每一个机器周期 WDT 都会增加。 为了复位 WDT,用户必须向WDTRST 写入01EH 和 0E1H(WDTRST 是只读寄存器)。 WDT 计数器不能读或写。 当 WDT 计数器溢出时,将给 RST 引脚产生一个复位脉冲输出,这个复位脉冲持续 96个晶振周期(TOSC),其中 TOSC=1/FOSC。 为了很好地使用 WDT,应该在一定时间内周期性写入那部分代码,以避免WDT复位。 (2)掉电和空闲方式下的 WDT在掉电模式下,晶振停止工作,这意味这WDT也停止了工作。 在这种方式下,用户不必喂狗。 有两种方式可以离开掉电模式:硬件复位或通过一个激活的外部断。 通过硬件复位退出掉电模式后,用户就应该给WDT喂狗,就如同通常AT89S52 复位一样。 通过中断退出掉电模式的情形有很大的不同。 中断应持续拉低很长一段时间,使得晶振稳定。 当中断拉高后,执行中断服务程序。 为了防止WDT在中断保持低电平的时候复位器件,WDT直到中断拉低后才开始工作。 这就意味着 WDT应该在中断服务程序中复位。 为了确保在离开掉电模式最初的几个状态 WDT不被溢出,最好在进入掉电模式前就复位WDT。 在进入待机模式前,特殊寄存器AUXR的 WDIDLE位用来决定WDT是否继续计数。 默认状态下,在待机模式下,WDIDLE=0,WDT继续计数。 为了防止WDT在待机模式下复位 AT89S52,用户应该建立一个定时器,定时离开待机模式,喂狗,再重新进入待机模式。 空闲模式在空闲工作模式下,CPU处于睡眠状态,而所有片上外部设备保持激活状态。 这种状态可以通过软件产生。 在这种状态下,片上RAM和特殊功能寄存器的内容保持不变。 空闲模式可以被任一个中断或硬件复位终止。 由硬件复位终止空闲模式只需两个机器周期有效复位信号,在这种情况下,片上硬件禁止访问内部RAM,而可以访问端口引脚。 空闲模式被硬件复位终止后,为了防止预想不到的写端口,激活空闲模式的那一条指令的下一条指令不应该是写端口或外部存储器。 掉电模式在掉电模式下,晶振停止工作,激活掉电模式的指令是最后一条执行指令。 片上RAM和特殊功能寄存器保持原值,直到掉电模式终止。 掉电模式可以通过硬件复位和外部中断退出。 复位重新定义了 SFR 的值,但不改变片上 RAM 的值。 在 VCC未恢复到正常工作电压时,硬件复位不能无效,并且应保持足够长的时间以使晶振重新工作和初始化。 单片机的时钟电路硬件设计单片机的时钟信号用来提供单片机内各种微操作的时间基准,这个时钟信号可由单片机内时钟电路产生,可以直接使用外部时钟信号。 因此,单片机时钟电路通常可以有两种形式内部振荡方式和外部振荡方式。 (1) 内部振荡方式MCS单片机内有一个用于构成振荡器的高增益反向放大器,引脚XTAL1和XTAL 2 分别是此放大器的输入端和输出端。 把放大器与作为反馈元件的晶体振荡器或陶瓷谐振器连接就构成了内部自激振荡器并产生振荡时钟脉冲。 这种方式为内部振荡方式,: 内部振荡方式 外部振荡方式图中C1,C 2 起稳定振荡频率,快速起振的作用,其容值一般在5~30pF。 (2) 外部振荡方式外部振荡方式就是把外部自己有时钟信号引入单片机内。 这种方式是用来使单片机的时钟与外部信号保持同步。 ,本系统中利用内部振荡方式,其参数选择如下:fosc= C1 = C 2 =30pF 单片机的复位电路硬件设计复位操作可以使单片机初始化,也可以使死机状态下的单片机重新启动,计算机在启动时,都需要复位,使CPU和系统中其它部件都处于一个确定的初始状态,并从这个状态开始工作。 在振荡器正在运行的情况下,复位是靠在RST/Vn或RST引脚处至少保持2个机器周期(24个振荡器周期)的高电平而实现的。 单片机复位电路包括片内,片外两部分。 片外复位信号通过引脚RST加到内部复位电路上。 内部复位电路在每个机器周期S5P2对片外复位信号采样一次,当RST引脚出现连续两个机器周期的高电平时,单片机就能完成一次复位。 RST端的外部复位电路有两种复位操作形式:上电自动复位电路和按键手动电平复位电路。 在本系统中采用手动电平自动复位。 :单片机复位的工作过程如下:(1)上电自动复位电路对于MCS51系列来说,最简单的上电复位电路就是由一个电阻和一个电容构成的。 在系统上电时,经C1与R1充电,使VRST端为高电平,持续时间179。 2T,完成复位。 电容充电结束后,系统复位结束,开始正常工作。 一般为了可靠的复位,RST在上电时应保持20ms以上的高电平。 ,RC时间常数越大,上电时RST保持的高电平的时间越长。 当晶振频率为12MHz时,典型值为C=10uF,R=。 (2)按键手动复位电路按键手动复位有电平方式和脉冲方式两种。 按键脉冲复位电路则是利用RC微分电路产生的正脉冲来实现的,其电路图这里略过。 按键电平复位电路是通过是使复位端经电阻与Vcc接通来实现的,按下按键,V REST =15V/=,完成复位。 : 上电自动复位电路 手动电平复位电路经以上分析设计,: AT89S52单片机的最小系统硬件电路原理图 信号检测及处理电路的硬件设计 温度传感器DS18B20及其硬件接口电路设计一、温度传感器DS18B20简介DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,℃,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。 以上特点使DS18B20非常适用于远距离多点温度检测系统。 主要特点有: 用户可自设定非易失性的报警上下限温度值。 2 、不需要外部组件,能测量 55~ + 125 ℃范围内的温度。 3 、 10~+85 ℃范围内的测温准确度为177。 ℃。 4 、通过编程可实现9~12 位的数字读数方式,可在至多750 ms 内将温度转换成12 b 的数字,测温分辨率可达01062 5 ℃。 5 、独特的单总线接口方式,与微处理器连接时仅需要一条口线即可实现与微处理器双向通讯。 温度传感器技术指标(1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条线即可实现微处理器与DS18B20的双向通讯。 (2)可用数据线供电,电压范围:+~+ V。 (3) 测温范围:55 ~+125 ℃, 在10~+85176。 C范围内,精度为177。 176。 ℃。 (4)通过编程可实现9~12位的数字读数方式。 (5)用户可自设定非易失性的报警上下限值。 (6)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。 (7)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 DS18B20的内部结构 所示,主要由4部分组成:64位光刻 ROM、温度传感器、非易失性的温度报警触发器 TH 和 TL、配置寄存器。 ROM 中的 64 位序列号是出厂前被光刻好的,他可以看作是该DS18B20的地址序列码,每DS18B20的64位序列号均不相同。 高低温报警触发器TH和TL , 配置寄存器均由一个字节的E 2 PROM组成,使用一个存储器功能命令可对TH ,TL或配置寄存器写入。 配置寄存器中 R1 ,R0 决定温度转换的精度位数: R1R0=“00”,9 位精度,最大转换时间为93175 ms。 R1R0 =“01”,10 位精度,最大转换时间为18715ms。 R1R0=“10”,11 位精度,最大转换时间为375 ms。 R1R0 =“11”,12 位精度,最大转换时间为750ms。 未编程时默认为12位精度。 DS18B2的内部结构DS18B20的内存结构DS18B20温度传感器的内部存储器包括一个高速暂2存RAM和一个非易失性的可电擦除的E RAM ,后者存放高温和低温触发器TH ,TL和结构寄存器。 暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第1个字节的内容是温度的低8 位,第2 个字节是温度的高8位。 第3个和第4个字节是 TH ,TL 的易失性拷贝,第5 个字节是结构寄存器的易失性拷贝,这3个字节的内容在每一次上电复位时被刷新。 第 8 个字节用于内部计算。 第9个字节是冗余检验字节,校验前面所有8 个字节的 CRC码,可用来保证通信正确。 二、DS18B20 与单片机的硬件接口设计,其中DS18B20工作在外部电源供电方式。 与AT89S52的接口电路图通过预先对 D。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。