STM32CubeIDE开发基本流程详解
创作时间:
作者:
@小白创作中心
STM32CubeIDE开发基本流程详解
引用
CSDN
1.
https://blog.csdn.net/m0_70649291/article/details/143797428
本文将详细介绍使用STM32CubeIDE进行嵌入式开发的基本流程,包括工程创建、基本配置、任务配置、代码编写、编译和程序烧写等步骤。
一、建立工程
创建工程(点击之后等待下载和配置完成)
选择芯片(搜索时切换成英文,这里以STM32F103C8T6为例)
输入程序名后,点击Finish即可(等待配置完成)
创建完成后的界面和文件应该是这个样子的
二、基本的工程配置:时钟系统、调试方式
设置时钟源
在时钟系统架构图中将系统输入时钟改为HSE
- HSE(High-Speed External): HSE是指外部高速时钟源。
- HSI(High-Speed Internal): HSI是指内部高速时钟源。
- PLLCLK: 锁相环倍频时钟源。
- 选择调试方式
三、任务配置(以LED灯定时闪烁为例)
1.Gpio配置
2.Timer配置
选择定时器→选择时钟源→配置定时器→使能定时器
3.生成基础代码
完成以上配置后,ctrl+s保存即可自动生成基础代码。
四、编写任务代码
- 这里使用中断定时LED灯的闪烁
HAL_TIM_Base_Start_IT(&htim2); //开启定时器2中断,当定时器计时满之后,调用回调函数
- 回调函数
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) //定时器溢出回调函数
{
static unsigned char ledState = 0;
if (htim == (&htim2)) //检查调用回调函数的定时器是否是 htim2
{
if (ledState == 0)
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
else
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
ledState = !ledState;
}
}
五、编译工程
编译(点击锤子按钮)
右击工程,设置是否编译时生成二进制和十六进制文件(生成的文件在工程目录的debug目录下)
①这是debug模式下的设置,release模式(点击锤子右边的下三角)下只需要切换后同样设置即可
②勾选即可
六、烧写程序(两种方式)
1.方法一:直接在IDE中操作(点击小瓢虫即可)
2.方法二:选择更专业的烧写工具STM32CubeProgrammer
连接:选择烧写方式,然后点击Connect即可,最好频率调一下,不调也没关系。
选择要烧写的文件(.bin/.elf/.hex任一文件均可),勾选Verify programming,然后点击Start等待即可,烧写完成后点击Disconnected断开连接。
热门推荐
“打卡废墟”?别为了猎奇忽视安全
C语言如何比较小数大小
婴儿包巾要包多久?正确包法与3款人气推荐,让宝宝舒适爸妈舒心
这届国风音乐人,“有戏”了
满足好奇心,就能激发正循环学习!亲子互动“3要4不”,决定孩子的优势
控制手机使用时间,提高生活质量(有效限制手机使用的方法及技巧)
辨别花草品种有哪些方法?怎样确保品种的纯正?
未来三年职业生涯规划:一个全面而系统的过程
雇主品牌建设:成为优秀人才的“第一选择”
给不同年龄母亲的健康提醒
最好玩的十款剧情向单机游戏大作 十大剧情游戏神作盘点
强冷空气来袭!羽绒服选购与保养全攻略
湖南医疗反腐:张国华、刘群友、张勇十天内先后官宣被查
AI如何革新游戏场景设计:提升效率与创意新纪元
大年初三:三思而行,三阳开泰,三生万物
如何拯救绝望的灵魂
两厢车和三厢车该如何选?
怎麼念佛珠?使用佛珠的正確方法與技巧
陈艺鹏古风生日音乐会:粤语中国风直播间魅力绽放
怎样写诗最有意境?
汉末三国时期,吴郡四姓指的是哪些?
卡卡西与琳的悲剧:责任与情感交织的挣扎与无奈
奥运审美整顿“白幼瘦”?恐怕还不行
意甲焦点战:亚特兰大争冠强攻,卡利亚里保级背水一战
属龙生肖解析:性格特点与人际关系全解读
高速行驶时的车辆开窗会更费油吗?
应对快速变化的技术趋势,公司需采取的措施
怎么检查js循环代码是死循环
一个个镜头 传递温暖情谊
5G路由器信道最佳设置是哪个?路由器信道设置多少合适?