2025-1-6 STM32单片机开发,小白记录
0.安装
推荐:【最新】Proteus 8.17软件免费下载安装汉化详细教程(附下载链接)_哔哩哔哩_bilibili
模板视频:3. STM32标准外设库开发第一步:一次新建永久使用的库函数模版工程文件夹,傻瓜式操作,建议收藏_哔哩哔哩_bilibili
我只是总结记录这些的,以及视频里没有的一些关键细节
库文件也是找了好久找到的>_<,
求个赞,或者关注>_<
1.模板开发
创建目录
1.CMSIS
// ARM公司开发通用协议 STM32F10Xgjhsk_jb51\Libraries\CMSIS\CM3\CoreSupport 下所有 文件
// ST公司的器件支持库 STM32F10Xgjhsk_jb51\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x 下的.h .c
2.Library
// 驱动文件: STM32F10Xgjhsk_jb51\Libraries\STM32F10x_StdPeriph_Driver 下的两个文件夹
3.Start
// STM32F10Xgjhsk_jb51\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm 下所有
4.User
// STM32F10Xgjhsk_jb51\Project\STM32F10x_StdPeriph_Template 下的
stm32f10x_it.h
main.c
stm32f10x_conf.h
stm32f10x_it.c
2.创建项目,引入配置
创建项目,选择自己的STM32型号
把模板复制进来
品字 > 中间一列 > 创建模板里文件夹相同名字
右边 > Add File > 把他们所有的.c添加进来(Start不同,User)
User 额外需要_conf.h文件
Start > * 所有 > 选择一个 (_md) !!!!!!后面会用到!!!!!!!
3.编译配置Target 魔术棒
勾选生成HEX
添加宏定义(这里的MD需要和Start选择的保持一致)
USE_STDPERIPH_DRIVER , STM32F10x_MD
引入头文件(注意Library里面两个文件夹都需要添加进来)
选择调试器
勾选Reset and Run
Debug > Settings >Flash Download > 勾选Reset and Run
4.中文显示乱码解决
Edit > Configuration >Encoding > Chinese GB2312 (Simplified)
5.编译测试
一个小警告 > 保证最后一行为空行即可
// 你好!STM32的第一次学习
#include "stm32f10x.h"
int main()
{
return 0;
}
6.一种头文件爆红可能的原因
明明是直接这样在User目录上右键 > Add New Item to Group User
而且看第二张图,已经添加进来了,但是还是爆红(** 编译日志看最后一个,第二张图是之前编译的**)
6.1 解决方法1(治标不治本,只是去除了调用文件不爆红,但是编译还是报错)
导致的结果,确实不暴红了,但是同时关闭了代码提示
然后编译时还是报错
运行测试
6.2 根本解决
网上很多都是说中文路径,也就是
魔术棒 > C/C++ >Include这个,
但是根据我上面的操作后,这里引入的头文件配置后,头文件相当于是直接**./路径引用**
根本不是中文路径的原因
6.2.1 尝试分析> 第一项>查看配置路径
发现区别了吗???
打开文件夹看看
可以看到,他确实是在这里
6.2.3 解决方法
本质就是把你新创建的文件所在的文件夹添加进来
所以你可以这样做
方法1:添加项目目录进魔术棒include,
结果:不暴红,编译通过 0 Error
警告:statement 18 unreachalle 这个不要在意,这是因为我写的代码不会执行到最后一行return 0;处,完全可以忽略,
单片机你还能执行一遍结束吗?至少我目前觉得不可能
方法2:移动你创建的文件,进入User,然后重新添加即可(更加习惯这样,毕竟更方便管理)
操作方法: a右键>剪切>进入User>粘贴(我知道可能有的电脑小白不会)
取消编辑
右键移除
User右键>添加已存在>选择你的.c或者.h
结束
7.小小结:
最近开始学STTM32单片机,所以做点小记录,大佬勿喷
头文件问题:
1.一定要把创建.c/.h文件所在文件夹,添加进include(还有就是最好整体使用英文路径)
不定时更新,记录学习>_<
希望能帮到大家,
还有就是-_-
*>_ *点个赞吧
*>_ *点个赞吧