STM32G4入门与电机控制实战 课件全套 第1-8章 STM32G4 概述- 基于 P-NUCLEO-IHM03 套件的有感电机控制案例_第1页
STM32G4入门与电机控制实战 课件全套 第1-8章 STM32G4 概述- 基于 P-NUCLEO-IHM03 套件的有感电机控制案例_第2页
STM32G4入门与电机控制实战 课件全套 第1-8章 STM32G4 概述- 基于 P-NUCLEO-IHM03 套件的有感电机控制案例_第3页
STM32G4入门与电机控制实战 课件全套 第1-8章 STM32G4 概述- 基于 P-NUCLEO-IHM03 套件的有感电机控制案例_第4页
STM32G4入门与电机控制实战 课件全套 第1-8章 STM32G4 概述- 基于 P-NUCLEO-IHM03 套件的有感电机控制案例_第5页
已阅读5页,还剩386页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章P-NUCLEO-IHM03STM32电机控制套件NUCLEO-G431RB开发板1234X-NUCLEO-IHM16M1三相驱动板三相云台电机DC电源套件组成套件包括NUCLEO-G431RB开发板、X-NUCLEO-IHM16M1驱动板、云台直流无刷电机GBM2804H-100T、以及直流电源STSPIN830是一款紧凑型三相电机驱动器,适合磁场定向控制(FOC)方案图2-1P-NUCLEO-IHM03STM32电机控制套件组成NUCLEO-G431RB开发板011.1概述STM32G431RB是一款32位微控制器基于高性能Arm®Cortex®-M432位RISC内核其最高频率可达170MHz且带有浮点单元内嵌高级模拟外设集1.1概述NUCLEO-G431RB板通用功能如下:•采用LQFP64封装的STM32微控制器•与ARDUINO®共享的1个用户LED•1个用户按钮和1个复位按钮•32.768kHz的晶体振荡器•板连接器:ARDUINOUnoV3扩展连接器意法半导体的morpho延长引脚头,用于完全访问所有STM32I/O•灵活的电源选项:ST-LINK、USBVBUS或外部电源•具有USB重新枚举功能的板上STLINK-V3E调试器/编程器:大容量存储器、虚拟COM端口和调试端口•提供了全面的免费软件库和例程,可从STM32CubeMCU软件包获得•支持多种集成开发环境(IDE),包括IAREmbeddedWorkbench®、MDK-ARM,以及STM32CubeIDE•STM32CubeMCU软件包提供全面的自由软件库和例程图2-2NUCLEO-G431RB开发板实物图1.1概述NUCLEO-G431RB板特有功能如下:•外部SMPS生成Vcore逻辑电源•24MHzHSE(高速外部时钟信号)•板连接器:外部SMPS实验专用连接器Micro-AB或Mini-ABUSB连接器(用于ST-LINK)MIPI®调试连接器•兼容Arm®

MbedEnabled™图2-2NUCLEO-G431RB开发板实物图1.2NUCLEO-G431RB开发板硬件构成(1)硬件设计框图图2-3NUCLEO-G431RB开发板的硬件设计框图1.2NUCLEO-G431RB开发板硬件构成(2)元器件的布局图2-4正面元器件布局图2-5反面元器件布局1.2NUCLEO-G431RB开发板硬件构成(3)电源供应通过USB电缆连接到CN1的主机PC(默认设置)连接到CN7引脚24的外部7V-12V(VIN)电源连接到CN7引脚6的外部5V(E5V)电源一个连接到CN1的外部5VUSB充电器(5V_USB_CHGR)连接至CN7引脚16的外部3.3V电源(3V3)图2-6电源拓扑图1.2NUCLEO-G431RB开发板硬件构成(4)NUCLEO-G431RB开发板与Arduino的连接图2-7开发板的Arduino连接器示意图图2-8Arduino和STmorpho连接引脚图1.2NUCLEO-G431RB开发板硬件构成(5)NUCLEO-G431RB开发板IO口的分配表2-1开发板IO口分配X-NUCLEO-IHM16M1三相驱动板022.1概述

X-NUCLEO-IHM16M1是基于STSPIN830面向BLDC/PMSM电机的三相驱动板,为三相低电压低电流无刷直流电机提供电机控制方案,其规格参数和主要功能如下:•标称工作电压范围为:直流7V~45V•输出电流可达1.5A(有效值)•过流保护和互锁功能•过热保护和欠电压保护•反电动势(BEMF)感应电路•支持三电阻或单电阻电流采样检测•基于霍尔效应的传感器或编码器输入连接器•可用于调速的电位计•配有STmorpho连接器•可选择3个或6个PWM直接驱动输入进行驱动•可调节阈值的限流器•Bus电压和PCB温度的感应•待机模式2.2X-NUCLEO-IHM16M1三相驱动板硬件构成

图2-9X-NUCLEO-IHM16M1及STSPIN830的位置2.2X-NUCLEO-IHM16M1三相驱动板硬件构成图2-10STSPIN830功能框图图2-11X-NUCLEO-IHM16M1电机驱动器连接图2.2X-NUCLEO-IHM16M1三相驱动板硬件构成(2)X-NUCLEO-IHM16M1驱动板上的TSV994运算放大器,可将采样电阻上的电压进行放大和偏移到可采样的范围,并把得到的信号输入到MCU的ADC端口,完成了电流的采样。可以选择三电阻或单电阻的采样方式。TSV994原理图如图2-12所示,TSV994在X-NUCLEO-IHM16M1板的位置如图2-13所示。图2-12TSV994原理图图2-13TSV994在X-NUCLEO-IHM16M1板的位置2.2X-NUCLEO-IHM16M1三相驱动板硬件构成图2-14X-NUCLEO-IHM16M1电流检测、调节电路其电流检测、调节电路如图2-14所示。2.2X-NUCLEO-IHM16M1三相驱动板硬件构成

图2-15X-NUCLEO-IHM16M1传感器及其它相关电路图(a)温度传感电路(b)转速给定电路(c)母线电压检测电路(d)位置传感电路2.2X-NUCLEO-IHM16M1三相驱动板硬件构成(3)BEMF感应电路通过旋转电机的BEMF来进行位置估算。电机的BEMF与磁场和电机速度的乘积成正比,且电机位置是磁场的函数。借助BEMF可以知道和控制BLDCM的位置和速度。通过采集三相电压之后输入到观测器以实现位置检测。BEMF感应电路原理如图2-16所示,其中S1751-46RTP6、S1751-46RTP7、S1751-46RTP8是测试点。图2-16BEMF感应电路原理图2.2X-NUCLEO-IHM16M1三相驱动板硬件构成(4)与STM32Nucleo开发板相连

