stm32f103微控制器不同类型的定时器有什么区别?
优点如下:
1、STM32属于arm内核的一个版本,比传统的51单片机高级多了,有很多资源是51不具备的,如usb控制器。而且已经废除了机器周期什么的,速度不是51能比的。
2、STM32单片机程序都是模块化的,接口相对简单些,因为它自身带好多功能,工作速度也快。而51的自身功能少,需要外围元件多,要求对电子熟悉。
3、STM32互连型系列产品强化了音频性能,采用一个先进的锁相环机制,实现音频级别的I2S通信。结合USB主机或从机功能,STM32可以从外部存储器(U盘或MP3播放器)读取、解码和输出音频信号。
4、 STM32 的运算速度大约是51单片机的几十倍吧,而且外围接口功能比51强大太多。
STM32是基于ARM® Cortex® M 处理器内核的 32位闪存微控制器,为MCU用户开辟了一个全新的自由开发空间,并提供了各种易于上手的软硬件辅助工具。S
TM32 MCU融高性能、实时性、数字信号处理、低功耗、低电压于一身,同时保持高集成度和开发简易的特点。业内最强大的产品阵容,基于工业标准的处理器,大量的软硬件开发工具,让STM32单片机成为各类中小项目和完整平台解决方案的理想选择。按内核架构分为不同产品系列。
向上计数模式:从0开始,计到arr预设值,产生溢出事件,返回重新计时
向下计数模式:从arr预设值开始,计到0,产生溢出事件,返回重新计时
中央对齐模式:从0开始向上计数,计到arr产生溢出事件,然后向下计数,计数到1以后,又产生溢出,然后再从0开始向上计数。(此种技术方法也可叫向上/向下计数)
基本定时器(TIM6,TIM7)的主要功能:
只有最基本的定时功能,。基本定时器TIM6和TIM7各包含一个16位自动装载计数器,由各自的可编程预分频器驱动
通用定时器(TIM2~TIM5)的主要功能:
除了基本的定时器的功能外,还具有测量输入信号的脉冲长度( 输入捕获) 或者产生输出波形( 输出比较和PWM)
高级定时器(TIM1,TIM8)的主要功能:
高级定时器不但具有基本,通用定时器的所有的功能,还具有控制交直流电动机所有的功能,你比如它可以输出6路互补带死区的信号,刹车功能等等
通用定时器的时钟来源;
a:内部时钟(CK_INT)
b:外部时钟模式1:外部输入脚(TIx)
c:外部时钟模式2:外部触发输入(ETR)
d:内部触发输入(ITRx):使用一个定时器作为另一个定时器的预分频器
通用定时期内部时钟的产生:
从截图可以看到通用定时器(TIM2-7)的时钟不是直接来自APB1,而是通过APB1的预分频器以后才到达定时器模块。
当APB1的预分频器系数为1时,这个倍频器就不起作用了,定时器的时钟频率等于APB1的频率;
当APB1的预分频系数为其它数值(即预分频系数为2、4、8或16)时,这个倍频器起作用,定时器的时钟频率等于APB1时钟频率的两倍。
自动装在寄存器arr值的计算:
Tout= ((arr+1)*(psc+1))/Tclk;
Tclk:TIM3的输入时钟频率(单位为Mhz)。
Tout:TIM3溢出时间(单位为us)。
计时1S,输入时钟频率为72MHz,加入PSC预分频器的值为35999,那么:
((1+psc )/72M)*(1+arr )=((1+35999)/72M)*(1+arr)=1秒
则可计算得出自动窗装载寄存器arr=1999
通用定时器PWM工作原理
以PWM模式2,定时器3向上计数,有效电平是高电平,定时器3的第3个PWM通道为例:
定时器3的第3个PWM通道对应是PB0这引脚,三角顶点的值就是TIM3_ARR寄存器的值,上图这条红线的值就TIM3_CCR3
当定时器3的计数器(TIM3_CNT)刚开始计数的时候是小于捕获/比较寄存器(TIM3_CCR3)的值,
此时PB0输出低电平,随着计数器(TIM3_CNT)值慢慢的增加,
当计数器(TIM3_CNT)大于捕获/比较寄存器(TIM3_CCR3)的值时,这时PB0电平就会翻转,输出高电平,计数器(TIM3_CNT)的值继续增加,
当TIM3_CNT=TIM3_ARR的值时,TIM3_CNT重新回到0继续计数,PB0电平翻转,输出低电平,此时一个完整的PWM信号就诞生了。
PWM输出模式;
STM32的PWM输出有两种模式:
模式1和模式2,由TIMx_CCMRx寄存器中的OCxM位确定的(“110”为模式1,“111”为模式2)。区别如下:
110:PWM模式1,在向上计数时,一旦TIMx_CNT
在向下计数时,一旦TIMx_CNT》TIMx_CCR1时通道1为无效电平(OC1REF=0),否则为有效电平(OC1REF=1)。
111:PWM模式2-在向上计数时,一旦TIMx_CNTTIMx_CCR1时通道1为有效电平,否则为无效电平。
由以上可知:
模式1和模式2正好互补,互为相反,所以在运用起来差别也并不太大。而从计数模式上来看,PWM也和TIMx在作定时器时一样,也有向上计数模式、向下计数模式和中心对齐模式
PWM的输出管脚:
不同的TIMx输出的引脚是不同(此处设计管脚重映射)
TIM3复用功能重映射:
注:重映射是为了PCB的设计方便。值得一提的是,其分为部分映射和全部映射
PWM输出频率的计算:
PWM输出的是一个方波信号,信号的频率是由TIMx的时钟频率和TIMx_ARR这个寄存器所决定的
输出信号的占空比则是由TIMx_CRRx寄存器确:
占空比=(TIMx_CRRx/TIMx_ARR)*100%
PWM频率的计算公式为:
其中
F就是PWM输出的频率,单位是:HZ;
ARR就是自动重装载寄存器(TIMx_ARR);
PSC 就是预分频器(TIMx_PSC);
72M就是系统的频率;
STM32 高级定时器PWM的输出
一路带死区时间的互补PWM的波形图
STM32F103VC这款单片机一共有2个高级定时器TIM1和TIM8
这2个高级定时器都可以同时产生3路互补带死区时间的PWM信号和一路单独的PWM信号,
具有刹车输入功能,在紧急的情况下这个刹车功能可以切断PWM信号的输出
还具有支持针对定位的增量(正交)编码器和霍尔传感器电路
高级控制定时器(TIM1 和TIM8) 由一个16位的自动装载计数器组成,它由一个可编程的预分频器驱动
它适合多种用途,包含测量输入信号的脉冲宽度( 输入捕获) ,或者产生输出波形(输出比较、PWM、嵌入死区时间的互补PWM等)。
使用定时器预分频器和RCC时钟控制预分频器,可以实现脉冲宽度和波形周期从几个微秒到几个毫秒的调节。
高级控制定时器(TIM1 和TIM8) 和通用定时器(TIMx) 是完全独立的,它们不共享任何资源死区时间
H桥电路为避免由于关断延迟效应造成上下桥臂直通,有必要设置死区时间死区时间可有效地避免延迟效应所造成的一个桥臂未完全关断,而另一桥臂又处于导通状态,避免直通炸开关管。
死区时间越大,电路的工作也就越可靠,但会带来输出波形的失真以及降低输出效率。死区时间小,输出波形要好一些,但是会降低系统的可靠性,一般这个死区时间设置为us级元器件死区时间是不可以改变的,它主要是取决于元器件的制作工艺和材料!
原则上死区时间当然越小越好。设置死区时间的目的,其实说白了就是为了电路的安全。最佳的设置方法是:在保证安全的前提下,设置的死区时间越小越好。以不炸功率管、输出不短路为目的。
STM32死区时间探究设置寄存器:就是刹车和死区控制寄存器(TIMx_BDTR)
stm32f103rct6需要系统初始化吗
需要_TM32F103RCT6是一种嵌入式-微控制器的集成电路(IC),是由ST公司开发的STM32... 最终既能达到EMS显示要求,出色地显示和设置了系统所需要的数据
为什么tm1637没有大的数码管
是因为TM1637不算iic通信,是自定义的2线通讯,TM1637是天微电子的一款带按键扫描的8段、6位数码管驱动芯片,使用STM32F103C8T6驱动四位数码管,就没有大的数码管。
苌柳过氧: STM32系列产品命名规则 示例: 产品系列 STM32 = 基于ARM®的32位微控制器产品类型 F = 通用类型产品子系列 101 = 基本型 102 = USB基本型,USB 2.0全速设备 103 = 增强型 105或107 = 互联型引脚数目 T = 36脚C = 48脚R = 64脚V = 100...
横峰县13292921243: 和stm32f103功能相似的控制器有哪些 - ?
苌柳过氧: stm32f103vet6 和STM32F103R8T6的区别:微处理器stm32f103VET6:是100脚,内置512kB 闪存存储器(Flash),用于存放程序和数据.微处理器stm32f103R8T6:是64脚,内置64kB闪存储器(Flash),用于存放程序和数据.STM32F103...
横峰县13292921243: stm32 f103和f407的区别? - ?
苌柳过氧: 一、内核不同 1、stm32 f103:于中低端的32位ARM微控制器,该系列芯片是意法半导体(ST)公司出品,其内核是Cortex-M3. 2、stm32 f407:又称STM32F4,由ST(意法半导体)开发的一种高性能微控制器.采用了90 纳米的NVM 工艺和...
横峰县13292921243: STM32系列产品命名规则是怎么样的?分别表示什么意思? ?
苌柳过氧: STM32系列产品命名规则 示例:产品系列 STM32 = 基于ARM®的32位微控制器产品类型 F = 通用类型产品子系列 101 = 基本型 102 = USB基本型,USB 2.0全速设备 103 ...
横峰县13292921243: STM32是什么 - ?
苌柳过氧: STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核(ST's product portfolio contains a comprehensive range of microcontrollers, from robust, low-cost 8-bit MCUs up to 32-bit ARM-based Cortex®-M0 ...
横峰县13292921243: st stm32f103vct6是不是stm32f103x8 - ?
苌柳过氧: stm32f10xx8代表 1、STM32 = 基于ARM®的32位微控制器 产品类型 F = 通用类型 2、产品子系列 101 = 基本型 102 = USB基本型,USB 2.0全速设备 103 = 增强型 105或107 = 互联型 3、引脚数目 T = 36脚
横峰县13292921243: STM32 103系列只有100个引脚 为什么书上说:有7个I/O口 每个i/o口有16个引脚? - ?
苌柳过氧: 因为STM32有很多种的分类: 在STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列、增强型系列、USB基本型系列、互补型系列;新系列产品沿用增强型系列的72MHz处理频率. 内存包括64KB到256...