STMCU小助手
发布时间:2022-4-15 11:00
|
一、配置CubeMX 1.1 新建工程0 V {7 f* {6 S5 [9 I) z1 m) N 工程选择STM32F103C8Tx芯片 3 o4 U! W% a4 L! t% r, m0 Z
8 \( v& N' w5 H0 L# Y 1.2 时钟配置1 ?: A. g' M: z2 t 打开RCC时钟外部输入,读原理图发现外部时钟有8MHz和32768Hz,外部8MHZ可以使得时钟达到最高的72MHz,没有外部8MHZ内部时钟最高能调到64MHz。没有外部32768Hz,内部的RTC模块工作不正常,这里我们只开启外部高速时钟源,即配置板载8M晶振作为时钟输入。: |% b& D, B* b% X/ o . J, e" O# N/ m2 {% j- T
9 C, J8 j P& } 1.3 Debug配置( F, c. }0 A7 i: j3 ] 设置debug方式,STM32F103C8T6最小系统板只支持Serial wire的方式,也就是两根线:SWDIO、SWCLK,故设置为Serial wire。此时仿真器与MCU之间用SWD协议通信,即SWD(serial wire debug)。 4 V5 b% @4 j' T% Y0 i- R8 |! N
1.4 GPIO配置; |5 O; P; `: \5 F; j' z
1 Y; [5 s- L+ r) r. [' w 看原理图,可知板子上的LED灯对应芯片P13管脚,故配置PC13端口为输出。
]; X/ M. D2 a 1.5 时钟树配置6 G; n: D- x/ N6 `) i2 a 这里直接把时钟开到最高72MHz( N/ ]/ Y$ I. h& ~. J2 q- n 9 y" L9 H3 k9 A9 \1 M6 l
1.6 项目设置 ; h, o- t0 ~8 V' v+ S- i
# i8 F- S- W) d" M% C& ` B8 X( a& ]1 O 这里勾选上.c/.h文件分开生成。5 s7 A- j0 G9 W
这样cubeMX的配置就完毕了,打开生成的工程文件。+ r$ }3 J y& a) y C( L5 k: Q$ ?$ m% D6 Z! A5 m$ A 二、Keil配置* H# o n- X8 l2 \; R U" m 2.1 写逻辑代码$ s* A. j4 F5 H! v 在主函数的while里写
2.2 设置debug 这里我使用的是DAP-Link,根据自己的仿真器选择对应的即可。
( ]0 S+ x; l; x) D 之后在Utilities中点击Setting,勾选Reset and run,这样每次重烧代码就不必手动按复位了。 3 |. N4 o3 F! r/ g2 K
; h7 N3 e0 m( y$ u 三、现象 之后绿色LED灯就会以1s周期循环闪烁了 ! b! D1 ^% Z! i& r& D, @- P6 I
6 n+ g% b, d! V1 D. n' S |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【福利三:雨露均沾·逢7狂欢】之五:STM32系统时钟PLL故障排除1例
【福利三:雨露均沾·逢7狂欢】之三:AI帮我查BUG
福利三:雨露均沾·逢7狂欢】之二:STM32F407VG串口通信乱码故障的排除
基于STM32F103的I2C主从机通信
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
TFT LCD 与 FSMC 的硬件连接大容量 STM32F10xxx FSMC 接口
单片机:初学者该了解的STM32F103基础知识
2025软件工具兔哥知道
STM32之继电器模块
微信公众号
手机版