855|1

43

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

上手STM32L432 Nucleo-32 (二) [复制链接]

邀请:@chunyang   @damiaa   @littleshrimp   @huo_hu   参与回复

接上一篇:上手STM32L432 Nucleo-32 (一) https://bbs.eeworld.com.cn/thread-1257417-1-1.html
CubeMX下载支持包。

然后生成MDK工程文件。

打开Keil 软件,升级下载相关的包。如下图:

 
 
升级ST-Link:
ST-Link升级完成,刷入程序:
上面的步骤完成后 说明设计环境已经OK!
现在开始应用开发。
输入自己的代码,并编译成功:
 

 

 

在嵌入式系统开发中,刷入程序是一个基本且重要的步骤。对于ST-Link升级和刷入程序,我的经验是,首先要对整个过程有一个清晰的理解,以便在遇到问题时能够迅速找到解决方案。下面是我结合自己的实际经验,对这一过程的心得体会。
首先,在开始刷入程序之前,需要准备好必要的工具和软件。这包括CubeMX下载支持包、ST-Link调试器和Keil软件等。CubeMX是一个用于嵌入式系统的开发工具,可以帮助我们生成基本的工程文件和初始化代码。Keil则是一个用于编程和调试的软件,可以帮助我们将程序刷入到目标板中。使用CubeMX下载支持包是一个非常方便的方式,它能帮助我们快速生成基础的工程文件,节省了我们在硬件配置和驱动上的时间。在创建工程文件的过程中,需要仔细选择和配置适合的硬件和软件组件,例如微控制器、编译器和调试器等。这些选择将直接影响到最终程序的性能和稳定性。
在刷入程序的部分,Keil软件是一个非常强大的工具,它能帮助我们编译和调试程序,以及进行固件更新。在升级和刷入程序的过程中,我们需要根据硬件设备的具体配置和应用需求,编写和优化程序。接下来,我们需要对生成的工程文件进行修改和完善。打开工程文件,在“Source Group”文件夹下可以找到与HAL_GPIO_WritePin相关的源代码。在这个代码片段中,我们可以通过编写特定的代码来实现对GPIO引脚的读写和控制。例如,我们可以使用HAL_GPIO_WritePin函数来将GPIOB的第5和第6引脚设置为低电平,然后将LD3_Pin引脚设置为高电平,以实现LED灯的亮灭控制。需要注意的是,不同的芯片型号和开发板型号对应的GPIO引脚和控制方法可能会有所不同,因此在实际使用时需要根据具体情况进行调整。这包括了使用HAL库进行GPIO引脚操作,以及使用HAL库提供的函数进行延时等操作。
在这个示例代码中,HAL_GPIO_WritePin函数用于改变GPIO引脚的状态,HAL_Delay函数则用于实现延时。这些函数的使用需要对嵌入式硬件有深入的理解,包括硬件的引脚配置、电源配置、时序要求等。
最后,我们可以使用Keil软件进行程序的编译和下载。在Keil软件中,选择“Build”菜单,然后选择“Build Target”选项。在弹出的对话框中,选择需要编译的工程文件和目标文件,并设置好编译选项。然后点击“OK”按钮,Keil会将编译后的程序下载到目标板中。在程序下载完成后,我们可以通过对GPIO引脚的读写和控制来实现具体的功能。
在具体的编程实践中,我学到了如何根据硬件设备的规格和特性来设计程序。同时,我也了解到,即使是相同类型的硬件,不同的版本和批次也会有可能带来不同的问题。这需要我们在编程时考虑到这些差异,以及如何在遇到问题时进行排查和修复。
通过使用CubeMX下载支持包、使用Keil进行程序的升级和刷入,我深入了解了嵌入式系统开发的基本步骤和技巧。在这个过程中,我不仅学会了如何有效地使用这些工具和库,还提升了我对嵌入式系统的理解和解决问题的能力。我相信这些经验和知识将对我的嵌入式系统开发之路产生深远影响。
在此过程中,我也意识到,作为一名嵌入式系统开发者,我们需要不断地学习和积累经验,以便更好地应对各种可能出现的问题和挑战。同时,我们也需要时刻关注新技术的发展,以便在日新月异的嵌入式领域保持竞争力。
通过以上步骤,我们可以完成ST-Link升级和刷入程序的过程。在这个过程中,我们需要准备好必要的工具和软件,熟悉嵌入式系统的开发流程和调试技巧,并且对源代码进行修改和完善以实现特定的功能。这些都需要一定的经验和技能。希望我的这篇心得体会能对大家有所帮助。
总的来说,每一次的实践经历都是宝贵的学习机会,每一次的挫折和失败也都是我们成长的阶梯。我期待着在未来的嵌入式系统开发道路上,继续学习、积累、探索和创新。

源代码:

		HAL_GPIO_WritePin(GPIOB, LD3_Pin|GPIO_PIN_5|GPIO_PIN_6, GPIO_PIN_RESET);
		HAL_Delay(800);
		HAL_GPIO_WritePin(GPIOB, LD3_Pin|GPIO_PIN_5|GPIO_PIN_6, GPIO_PIN_SET);
        HAL_Delay(600);

谢谢!

此帖出自stm32/stm8论坛

最新回复

不同的版本和批次也会有可能带来不同的问题 这个确实是玩嵌入式开发板友们一个痛点   详情 回复 发表于 2023-10-2 09:43
点赞 关注
 

回复
举报

6587

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

不同的版本和批次也会有可能带来不同的问题

这个确实是玩嵌入式开发板友们一个痛点

此帖出自stm32/stm8论坛
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表