本帖最后由 iwaxi 于 2023-9-10 20:57 编辑
两个月前偶然得知并关注了EEWorld这一电子爱好者社区,之后抱着试一试的心态填写了ST开发板评测的申请,结果幸运地通过了,赞美EEWorld。个人stm32单片机开发经验较少,希望能够通过这个契机来更好地学习、分享经验,也希望评测报告能够给大家带来帮助。
再次感谢EEWorld提供的测评机会,新人第一次发布评测报告,希望大家多多包涵。那么闲话不多说,开始正文内容。
一、 开发板开箱
板子在前几天就已经到了,这么大气的板子还是头一会玩到o(* ̄▽ ̄*)ブ。下面是板子的实物图:
←拆封前 拆封后→
可以看到,Nucleo-144开发板板载了STlink v2调试器,包括虚拟串口和U盘。内置三颗用户LED。根据官方文档,Nucleo系列板子支持SWD、ST Zio(兼容arduino uno r3)、st morpho扩展(开发板边缘最普通的pin-out)等连接方式,之后会逐一进行尝试。更详细的芯片信息就不放在正文中了(避免水字数)。
开发板上电后PWR与LD4(串口指示灯)亮起,电脑可识别stlink固件与虚拟U盘:
PS: Nucleo-144的144指的原来是pin-out数量,涨知识了。下面是开发环境搭建时间!
二、开发环境搭建、点灯
众所周知,stm32系列单片机的开发环境基本以STM32CubeMX+Keil / STM32CubeIDE开发为主,但前者GUI以“古朴”著称,后者则缺少自动补全(需要快捷键的补全是不完整的!)。与之相对的,vscode作为近乎全能(以繁琐和臃肿为代价)的编辑器,只需要安装合适的插件便能达到趋近IDE的效果。最近ST官方貌似推出了vsc的插件,但使用效果并不理想,这里使用插件Keil Assistant编辑已有.uvprojx文件,流程为CubeMX生成MDK-ARM工程文件→vscode打开工程文件,如下图所示。
点灯流程:
1. 在官网www.st.com查询开发板信息,获取数据手册、开发教程等,通过查阅数据手册,可知各板载LED引脚如下。
2. 在STM32CubeMX中选择开发板Nucleo-F413ZH,软件自动下载相关芯片包后,在配置页面可见CubeMX已预先配置好板载LED灯(LD1~LD3)及时钟设置。直接命名工程,以MDK-ARM方式生成代码即可。
3. 在vscode中打开.uvprojx文件,在用户代码处添加闪灯功能代码,连接开发板,在上传过程中提示升级stlink,继续即可。
/* 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. 上传成功,reset后正常执行程序功能(LD1~LD3 blink)
第一篇测评就这样水写完了,参考文件均可在官网获取,文中提到的资料均添加到了附件中。希望这篇测评可以给大家帮助,不胜感谢!那么,我们下期再见!(溜)