Bymyself 发表于 2025-3-11 12:23

【STM32L562 DK试用】2、创建新程序以及blink

       本次我们使用STM32CubeMX以及MDK实现之后的调试,通过STM32CubeMX创建初始化程序,MDK编写应用程序并下载调试。
       简要介绍了所需软件及创建工程的入口,本篇将引导您完成第一个程序的编写,同时涉及基本配置习惯,建议根据个人习惯进行快速设置。
选择新工程的初始配置,我们可以选择通过芯片也可以通过开发板进行新工程的建立,实际上是通的:
       在着手配置具体的外设初始化代码之前,我们需先行对工程进行详尽设置:
       上图可自定义编辑项目名称以及项目存储位置,IDE选择我们之前定好的MDK,其他设置项默认。
       代码生成配置根据自己的习惯写,个人习惯各个模块初始化生成单独的C和H:

接下来配置时钟:
       在Pinout&Configuration中的RCC下先打开HSE,如下图(如果不使用外部时钟可以跳过):
       接下来进行“Clock Configuration”的设置:
       本次设置的主频为最大时钟110MHz,L系列相对的最大始终还是低一点。
       这个时候我们需要看一下元流通中LED对应的引脚是哪一个了:
       接下来就找到初始状态的引脚绿灯(PG12),红灯(PD3):
       blink涉及到的引脚就是这两个了,配置完我们就可以生成初始化代码了,直接“GENERATE CODE”:
       这两个LED交替闪烁的效果,实现咱们的LEDblink,代码如下:
<p>MX_GPIO_Init();</p><p>MX_ICACHE_Init();</p><p>/* USER CODE BEGIN 2 */</p><p>HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin,GPIO_PIN_SET);</p><p>HAL_GPIO_WritePin(LED_RED_GPIO_Port, LED_RED_Pin,GPIO_PIN_RESET);</p><p>/* USER CODE END 2 */</p><p>/* Infinite loop */</p><p>/* USER CODE BEGIN WHILE */</p><p>while (1)</p><p>{</p><p>    HAL_GPIO_TogglePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin);</p><p>    HAL_GPIO_TogglePin(LED_RED_GPIO_Port, LED_RED_Pin);</p><p>    /* Insert delay 100 ms */</p><p>    HAL_Delay(1000);</p><p>    /* USER CODE END WHILE */</p><p>    /* USER CODE BEGIN 3 */</p><p>}</p>
       在while外部初始一下状态,然后在循环中进行翻转皆可以了,间隔为1s。
效果如下:


页: [1]
查看完整版本: 【STM32L562 DK试用】2、创建新程序以及blink