超声波测距与显示系统设计毕业设计论文(编辑修改稿)内容摘要:

1 时, A将内部锁 定位 RESET。 为了执行内部程序指令 A 应该接 VCC。 在 Flash 编程期间 A 也接收 12 伏 VPP 电压。 XTAL1( 19 引脚) :振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2( 18 引脚):振荡器反相放大器的输入端。 图 31 STC89C52引脚图 电子信息工程系毕业论文 8 单片机最小系统 单片机最小系统 ,或者称为最小应用系统 ,是指用最少的元件组成 的单片机可以工作的系统 .对 52 系列单片机来说 ,最小系统一般应该包括 :单片机、晶振电路、复位电路 . 单片机最小系统电路介绍 52 单片机最小系统复位电路的极性电容 C1 的大小直接影响单片机的复位时间,一般采用 10~30uF, 51单片机最小系统容值越大需要的复位时间越短 52 单片机最小系统晶振 Y1 也可以采用 6MHz 或者 ,在正常工作的情况下可以采用更高频率的晶振, 51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。 52单片机最小系统起振电容 C C3 一般采用 15~33pF,并且电容离晶振越近越好,晶振离单片机越近越好 口为开漏输出,作为输出口时需加上拉电阻,阻值一般为 10k。 设置为定时器模式时,加 1 计数器是对内部机器周期计数( 1 个机器周期等于 12 个振荡周期,即计数频率为晶振频率的 1/12)。 计数值 N乘以机器周期Tcy 就是定时时间 t。 设置为计数器模式时,外部事件计数脉冲由 T0 或 T1引脚输入到计数器。 在每个机器周期的 S5P2 期间采样 T0、 T1引脚电平。 当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的 S3P1 期间 装入计数器。 由于检测一个从 1 到 0的下降沿需要 2 个机器周期,因此要求被采样的电平至少要维持一个机器周期。 当晶振频率为 12MHz 时,最高计数频率不超过 1/2MHz,即计数脉冲的周期要大于 2 ms。 电子信息工程系毕业论文 9 图 32 单片机最小系统 超声波测距模块 HCSR04 实物图 图 33 HCSR04实物图 主要技术参数 所用工作电压:直流 5V 电压。 工作静态电流:小于 2mA。 电子信息工程系毕业论文 10 电平输出:高电平为 5V,低电平为 0V。 感应角度:不大于 15度。 探测距离及精度: 2cm450cm。 高精 度:可达 3mm。 HCSR04 工作原理 采用 IO 触发测距,给至少 10us 的高电平信号。 模块自动发送 8个 40khz 的方波,自动检测是否有信号返回; 有信号返回,通过 IO输出一高电平,高电平持续的时间就是超声波从 发射到返回的时间.测试距离 =(高电平时间 *声速 (340M/S))/2。 图 34 时序图 超声波发射电路 超声波传感器的发射电路主要由方波发生芯片, 40kHz 的晶振和 MAX232 芯片构成,单片机给方波发生芯片触发信号后,方波发生芯片开始工作,产生 40kHz的方波信号,电平 转换芯片 MAX232 将 TTL 电平转换成可以驱动振荡器的高电压,进而产生所需的 40kHz 的超声波。 电子信息工程系毕业论文 11 图 35超声波发射电路图 超声波接收电路 本设计中选用的 TL740C 芯片采用了前置放大电路 +带通滤波电路 +后级放大电路。 将接收到的波形经过整形、积分、检波、滤波和限幅放大等实现接收超声波的功能。 当距离较远时,回波信号会非常微弱,转换后的信号电平幅值很小,故要经过若干级放大,使输出功率达到一定要求,并且为了防止信号出现较大的失真,接收电路可以保证有 4MHz 的带宽。 放大后的交流信号送入比较器后输 出一个方波信号,并使触发器触发,向 CPU 发出中断请求。 在中断服务程序中,读取计数器的计数值,结合温度补偿后的声速计算出测距仪距离障碍物的距离。 电子信息工程系毕业论文 12 图 36超声波接收电路图 DSB18B20 温度传感器 实物与引脚定义 图 37 DS18B20实物图 表 31 DS18B20 各引脚描述 DS18B20 数字温度计以 9 位数字量的形式反映器件的温度值,通过一根单线接口发送和接收信息,因此在 单片机和 DS18B20之间仅需一条连接线(加管脚号 符号 功 能 1 GND 电源地 2 DQ 数据输入输出 3 VDD 电源可选 电子信息工程系毕业论文 13 上地线)。 用于读写和温度转换的电源可以从数据线本身获得,无需外部电源。 DS18B20 主要特性 独特的单线接口仅需一个端口引脚进行通讯 简单的多点分布应用 无需外部器件 可通过数据线供电 零待机功耗 测温范围 55℃~ +125℃。 华氏器件 67℉~ +257℉,以 ℉递增 温度以 9位数字量读出 温度数字量转换时间 200ms(典型值) 用户可定义的非易失性温度报警设置 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件 应用包括温度控 制工业系统消费品温度计或任何热感测系统 图 38与单片机连接图 语音播报模块 ISD1700 系列芯片是华邦公司新推出的单片优质语音录放电路,该芯片提供多项新功能,包括内置专利的多信息管理系统,新信息提示( vAlert ) ,双运作模式(独立 amp。 嵌入式),以及可定制的信息操作指示音效。 芯片内部包含有自动增益控制、麦克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。 特点: 可录、放音十万次,存储内容可以断电保留一百年。 两种控制方式,两种录音输入方式,两种 放音输出方式 电子信息工程系毕业论文 14 可处理多达 255 段以上信息 有丰富多样的工作状态提示 多种采样频率对应多种录放时间 音质好,电压范围宽,应用灵活,价廉物美 电特性: 工作电压: ,最高不能超过 6V 静态电流: 1 μ A 工作电流: 20mA 用户可利用震荡电阻来自定芯片的采样频率,芯片的采样率可以通过外部振荡电阻来调节 : 表 32 采样频率与振荡电阻的关系 采样频率 12KHz 8KHz 4KHz 振荡电阻 60kΩ 80kΩ 100kΩ 120kΩ 160kΩ 主控单片机主要通过四线( SCLK , MOSI, MISO, /SS ) SPI 协议对 ISD1730 进行串行通信。 ISD1730 作为从机,几乎所有的操作都可以通过这个 SPI 协议来完成。 为了兼容独立按键模式,一些 SPI 命令: PLAY , REC, ERASE, FWD, RESET和 GLOBAL_ERASE 的运行类似于相应的独立按键模式的操作。 另外, SET_PLAY,SET_REC, SET_ERASE 命令允许用户指定录音、放音和擦除的开始和结束地址。 此 外,还有一些命令可以访问 APC 寄存器,用来设置芯片模拟输入的方式。 微机接口 主控单片机主要通过四线( SCLK , MOSI, MISO, /SS ) SPI 协议对 ISD1700 进行串行通信。 ISD1700 作为从机,几乎所有的操作都可以通过这个 SPI 协议来完成。 为了兼容独立按键模式,一些 SPI 命令: PLAY , REC, ERASE, FWD, RESET和 GLOBAL_ERASE 的运行类似于相应的独立按键模式的操作。 另外, SET_PLAY,SET_REC, SET_ERASE 命令允许用户指定录音、放音和擦 除的开始和结束地址。 此外,还有一些命令可以访问 APC 寄存器,用来设置芯片模拟输入的方式。 ISD1700 系列的 SPI 串行接口操作遵照以下协议: .一个 SPI处理开始于 /SS 管脚的下降沿。 .在一个完整的 SPI指令传输周期, /SS 管脚必须保持低电平。 .数据在 SCLK 的上升沿锁存在芯片的 MOSI 管脚,在 SCLK 的下降沿从 MISO管脚输出,并且首先移出低位。 . SPI 指令操作码包括命令字节,数据字节和地址字节,这决定于 1700 的指令类型 .当命令字及地址数据输入到 MOSI 管脚时,同时状态寄存器和当前行地址信息从 MISO 管脚移出。 . 一个 SPI处理在 /SS 变高后启动。 电子信息工程系毕业论文 15 . 在完成一个 SPI 命令的操作后,会启动一个中断信息,并且持续保持为低,直到芯片收到 CLR_INT 命令或者芯片复位。 图 39 语音播报电路 显示单元 数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8个显示笔划 a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极 COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制 ,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。 通过分时轮流控制各个数码管的的 COM端,就使各个数码管轮流受控显示,这就是动态驱动。 在轮流显示过程中,每位数码管的点亮时间为 1~ 2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示 的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。 在本次设计中,我们选用 P0 口作为‘段码’,连接 SM410564‘ a,b,c,d,e,f,g,dp’,每一段的亮灭。 选用 ~ 分别对应‘位码’,电子信息工程系毕业论文 16 即连接 SM410564 的‘ S1, S2, S3, S4’分别控制每一位的亮灭。 ‘ S1, S2,S3, S4’相当于是每一段的 COM 端,由于是共阳极,只有某一位对应的 COM端为‘ 1’时,所送的‘段码’对该端来说才是有效的。 图 310 显示电路图 电子信息工程系毕业论文 17 第四章 系统的软件设计 超声波测距仪的软件设计主要有主程序、超声波发生程序、超声波接收中断程序及显示子程序组成。 我们知道 C语言程序有利于实现较复杂的算法,汇编语言程序则具有较高的效率且容易精细计算程序运行的时间,而超声波测距仪的程序需要有较复杂的计算(计算距离时),所以控制程序可采用 C语言编程。 超声波测距的算法设计 超声波测距的原理为超声波发生器 T在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器 R所接收到。 这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反 射物体的距离。 距离的计算公式为: L=s/2=(ct)/2 其中, L为被测物与测距仪的距离, s为声波的来回的路程, c为声速,t 为声波来回所用的时间。 在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。 当收到超声波反射波时,接收电路输出端产生一个负跳变,在 INT0 或 INT1 端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间 差,计算距离。 主程序流程图 软件分为两部分,主程序和中断服务程序,如图 4图 4图 43所示。 主程序完成初始化工作、各路超声波发射和接收顺序的控制。 定时中断服务子程序完成单方向超声波的发射,外部中断服务子程序主要完成时间值的读取、距离计算、结果的输出等工作。 主程序首先是对系统环境初始化,设置定时器 T0 工作模式为 16 位定时计数器模式。 置位总中断允许位 EA 并给显示端口 P0和 P1清 0。 然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约 (这也就是超声波测距会有一个最小可测距离的原因)后,才打开外中断 1接收返回的超声波信号。 电子信息工程系毕业论文 18 单 片 机 初 始 化定 时 器 初 始 化显 示 测 量 值开 始开 外 部 中 断等 待 中 断 图 41主 程序流程 由于采用的是 12MHz 的晶振,计数器每计一个数就是 1μ s,当主程序检测到接收成功的标志位后,将计数器 T0 中的数(即超声波来回所用的时间)按式( 41)计算,即可得被测物体与测距仪之间的距离,设计时取 20℃时的声速为 344m/s 则有: d=(ct)/2=172T0/10000cm 其中, T0为计数器 T0。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。