X-NUCLEO-IHM16M1驱动板上集成了Arduino和STmorpho连接器,因此可以与STM32Nucleo开发板相连并与其他的STM32Nucleo扩展板兼容。CN7、CN10这两个公引脚头在板子的两面都有突出,可以用来将X-NUCLEO-IHM16M1驱动板与NUCLEO-G431RB板相连。所有MCU的信号和电源脚位在STmorpho连接器上都有效,MCU的详细引脚分布如图2-17所示。跳线接口如图2-18所示。图2-17X-NUCLE-IHM16M1MCU引脚分布图2.2X-NUCLEO-IHM16M1三相驱动板硬件构成X-NUCLEO-IHM16M1驱动板跳线配置如表2-2所示,其中JP4和JP7必须同步配置,同时开时,为三电阻电流采样;同时关时,为单电阻电流采样。驱动板元件功能描述如表2-3所示。跳线相关配置默认状态J5FOC控制算法的选择关J6FOC控制算法的选择关J2HW限流的模式选择(在三分流模式下默认关闭)[2-3]关J3固定或可调整的限流临界值的选择(默认为固定的)[1-2]关JP4&JP7单分流/三分流架构选择(默认模式为三分流)开元件部位功能描述CN7,CN10STmorpho连接器CN5,CN6,CN9,CN8Arduino,Uno连接器U1STSPIN830驱动器U2TSV994IPT运算放大器J4电源插孔连接器CN1电机和供电插口J1霍尔编码器传感器连接口D1LED状态指示器表2-2X-NUCLEO-IHM16M1驱动板跳线表2-3X-NUCLEO-IHM16M1驱动板元件图2-18X-NUCLEO-IHM16M1驱动板跳线接口图三相云台电机03三相云台电机

三相云台电机GBM2804H-100T的外观如图2-19所示,电机结构与尺寸如图2-20所示。电机引出的三根接线分别对应于U、V、W相,使用时连接到X-NUCLEO-IHM16M1功率板CN1对应的U、V、W处。图2-19电机外观三相云台电机三相云台电机GBM2804H-100T的规格参数如下:•最大直流电压:14.8V•最高转速:2180rpm•最大扭矩:0.981N·m•最大直流电流:5A•极对数:7图2-20电机结构及尺寸DC电源04DC电源DC电源的规格参数如下:•标称输出电压:直流12V•最大输出电流:2A•输入的工作电压范围:交流100V至240V•频率范围:50Hz~60Hz感谢聆听第一章STM32G4概述2024年6月27日STM32G4系列特性123STM32G4主要应用STM32生态资源意法半导体(ST)集团及其产品意法半导体(ST)集团于1987年6月成立,由意大利的SGS微电子公司和法国Thomson半导体公司合并而成。1998年5月,SGS-THOMSONMicroelectronics将公司名称改为意法半导体有限公司。2007年发布了第一款STM32产品,在十余年的时间里累计推出多条产品线,产品系列不断完善。STM32G4分为三大产品系列:入门型、性能型、高精度PWM型,对应的产品分别是STM32G4x1、STM32G4x3、STM32G4x4。图1-1STM32产品平台阵营STM32G4系列特性01迭代和延续STM32G4并不是从零开始的新产品线。它是2012年发布的STM32F3产品线的延续版本,它继承了很多STM32F3的理念和基因,带来更强劲的性能和数模效果。STM32G4是STM32F3的升级,但并不是完全取代,因为它各方面的配置会比F3更高级,资源也会更丰富。迭代与延续2012年发布了首款混合信号微控制器STM32F32014年又发布了STM32F343,进入到原来被DSP垄断的数字电源市场2019年推出一款性能更强大的产品STM32G4来满足不断升级的市场需求图1-2STM32F3到STM32G4的迭代和延续迭代与延续与STM32F3系列相比,STM32G4在性能、丰富的内置数模外设、功能安全与信息安全以及完整的产品四个方面有创新和技术优势。图1-3STM32F3和STM32G4性能对比(1)性能示例:在电机控制应用中遇到三角函数计算,会交给数学加速器来处理,这样不仅可以减轻CPU的负担,而且还可以提高计算效率,比原来由CPU处理时的效率提升了5倍。数字滤波加速器,可被用于生成三极点三零点3p3z补偿器、SigmaDelta调频器和噪音整形器,用于数字电源设计中非常具有优势。内核170MHz高主频增加了3种不同的硬件加速器ART加速器(动态缓存),实现全部代码加速,帮助用户提高代码综合执行效率关键程序加速器CCM-SRAM(静态缓存),预配置确定性保障数学加速器涉及三角函数和数字滤波器(2)丰富的内置数模外设器件名称主要参数值ADC(upto5)拓扑SAR12-bit+硬件过采样

16-bit采样率Upto4Msps(15ksps16-bit)输入单端输入与差分输入偏移与降噪补偿自动校准以降低噪音与偏移DAC(upto7)采样率15Msps(内部输出)1Msps(带缓冲输出)稳定时间16ns运放(upto6)带宽13MHZ斜率45V/us偏置可编程放大倍数(精度)2,4,8,16,-1,-3,-7,-15(1%)32,64,-31,-63(2%)比较器(upto7)电压范围1.62..3.6V传播延迟16.7ns偏置-6..+2mV滞回补偿8种:0,9,18,27,36,45,54,63mV集成化的设计,拥有丰富的内置数模外设不仅减小了PCB尺寸,而且节约了项目开发成本使电机控制板面设计更加简洁,BOM成本更加优化(3)功能安全与信息安全STM32G4产品采用了双BankFlash机制,这一创新应用主要是考虑到信息的安全性STM32G4内部有两块用户Flash区域,支持同时在两个不同的Bank上加载应用程序,一个Bank用来运行程序,另一个可以在线升级固件程序在这两个Flash区域中,可以设定一块安全存储区域(4)完整的产品目录STM32G4产品拥有一个完整的平台,共分为入门型、性能型、高精度PWM型三个系列,10余种类型的开发板,覆盖从入门到高端不同需求。参数STM32G474高精度PWM型STM32G473性能型STM32G431入门型内核,主频ArmCortex-M4,170MHzFlash(max)128KbytessinglebankRAM(upto)96Kbytes22KbytesCCM-SRAM(code-SRAM)32Kbytes10Kbytes12-bitADCSAR比较器74运放1%精度6312-bitDAC74高级电机控制定时器CAN-FD12通道高精度定时器--供电范围1.72to3.6V图1-4STM32G4产品系列构成图1-5STM32G4产品系列STM32G4主要应用02STM32G4主要应用STM32G4作为一款基于ArmCortex-M4架构的产品,定位为主流型MCU,主要针对电机控制、工业设备与测量仪器、高端消费类应用和数字电源等应用场景。针对电机控制,建立了完整的生态系统,提供完整的硬件、软件、工具、资料等资源。STM32G4并不是完整取代STM32F334,而是在STM32F334的基础上做了提升,去覆盖更复杂的一些数字电源应用场景STM32G4主要应用性能配置电机控制(家电、电动自行车,空调)工业设备与测量仪器高端消费类应用(可再充电设备,无人机,玩具)数字电源(服务器,通讯电源,EV充电桩与充电站)高速CPU170MHz●●●●数字加速器(三角函数)●●

