基于stm32的红外测距系统设计学士学位论文(编辑修改稿)内容摘要:
,作为 LCD 的输入引脚,接收判断来自单片机的高低电平,然后选择写入指令 /数据或者读取信息。 16 PA2 连接 LCD1602 的 E 引脚,作为 LCD 的输入引脚,接收判断来自单片机的高低电平对 LCD 进行使能。 8 PC0 连接 LCD1602 的 DB0 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 9 PC1 连接 LCD1602 的 DB1 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 10 PC2 连接 LCD1602 的 DB2 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 11 PC3 连接 LCD1602 的 DB3 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 24 PC4 连接 LCD1602 的 DB4 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 25 PC5 连接 LCD1602 的 DB5 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 37 PC6 连接 LCD1602 的 DB6 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 38 PC7 连接 LCD1602 的 DB7 引脚,作为 LCD 的输入 /输出引脚,并在单片机与 LCD 之间传输数据。 STM32 单片机的最小工作系统,顾名思义就是可以使单片机工作起来同时由最少的器件构成的系统。 最小工作系统虽然结构简单,但却是大多数单片机控制系统不可缺少的重要部分,所以要熟练运用单片机的各种各样的功能就必须要熟悉掌握并了解最小工作系统的组成。 STM32 单片机最小工作系统包括以下四部分: 哈尔滨理工大学学士学位论文 12 电源系统 VCC1D2D+3GND4U4USB_232VCC1D2D+3GND4U8USB1 2 3P2S2S1GND1VCC2U6CRTGND125V3U7AMS1117R1422R1522R1922R13R18PL2302_DPL2302_D+R2022USB_DUSB_D+C1333pF10uFC12D14148D24148VBATC1110uF 图 7 电源系统工作原理图 如图 7 所示, STM32 单片机的供电系统设计还是比较简单、易懂、方便使用理解的。 从电脑 USB 端口或者其它的供电设备接入 +5V 的电源,当选择 U8 这个 USB 座时,此时的功能是通过 USB 座给单片机开发板下载程序和供电;当选择 U4 这个 USB 座时,此时的功能是通过 USB 座与外界进行通信或者给单片机开发板进行供电;随后经过 P2( P2 是一个500mA 的自恢复保险丝,作用是防止单片机工作过程中短路现象的发生,当电源瞬间短路时,会产生强大的电流,这时会把与单片机相连设备的主板给烧 坏,同时对开发板自己也是一种保护)到达开关 S1 和 S2,若要给单片机开发板通电需要接通开关 S1 和 S2,若要切断单片机开发板电源,还需要再一次按下开关 S1 和 S2。 当单片机开发板得到 +5V 的电源后,一路经电解电容 C12 滤波以后会更加稳定的从 C12 正极输出,供给单片机开发板所需要的地方;另一路直接接入 U7( U7 是一个型号为 AMS1117 的稳压芯片,作用就是把 +5V 的电压稳压成 + 的电压)的 3 引脚上,经过U7 稳压以后由 2 引脚直接输出 + 电源,一路经电容 C11 滤波以后,作为单片机开发板的电源使用或者作为开发 板其它器件的 + 电源使用;另一路经过电容 C13 滤波以后,作为单片机开发板 A/D 转换模块供电电压。 哈尔滨理工大学学士学位论文 13 复位系统 R610KC6104RESETRESET 图 8 复位系统原理图 单片机复位系统就是让程序计数器回到 0000h 这个地址,程序重头开始执行,将一些寄存器、存储单元都置为初始设定值,单片机复位的形式有很多种,比如上电复位、看门狗复位、手动复位等等。 本开发板运用的是外接电路来手动复位,如图 8 所示, STM32 单片机采用低电平复位,使复位开关 RESET 按下单片机接入低电平即完成复位操作。 时钟系统 时钟系统相当于单片机的脉 搏,好比人得心跳,其重要性不言而喻。 STM32 单片机的时钟系统比较复杂,由于单片机本身结构复杂,外设模块又非常多,而需要很高的系统时钟的模块又在少数,同时为了降低时钟功耗减少电磁干扰,单片机一般都采取多种时钟控制方法。 本论文主要应用的是 SYSCLK(系统时钟)的配置,驱动系统时钟可由 3 种不同的时钟源: ( 1) STM32 单片机内部有一个 8MHz RC 高速振荡器,它产生的的时钟信号会兵分 2 路,一路直接加到时钟选择器开关( SW),这个开关是由STM32 单片机的时钟配置寄存器的第 0 位和第 1 位来控制,如若时钟配置寄 存器的第 0 位和第 1 位分别写入 0, 0 的话,内部的 8MHz RC 高速振荡器产生的 8MHz 的时钟信号就可以轻松通过 SW 开关,此时单片机就产生了 8MHz 的系统时钟。 ( 2)内部的 8MHz RC 高速振荡器产生的 8MHz 的时钟信号另一路经过一个 1/2 分频器变成了 4MHz 的时钟信号加到了 PLLSRC( PLLSRC 是由 STM32 单片机的时钟配置寄存器的第 16 位来控制的)这个选择开关上,如果时钟配置寄存器的第 16 位写入一个 0 的话,内部的 8MHz RC 高速振荡器产生的 8MHz 的时钟信号经过 1/2 分频器变成 4MHz 的时钟信号,就会成功的通过开关 PLLSRC,然后到达 STM32 单片机的锁相环PLL 倍频器(倍频器就是起到一个倍频的作用,通过对时钟配置寄存器的第 1821 位来配置),如果对时钟配置寄存器第 2118 位写入 0110,则就是 8 倍频输出,之前 PLL 输入的为 4MHz 时钟信号,经 8 倍频以后就输出32MHz 的时钟信号了。 这时 SW 第 0 位和第 1 位都写入 0,则单片机系统哈尔滨理工大学学士学位论文 14 时钟为 32MHz。 ( 3)在外部 8MHz 的晶振下和内部的振荡电路的结合下会产生相对稳定的 8MHz 的系统时钟。 其中一路直接通过 SW开关设置为 01,正好选择了这路产生的 8MHz 系统时钟信号。 另一路是首先通过一个选择开关PLLXTPRE( PLLXTPRE 是由时钟配置寄存器的第 17 位来控制的),如若PLLXTPRE 被写入 0,这时 8MHz 的时钟信号就会通过此开关到达开关PLLSRC;如若 PLLXTPRE 被写入 1,这时 8MHz 的时钟信号就会通过对PLLSRC 的设置然后通过锁相环 PLL 倍频器的扩展加到 SW 上,通过 SW后形成相应系统时钟信号。 最后一路是首先遇到了一个 1/2 分频器,变成4MHz 时钟信号后,又到达了 PLLXTPRE 这个开关然后,随后的设置与上一路时钟信号一样,也可得到相应的 系统时钟信号。 从以上的介绍可以看出 STM32 单片机的系统时钟是很复杂的,需要很多寄存器的配置,而每个寄存器又有很多位的配置等等要求,但是时钟系统却又是单片机工作起来必不可少的部分,所以更详细的学习应该对我们来说是非常必要的。 图 9 为 STM32 单片机的晶振电路与时钟振荡电路。 12Y28Mhz12Y3C122PC922PC222P1MR3X1X21MR11C1022PRTCX1RTCX2 图 9 晶振电路(左) 时钟晶振电路(右) 程序下载电路 在某些定义中,程序下载电路不被定义为单片机的最小工作系统,而本论文所运用到的下载电路是 USB 下载电路。 从图 8 可知, STM32 单片机下载电路支持 JATG/SWD 下载, 同时还支持串口下载通信。 由于本论文研究的红外测距系统重点应用 USB 下载电路,相对于 JTAG/SWD 下载的原理这里就不详细介绍,其工作原理图如图 10 所示。 VDD1TRST3TDI5TMS/SWDIO7TCK/SWCLK9NC11TDO/SWO13RESET15NC17NC19VDD2GND4GND6GND8GND10GND12GND14GND16GND18GND20JTAGJTAGR110KR210KR310KR410KR510KJTRSTJTDIJTMSJTDORESETC12104 图 10 JTAG/SWD 下载电路 哈尔滨理工大学学士学位论文 15 本论文主要运用到的是 STM32 单片机的电源电路、复位电路、 USB下载电路、 A/D 转换等功能,前两者在单片机最小工作系统里已经介绍过,下面介绍一下 USB 下载电路和 A/D 转换。 STM32 单片机主要是采用串口通信的工作原理,串行通信就是指数据一位一位地按顺序传输的通信方式,最简单的串口通信电路只需要 2 根信号线和一根地线 皆可以完成,大幅度地降低了使用成本且能实现远距离传输。 在本开发板上,运用了 PL2303(用于实现 USB 座和标准 RS232 串行端口之间的转换)的芯片功能来实现直接运用电脑 USB 口下载程序的功能。 由图 11 可以看出,从 PL2303 输出的信号直接连接到单片机的USART1 这个串口模块上,实现了 USB 转串行通信的连接。 TXD1DTR_N2RTS_N3VDD_2324RXD5RI_N6GND7VDD8DSR_N9DCD_N10CTS_N11SHTD_N12EE_CLK13EE_DATA14DP15DM16VDD_3V317GND_3V318RESET19VDD20GND21TRI_MODE22LD_MODE23VDD_PLL24GND_PLL25PLL_TEST26OSC127OSC228U2PL2303TXDRXDGNDC23 104R3810KC24 104R391KR3710KR4010KR411KR421KQ68550Q58050D34148BOOT0RESETR4345KPL2302_D+PL2302_DC27 10uF1 2Y312MHzC2522PC2622P 图 11 USB 下载电路 STM32 单片机内置 3 个 12 位模拟 /数字转换模块( ADC),转换时间最快为 1s。 ADC 模块是一种逐次逼近型模拟数字转换 器,具有 18 个通道( 16 个外部信号源和 2 个内部信号源),也具有自校验功能,在任何条件下都能保证较高的转换精度。 A/D 转换器的主要技术指标有三点: ( 1)转换时间,从发出启动命令后到转换结束获得完整的数字信号为止所需的时间。 ( 2)分辨率,是指数字量最低位代表的模拟量数值大小。 比如 的电压,系统使用 10 位的 ADC 进行测量,就相当于把 分成 1024份,那么分辨率为。 ( 3)转换精度,是指转换结束后所得的结果相对于实际值的准确度,可用满量程的百分数来表示。 本论文所设计的 红外测距系统只需要一个 ADC 即可完成。 以 ADC1为基础来实现 A/D 转换功能,首先需要对 ADC 模块的输入通道进行了解, STM32 单片机的 A/D 转换通道很多,共有 18 路,本论文应用的是通道 7( PA7)来实现对 Vout 的模拟 /数字转换。 其次就是 ADC 模块的工作哈尔滨理工大学学士学位论文 16 电压,在这 18 路通道中只能实现 之间的转换,也就是说不支持负电压和大于 电压的工作转换。 再者就是以什么样方式来启动 A/D 转换,如单片机的定时捕获、 EXTI 线中断等等。 然后就是 ADC 转换器的分组, STM32 单片机 ADC 转换器分为 2 个通道组:规则 通道组(最多包含16 个转换通道)和注入通道组(最多包含 4 个转换通道),两个组别只能一组一组进行转换,当一组进行转换时另一组可视为中断,可打断当前执行也可等到执行完毕随后执行。 最后就是把通过 A/D 转换得到的数据存入相应的数据寄存器,等待下一次转换或者结束。 对于 A/D 转换电路来说,如果单片机处理模块是整个红外测距系统的重点研究模块,那么 A/D 转换电路就。基于stm32的红外测距系统设计学士学位论文(编辑修改稿)
相关推荐
e(KL)变换。 PCA方法的核心过程是计算特征值和特征向量,有很多不同的数值计算方法。 一种常采用的方法是根据如下的推导 : TXC AA (N N维 ) 其中 1,sA d K d 考虑 TAA (s s 维 )的特征向量 iv T i i iA Av v ( 311) 上式两边左乘 A得到 T i i iAA Av Avμ ( 312) 可见 iAv 就是 TXC AA
20min,并能满足最多达 4种试剂的添加分析。 各种类型的日立系列全自动生化分析仪分别适用于不同医院。 它们均具有功能全、 分析精度高、操作简便、分析快速、节省试剂、经久耐用、故障率低等特点。 7060全自动生化分析仪 (Hitachi7060automaticanalyzer)是一台在日立小型生化分析仪中处理能力最大的随机任选式全自动生化分析仪。 它具有可同时测定最多 32个项目 (使用
指标、动态指标等价值综合指标),已经不再是衡量经济发展的唯一指标,现代化的经济发展从经济生产规模转向注重经济效益的提高,以此同时,原有的价值综合指标不能客 观的描述经济效益的总状况,在这样的情况下,人们探索着开创了一种新的指标评价方法,这种评价体系具有以下特点: 1.具有多个评价指标; ,但是各个指标彼此之间是异度量的,并且不存在一个统一的同变量因素;
关的硬件电路,即振荡器和时钟电路。 常用的时钟电路设计有两种方式,一种是内部时钟方式,另一种是外部时钟电路方式。 本系统采用了内部时钟方式,利用 STM32 内部的振荡器,然后在引脚 OSCIN和 OSCOUT 两端跨接晶体,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟电路,如图 所示。 沈阳航空航天大学北方科技学院毕业设计 (论文) 11 图 STM32内部时钟方 式电路 外接晶振时
c a p 图 21 程序与 winpcap 的依赖关系 1. NPF 模块 在 winpcap 中,与操作系统密切相关的是名为 NPF(Netgroup Packet Filter)的设备驱动程序。 NPF 能够执行许多操作,包括数据包捕获、数据包发送、网络统计及数据包转储到磁盘等,其中,最重要的功能是执行数据包的捕获。 在一个捕获过程中, NPF 驱动程序利用网络接口卡捕获数据包
控。 车载主机 是本系统主要实现功能对象的主体, 在手持主机通过 NRF34L01 无线发送模块发出 三种主要 指令 ,当指令为陀螺仪体感操作指令时,智能车的运行受到手持主机中陀螺仪传感器的控制,当指令为超声波自动避障时,智能车车载主机的超声波模块运行,采集环境数据给主控,经过程序代码算法的运行实现超声波自动避障,当指令为 UI 界面 控 制 时,触控界面的方位按钮可以实现智能车的运行姿态