接触STM32F407芯片的总结
今天看了数据手册的RCC部分和GPIO部分,在灵格斯的帮助下,还是能够看懂的,因为它和STM32F1差不多,应该是高级芯片的寄存器结构都很类似,所以看起来不是那么的难懂,很多东西都是相通的。
GPIO部分,他的寄存器包括4个参数设置寄存器用来设置IO口的工作方式,两个数据寄存器(一个输入一个输出),一个置位复位寄存器,一个LOCK寄存器,两个功能选择寄存器。寄存器的结构是十分的清晰的,Configure寄存器用来设置工作方式,包括输出、输入、速度设置、上拉下拉设置等等,比Contex M3更加的方便,功能参数的设置更加的独立,比如模式的设置,M3是每个IO口有四位,包括推挽输出、开漏输出等,而M4的MODER用来设置输出还是输出还是备用功能选择,OTYPER用来设置输出的模式:推挽输出、开漏输出。OSPEEDR用来设置IO口的速度,我个人感觉这样独立开来是有好处的,结构更加的清晰,在代码上更加容易操作,看起来更加容易懂。
RCC部分,有几个时钟来源。第一个事HSI,高速内部时钟源。第二个是HSE,高速外部时钟源,就是外加的高频晶振。第三个是PLL,HSI或者HSE的时钟送到锁相环,经过倍频后输出。第四个是LSE,低速外部时钟源。第五个是LSI,低速内部时钟源。每种时钟源都有其特殊的用途和特点。HSI是内部RC振荡器产生的,开启稳定时间更短,典型值为16M,但是不足之处是有误差,1%的精确度。HSE是外部时钟,需要外加晶振和助振电容,频率值比较精确,不过开启稳定时间稍微长一些。锁相环可以进行时钟的倍频,得到更高的时钟频率,STM32F4最高可以达到168M的时钟频率。LSE的典型值为32768Hz,即手表晶振,给内部的RTC提供时钟源。LSI的典型值为32kHz左右,为IWDG和AWU等提供时钟源。CPU复位以后,默认时钟源是HSI。
这只是粗略的纪录一下自己今天看DateSheet的体会,若要得到精确的东西,还是要去参考DataSheet,ST公司做的DataSheet结构还是挺清楚易懂的,个人感觉ST和TI做的DataSheet都很好,当然,若要比较后期服务的话,还是TI做的更加好一些,各种资料,让用户只是能够得心应手的进行“使用”工作!这一点很重要,拿到一个芯片,我就是一个使用者,我不需要过多的了解设计者应该了解的东西,那样对我来说没有太大的意义!
STM32F407寄存 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)