数字加速器(数字滤波器3p3z补偿器)

●高级电机控制定时器●

高速比较器(17ns)●

●4MSPSADC-12bit+硬件过采样●

●可编程放大器(PGA)●

DAC-12bit●

1%精度RC时钟●

支持CAN-FD

高级定时器

RTC实时时钟支持备份寄存器

Dualbankflash支持在线升级

●AES&信息安全

●超薄封装,小尺寸

内置丰富模拟外设

●●SAI(音频接口)

USBtype-CPowerDelivery3.0

12通道高精度定时器(184ps)

●STM32生态资源03(1)网址、公众号AI电堂:/AI电堂微信公众号:

公众号小程序STM32全球网页:/stm32STM32中文官网:/STM32社区:/STM3221ic社区:/stm32/ST中国大学计划主页:/universitySTM32中文技术支持邮箱:mcu.china@STM32大学计划联系邮箱:edu.china@ST微信公众号:

订阅号服务号视频号线上课程入口(2)STM32G4电机控制相关技术文档STM32G4产品介绍:/Product/pro_detail/STM32G4/productSTM32G4相关设计文件:/Product/pro_detail/STM32G4/design_resource数据手册、参考手册、开发板介绍、选型手册、编程手册、应用笔记、用户手册等相关资源均可进入相应页面下载。STM32G4产品主页如图1-6所示。电机培训资料下载:/电机控制方案查询:/st-mc-suite/home/#/index图1-6STM32G4产品主页(3)STM32G4电机控制相关视频资源①《STM32G4系列产品特性以及电机领域应用》本课程从ST生态系统介绍和使用展开,结合当前热门的电机控制领域应用,把产品特性深入到实际应用,点面结合下让大家更能够熟悉和掌握STM32G4优秀的特性,为未来的产品使用打下基础;同时还结合了STM32Cube生态,以及电机FOC控制生态,可让大家全方位熟悉使用ST所打造的完整的生态环境,为电机领域的开发带来便利条件。课程内容:1)STM32G4特性和市场介绍2)STM32工具介绍与使用3)使用STM32Cube工具上手STM32G44)内核介绍:ART,CCMSRAM,浮点运算,乘加指令5)VREFBUF,Timer&ADC介绍,以及两者在电机应用中的联动机制6)特别外设:CORDIC,FMAC,运放,比较器,DAC7)结合STM32CubeMX,MCSDKV5.4移植STM32G4电机矢量控制代码8)STM32G4特别外设应用于电机控制课程学习链接:网页版:/columndetail?id=5c5cfa8517394c09b6f67d8fa486ad62手机版:扫码观看(3)STM32G4电机控制相关视频资源②《基于MCSDKV5.4电机库的STM32电机控制理论与实践》随着无刷直流电机(BrushlessDirectCurrentMotor,简称BLDCM)和永磁同步电机(PermanentMagnetSynchronousMotor,简称PMSM)在诸多领域有着广泛应用,并且用量也在逐步增长,电机的驱动和控制技术做为核心部分直接影响到产品性能;控制技术之一的FOC控制技术(磁场定向控制技术)有其众多的优势,随着MCU的性能提升已经被广泛应用,ST作为致力于ARMCortex-M内核的领跑者,其FOC控制技术已经实现在STM32全系列产品上;本课程将介绍FOC控制理论,以及电机软件库的构成与使用;同时针对实际应用设计了几个试验,指导用户一步步实现真实的电机控制,让客户轻松上手使用ST的电机控制库。课程内容:1)STMCSDK电机控制库总体概况2)电机FOC控制原理3)电机控制硬件注意点介绍4)MCSDKV5.4

软件详解以及应用调试说明5)试验环节课程学习链接:网页版:/columndetail?id=126b8417f88949799f4caf99e98e2ee1手机版:扫码观看(3)STM32G4电机控制相关视频资源③《STM32电动机控制应用系列讲座》通过六大系列主题课程,全面介绍ST的MCU在电动机控制领域的应用,带你深入理解电动机控制的基本概念和方法,教你学会如何充分利用ST提供的产品、硬件评价板及电动机控制软件开发包(STMCSDK)来开发一套电动机控制器。课程内容:1)STMCSDK5.x概览2)永磁同步电动机矢量控制基础3)电动机相电流检测与重构方法及转子位置检测与估计方法4)STMCSDK5.2WB应用指南及STMCSDK5.2固件详解5)应用STMCSDK5.2及ST硬件评价板调试电机实例6)STMCSDK5.2电动机参数测试课程学习链接:网页版:/columndetail?id=2ab86a9228814c09a9621d3a970b21ac④《STM32G4在电机控制及数字电源中的应用》网页版:/columndetail?id=dacd98b99a0f44fbb4d279b0637ddd5b手机版:扫码观看

