29、STM32的定时器从0开始计数,满足一些条件,给出标志位(比如匹配成功、时间更新、溢出等)然后从0开始计数。这一点和51不同。
30、OCx=OCxREF+极性
31、自动装载寄存器和影子寄存器:前者相当于51当中的溢出设定数值。而影子寄存器顾名思义是影子,就是寄存器的另一分copy。实际起作用的是影子寄存器,而程序员操纵的则是自动装载寄存器。如果APPE位使能,表明自动装载寄存器的值在下一次更新事件发生后才写入新值。否则,写入自动装载寄存器的值会被立即更新到影子寄存器。
32、RCC_PCLK1Config(RCC_HCLK_Div4);PCLK1的4分频给定时器基准时钟
33、定时器配置:RCC、NVIC、GPIO(OC输出或者PWM)、TIMx
34、通用定时器可以输出4路不同的PWM,高级定时器可以输出4路不同的PWM外,还可以输出3路互补的PWM信号(驱动三相电机),一共有7路。这样算出来STM32可以产生30路PWM=7*2+4*4
35、
36、高级定时器时钟源挂在了APB2上,而通用定时器挂在APB1上。AHB(72mhz)→APB1分频器(默认2)→APB1时钟信号(36mhz)→倍频器(*2倍)→通用定时器时钟信号(72mhz)。如果APB1没有分频,那么通用定时器的时钟信号频率就直接等于APB1的时钟频率,没有上述的倍频器*2过程。TIM_SetAutoreload()用来改变PWM的频率,TIM_SetCompare1()用来改变占空比
37、有刷电机一般启动力矩大一些,无刷电机启动力矩小,运行起来力矩大。有刷电机采用电刷机械电流换向,而无刷电机则通过霍尔传感器测出转子的电流来判断电机的运动位置和方向,返回给控制回路。
38、死区是必须要有的,因为这涉及到电路的短路问题。
39、刹车功能用来在控制回路出现问题时,硬件自动给予外部电机进行紧急刹车制动,反应在PWM上持续给出一个固定的占空比?(三相驱动也是?)
40、PWM输出最好采用PWM模式,其他的比较输出模式相位会慢慢改变,不精准
41、对FLASH的读写需要先解锁后加锁。FLASH写0容易,写1难。
42、下载程序有两种方式,一种为ICP(在线编程),适用于JTAG或SWD协议下的烧写程序。另一种成为IAP(在应用编程),适用于很多接口(USB,串口,CAN)下载到存储器中,IAP允许在程序运行时重新烧写FLASH
43、FLASH分为主存储器(这里放置用户的程序代码
微信扫一扫
关注公众号
18150066586 3004636837@qq.com 0591-87578810
15306977124 3004993430@qq.com 0591-83851589
15306977204 2851617306@qq.com 0591-88075780
15306977014 2851617301@qq.com 0591-87580173
18005007289 2851617310@qq.com 0591-87722515
15306977484 2851617304@qq.com 0591-83855060
18065057209 2881507050@qq.com 0591-22875422
15306977024 2851617309@qq.com 0591-83532940
15306977134 2851617313@qq.com 0591-83841178
15306977494 2851617303@qq.com 0591-83855720