汽车油量检测器的设计与实现_毕业设计(编辑修改稿)内容摘要:

T0/ T1/ WR/ RD/ XTAL2 XTAL1 GND VCC EA/VPP ALE/PROG PSEN 图 25 STC89C52引脚图 毕 业 设 计 7 P1 口: P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口, P1 口缓冲器能接收输出 4TTL 门电流。 P1 口管脚写入 1 后,被内部上拉为高,可用作输入, P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 P2 口: P2 口为一个内部上拉电阻的 8 位双向 I/O 口, P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写 “1”时,其管脚被内部上拉电阻拉高,且作为输入。 并因此作为输入时, P2 口的管脚被外部拉低,将输出电流。 这是由于内部上拉的缘故。 P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时, P2 口输出地址的高八位。 在给出地址 “1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时, P2 口输出其特殊功能寄存器的内容。 P3 口: P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL门电流。 当 P3 口写入 “1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平, P3 口将输出电流( ILL)这是由于上拉的缘故。 P3 口也可作为 STC89C52 的一些特殊功能口,如下所示: RXD(串行输入口) TXD(串行输出口) /INT0(外部中断 0) /INT1(外部中断 1) T0(记时器 0 外部输入) T1(记时器 1 外部输入) /WR(外部数据存储器写选通) /RD(外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。 当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在 FLASH 编程期间,此引脚用于输入编程脉冲。 在平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。 因此它可用作对外部输出的脉冲或用于定时目的。 然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。 另外,该引脚被略微拉高。 如果微处理器在外部执行状态 ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。 在由外部程序存储器取指期间,每个机器周期两次 /PSEN 有效。 但在访问外部数据存储器时,这两次有效的 /PSEN 信号将不出现。 毕 业 设 计 8 /EA/VPP:当 /EA 保持低电平时,则在此期间外部程序存储器( 0000HFFFFH),不管是否有内部程序存储器。 注意加密方式 1 时, /EA 将内部锁定为 RESET;当 /EA端保持高电平时,此间内部程序存储器。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出 ]6[。 A/D 转换器 ADC0832 ADC0832 是美国国家半导体公司生产的一种 8 位分辨率、双通道 A/D 转换 芯片。 由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎, 其目前已经有很高的普及率。 学习并 使用 ADC0832 可是使我们了解 A/D 转换器 的原理,有助于我们单片机技术水平的提高。 ADC0832 具有以下特点: 8 位分辨率; 双通道 A/D 转换; 输入输出电平与 TTL/CMOS 相兼容; 5V 电源供电时输入电压在 0~5V 之间; 工作频率为 250KHZ,转换时间为 32μS; 一般功耗仅为 15mW; 8P、 14P—DIP(双列直插)、 PICC 多种封装; 商用级芯片温宽为 0176。 C to +70176。 C,工业级芯片温宽为 −40176。 C to +85176。 C ]7[ ; 芯片引脚分配图如图 26所示: 图 26 ADC0832引脚分配图 芯片接口说明: CS_ 片选使能,低电平芯片使能。 CH0 模拟输入通道 0,或作为 IN+/使用。 CH1 模拟输入通道 1,或作为 IN+/使用。 VCC(Vref) 1 8 2 7 3 6 4 5 CS CH0 CH1 GND CLK D0 D1 ADC0832 毕 业 设 计 9 GND 芯片参考 0 电位(地) DI 数据信号输入,选择通道控制 DO 数据信号输出,转换数据输出 CLK 芯片时钟输入 VCC/REF 电源输入及参考电压输入(复用) ADC0832 与单片机的接口电路: ADC0832 为 8 位分辨率 A/D 转换芯片,其最高分辨可达 256 级,可以适应一般的模拟量转换要求。 其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在 0~5V 之间。 芯片转换时间仅为 32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。 独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。 通过 DI 数据输入端,可以轻易的实现通道功能的选择。 单片机对 ADC0832 的控制原理: 正常情况下 ADC0832 与单片机的接口应为 4 条数据线,分别是 CS、 CLK、DO、 DI。 但由于 DO 端与 DI 端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将 DO 和 DI 并联在一根数据线上使用。 当 ADC0832 未工作时其 CS 输入端应为高电平,此时芯片禁用, CLK 和DO/DI 的电平可任意。 当要进行 A/D 转换时,须先将 CS 使能端置于低电平并且保持低电平直到转换完全结束。 此时芯片开始转换工作,同时由处理器向芯片时钟输入端 CLK 输入时钟脉冲, DO/DI 端则使用 DI 端输入通道功能选择的数据信号。 在第 1 个时钟脉冲的下沉之前 DI 端必须是高电平,表示启始信号。 在第 3 个脉冲下沉之前 DI 端应输入 2 位数据用于选择通道功能 ]8[。 作为单通道模拟信号输入时 ADC0832 的输入电压是 0~5V 且 8 位分辨率时的电压度为。 如果作为由 IN+与 IN输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。 但值得注意的是,在进行 IN+与 IN的输入时,如果 IN的电压大于 IN+的电压则转换后的数据结果始终为 00H ]9[。 LCD1602 的介绍 液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。 字符型液晶模块是一种用75 点阵图形来显示字符的液晶显示器,根据显示的容量可以分为 1 行 16 个字、 2行 6 个字、 2 行 20 个字等等。 1602 液晶模块内部的字符发生存储器已经存储了 160个不同的点阵字符图形,这些字符包括了数字、英文字母大、小写,常用符号和日文假名等。 每一个字符都有自己固定的代码,通过给 1602 液晶写入对应的程序代码来显示相应的字符。 其实物如图 27 所示: 毕 业 设 计 10 图 27 LCD1602实物图 1602 字符型 LCD 通常有 14 条引脚线或 16 条引脚线的 LCD,多出来的 2 条线是背光电源线 VCC (15 脚 )和地线 GND (16 脚 ),其控制原理与 14 脚的 LCD 完全一样。 1602 的引脚如图 28 所示: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 VSS VCC V0 RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 BLA BLK LCD1602 图 28 LCD1602引脚图 毕 业 设 计 11 第 1 脚: VSS 为地电源。 第 2 脚: VCC 接 +5V 电源。 第 3 脚: V0 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比 度过高时会产生 “鬼影 ”,使用时可以通过一个 10K 的电位器调整对比度。 第 4 脚: RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 第 5 脚: R/W 为读写信号线,高电平时进行读操作,低电平时进行写操作。 当RS 和 RW 共同为低电 CCV 平时可以写入指令或者显示地址,当 RS 为低电平 RW 为高电平时可以读忙信号,当 RS 为高电平 RW 为低电平时可以写入数据。 第 6 脚: E 端为使能端,当 E 端工作在脉冲的下降沿时,液晶模块执行命令。 第 7~ 14 脚: D0~ D7 为 8 位双向数据线。 第 15 脚: BLA 为背光电源线。 第 16 脚: BLK 为地线。 1602 液晶模块内部的控制器共有 11 条控制指令 ]10[。 如表 21 所示。 表 21 1602指令表 指令 RS RW D7 D6 D5 D4 D3 D2 D1 D0 1 清屏 0 0 0 0 0 0 0 0 0 1 2 光标返回 0 0 0 0 0 0 0 0 1 3 输入模式 0 0 0 0 0 0 0 1 S 4 显示控制 0 0 0 0 0 0 1 D C B 5 光标 /字符移位 0 0 0 0 0 1 S/C R/L 6 功能 0 0 0 0 1 DL N F 7 置字符发生器地址 0 0 0 1 字符发生存储器地址 8 置字符存储器地址 0 0 1 显示数据存储器地址 9 读忙地址和标志 0 1 BF 计数器地址 10 写数据到指令 8 所设地址 1 0 要写的数据 11 从指令 8 所设的地址读数据 1 1 读出的数据 指令 1:清显示,指令码 01H,光标复位到地址 00H 位置; 指令 2:光标复位,光标返回到地址 00H; 毕 业 设 计 12 指令 3:光 标和显示模式设置 I/D,光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。 高电平表示有效,低电平则无效; 指令 4:显示开关控制, D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁; 指 令 5:光标或显示移位 S/C,高电平时移动显示的文字,低电平时移动光标; 指令 6:功能设置命令 DL,高电平时为 4 位总线,低电平时为 8 位总线 N:低电平时为单行显示,高电平时双行显示 F, 低电平时显示 5x7 的点阵字符,高电平时显示 5x10 的点阵字符 (有些模块是 DL:高电平为 8 位总线,低电平为 4位)。 指令 7:字符发生器 RAM 地址设置; 指令 8: DDRAM 地址设置; 指令 9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙; 指令 10:写数据; 指令 11:读数据 ]11[。 毕 业 设 计 13 3 硬件设计 总体方案设计 本设计以 STC89C52 为核心,辅以压力传感器, A/D 转换器, LCD 显示模块,电源模块,报警模块等组成,其中报警模块由蜂鸣器和 LED 灯组成。 本测量系统由电源模块向单片机供电,通过传感器压力变化与电位差变化的对应关系,将油位高度转换成电信号,本设计采用的压力传感器对电压的采样值范围只有 0~5mv,因为 ADC0832 只能识别伏级以上的电压,所以在压力传感器之后必须接入一个信号放大器 AD620AN,将传感器的压力采样值扩大一千倍,使得电压值的范围变为0~5v,本数据经过 A/D 转换器后,由单片机处理,经过 CPU 的计算,得到各项参数的实际值,并定时地存入 E2PROM 中 ,且将油量值通过 LCD 模块显示出油箱里的实时油量。 给单片机上电后,若压力传感器没有压力采样值, LCD 上显示油量数据为。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。