This post was last edited by iwaxi on 2023-9-10 20:57
Two months ago, I accidentally learned about and followed the electronic enthusiast community EEWorld. After that, I filled out the application for ST development board evaluation with a try-it attitude, and fortunately I passed. I praise EEWorld. I have little experience in stm32 microcontroller development. I hope to learn and share my experience better through this opportunity, and I also hope that the evaluation report can be helpful to everyone.
Thanks again to EEWorld for providing the opportunity to review this product. This is the first time I have published a review report, so I hope you will bear with me. Without further ado, let’s get started.
1. Unboxing the Development Board
The board arrived a few days ago, but it’s the first time I’ve played with such a grand board. Here’s a picture of the board:
←Before unpacking After unpacking→
As you can see, the Nucleo-144 development board has an STlink v2 debugger onboard, including a virtual serial port and a USB flash drive. It has three built-in user LEDs. According to official documentation, the Nucleo series boards support SWD, ST Zio (compatible with Arduino Uno R3), ST Morpho expansion (the most common pin-out on the edge of the development board), and other connection methods. We will try them one by one later. More detailed chip information will not be included in the text (to avoid water words).
After the development board is powered on, PWR and LD4 (serial port indicator light) light up, and the computer can recognize the stlink firmware and virtual USB disk:
PS: The 144 in Nucleo-144 refers to the number of pin-outs. Here is the time to set up the development environment!
2. Development environment construction and lighting
众所周知,stm32系列单片机的开发环境基本以STM32CubeMX+Keil / STM32CubeIDE开发为主,但前者GUI以“古朴”著称,后者则缺少自动补全(需要快捷键的补全是不完整的!)。与之相对的,vscode作为近乎全能(以繁琐和臃肿为代价)的编辑器,只需要安装合适的插件便能达到趋近IDE的效果。最近ST官方貌似推出了vsc的插件,但使用效果并不理想,这里使用插件Keil Assistant编辑已有.uvprojx文件,流程为CubeMX生成MDK-ARM工程文件→vscode打开工程文件,如下图所示。
Lighting process:
1. Check the development board information on the official website www.st.com to obtain the data sheet, development tutorials, etc. By consulting the data sheet, you can know that the LED pins on each board are as follows.
2. Select the development board Nucleo-F413ZH in STM32CubeMX. After the software automatically downloads the relevant chip package, you can see on the configuration page that CubeMX has pre-configured the onboard LED lights (LD1~LD3) and clock settings. Simply name the project and generate code in MDK-ARM mode.
3. Open the .uvprojx file in vscode, add the flashing light function code in the user code, connect the development board, and when prompted to upgrade stlink during the upload process, just continue.
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
HAL_GPIO_TogglePin(LD1_GPIO_Port, LD1_Pin);
HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
HAL_GPIO_TogglePin(LD3_GPIO_Port, LD3_Pin);
HAL_Delay(500);
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
4. Upload successfully, and execute the program function normally after reset (LD1~LD3 blink)
The first review is finished . The reference files can be obtained from the official website. The materials mentioned in the article are added to the attachments. I hope this review can help you. Thank you very much! See you next time! (Slip)