第三章软件开发环境开发环境概述12CubeMX工具3CubeIDE4Keil(MDK-ARM)5IAREWARMIDE6MotorControlWorkbench7STMStudio前言本书中主要用的软件开发工具有:MotorControlWorkbench(MCSDK)、STM32CubeMX、STM32CubeIDE、Keil等,其软件生态系统如图3-1所示。图3-1STM32G4软件生态系统组成前言一般的工程代码生成流程如图3-2所示,MotorControlWorkbench主要用来创建工程,STM32CubeMX主要是用于配置及初始化代码的生成,解决资源配置的冲突问题,STM32提供的免费集成开发环境CubeIDE或者第三方IDEMDKKeil用于代码的调试编译与下载。图3-2STM32电机控制SDK工作流开发环境概述01开发环境概述开发环境描述CubeMXSTM32CubeMX是针对STM32系列微控制器的可视化配置工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理器,以及为ARMCortex-M内核或面向ARMCortex-A内核的特定Linux设备树生成相应的初始化C代码,它的主要功能有:管脚配置、时钟配置、中断配置、片上外设配置、生成初始代码等。CubeIDESTM32CubeIDE是针对STM32系列微控制器的集成开发环境,具有STM32微控制器和微处理器的外设配置、代码生成、代码编译和调试功能。STM32CubeIDE可以帮助用户编译调试代码,包括STM32CubeMX生成的项目代码,也同时集成了STM32CubeMX工具。KeilKeil是KeilSoftware公司开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。提供了包括C编译、宏汇编、链接器、库管理和一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。其中MDK-ARM是Keil公司开发的基于ARM核的系列微控制器的嵌入式应用程序。IAREWARMIDEEmbeddedWorkbenchforARM是IARSystems公司为ARM微处理器开发的一个集成开发环境(IAREWARM)。同其他的ARM开发环境相比,IAREWARM具有入门容易、使用方便和代码紧凑等特点。EWARM中包含一个全软件的模拟程序,用户不需要任何硬件支持就可以模拟各种ARM内核、外部设备甚至中断的软件运行环境。MotorControlWorkbench(MCSDK)MotorControlWorkbench(MCSDK)是STM32电机控制工作台,它可以减少STM32PMSMFOC固件配置所需的设计工作和时间。用户通过GUI生成项目文件,并根据应用程序的需要初始化库,可以使用该软件针对电机进行调速、参数设置、在线调试、波形观测、快速实现对电机的控制:包括有感/无感、方波控制和FOC控制。MotorProfiler是用来对电机参数实现快速测试的工具,集成在MotorControlWorkbench中。STMStudioSTMStudio是STM32的一款小巧的图形化数据监测软件,通过实时读取和显示变量来帮助调试和诊断STM32应用程序,通过标准的ST-LINK开发工具与STM32连接。STMStudio是一种非侵入式工具,可以保留应用程序的实时行为,它非常适合调试无法停止的应用,例如电机控制应用。CubeMX工具022.1

下载与安装2.2工具界面2.1下载与安装①参考视频:《STM32新手入门-工具安装》打开“电堂科技”官网主页—>在“厂商专区”菜单下选择“ST”—>在搜索框中输入“STM32新手入门-工具安装”并搜索,可以检索到参考视频。①打开ST官网主页,在“Tools&Software”类别下搜索“STM32CubeMX”,将检索结果页面下拉至如图3-3所示的“获取软件”位置(请注意将语言切换成中文),根据自己的电脑系统点击对应的“Getlatest”进行下载,此处以6.5.0版本为例说明其安装过程。图3-3STM32CubeMX软件下载页面2.1下载与安装②②点击“接受”许可协议之后,进入如图3-4所示的获取软件窗口。在“获取软件”窗口输入邮件地址,勾选同意隐私声明,点击“下载”按钮,弹出如图3-5所示窗口时表示提交成功。图3-4获取软件页面图3-5注册MyST成功2.1下载与安装③③进入邮箱中查看收到的反馈邮件,如图3-6所示,点击“立即下载”按钮,会直接跳转到ST的网站,稍等片刻之后会开始自动下载。图3-6下载STM32CubeMX2.1下载与安装④④下载完成后进行解压,建议解压到英文目录下,不要含有中文,然后双击“SetupSTM32CubeMX-6.5.0-Win.exe”文件进行安装,如果弹出窗口提示安装JAVA,按照操作进行即可。进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-7至3-15所示。图3-7STM32CubeMX安装过程(1)图3-8STM32CubeMX安装过程(2)2.1下载与安装④④下载完成后进行解压,建议解压到英文目录下,不要含有中文,然后双击“SetupSTM32CubeMX-6.5.0-Win.exe”文件进行安装,如果弹出窗口提示安装JAVA,按照操作进行即可。进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-7至3-15所示。图3-9STM32CubeMX安装过程(3)图3-10STM32CubeMX安装过程(4)2.1下载与安装④④下载完成后进行解压,建议解压到英文目录下,不要含有中文,然后双击“SetupSTM32CubeMX-6.5.0-Win.exe”文件进行安装,如果弹出窗口提示安装JAVA,按照操作进行即可。进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-7至3-15所示。图3-11STM32CubeMX安装过程(5)图3-12STM32CubeMX安装过程(6)2.1下载与安装④④下载完成后进行解压,建议解压到英文目录下,不要含有中文,然后双击“SetupSTM32CubeMX-6.5.0-Win.exe”文件进行安装,如果弹出窗口提示安装JAVA,按照操作进行即可。进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-7至3-15所示。图3-13STM32CubeMX安装过程(7)图3-14STM32CubeMX安装过程(8)2.1下载与安装⑤⑤安装完成后,可以打开如图3-15所示的软件主界面。图3-15STM32CubeMX安装成功后运行的主界面2.2工具界面打开STM32CubeMX之后,主界面的各个功能的分区如下:①菜单栏中“File”用于工程文件的管理,“Window”用于切换软件的视图效果,“Help”用于寻找软件使用指南,检查更新或固件包的安装等功能。②“ExistingProjects”展示了近期的工程文件,方便快捷打开,一般利用MotorControlWorkbench生成的工程文件可以直接打开。③“NewProject”,除了打开MCSDK生成的工程文件,也可以通过选择开发板自行创建新的工程文件。④“Managesoftwareinstallations”主要用于检查STM32CubeMX的更新以及固件包的下载与安装。图3-16STM32CubeMX主界面功能分区2.2工具界面如果要创建新工程,可以点击NewProject下的AccessToMCUSelector,之后可以看到如图3.2-15所示的MCU选择界面。图3-17STM32CubeMXMCU/MPU选择界面2.2工具界面以本书中的套件为例,在PartNumberSearch栏中输入STM32G431RB后双击选择STM32G431RBTx即可选中本书中的开发板,进入如图3.2-16所示的配置界面。图3-18STM32CubeMX配置界面CubeIDE033.1

