
本小车使用的是亚博智能小车,使用的主芯片型号是STM32F103C8T6,在此我们首先需要做的是理清一下实现LED灯点亮的思路。5 g0 W" @) g0 g# w- j: r / y( r1 l6 n. J8 `6 t 点亮LED的思路如下:% ?5 H. f: G4 B7 {' a+ V! `8 L& C7 L 1.准备工作:通过主板芯片的原理图,找到LED所对应的引脚,这是为了后续对LED进行GPIO设置。 2.建立工程项目并进行GPIO引脚设置。% P$ p( N/ C' G- r 3.生成代码,编写添加使得LED灯点亮闪烁的代码。 ; B z4 ^% d* L Z; X% [6 L6 I; o& u 4.编译代码并烧录进主板,实现LED灯点亮。 ( G7 V- G2 r& E& @/ c: t 接下来我们就按照步骤一步一步实现来实现。 9 \' R8 }2 L: V, C/ S) B 1.准备工作:通过主板芯片的原理图,找到LED所对应的引脚,这是为了后续对LED进行GPIO设置。 ![]() 上图为主板芯片的原理图,LED在左下部分,咱们单独拿出来看: 8 p: q4 F# S; Q$ w ![]() 可以看出LED所对应的引脚是PC13,后续设置GPIO的时候会用到。 3 d( ]) q; v& C0 Y: b) c c2 B 2.建立工程项目。. w1 ?! P% m- j 具体步骤如下: 2.1 打开STM32CubeIDE软件,新建一个工程项目。 # r' d! p$ m* E5 ?2 d# b- n2 j' j ![]() 8 G( [" X1 d+ b: \ 2.2 选择芯片。这里先输入STM32F103C8,选中芯片点击右下角NEXT. ![]() 2.3 给此次的工程文件命名。 ![]() # k6 ` M' K" B8 l# y, t1 k 2.4 在System Core中选择RCC进行设置,然后将High Speed Clock(HSE) 和 Low Speed Clock(LSE) 选择 Crystal/Ceramic Resonator 即选择晶振。 8 f9 C3 ^4 H ?$ a ![]() 2.5 在左侧的System Core中选中SYS,然后将Debug选择Serial Wire。这里设置是把系统配置和模式设置成SWD接口,方便我们调用SWD调试工具。 : [: f& v5 a: m; }$ b) w6 x6 b7 S ![]() ! W; U2 o4 ^ a- N 2.6 接下来就需要设置LED对应的引脚了,左键单击PC13,将其配置成GPIO_Output3 ~! h0 c/ Z U! ]3 P ![]() 2.7 选择左侧GPIO,在GPIO Mode and Configuration中对PC13引脚进行配置,GPIO output level 为默认输出电平,这里保存默认设置低电平就好;GPIO mode 表示GPIO引脚模式,这里保留默认设置;GPIO Pull-up/Pull-down保留默认设置;Maximum output speed 为最大输出速度,这里选择High,高速输出。User Label为用户标签,这里输入LED,方便我们后续在写代码的时候调用。( M- K' ?7 T) M& @; D L2 S4 Q N" A1 v/ g% r6 j ![]() ! b7 ~, B7 d6 Z- H, H 2.8 选择Clock Configuration,进行时钟的配置,将HCLK(MHZ)改成72,然后按下回车键。, o% ]0 ~8 u# I; O+ y- A - _* a! B/ d+ Q; U/ Q6 L6 ` ![]() 2.9 至此设置完成,点击 生成代码。 ![]() ) `" ~+ M3 Z$ f* R# X8 U8 z 2.10 烧录进小车主板芯片,完成LED灯点亮。 (烧录教程可参考:) 0 p9 ^7 e4 G* M 图中黄色灯为控制的LED灯 ![]() 2 j Z, \ P9 A5 i6 A! P+ y 此时LED为常亮,如果想让LED灯实现闪烁。还需要在加入代码。 6 S, H8 {: N& S 3. 实现LED灯闪烁步骤如下: 3.1 在Project Explorer-LED-Core-Src的路径下找到main.c文件,双击main.c文件,在main.c 文件中找到while()函数。 ![]() 加入以下代码:
PS:一定要注意代码一定要加在BEGIN WHILE和END WHILE中,这样代码才会运行。! o! E1 k3 H2 F % [+ }6 F% y$ S2 l6 J/ j9 g) n ![]() 3.2 点击编译,不报错即可进行烧录。 7 o5 J- |5 |/ _+ F2 W2 ] ![]() % ~" T0 W: G+ l 3.3烧录完成后可以观察到LED灯以1s一次的频率进行闪烁,完成LED闪烁任务。 STM32CubeIDE中LED闪烁教程) K6 u* M1 O% w6 k E & W- p! p. F9 |% ?+ D 0 e" `- y: B: o, x- D6 F " t D1 Y$ _6 T2 z- ` |
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
【经验分享】基于STM32使用HAL库实现USB组合设备CDC+MSC
2024意法半导体工业峰会:赋能智能电源和智能工业,构筑可持续未来
ST推出灵活、面向未来的智能电表通信解决方案,助力能源转型
意法半导体 x Qu-Bit Electronix:推动新一轮的数字声音合成革命
从STM32 MPU产品看嵌入式系统中微处理器的新变化
【Hot!】STM32全系列开发板都支持Arduino开发,你知道吗?
【经验分享】STM32 HAL库移植FreeModbus详细步骤