STM32_新建工程(寄存器版)

文章目录

一、新建本地工程文件夹

Listing:存放编译器编译时候产生的c/汇编/链接列表清单。

Output:存在编译产生的调试信息、hex文件、预览信息、封装库等。

二、新建工程

1、选择CPU型号

2、在线添加库文件

3、添加文件

startup_stm32f10x_hd.s

启动文件,系统上电后第一个运行的程序,由汇编编写,C编程用的比较少,可暂时不管,这个文件从固件库里面拷贝而来,由官方提供。

文件在这个目录:STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_hd.s。

stm32f10x.h

用户手动新建,用于存放寄存器映射的代码,暂时为空。

main.c

用户手动新建,用于存放main函数,暂时为空。

4、配置魔术棒选项卡

1)Target中选中微库" Use MicroLib",为的是在日后编写串口驱动的时候可以使用printf函数。

2)Output选项卡中把输出文件夹定位到我们工程目录下的output文件夹, 如果想在编译的过程中生成hex文件,那么那Create HEX File选项勾上。

3)在Listing选项卡中把输出文件夹定位到我们工程目录下的Listing文件夹。

三、测试代码

c 复制代码
	#include "stm32f10x.h"
	
	int main(void)
	{
	        
	        // 打开 GPIOB 端口的时钟
	        *( unsigned int * )0x40021018 |=  ( (1) << 3 );
	        
	        // 配置IO口为输出
	        *( unsigned int * )0x40010C00 |=  ( (1) << (4*0) );
	        
	        // 控制 ODR 寄存器
	        *( unsigned int * )0x40010C0C &= ~(1<<0);
	}
	
	void SystemInit(void)
	{
	        // 函数体为空,目的是为了骗过编译器不报错
	}
相关推荐
_Ningye17 小时前
STM32 — 2.2 新建工程
stm32·单片机·嵌入式硬件
森利威尔电子-17 小时前
森利威尔SL3062替代 LM3485 60V降压恒压芯片
单片机·嵌入式硬件·集成电路·芯片·电源芯片
_Ningye18 小时前
STM32 — 3.1 GPIO输出
stm32·单片机·嵌入式硬件
学嵌入式的小杨同学18 小时前
STM32 进阶封神之路(十九):ADC 深度解析 —— 从模拟信号到数字转换(底层原理 + 寄存器配置)
c++·stm32·单片机·嵌入式硬件·mcu·架构·硬件架构
青桔柠薯片19 小时前
51单片机(STC89C52RC)学习总结:从裸机编程到外设驱动
嵌入式硬件·学习·51单片机
weiyvyy19 小时前
从开发视角看硬件接口:接口开发的本质与全景图
驱动开发·单片机·嵌入式硬件·硬件工程
老李的森林19 小时前
杂谈--如何与AI高效率的对话
人工智能·stm32·嵌入式硬件·机械
_Ningye20 小时前
STM32 —2.1 软件安装
stm32
weixin_4629019720 小时前
esp32wifi的AP模式
单片机·嵌入式硬件
2501_9181269120 小时前
学习所有6502写游戏动画的语句
汇编·嵌入式硬件·学习·程序人生·游戏