ARM | STM32F10xxx课堂学习笔记(时钟 & 高级控制定时器)

  1. 云栖社区>
  2. 博客>
  3. 正文

ARM | STM32F10xxx课堂学习笔记(时钟 & 高级控制定时器)

李蔚蓬 2018-11-27 01:21:00 浏览712
展开阅读全文

时钟

img_8d9ce3ae134b12b6560d4d421d021e11.png
STM32F10xxx参考手册中文版 6.2 时钟

peripheral n.外部设备
PCLK1 低速外设时钟
PCLK2 高速外设时钟
RC 阻容...振荡器

RTC Real time clock 实时时钟

prescaler 预分频器;预定标器
/x 即X分频
PLLSRC 选择信号
TIM 定时器
TIM2,3,4,5,6,7由APB1决定(判断逻辑选择如图)
TIMxCLK 通用定时器时钟

TIM1,8由APB2决定(判断逻辑选择如图)
TIM1 and TIM8高级定时器时钟

HSION 内部高速时钟开启
HSEON 外部高速时钟开启
PLLON 锁相环开启

img_b6f08a525ea69809aea1219f9a908714.png

HSEBYP BYP 即by past旁路
旁路指EXTERNAL SOURCE直接输入,不经过OSC_OUT

HSERDY 用于去抖
HSICAL8位加HSITRIM5位用来调整HSI频率
机器一开始会出现波形抖动,不稳定不可用,一段时间后才会变成可用的稳定的方波
波形抖动阶段,RDY位置 0
波形抖动结束,进入可用状态,RDY位则置1

img_100490fa0868815334d547a6151140a4.png

img_47eaab63acc4089bdc98b042e4e01736.png

所谓旁路,就是没有经过PLL(如下所示就是一条旁路):

img_0b38fd37dcea47e50b269aa87c593c9f.png

内部RC高速时钟一般不准确,准确性远不如外部晶振,对温度敏感性较强,需要对其进行调整。
如果HSE晶体振荡器失效,HSI时钟会被作为备用时钟

重点!RCC_CFGR
MCO 选择时钟源

img_7471a7749fe96a104c81409516bb6336.png

img_4586bcad7bb8ed4b6d98de7c47fd8b2f.png

看门狗监控运行的程序,程序出了问题,令之重启

APB(Advanced Peripheral Bus),外围总线的意思。<百度百科>

CSS 时钟安全系统

ITF Interface


高级控制定时器

互补PWM:
就是两组PWM信号,它们的波形是互补的,简单理解,就是这两个信号直接相加的话,结果是一条直线。互补PWM有时候需要增加一个“死区”,防止两个信号同时为1或者同时为0的瞬间出现。

寄生电容:
"寄生电容" 在学术文献中的解释
1、另一方面传感器除有极板间电容外,极板与周围体(各种元件甚至人体)也产生电容联系,极板之间空隙的空气,这种电容称为寄生电容。它不但改变了电容传感器的电容量,而且由于传感器本身电容量很小,寄生电容极不稳定,这也导致传感器特性不稳定,对传感器产生严重干扰。
2、分布在导线之间、线圈与机壳之间以及某些元件之间的分布电容等,这些电容称为寄生电容,它们的数值虽小,但是却是引起干扰的重要原因。

PWM
abbr. Pulse-Width Modulation 脉宽调制;

PR 周期

ck_cnt
clock count 时钟计数



IGBT

  • IGBT(Insulated Gate Bipolar Transistor),绝缘栅双极型晶体管,是由BJT(双极型三极管)和MOS(绝缘栅型场效应管)组成的复合全控型电压驱动式功率半导体器件,兼有MOSFET的高输入阻抗和GTR的低导通压降两方面的优点。
  • GTR饱和压降低,载流密度大,但驱动电流较大;MOSFET驱动功率很小,开关速度快,但导通压降大,载流密度小。IGBT综合了以上两种器件的优点,驱动功率小而饱和压降低。
  • 非常适合应用于直流电压为600V及以上的变流系统如交流电机、变频器、开关电源、照明电路、牵引传动等领域。

img_608458ce5b858ff99ea530ed15f97a11.png

PCR设定分频器的值,
等到计数寄存器计数完毕,
产生一个UEV
随后设定的分频器参数即可启动

Auto reload register
自动重新加载寄存器
TIMx_ARR

Repetition
重复次数寄存器
TIMx_RCR

img_561344413d0de0989e55cd440d39ef98.png

关于影子寄存器的作用:
设计预装载寄存器和影子寄存器的好处是,所有真正需要起作用的寄存器(影子寄存器)可以在同一个时间(发生更新事件时)被更新为所对应的预装载寄存器的内容,这样可以保证多个通道的操作能够准确地同步。如果没有影子寄存器,软件更新预装载寄存器时,则同时更新了真正操作的寄存器,因为软件不可能在一个相同的时刻同时更新多个寄存器,结果造成多个通道的时序不能同步,如果再加上例如中断等其它因素,多个通道的时序关系有可能会混乱,造成是不可预知的结果。

网友评论

登录后评论
0/500
评论
李蔚蓬
+ 关注