【学习必备】每天学习STM32小技巧-5 ) e5 h/ h, _+ o4 @* f前一篇已分享了10个小技巧,今天继续为大家分享10个小技巧: $ n0 B4 \# L) C 技巧41:对FLASH的读写需要先解锁后加锁。FLASH写0容易,写1难。 . |0 v) Q- O. R0 i7 U# k( s1 m. H 技巧42:下载程序有两种方式,一种为ICP(在线编程),适用于JTAG或SWD协议下的烧写程序。另一种成为IAP(在应用编程),适用于很多接口(USB,串口,CAN)下载到存储器中,IAP允许在程序运行时重新烧写FLASH。9 u5 J, G& d' d$ n7 U4 }. u $ r( p7 M; F& G! E( |) K 技巧43:FLASH分为主存储器(这里放置用户的程序代码)和信息块(启动代码),除此之外,还有一部分叫做系统存储器,这一块用户不可操作,为ST公司出产后固化,为系统的上电自举程序。 : z* ]. M, ^) w7 L 技巧44:FLASH在写的时候,一定不能读,如果有读操作,那么将会锁住总线。' P* m8 o6 ~3 s6 s) \! V3 }4 c, X 技巧45:对FLASH操作时,必须打开HIS。 技巧46:STM32有两种看门狗(IWDG独立看门狗《独立时钟》,WWDG窗口看门狗《由APB1分频而来》)。 技巧47:SPI的的最高频率为36MHz(fpclk/2)。 技巧48:TIM1和TIM8高级定时器在输出PWM时,需要配置一下主输出功能(CtrlPWMOutputs)才能输出PWM。其他的通用定时器不需要这样配置。但是TIM6和TIM7没有PWM输出功能。 技巧49:Code为程序代码部分RO-data 表示程序定义的常量(如:const temp等);RW-data 表示已初始化的全局变量ZI-data 表示未初始化的全局变量,以及初始化为0的变量Code, RO-data,RW-data..............flashRW-data, ZIdata...................RAM初始化时RW-data从flash拷贝到RAM * z; T* d9 [4 J, P 技巧50:STM32F103ZET6有144个引脚(Z为144),其中,可用IO口为112个(7X16=112,ABCDEFG口) 往期回顾: 论坛还未大家准备诸多STM32系列开发经验: 2 c. h1 v1 ^8 S; Q) Y6 s! t7 N |
刘氓兔的杂谈【001】-片上USB 高速PHY
实战经验 | STM32G474 FPU 性能优化与测量
【STM32U083测评】GPIO使用点亮LED和按键操作
【我在论坛打嵌赛】01-嵌赛是个什么东东
STM32的CAN FD位定时设置注意事项
【庆元旦】基于NUCLEO_U5A5ZJ-Q的TobudOS移植
STM32CubeMX STM32F4 HAL库 工程建立
STM32 VS Code Extension (在Ubuntu上开发STM32,ST官方vscode插件使用指南)
【我的STM32U5 项目秀】+03-STM32U5-Coremark移植
全站首个NanoEdge_AI试用(dogs)