下载和安装3.2工具界面3.1下载和安装①①与CubeMX下载流程类似,打开ST官网主页,在Tools&Software类别下搜索STM32CubeIDE,将检索结果页面下拉至如图3-19所示的“获取软件”位置(请注意将语言切换成中文),根据自己的电脑系统点击对应的“Getlatest”进行下载,此处以1.9.0版本为例说明其安装过程。图3-19STM32CubeIDE软件下载页面参考视频:《STM32新手入门-工具安装》打开“电堂科技”官网主页—>在“厂商专区”菜单下选择“ST”—>在搜索框中输入“STM32新手入门-工具安装”并搜索,可以检索到参考视频。3.1下载和安装②、③②点击“接受”许可协议之后,(请注意先登录或者注册ST账号),进行下载。③下载完成后进行解压,安装时注意安装目录必须是英文的,否则会报“Errorlaunchinginstaller”错误。然后双击“st-stm32cubeide_1.9.0_12015_20220302_0855_x86_64.exe”文件进行安装,进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-20至3-25所示。图3-20STM32CubeIDE安装过程(1)3.1下载和安装③图3-21STM32CubeIDE安装过程(2)图3-22STM32CubeIDE安装过程(3)3.1下载和安装③图3-23STM32CubeIDE安装过程(4)图3-24STM32CubeIDE安装过程(5)3.1下载和安装④④安装完成后,可以打开如图3-25所示的软件主界面。图3-25STM32CubeIDE安装成功运行后的主界面3.2工具界面打开CubeIDE之后,主界面的各个功能的分区如图3-26所示图3-26STM32CubeIDE主界面功能分区3.2工具界面打开STM32CubeMX生成的工程文件界面如图3-27所示:图3-27STM32CubeIDE工程文件界面功能分区Keil(MDK-ARM)044.1

下载和安装4.2操作简介4.1下载和安装①①打开KEIL官网主页—>在“Download”菜单下点击“ProductDownloads”—>点击“MDK-ARM”,第一次打开该网址的时候进入如图3-28所示页面,需要输入联系信息。图3-28MDK-ARM下载信息输入页面参考视频:《STM32新手入门-工具安装》打开“电堂科技”官网主页—>在“厂商专区”菜单下选择“ST”—>在搜索框中输入“STM32新手入门-工具安装”并搜索,可以检索到参考视频。4.1下载和安装②②点击“Submit”按钮后,进入如图3-29所示页面,点击“MDK536.exe”进行下载。图3-29MDK-ARM下载页面4.1下载和安装③③下载完成后双击“MDK536.EXE”进行安装,进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-30至3-34所示。图3-30MDK-ARM安装过程(1)4.1下载和安装③图3-31MDK-ARM安装过程(2)图3-32MDK-ARM安装过程(3)4.1下载和安装③图3-33MDK-ARM安装过程(4)图3-34MDK-ARM安装过程(5)4.1下载和安装④④安装完成后,可以打开如图3-35所示的软件主界面。图3-35MDK-ARM安装成功运行后的主界面4.2操作简介进入Keil后,打开STM32CubeMX生成的工程文件,界面如图3-36所示:图3-36MDK-ARM主界面功能分区4.2固件包的安装①①在Keil内选择直接安装:点击图3-36所示的固件包安装按钮,打开如图3-37所示的固件包安装界面。点击选择左侧框选的“STM32G4Series”开发板,然后选择右侧框选的STM32G4xx_DFP的固件包下载后进行安装或更新。图3-37固件包安装界面4.2固件包的安装②②首次安装会进入如图3-38所示的固件包下载界面,选择“STMicroelectronicsSTM32G4SeriesDeviceSupport,DriversandExamples”,点击下载箭头按钮后进行下载。图3-38固件包下载界面4.2固件包的安装③③如图3-39所示,点击固件包安装窗口菜单栏的“File”后再点击“Import”将下载的固件包导入,或者直接点击固件包进行安装。图3-39固件包导入界面IAREWARMIDE055.1

下载和安装5.2操作简介5.1下载与安装①①打开IAR官网主页—>在“PRODUCTS”菜单下点击“TrySoftware”,进入如图3-40所示页面,选择“IAREmbeddedWorkbenchforArm”,点击“Registeranddownload”,进入如图3-41所示页面。图3-40IAR试用版软件下载页面图3-41IAREmbededWorkbenchforARM下载页面5.1下载和安装②②点击“Download”进入如图3-42所示注册页面,填写带“*”信息并提交。图3-42IAR试用版注册页面5.1下载和安装③③网站会发送一封确认注册邮件到填写的邮箱,如图3-43所示。点击邮箱中的链接,进入如图3-44所示的注册确认页面。图3-43IAR注册确认邮件发送页面图3-44IAR注册确认页面5.1下载与安装④④点击“Downloadsoftware”下载,下载完成后双击“EWARM-9204-47112.exe”进行安装,具体安装过程如图3-45至3-51所示。图3-45IAREmbeddedWorkbenchforArm安装过程(1)图3-46IAREmbeddedWorkbenchforArm安装过程(2)5.1下载与安装④④点击“Downloadsoftware”下载,下载完成后双击“EWARM-9204-47112.exe”进行安装,具体安装过程如图3-45至3-51所示。图3-47IAREmbeddedWorkbenchforArm安装过程(3)图3-48IAREmbeddedWorkbenchforArm安装过程(4)5.1下载与安装④④点击“Downloadsoftware”下载,下载完成后双击“EWARM-9204-47112.exe”进行安装,具体安装过程如图3-45至3-51所示。图3-49IAREmbeddedWorkbenchforArm安装过程(5)图3-50IAREmbeddedWorkbenchforArm安装过程(6)5.1下载与安装④④点击“Downloadsoftware”下载,下载完成后双击“EWARM-9204-47112.exe”进行安装,具体安装过程如图3-45至3-51所示。图3-51IAREmbeddedWorkbenchforArm安装过程(7)5.1下载和安装⑤⑤安装完成后,可以打开如图3-52所示的软件主界面。图3-52IAREmbeddedWorkbenchIDE安装成功运行后的主界面5.1下载和安装⑥⑥点击“Help”菜单下的“LicenseManager”,打开IARLicenseManager界面,如图3-53所示。图3-53IARLicenseManager界面5.1下载与安装⑦⑦点击“License”菜单下的“ActivateLicense…”,打开激活向导,选择在线激活,输入注册确认邮件中收到的LicenseNumber,逐步完成软件激活。激活过程如图3-54至3-57所示。图3-54IAR激活过程(1)图3-55IAR激活过程(2)5.1下载与安装⑦图3-56IAR激活过程(3)图3-57IAR激活过程(4)⑦点击“License”菜单下的“ActivateLicense…”,打开激活向导,选择在线激活,输入注册确认邮件中收到的LicenseNumber,逐步完成软件激活。激活过程如图3-54至3-57所示。5.2操作简介进入IAREmbededWorkbenchIDE后,如图3-58所示,点击“File”菜单下的“OpenWorkspace”。图3-58打开工作空间5.2操作简介如图3-59所示,打开STM32CubeMX生成的工程文件,此处以6S_IHM16_SL_VM为例,IAREmbeddedWorkbenchIDE主界面功能分区如图3-60所示。图3-59打开STM32CubeMX生成的工程文件图3-60IAREmbeddedWorkbenchIDE主界面功能分区MotorControlWorkbench(MCSDK)066.1

