版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
6.1概述6.2常用控制系统分类6.3STM32微控制器概述6.4STM32F407硬件资源6.5STM32软件开发基础6.6STM32F407项目开发实践第六章控制系统设计与开发1.控制系统组成和基本要求6.1概述
控制系统组成及与其他系统关系1.控制系统组成和基本要求6.1概述
功能完善:满足用户所需基本控制功能,具备合理扩展能力性能优良:响应速度快、控制精度高、运行效率高,可靠性强、寿命长。适应性强:适应不同环境和任务,具备良好可维护性和可升级性。经济性好:控制系统成本合理,提升市场竞争力和用户满意度。智能化高:具备一定人工智能能力,可通过自学习优化控制策略。2.控制系统设计的原则和内容6.1概述
系统需求分析方案设计软硬件设计模块化设计电磁兼容性系统集成与测试6.2常用控制系统分类控制系统类型控制系统的组成系统功能系统可靠性环境适应性通信功能软件开发人机界面应用场合开发周期成本嵌入式控制系统基于开发板或自行设计可组成简单到中等复杂的各类控制系统差差可通过外围元件自行扩展可用汇编或高级语言开发较差智能仪表,简单控制较长低基于PC的控制系统按要求选择主机与相关功能接口板可组成简单到复杂的各类控制系统一般一般拥有多种通信接口,如串口、并口、USB、网口可用高级语言开发好一般规模现场控制或较大规模控制一般高6.2常用控制系统分类控制系统类型控制系统的组成系统功能系统可靠性环境适应性通信功能软件开发人机界面应用场合开发周期成本基于PLC的控制系统按要求选择主机与相关功能模块可组成简单到复杂的各类控制系统好好可通过通信模块自行扩展可用高级语言或梯形图开发一般一般规模现场控制短中专用控制系统按要求选择整套系统一般组成专用控制系统好好各系统不同一般只使用专用语言编写应用程序,不做二次开发一般专用场合一般高6.3STM32微控制器概述
1.STM32的产品线MCU的主要产品系列包括以下几种:(1)STM32F系列:基于Cortex-M3或Cortex-M4内核,提供高性能和丰富的外设。(2)STM32L系列:超低功耗系列,适合电池供电的应用。(3)STM32G系列:主流性能系列,平衡性能和成本。(4)STM32H系列:高性能系列,适用于高性能要求的应用。(5)STM32W系列:无线连接系列,集成了无线通信能力。6.3STM32微控制器概述
1.STM32的产品线STM32产品系列6.3STM32微控制器概述
2.STM32的产品命名及选型STM32产品的命名:6.3STM32微控制器概述
2.STM32的产品命名及选型STM32产品选型方法:片上资源需求:程序体积大,选择更大Flash;数据缓存多,选择更大RAM;外设接口需求:接口种类丰富(如CAN、USB、以太网),选择高端系(如F4)接口数量多,选择引脚数多的封装型号;性能需求:实时性强或处理速度高,选用高主频芯片(如STM32F407);项目成本控制:预算有限,选用中低端系列(如STM32F103);封装形式与应用环境:PCB设计紧凑/体积小,选用小封装;工业环境,选用工业温度范围型号;开发复杂性:学习入门,推荐STM32F1系列;高级应用,推荐STM32F4系列。6.4STM32F407硬件资源
1.功能特性与内部架构功能特性:(1)高达1MB的闪存,提供快速的数据处理能力;(2)丰富的外设接口,包括多个UASRT/UART、SPI、I2C、CAN、USBOTG等通信接口;(3)除了普通定时器外,还集成了多个高级定时器,具有PWM通道、捕获/比较功能和ADC、DAC等功能,适合工业控制和电机驱动应用;(4)支持以太网和LCD-TFT控制器,适用于需要网络连接和图形显示的应用;(5)具备高级图形和音频处理能力,以及双摄像头接口,适合多媒体应用;(6)支持多种启动方式,包括从内置或外部存储器启动;(7)强大的安全功能,包括安全启动和加密存储。6.4STM32F407硬件资源
1.功能特性与内部架构内部架构:高性能内核通信
Cortex-M4作为运算核心
AHB总线矩阵高效连接各模块中断系统(NVIC)多级中断优先级设置支持中断嵌套,提升实时响应能力存储体系结构片上Flash、SRAMFlash加速器提升执行效率支持外部存储器,数据交换高效通用输入输出(GPIO)灵活配置:输入/输出/模拟/复用功能满足多样化接口需求6.4STM32F407硬件资源
1.功能特性与内部架构内部架构:多种通信接口
AHB/APB总线连接支持UART、SPI、I2C等多种数据
传输方式电源管理模块支持多种功耗模式保证系统能效与稳定运行安全与辅助功能内部温度传感器外部中断/唤醒引脚(EXTIT/WKUP)
提升可靠性与灵活性调试与编程接口
JTAG/SWD支持在线调试与程序烧录是开发与测试的核心通道6.4STM32F407硬件资源
1.功能特性与内部架构内部架构:STM32内部存储器架构6.4STM32F407硬件资源
2.常用外部接口GPIO引脚的内部结构图GPIO:内部结构6.4STM32F407硬件资源
2.常用外部接口GPIO:八种工作模式(1)GPIO_Mode_AIN(模拟输入)(2)GPIO_Mode_IN_FLOATING(浮空输入)(3)GPIO_Mode_IPD(下拉输入)(4)GPIO_Mode_IPU(上拉输入)(5)GPIO_Mode_Out_OD(开漏输出)(6)GPIO_Mode_Out_PP(推挽输出)(7)GPIO_Mode_AF_OD(复用开漏输出)(8)GPIO_Mode_AF_PP(复用推挽输出)6.4STM32F407硬件资源
2.常用外部接口USART/UART串口:物理层信号名方向功能简述TX(Transmit)输出发送数据RX(Receive)输入接收数据nRTS(RequesttoSend)输出接收器通知发送器nCTS(CleartoSend)输入发送器询问接收器SCLK(SerialClock)输出同步通信时的时钟信号,仅同步模式下使用6.4STM32F407硬件资源
2.常用外部接口USART/UART串口:物理层串口的电路连接:(1)串口之间直接连接STM32与外设间串口直接连接示意图6.4STM32F407硬件资源
2.常用外部接口USART/UART串口:物理层串口的电路连接:(2)使用RS232转接:全双工通讯模式(3)使用RS485转接:半双工通讯方式(4)使用USB转接:全双工通讯方式RS232接口及定义6.4STM32F407硬件资源
2.常用外部接口USART/UART串口:协议层8位串行数据发送时序图串口通讯的基本配置参数:(1)数据位(2)奇偶校验位(3)停止位(4)波特率(5)过采样参数6.5STM32软件开发资源
1.STM32软件开发环境软件开发环境跨平台支持编码体验工具链功能社区支持是否免费STM32CubeIDE是良好完备丰富一般免费KeilMDK-ARM是优秀完备非常丰富强商业IAREmbeddedWorkbench否优秀完备非常丰富强商业AtollicTrueSTUDIO是良好完备丰富一般商业EclipsewithARMToolchain是中等较完备丰富(扩展后)强免费CLion是优秀较完备丰富强商业(学生免费)VSCodewithPlatformIO是优秀(扩展后)完备(扩展后)丰富(扩展后)强免费6.5STM32软件开发资源
2.STM32Cube生态系统
STM32Cube生态系统图形化配置工具,可通过图形向导选择芯片集成开发工具IDE,主要用于代码编译和调试支持图形化和命令行的烧写工具监测工具套装,方便用户实时监测调试过程6.5STM32软件开发资源
2.STM32Cube生态系统STM32Cube开发流程及软件使用6.5STM32软件开发资源
2.STM32Cube生态系统
STM32Cube生态系统STM32专用驱动包,含外设驱动与示例代码扩展模块补充MCU包,聚焦应用方案器件驱动标准外设库硬件抽象层/底层6.5STM32软件开发资源
3.使用CubeMX分配片上资源(1)项目创建:启动STM32CubeMX,选择目标STM32芯片,创建新项目;(2)外设配置:在图形界面中选择需要使用的外设,并设置相关参数;(3)时钟树配置:在图形界面中配置微控制器的时钟源和时钟频;(4)代码生成:完成配置后,STM32CubeMX可以生成初始化代码和项目模板;(5)项目导入:将生成的项目模板导入到STM32CubeIDE或其他IDE中,开始编码和调试。6.5STM32软件开发资源
4.STM32程序编写与烧写运行main函数结构:初始化系统(驱动、时钟、外设)进入while(1)死循环:循环前放一次性任务循环内执行长期任务程序烧写方式
通过串口或仿真器烧写 KeilMDK-ARM:内置编译器,配置后可直接烧录 STM32CubeIDE:需预先配置编译器和仿真器程序运行与调试
无调试需求:烧写后断开仿真器,供电即可独立运行
有调试需求:保持仿真器连接,支持断点调试
可通过复位开关重启程序运行6.5STM32软件开发资源
5.STM32项目组织架构核心驱动与标准支持文件夹Driver/CMSIS:含处理器相关配置与启动代码,由芯片制造商提供,支持ARM的CMSIS标准。Driver/STM32F4xx_HAL_Driver:HAL库驱动,是STM32CubeMX生成代码的核心部分,实现对外设的抽象。代码实现与头文件文件夹Inc:存放外设初始化头文件,按外设模块分类。Src:包含外设初始化源文件,与头文件对应,含系统入口main.c。6.5STM32软件开发资源
5.STM32项目组织架构启动与配置相关文件Startup:特定STM32系列启动代码,多为汇编语言编写。STM32F407ZGTX_FLASH.ld:芯片启动后FLASH空间配置文件。STM32F407ZGTX_RAM.ld:芯片启动后RAM空间配置文件。用户与编译配置文件UserApp:用户自定义源代码目录,结构可按工程习惯管理。CMakeLists.txt:项目编译配置文件,修改CubeMX
代码时会被样板文件覆盖CMakeLists_template.txt:CubeMX生成的CMakeLists.txt样板文件xxx.ioc:CubeMX
配置文件,存储项目硬件与软件配置信息。6.6
STM32F407项目开发实践1.STM32F407开发板与仿真器仿真器ST-LINKV2正点原子探索者STM32F407开发板及接分布6.6
STM32F407项目开发实践2.基于ROS实现上位机与开发板串口通讯---ROS系统介绍ROS系统架构6.6
STM32F407项目开发实践2.基于ROS实现上位机与开发板串口通讯---ROS与STM32连接通讯通用方案适用于ROS1和ROS2,高度可定制,但需要手动管理协议。ROS1与rosserial易于使用,透明的通讯,但占用MCU存储空间。ROS2与micro-ROS支持多种协议,但需要嵌入式操作系统。硬件连接系统通讯6.6
STM32F407项目开发实践2.基于ROS实现上位机与开发板串口通讯--rosserial_stm32安装配置安装必要的rosserial服务端和客户端程序1.安装rosserial设置新的STM32项目并进行配置2.创建STM32项目将rosserial_stm32库添加到STM32项目中3.引入rosserial_stm32编译程序并将其下载到STM32设备5.编译并下载在STM32项目中编写必要的程序代码4.编写程序代码6.6
STM32F407项目开发实践2.基于ROS实现上位机与开发板串口通讯---在stm32项目中引入ROSrosserial_stm32生成目录stm32cubeMX配置相关代码配置见教材6.6
STM32F407项目开发实践2.基于ROS实现上位机与开发板串口通讯---接入流程总结6.6
STM32F407项目开发实践3.基于开发板实现舵机控制舵机引脚stm32引脚PWM()PA7VCC(红)VCCGND(褐)GND舵机与开发板的信号连接6.6
STM32F407项目开发实践3.基于开发板实现舵机控制生成PWM信号的引脚配置TIM14的配置参数定时器选择选择TIM14的通道1生成PWM信号,分配到GPIO引脚PA7。参数配置配置TIM14的预分频系数、自动重载数值和PWM脉冲比较数值,实现50Hz的PWM脉冲信号。
6.6
STM32F407项目开发实践3.基于开发板实现舵机控制函数名功能描述HAL_TIM_Base_Init()定时器初始化,设置各种参数和连续定时模式HAL_TIM_Base_MspInit()在HAL_TIM_Base_Init()里被调用,重新实现的这个函数一般用于定时器时钟使能和中断设置HAL_TIM_Base_Start()以轮询工作方式启动定时器,不会产生中断HAL_TIM_PWM_Init()生成PWM波的配置初始化,需先执行HAL_TIM_Base_Init()HAL_TIM_PWM_ConfigChannel()配置PWM输出通道HAL_TIM_PWM_Start()启动生成PWM波,需要先执行HAL_TIM_Base_Start()HAL_TIM_PWM_Stop()停止生成PWM波__HAL_TIM_SET_COMPARE()修改PWM波的比较寄存器的比较值,用以控制占空比6.6
STM32F407项目开发实践4.基于开发板实现超声波测距超声波测距原理图HC-SR04与开发板的信号连接HC-SR04引脚stm32引脚EchoPA5TrigPE0VCCVCCGNDGND6.6
STM32F407项目开发实践4.基于开发板实现超声波测距捕获Echo信号的引脚配置TIM7的配置参数TIM2的配置参数开启PE0引脚的GPIO_Output模式,然后开启TI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 4.1陆地水体及其相互关系 第一课时 教案-2022-2023学年高中地理人教版(2019)选择性必修1
- 2026年福建省泉州市政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2026年南昌市青云谱区政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2026年重庆市医疗系统事业编人员招聘笔试备考试题及答案详解
- 安全月自查报告(3篇)
- 2026年广西壮族自治区梧州市政务服务中心(窗口人员)招聘笔试参考题库及答案详解
- 绿化施工劳务分包合同
- 2026年海口市美兰区政务服务中心(窗口人员)招聘考试模拟试题及答案详解
- 2026年石家庄市井陉矿区工会人员招聘笔试模拟试题及答案详解
- 2026年衢州市柯城区政务服务中心(窗口人员)招聘考试参考题库及答案详解
- 2026年小学综合实践综合教师招聘考试笔试试题(含答案)
- 2026年广东广州市天河区社区专职工作人员招聘考试试卷-含答案解析
- 26新三上语文《生字组词课课贴》
- 2026年陕西中考物理试题(原卷版)
- 2026年留疆战士政策理解练习题及解析
- 2026年新疆导游资格考试备考题库
- 2026年中小学教师信息技术能力试题含答案详解AB卷
- 2026年教师业务水平试信息技术公共综合提升试卷【培优B卷】附答案详解
- 2026年中医药法知识竞赛试题及答案
- 科技向上肌源美丽-2023巨量引擎科技护肤白皮书
- 星级酒店管理工程部管理培训资料
评论
0/150
提交评论