基于stc89c52单片机超声波测距系统内容摘要:

8位地 址。 P2 口: P2 是一个带有内部上拉电阻的 8 位双向 I/ O 口, P2 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL逻辑门电路。 对端口写“ 1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流( IIL)。 在访问外部程序存储器或 16位地址的外部数据存储器(例如执行 MOVX@DPTR指令)时, P2口送出高 8位地址数据。 在访问 8 位地址的外部数据存储器(如执行MOVX@Ri 指令)时, P2 口线上的内容(也即特殊功能寄存器( SFR)区中 P2寄存器的内容),在整个访问期间不改变。 Flash编程或校验时, P2亦接收高位地址和其它控制信号。 P3 口: P3 口是一组带有内部上拉电阻的 8 位双向 I/ 0 口。 P3 口输出缓冲P 1 .01P 1 .12P 1 .23P 1 .34P 1 .45P 1 .5 M O S I6P 1 .6 M I SO7P 1 .7 S CK8RS T9P 3 .010P 3 .111P 3 .212P 3 .313P 3 .414P 3 .515P 3 .616P 3 .717X T A L 218X T A L 119G N D20P 2 .021P 2 .122P 2 .223P 2 .324P 2 .425P 2 .526P 2 .627P 2 .728P S E N29A L E30EA31P 0 .732P 0 .633P 0 .534P 0 .435P 0 .336P 0 .237P 0 .138P 0 .039V c c40 S T C8 9C 52河南理工大学毕业设计(论文)说明书 10 级可驱动(吸收或输出电流) 4 个 TTL逻辑门电路。 对 P3口写入“ l”时,它们被内部上拉电阻拉高并可作为输入端口。 作输入端时,被外部拉低的 P3口将用上拉电阻输出电流。 STC89C52 时钟电路 此单片机 内部有一个用于构成振荡器的高增益反相放大器,引脚 XTAL1 和XTAL2 分别是此放大器的输入端和输出端。 时钟可以由内部方式产生或外部方式产生。 内部方式的时钟电路如图 图 33 所示,在 XTAL1 和 XTAL2 引脚上外接定时元件,内部振荡器就产生自激振荡。 定时元件通常采用石英晶体和电容组成的并联谐振回路。 晶体振荡频率可以在 ~ 12MHz 之间选择,电容值在 5~ 30pF 之间选择,电容值的大小可对频率起微调的作用。 外部方式的时钟电路如图 34 所示 这种情况下,外部时钟脉冲接到 XTAL1端,即内部时钟发生器的输入端, XTAL2则悬空。 由于外部时钟信号是通过一个 2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空 比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。 图 33 内部方式时钟电路 图 34 外部方式时钟电路 复位 及其主要功能 复位是单片机的初始化操作。 其主要功能是把 PC 初始化为 0000H,使单片机从 0000H 单元开始执行程序。 除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。 除 PC 之外,复位操作还对其他一 些寄存器有影响,它们的复位状态如表 31所示 ,主要功能如 表 32所示。 河南理工大学毕业设计(论文)说明书 11 表 31 单片机 寄存器的复位状态 寄存器 复位状态 寄存器 复位状态 PC 0000H TCON 00H ACC 00H TL0 00H PSW 00H TH0 00H SP 07H TL1 00H DPTR 0000H TH1 00H P0P3 FFH SCON 00H IP XX000000B SBUF 不定 IE 0X000000B PCON 0XXX0000B TMOD 00H 表 32 STC89C52主要功能 主要功能特性 兼容 MCS51 指令系统 8K 可反复擦写 Flash ROM 32 个双向 I/O 口 256x8bit 内部 RAM 3 个 16 位可编程定时 /计数器中断 时钟频率 024MHz 2 个串行中断 可编程 UART 串行通道 2 个外部中断源 共 6 个中断源 2 个读写中断口线 3 级加密位 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能 超声波测距 单片机系统 超声波测距单片机系统主要由: STC89C52 单片机、晶振、复位电路、电源滤波部份构成。 由 K1, K2组成测距系统的按键电路 , 用于 设定超声波测距报警值。 如图 35。 C522 PC622 PY1 12 M K 2 K 1P 1. 01P 1. 12P 1. 23P 1. 34P 1. 45P 1. 5 M O S I6P 1. 6 M I S O7P 1. 7 S C K8R S T9P 3. 010P 3. 111P 3. 212P 3. 313P 3. 414P 3. 515P 3. 616P 3. 717X T A L 218X T A L 119G N D20P 2. 021P 2. 122P 2. 223P 2. 324P 2. 425P 2. 526P 2. 627P 2. 728P S E N29A L E30EA31P 0. 732P 0. 633P 0. 534P 0. 435P 0. 336P 0. 237P 0. 138P 0. 039V c c40I C 1 S T C 89 C 5 2R810 KC910 uP 0. 2P 2. 7P 2. 6P 2. 5P 2. 4P 2. 3P 2. 2P 2. 1P 2. 0V C CP 3. 1P 3. 2P 3. 3P 3. 5P 3. 4V C CV C C 图 35 超声波测距单片机系统 单片机内部有一个高增益反向放大器,输入端为芯片引脚 1XTAL ,输出端为引河南理工大学毕业设计(论文)说明书 12 脚 2XTAL。 而在芯片外部 1XTAL 和 2XTAL 之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。 晶体震荡频率高,则系统的时钟频 率也高,单片机运行速度也就快,但反过来运行速度快对存储器的速度要求就高,对印制电路板的工艺要求也高,所以,这里使用震荡频率为 12MHz 的石英晶体。 在设计电路板时,振荡器和电容应尽量靠近单片机,以避免干扰。 需要注意的是:电路板时,振荡器和电容应尽量安装得与单片机靠近,以减小寄生电容的存在更好的保障振荡器稳定、可靠的工作。 程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,也需按复位键以重新启动。 RST 引脚是复位信号的输入端,复位信号是高电平有效。 按键复位又分按键脉冲复位和按键电平复位。 电平复位将复位端通过电阻与 CCV 相连,按键脉冲复位是利用 RC 分电路产生正脉冲来达到复位的。 因为按键脉冲复位是利用 RC微分电路产生正脉冲来达到复位的。 所以电平复位要将复位端通过电阻与 VCC 相连 .如复位电路中 R、 C 的值选择不当,使复位时间过长,单片机将处于循环复位状态 ,故采用按键复位。 由 K1, K2 组成测距系统的按键电路 ,用于设定超声波测距报警值。 其下限值为 40cm,要根据被测物距离和超声波两探头之间的距离组成的张角来确定,本设计经实物焊接调试后张角大约为 60 度,这里一般设定报警值为 50cm,即可进行短距离的在误差范围之内的精准测量。 超声波发射电路 关于发射电 路,三极管为开关管, 40KHZ 的脉冲通过单片机的引脚输出到三极管的基极,那么三极管的发射极也是 40KHZ 的脉冲,再经过中周的放大,驱动发射探头, 在这里的作用是提高加载到超声波发送头两产端的电压,以提高超声波的发射功率,从而提高测量距离。 40kHz 的方波由 AT89S51 单片机的 输出,经 BG1 推动超声波脉冲变压器,在脉冲变压器次级形成 60VPP 的电压,加载到超声波发送头上, 驱动超声波发射头发射超声波。 如图 36所示。 B G 1 9 0 1 2R14 .7 KT 4 0 V C C P 2 . 7B 图 36 超声波 发射 单元 河南理工大学毕业设计(论文)说明书 13 超声波接收电路 超声波接收电路图利用三级放大 (三 极管放大 ),将脆弱的收回的信号放大,因为声波在传播过程中会损失。 放大的信号通过检波电路得到解调后的信号,即把多个脉冲波解调成多个大脉冲波 , 这里使用的是 I N 4148检波二极管,输出的直流信号即两二极管之间电容电压。 D5的作用是稳压的作用,防止电压过高,损坏后面的器件。 D6的作用 是整流作用,而且能使电流方向始终流向后端的三极管。 测距中,当有障碍物时,超声波回波返回,经过接收放大后,会产生一个低电平信号, 输入至单片机 , 利用这个信号触发 STC89C52单片机的外部中断,从而停止计时,计算从发射到接收的 时间,就是超声波的传输时间。 其接收单元如下图 37所示。 图 37 超声波接收单元 显示电路 数码管要用驱动电路来驱动数码管的各个段码,可以分为静态显示和动态显示两类。 (1) 动态显示:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划“ a, b, c, d, e, f, g, dp“的同名端连在一起,另外为每个数码管的公共极 COM 由位选通控制电路控制,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码, 但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,河南理工大学毕业设计(论文)说明书 14 没有选通的数码管就不会亮。 通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。 在轮流显示过程中,每位数码管的点亮时间为 1~ 2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,但是能够节省大量的 I/O 端口,功耗更低。 (2)静态显示驱动:静态驱动是指每个数码管的每一个段码都由一个单片机的I/O 端口进行驱动,或者使用如 BCD 码十进制译码器译码进行驱动。 静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,如驱动 5 个数码管静态显示则需要 58 = 40 根 I/O 端口来驱动,要知道一个 89C52单片机可用的 I/O 端口才 32 ,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 超声波测距系统的显示要求比较简单,测量结果采用十进制数字显示。 只需能显示 09 的数字,且显示稳定无闪烁即可。 因此本设计显示电路采用简单实用的 3位共阳 LED 数码管。 LED 显示器有静态显示和动态显示两种。 为了减少硬件开销,提高系统可靠性并降低成本,此超声波测距的单片机控制系统采用动态扫描显示,以实时显示距离变化。 数码管的结构由 7个发光二极管组成 ,行成一个日字形 ,它门可以共阴极 ,也可以共阳极,通过解码电路得到的数码接通相应的发光二极而形成相应的字 ,这就是它的工作原理。 数码管按各发光二极管电极的连接方式分为共阳数码管和共阴数码管两种。 本系统采用三位一体 L E D 共阳 数码管显示所测距离值,如图 38。 数 码管采用动态扫描 显示,段码输出端口为单片机的 P2口 , 位码输出端口分别为单片机的 、 、 ,数码管 位 驱运 用 PNP三极管 S9012 三极管 驱动。 图 38 显示 电路 河南理工大学毕业设计(论文)说明书 15 报警输出电路 为提高测测距系统的实用性,本测距系统的报警输出提供开关量信号及声响信号两种方式。 方式一:报警信号由单片机 端口输出,继电器输出,可驱动较大的负载,电路由电阻 R三极管 BG继电器 JDQ 组成,当测量值低于事先设定的报警值时,继电器吸合,测量值高于设定的报警值 时,继电器断开。 方式二:报警信号由单片机 口输出,提供声响报警信号,电路由电。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。