下载和安装6.2操作简介6.3使用STMotorProfiler获得电机参数6.4STMCSDK5.x固件介绍6.1下载和安装①①打开ST官网主页—>在Tools&Software菜单下选择Ecosystems—>选择STM32EcosystemforMotorControl—>选择EmbeddedSoftware—>X-CUBE-MCSDK—>GetSoftware,将页面下拉至如图3-61所示的“获取软件”位置(请注意将语言切换成中文),选择对应版本进行下载。此处以5.4.8版本为例说明其安装过程。图3-61X-CUBE-MCSDK软件下载页面6.1下载和安装②、③②点击“接受”许可协议(请注意先登录或者注册ST账号),进行下载。③下载完成后进行解压,然后双击“X-CUBE-MCSDK_5.4.8.exe”文件进行安装,进入安装流程后,根据提示逐步完成安装,注意在安装的路径中不要有中文,建议不要安装在系统盘,具体安装过程如图3-62至3-65所示。图3-62MCSDK安装过程(1)图3-63MCSDK安装过程(2)6.1下载和安装②、③图3-64MCSDK安装过程(3)图3-65MCSDK安装过程(4)②点击“接受”许可协议(请注意先登录或者注册ST账号),进行下载。③下载完成后进行解压,然后双击“X-CUBE-MCSDK_5.4.8.exe”文件进行安装,进入安装流程后,根据提示逐步完成安装,注意在安装的路径中不要有中文,建议不要安装在系统盘,具体安装过程如图3-62至3-65所示。6.1下载和安装④④安装完成后,可以打开如图3-66所示的软件主界面。图3-66MCSDK安装成功运行后的主界面6.2操作简介如图3-67所示,“用户按钮区”用于创建新项目,加载已有项目或者启动ST电机参数测量工具,“最近项目区”用于加载近期的项目,“例程区”用于加载项目示例。图3-67STMotorControlWorkbench主界面功能分区参考视频:《STM32新手入门-工具安装》打开“电堂科技”官网主页—>在“厂商专区”菜单下选择“ST”—>在搜索框中输入“MCSDK5.x软件介绍【上】”并搜索,可以检索到参考视频。6.2操作简介图3-68新建工程方法1图3-69新建工程方法2①创建新项目以本书使用的P-NUCLEO-IHM03套件为例,有两种途径可以选择对应的硬件。第1种方法如图3-68所示,在“SelectBoards”选项中点选“MCKit”,在“MotorControlKit”下拉框中选择“NUCLEO-IHM033sh”即可。第2种方法如图3-69所示,在“SelectBoards”选项中点选“Power&Control”,然后分别在“Control”下拉框中选择“Nucleo-G431RB”,在“Power”下拉框中选择“X-NUCLEO-IHM16M1”,在“Motor”下拉框中选择“GBM2804H-100T”即可。6.2操作简介②硬件配置:硬件配置窗口如图3-70所示,主要包括图标与菜单区、当前硬件信息显示、硬件细节设定、主要硬件配置信息和用户信息。图3-70硬件配置窗口6.2操作简介如图3-71所示,按钮1用于打开电机监测界面,按钮2用于连接电机(图中电机尚未连接),按钮3用于打开如图3-72所示的示波器窗口。图3-71电机监测界面图3-72示波器窗口6.2操作简介③工程生成:点击图3-73中的“Projectgeneration”按钮可以选择合适的IDE自动生成代码并在CubeMX中打开进行下一步配置工作,具体操作流程将在7.1电机快速控制实例中展示。图3-73代码生成窗口6.3使用STMotorProfiler获得电机参数如图3-74所示,在Workbench中点击“MotorProfiler”,进行参数的测量,操作步骤如下:图3-74Workbench中集成的MotorProfiler工具6.3使用STMotorProfiler获得电机参数(1)(1)选择开发板:如图3-75所示,点击“SelectBoards”选择开发板,打开套件选择窗口,选择如图3-76所示的P-NUCLEO-IHM03套件,该套件由NUCLEO-G431RB和X-NUCLEO-IHM16M1两块板子组成。图3-75选择开发板6.3使用STMotorProfiler获得电机参数(1)如果是第一次使用,可以点击图3-77中方框内“RemembertoproperlyconfiguretheboardsinMotorControlmode”的链接,对板子需要进行安装的线帽进行检查。图3-76选择P-NUCLEO-IHM03套件图3-77板子配置检查6.3使用STMotorProfiler获得电机参数(2)(2)填写电机的参数:如图3-78所示填写电机参数,根据厂家提供的信息填写电机的相关参数,有助于缩短测量准确数值的时间。其中,电机的极对数、磁体的内置类型是必须要进行填写的,在ST官网中可以找到相关数据,本书使用的电机极对数为7,为表贴式电机(SM-PMSM)。图3-78填写电机参数6.3使用STMotorProfiler获得电机参数(3)(3)连接开发板与软件点击图3-79中的“Connect…”进行连接。第一次连接成功会显示如图3-80所示的状态窗口。图3-79连接开发板图3-80连接成功的状态窗口6.3使用STMotorProfiler获得电机参数(3)第一次连接成功会显示状态窗口,如有其他提示,则根据提示内容检查相关问题,常见问题如下:①检测不到ST-LINK②检测不到串口6.3使用STMotorProfiler获得电机参数(3)第一次连接成功会显示状态窗口,如有其他提示,则根据提示内容检查相关问题,常见问题如下:③要连接的板子和所选的不同④STLINK安装的固件版本需要更新6.3使用STMotorProfiler获得电机参数(3)第一次连接成功会显示状态窗口,如有其他提示,则根据提示内容检查相关问题,常见问题如下:⑤测量期间电机负载改变太快⑥测量阶段时间过长6.3使用STMotorProfiler获得电机参数(4)(4)测量参数连接成功后,点击图3-81中的“StartProfiler”开始进行电机参数测量。测量过程如图3-82所示。图3-81开始测量图3-82测量过程6.3使用STMotorProfiler获得电机参数(4)测量结果如图3-83所示。测量结束后,电机的参数将会以不同颜色显示在图中,包含电阻R_s,电感L_s,电势系数K_e等参数。若是绿色说明精度可靠,若有一个或多个结果为橙色显示,请检查硬件设置,并重新启动STMotorProfiler。测量成功后可点击“Save”按钮,将电机参数保存到C:\Users\name\.st_motor_control\user_motors目录下,可供STMCWorkbench使用图3-83测量结果6.4STMCSDK5.x固件介绍(1)电机控制SDKMCSDK5.x固件整体架构如图3-84所示,从下往上分别是外设层,电机库层,电机应用层。图3-84STM32电机控制固件架构6.4STMCSDK5.x固件介绍最下层为芯片外设库,芯片外设库使用STHAL/LL库,可被各个层级调用,针对芯片的每种外设都有对应的库函数提供。必须掌握的外设有TIMER,ADC,GPIO。电机库是主要的电机FOC控制层,包含FOC算法,单片机外设配置,中断机制等各个环节;

