- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章基于STM32的嵌入式蓝牙与WiFi模块设计
基于STM32的嵌入式蓝牙与WiFi模块设计 交通物联网应用技术 教学目的 介绍32位ARM STM32系统的硬件设计,分别介绍I/O口、中断、DMA、UART、A/D等接口的硬件设计要点和特性 掌握嵌入式系统中蓝牙、WiFi无线组网通讯模块的软硬件设计方法及应用 32位ARM处理器STM32简介 STM32处理器的特点 STM32F103系列微处理器是首款基于ARMv7- M体系结构的32位标准RISC (精简指令集)处理器。 作为最新一代的嵌入式ARM 处理器,它为实现MCU 的需要提供了低成本的平台、缩减的引脚数目、降低的系统功耗,同时提供了卓越的计算性能和先进的中断响应系统。 32位ARM处理器STM32简介 STM32硬件接口外设 多达51个快速I /O 端口 2个12位模数转换器,多达16个外部输入通道 灵活的7路通用DMA 可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输 调试模式 内部包含多达7个定时器 含有丰富的通信接口 32位ARM处理器STM32简介 STM32的时钟和电源管理 在STM32中,有五个时钟源 HIS HSE LSI LSE PLL STM32的电源组成,其主要由3个部分 独立的A/D供电电压和参考电压 备份电压 电压调节器。 I/O口 STM32的I/O口工作原理 STM32的输入输出管脚有下面8种可能的配置 : 浮空输入_IN_FLOATING 带上拉输入_IPU 带下拉输入_IPD 模拟输入_AIN 开漏输出_OUT_OD 推挽输出_OUT_PP 复用功能的推挽输出_AF_PP 复用功能的开漏输出_AF_OD I/O口 I/O口编程实例 函数GPIO_DeInit 功能描述:将外设GPIOx寄存器重设为缺省值 函数GPIO_AFIODeInit 功能描述:将复用功能(重映射事件控制和EXTI设置)重设为缺省值 函数GPIO_Init 功能描述:根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器 函数GPIO_StructInit 功能描述:把GPIO_InitStruct中的每一个参数按缺省值填入 函数GPIO_ReadInputDataBit 功能描述:读取指定端口管脚的输入 函数GPIO_ReadInputData 功能描述:读取指定的GPIO端口输入 函数GPIO_ReadOutputDataBit 功能描述:读取指定端口管脚的输出 中断 ARM的中断原理 ARM cortex_m3 内核支持 256 个中断(16 个内核+240 外部)和可编程 256 级中断优先级的设置,与其相关的中断控制和中断优先级控制寄存器(NVIC、SYSTICK 等)也都属于cortex_m3 内核的部分。STM32 采用了cortex_m3 内核,所以这部分仍旧保留使用,但 STM32并没有使用 cortex_m3 内核全部的东西(如内存保护单元 MPU 等),因此它的 NVIC 是cortex_m3 内核的 NVIC 的子集。 中断 STM32的中断控制器 STM32 目前支持的中断共为 84个(16 个内核+68个外部),和16 级可编程中断优先级的设置。 STM32 可以支持的 68 个外部中断通道,已经固定的分配给相应的外部设备 。 中断 中断编程实例 UART UART的工作原理 UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。 在嵌入式设计中,UART用来与PC进行通信 其过程为:CPU先把准备写入串行设备的数据放到UART的寄存器(临时内存块)中,再通过FIFO(First Input First Output,先入先出队列)传送到串行设备 UART STM32的UART STM32的可提供5路串口,有分数波特率发生器、支持单线光通信和半双工单线通讯、支持LIN、智能卡协议和IrDA SIR ENDEC规范(仅串口3支持)、具有DMA等 A/D接口 A/D接口原理 模数转换则是将模拟电量转换为数字量,使输出的数字量与输入的模拟电量成正比。 在A/D转换中,因为输入的模拟信号在时间上是连续的,而输出的数字信号是离散量,所以进行转换时只能按一定的时间间隔对输入的模拟信号进行采样,然后再把采样值转换为输出的数字量。通常A/D转换需要经过采样、保持量化、编码四个步骤。 A/D接口 STM32的A/D转换 STM32处理器自带的12位ADC是一种逐次逼近型模拟数字转换器。他有18个通道,可测量16个外部和两个内部信号源。 各通道的A/D转换可以单次、连续、扫描或间断模式执行。ADC的结果
文档评论(0)