【STM32F103ZE实验】【实验1】点亮LED

news/2025/3/19 13:23:21/

STM32CubeMx生成keil工程

步骤1:打开STM32CubeMx, 选择MCU类型
在这里插入图片描述
在这里插入图片描述
步骤2: 设置Debug类型
在这里插入图片描述

步骤3: 选择时钟源

在这里插入图片描述

步骤4: 配置时钟
在这里插入图片描述

步骤5: 配置GPIO控制LED
首先配置PE5
在这里插入图片描述
点击GPIO_Output进行相关配置,如下
在这里插入图片描述
另个PB5的GPIO配置同上

步骤6: 设置工程相关功能
在这里插入图片描述

在这里插入图片描述
步骤7: 点击生成keil工程文件
在这里插入图片描述

Keil工程代码编辑&运行

main函数代码如下

/*** @brief  The application entry point.* @retval int*/
int main(void)
{/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();/* USER CODE BEGIN 2 *//* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOE, GPIO_PIN_5, GPIO_PIN_SET);HAL_Delay(1000);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_SET);HAL_GPIO_WritePin(GPIOE, GPIO_PIN_5, GPIO_PIN_RESET);HAL_Delay(500);}/* USER CODE END 3 */
}

其中

HAL_init:主要是复位外围设备,以及初始化flash接口和systick
SystemClock_Config:主要配置系统时钟
MX_GPIO_Init:主要用于控制LED的GPIO配置

其中如下代码是手动添加代码, 用于控制LED灯闪烁点亮
在这里插入图片描述

注意
system_stm32f1xx.c 文件中的USER_VECT_TAB_ADDRESS要打开,否则STM32CubMX生成的工程文件运行不起来
在这里插入图片描述


http://www.ppmy.cn/news/96909.html

相关文章

Jmeter下载安装---Windows系统

Jmeter下载安装---Windows系统 jmeter是什么Jmeter下载安装安装jmeter前置必须jdk8Jmeter下载 jmeter插件环境变量配置 jmeter是什么 Apache JMeter 是 Apache 组织基于 Java 开发的压力测试工具,用于对软件做压力测试;在接口及性能测试中广泛使用&…

QThread Class

QThread QThread类枚举类型成员函数可重写函数公共槽信号静态成员函数保护函数静态保护函数QThread简单案例1QThread简单案例2 QThread类 标准头文件&#xff1a;#include <QThread> qmake: QT core 继承(父): QObject枚举类型 线程的优先级 enum Priority { IdlePri…

scipy库统计模块stats

# 统计相关模块stats sp.stats.norm.rvs()#标准正态分布 sp.stats.norm.fit()#估算正态分布的参数 sp.stats.norm.pdf()#计算对应位置的概率密度 sp.state.norm.ppf()#找到标准正态分布中概率恰好为一半的点 sp.stats.expon()#指数分布 sp.stats.norm.cdf()#累积分布函数 sp.st…

linux中和,|和||及分号(;)的用法

在linux中&#xff0c;我们经常会用到&和&&&#xff0c;|和||及分号(;)&#xff0c;但是好多人对其会混淆&#xff0c;不明白其中的意思&#xff0c;今天为大家讲解一下&和&&&#xff0c;|和||及分号(;)各自的说明和用法。 1.& & 表示程序…

【Cookie和Session】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔&#x1f93a;&#x1f93a;&#x1f93a; 目录 一、Cookie和Session&#xff08;面试常考&…

ChatGPT与讯飞星火实测对比

文章目录 一、推理测试测试提示词1&#xff1a;假设树上有10只鸟&#xff0c;开枪打死1只&#xff0c;那么树上还有几只鸟?- 测试提示词2&#xff1a;一艘船10天可以渡过太平洋&#xff0c;请计算10艘船多少天可以渡过太平洋。测试提示词3&#xff1a;我爸妈结婚的时候为什么不…

Qt - UI进阶

Qt - UI 进阶 布局控件及其坐标pos/position/scenePosition/globalPosition 场景和视图&#xff1f;&#xff1f;&#xff1f; 布局 https://blog.csdn.net/kongcheng253/article/details/128769765 控件及其坐标 pos/position/scenePosition/globalPosition pos()函数返回的…

动态组件、插槽、自定义指令、Eslint和prettierrc配置、axios全局挂载

动态组件、插槽、自定义指令、Eslint和prettierrc配置、axios全局挂载 动态组件插槽体验插槽的基础用法作用域插槽 自定义指令Eslint和prettierrc配置prettierrc axios全局挂载 动态组件 动态组件指的是动态切换组件的显示与隐藏。 如何实现动态组件渲染 vue 提供了一个内置的…