最上层为电机应用层,供用户直接使用电机库,而不去关心底层如何实现的,加快用户程序开发,一般应用用户只需要熟练掌握电机应用层的API即可使用。图3-85芯片外设库函数列表6.4STMCSDK5.x固件介绍MCSDK5.x固件主要由电机控制座舱、电机控制库、用户界面库构成。①电机控制座舱:电机控制座舱将软件组件集成到MC固件子系统中,并实现了调节回路。它实例化、配置和连接在PMSMFOC库和用户界面库中为用户应用选择的固件组件。根据应用特征,MC座舱代码由STM32CubeMX产生,所以座舱代码只包含所需内容,易于读取。图3-86电机控制座舱组成电机控制座舱把电机控制库组件有机的结合起来去完成整个电机控制的功能。实例化并配置实例化并配置所有需要的组件组高频任务中频任务安全任务6.4STMCSDK5.x固件介绍直接使用这些API函数就能够实现,用户不需要关心底层如何操作,只需要关注自身需要实现哪些必要的功能,使得项目开发更加快速有效。6.4STMCSDK5.x固件介绍②电机控制库电机控制库是软件组件的集合,每一个组件实现电机控制的一个功能。组件是一个自给自足的软件单元,包含一个结构体,在结构体中定义了能完成此组件功能的数据变量,另外还包含一系列的函数,这些函数操作结构体中的数据变量实现组件的功能。组件通常包含一个.c文件和一个.h文件。结构体以组件名缩写+_Handle_t命名,函数以组件名缩写+函数功能命名。图3-87具有其句柄和函数的组件6.4STMCSDK5.x固件介绍X-CUBE-MCSDK_5.x中1-22以源程序的方式提供,23-29组件均以库的形式提供,无法看到源码,可以根据提供的头文件从库里调用相应的函数。③用户界面库:用户界面库是负责通讯的组件。电机控制代码通过这些组件控制串口和DAC与外界通讯。通过这个库可以连接MCU和Workbench,在Workbench中实现对电机运行状态的监控。表3-2组件列表序号源文件描述1bus_voltage_sensor.c母线电压2circle_limitation.c电压极限限制3enc_align_ctrl.c编码器初始定位控制4encoder_speed_pos_fdbk.c编码器传感器相关5hall_speed_pos_fdbk.cHall传感器相关6inrush_current_limiter.c浪涌电流限制7mc_math.c数学计算8mc_interface.c电机控制底层接口9motor_power_measurement.c平均功率计算10ntc_temperature_sensor.cNTC温度传感11open_loop.c开环控制12pid_regulator.cPID环路控制13pqd_motor_power_measurement.c功率计算14pwm_common.cTIMER同步使能15pwm_curr_fdbk.cSVPWM,ADC设定相关接口16r_divider_bus_voltage_sensor.c实际母线电压采集17virtual_bus_voltage_sensor.c虚拟母线电压18ramp_ext_mngr.c无传感开环转闭环控制19speed_pos_fdbk.c速度传感接口20speed_torq_ctrl.c速度力矩控制21state_machine.c电机状态相关22virtual_speed_sensor.c无传感开环运行相关23fast_div.c快速软件除法24feed_forward_ctrl.c前馈控制25flux_weakening_ctrl.c弱磁控制26max_toque_per_ampere.c最大转矩控制27sto_cordic_speed_pos_fdbk.c速度和位置反馈cordic28sto_pll_speed_pos_fdbk.c速度和位置反馈PLL29revup_ctrl.c启动控制6.4STMCSDK5.x固件介绍图3-88电机控制固件在开发环境中的应用(2)电机控制应用工作流:使用STM32电机控制SDK的电机控制软件应用设计通常从MCWorkbench开始。在SDK使用过程中,电机本体、电机控制硬件板、控制管脚、控制策略在MCWorkbench中配置完成,顺序为MCWorkbench、STM32CubeMX工程、电机库代码(芯片外设库+电机控制库+电机控制座舱+用户界面库+系统初始化)。STMStudio077.1

