当前位置:网站首页>新建STM32工程并配置——基于寄存器
新建STM32工程并配置——基于寄存器
2022-07-19 16:54:00 【an520_】
在keil5中新建STM32的工程文件,该工程基于STM32F103。
1.新建一个文件夹,自己根据所要进行的项目进行命名“超声波测距”,同样在内部新建“USER”;
2.打开keil,从“Project”选择“New μVision Project...”,如下图:
3.将项目定位到“超声波测距”的“USER”目录下,然后按照自己的需求进行命名;
4.然后会弹出选择框,我们根据自己手中的STM32选择对应的“STMicroelectronics”;
5.点击“Cancel”;
6.首先选择启动文件,正点原子在文档中也已经有了相关说明,如下所示:
ST 公司提供了 3 个启动文件给我们,分别用于不同容量的 STM32 芯片,这三个文件是:
C8T6是64Kb,因此属于中容量,启动文件应选择"startup_stm32f10x.md.s"。
7.然后将启动文件添加到工程中;
当然也可以右键从"Manage Project items"中进行添加,这里不展示。
8.因为启动文件不同,因此代码会存在一定的差别,因此需要将启动文件的某段代码进行替换成下面的代码;
不过复制从正点原子链接下载的文件是不需要进行修改的。
9.对工程进行编译可以发现是存在一个“error”的;其实就说添加一个main函数,然后在“USER”目录下新建main.c文件(可以是其他的名称);
10.在“Manage Project”中添加“USER”、“SYSTEM”分组,然后把main.c文件添加到“USER”分组中;
11.从下载的文件中寻找到“delay”、“sys”、“usart”三个文件夹,然后将其中的.c文件添加到工程目录
12.配置输出的选项,如下图所示:
然后配置hex文件的输出的路径。
13.然后配置好.c文件后,还需要配置.h头文件。先输入宏定义标识符,根据所用 STM32F1 型号的容量,来输入相关宏
定义,对于 STM32F103 系列芯片,设置原则如下:
C8T6选择“STM32F10X_MD“,然后添加头文件的路径。
14.编译发现仍存在问题,这是由于main.c文件中并没有任何代码,然后在main.c编写代码;
然后就编译成功了,不过由于编码类型不同,所以直接复制的汉字会乱码。
【学习交流群:607439754】
【自己手机到的网盘资料包,需要的自行领取】:
嵌入式物联网 22个STM32项目、大赛作品,【华清远见发放资料包】http://makerschool.mikecrm.com/f4wjYBB
【下方分享一些学习教程资料】:
边栏推荐
猜你喜欢
Matlab填充影像中的无效值
MATLAB回归分析获取预测变量的系数和p值和R2(仅一行代码)
MATLAB and 1stOpt multivariate nonlinear regression
Chip low power sleep mode and the use of watchdog
The industry's first "best practice map of live video technology" was released!
ArcGIS导出地图后部分图例不显示
Go language environment construction and samples
Stm32f103c8t6 operation matrix keyboard
Large screen: the display adaptation and font of the page on different scale screens change with the screen change (the font changes adaptively with the screen resolution)
odoo基础开发之CURD(增、删、查、改)
随机推荐
线程/进程/协程的区别以及多线程状态/多线程的统一异常处理
Matlab数据写入文件常用函数
Map和Set
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
Chip low power sleep mode and the use of watchdog
第七章:集合
Draw 95% confidence interval diagram with MATLAB
Stm32f103c8t6 operation matrix keyboard
Arcgis/arcpy convert floating-point grid to integer grid
If the total is based on the frame form by field, sort by a field
MySQL读写分离基本原理是什么
【YOLOv5实战3】基于YOLOv5的交通标志识别系统-模型训练
WPF RadioButton样式 (2)
JSR303数据校验
shell跑数命令
快速提取PDF文件中的表格
【数组基础的增,删,改,查】
行业首个「视频直播技术最佳实践图」发布!
MATLAB and 1stOpt multivariate nonlinear regression
tab栏切换样式