Joe1sn's Cabinet

【STM32】1.点灯大师

如何三小时之内,从0开始学会stm32点灯

(其实是想验证下发的芯片是不是好的)

准备工作

我是在JD上随便买的一家,有

STM32F103C8T6,面包板,USB转TTL,显示器…

缺啥少啥买配件就行了

1.软件

由于我们是小白,所以暂时不需要看电路啥的,直接先把软件装上。

  • STM32CubeIDE

这里我参考了:BV1HM411b78E

或者知乎的https://zhuanlan.zhihu.com/p/321845090

知乎的有一个模拟程序

  • 驱动(因为我是USB转TTL):CH340-驱动,这个你可以找客服要,一般都会发给你的
  • 烧录软件:FLYMCU

首先需要熟悉的就是STM32CubeIDE的使用,可以参考上面的B站视频后者知乎,这里还有:https://www.bilibili.com/video/BV13B4y1y7yk

2.硬件

这个是始终绕不开的(除非你用EDA)

1.面包板

有时间可以参考:https://www.bilibili.com/video/BV1gz4y1Z7N7

或者

image-20230910201039379

导线就是这样连接的

2.STM32F103C8T6

显示再IDE中的

image-20230910201448666

比如这里的PA0就是代表芯片的A0接口

image-20230910201538474

这里的GPIO_Output代表的是信号输出(严格来说不是这样的)。具体的设置可以参考https://www.bilibili.com/video/BV1ja411J766

main.c中的main函数的while死循环里面有

1
2
3
4
5
6
7
8
9
10
11
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
HAL_GPIO_TogglePin(GPIOA, LED1_Pin);
HAL_Delay(200);
HAL_GPIO_TogglePin(GPIOA, LED2_Pin);
HAL_Delay(200);
/* USER CODE BEGIN 3 */
}

LED1_PinLED2_Pin是我给的命名,然后编译就好了

3.烧录

可以参考

https://www.bilibili.com/video/BV1wR4y1y7E2/

https://www.bilibili.com/video/BV1P24y1L7Ho

PA9<–>RXD

PA10<–>TXD

设置条线:

image-20230910211049260

开始FLYMCU烧录

image-20230910204832081

选hex文件烧进去就行了

如果你像我上图那样外接电源,在烧录的时候也是需要将其插入USB接口中的

3.电路

不知道二极管功率的最好加上1k欧的电阻,信号时从A0和A1输出,最后流向的是G跳线(参考上图)

调回boot条线,按下复位键:

image-20230910210541362

成功点亮