下载和安装7.2操作简介7.1下载与安装①①打开ST官网主页,在“Tools&Software”类别下搜索“STMStudio”,进入如图3-89所示的检索结果页面,点击“STM-STUDIO-STM32”(请注意将语言切换成中文),可以打开如图3-90所示的“获取软件”页面,点击“Getlatest”进行下载。。图3-89STMStudio检索结果图3-90STM-Studio-STM32下载页面7.1下载与安装②②进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-91至3-97所示。第一次安装的时候会弹出如图3-92和图3-93所示的对话框,要求下载安装JavaRuntimeEnvironment图3-91STM-Studio-STM32安装过程(1)图3-92STM-Studio-STM32安装过程(2)图3-93STM-Studio-STM32安装过程(3)7.1下载与安装②②进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-91至3-97所示。图3-94STM-Studio-STM32安装过程(4)图3-95STM-Studio-STM32安装过程(5)7.1下载与安装②②进入安装流程后,根据提示逐步完成安装,具体安装过程如图3-91至3-97所示。图3-96STM-Studio-STM32安装过程(6)图3-97STM-Studio-STM32安装过程(7)7.1下载与安装③图3-98STM-Studio-STM32安装成功运行后的主界面安装完成后,可以打开如图3-98所示的软件主界面。7.2操作简介打开STMStudio之后,主界面的各个功能的分区如图3-99所示图3-99STMStudio主界面功能分区7.2操作简介如图3-100所示,在右键菜单中点选“Import...”,打开“Importvariablesfromexecutable”窗口,点击“...”按钮打开“Selectexecutablefile”窗口,选择要打开的文件。图3-100STMStudio变量导入(1)7.2操作简介打开如图3-101所示的窗口,选择要导入的变量,点击“Import”按钮。图3-101STMStudio变量导入(2)7.2操作简介打开图3-102所示的窗口,在右键菜单中点选“Sendto”-->“Varviewer1”,可以在“Varviewer1”窗口查看变量的数值,在“DisplayVarviewer1as”中可以选择变量的展现形式。图3-102STMStudio变量监测感谢聆听第四章NUCLEO-G431RB基础实验例程LED点灯实验1234定时器PWM应用实验外部中断实验串行接口应用实验5数/模转换应用实验6互补PWM输出实验前言本章将通过实例,从最简单的外设开始,由浅入深,带领大家逐步学习STM32G4的入门使用。实验注意事项如下:①在实验接线之前,要根据电路原理图的布局、操作简单以及安全的原则先摆放好所有仪器,要调节的仪器放在离自己比较近的位置。②当要使用某个IO口作其他用途的时候,请先查看开发板的原理图,确认该IO口是否有连接在开发板的某个外设上,如果有,进一步确认该外设的这个信号是否会对此次使用造成干扰,如无干扰再使用这个IO。③上电之前,请注意板子上的跳线帽以及板与板之间的连接方式,若跳线帽或者板子间连接方式不对,会导致功能无法正常使用,或者损坏电路板。④实验过程中,一旦发现出现特殊情况,比如短路、导线着火等,必须马上断开电源。⑤实验过程中,需取下控制板上的某些短路帽时,务必记住其所在位置,在实验结束后将短路帽放回原处,以免造成开发板损坏或影响正常使用。LED点灯实验01实验目标及条件(1)实验目标按下按键后,实现LED灯闪烁。(2)实验条件①硬件平台:NUCLEO-G431RB②软件平台:STM32CubeMXKeiluVision5(MDK-ARM)实验步骤步骤一:创建新项目方法1:点击NewProject下的AccessToMCUSelector,接着在PartNumberSearch栏中输入STM32G431RB,然后双击选择STM32G431RBTx。图4-1新建工程,选择MCU图4-2选择MCU具体型号实验步骤方法2:点击NewProject下的AccessToBoardSelector,接着在CommercialPartNumberSearch栏中输入NUCLEO-G431RB,然后双击选择NUCLEO-G431RB。图4-3新建工程,选择开发板图4-4选择开发板具体型号实验步骤步骤二:引脚配置在完成步骤一以后,会进入如图4-5所示的Pinout&Configuration视图,在右下角的搜索栏中搜索PA5管脚,将其设置为如图4-6所示的GPIO_Output。图4-5进入Pinout&Configuration视图图4-6配置PA5管脚为GPIO_Output实验步骤步骤三:代码生成①点击“ProjectManager”进入如图4-7所示的工程配置界面②输入项目名称,选定项目存储位置③将Toolchain/IDE设定为MDK-ARM,版本选择自己电脑安装的版本④点击右上角“GENERATECODE”,即可生成代码⑤加载完毕后,弹出提示窗口,点击“OPENPROJECT”,进入KeiluVision5图4-7配置工程,生成代码实验步骤步骤四:代码编辑、编译与调试在KeiluVision5中的Application/User下打开main.c文件,在第100行左右找到以下循环语句while(1){/*USERCODEENDWHILE*//*USERCODEBEGIN3*/}然后添加代码HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_5);HAL_Delay(100);添加完成后点击Bulid按钮后再点击Download即可完成实验。图4-9代码修改实验步骤步骤四:代码编辑、编译与调试图4-10编译图4-11下载烧录实验结果实验结果:按下蓝色按键B1后,LED2开始闪烁,每经过0.1s变化到相反状态,闪烁周期为0.2s。图4-12LED点灯实验结果定时器PWM应用实验02实验目标及条件(1)实验目标利用定时器,实现LED灯的闪烁。(2)实验条件①硬件平台:NUCLEO-G431RB②软件平台:STM32CubeMXKeiluVision5(MDK-ARM)定时器简介定时器(Timer)最基本的功能是定时。把定时器与GPIO结合起来使用可以实现非常丰富的功能,如测量输入信号的脉冲宽度、生产输出波形等。NUCLEO-G431RB具有丰富的定时器资源,包括2个高级定时器(TIM1/TIM8),6个通用定时器(TIM2-TIM4/TIM15-TIM17),2个基本定时器(TIM6/TIM7)。定时器要实现计数必须有个时钟源,基本定时器时钟只能来自内部时钟,高级定时器和通用定时器还可以选择外部时钟源,或者直接使用来自其他定时器的等待模式。定时器简介当GATE=1时,“与门”的输出信号K由INTx输入电平和TRx位的状态一起决定,当且仅当TRx=1,INTx=1(高电平)时,计数启动;否则,计数停止。当INT0引脚为高电平时且TR0置位,TR0=1,启动定时器T0;当INT1引脚为高电平时且TR1置位,TR1=1,启动定时器T1。GATE=0时,“或门”输出恒为1,“与门”的输出信号K由TRx决定,定时器不受INTx输入电平的影响,由TRx直接控制定时器的启动和停止。图4-13定时器/计数器原理框图定时器简介在对定时器进行编程时,常用的函数如表4-1所示。表4-1定时器编程常用函数列表函数名称

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论