news 2026/6/9 20:10:05

stm32单片机学习(一)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
stm32单片机学习(一)

一、新建工程

1.打开keil5->菜单栏的Project->New Project->选择工程文件夹->Ctrl+Shift+N快捷键新建文件夹->命名->新建工程Project->保存->选择芯片stm32f103c8

2.打开工程文件夹,在文件夹中再创建四个文件夹,分别是Start,Library,User,System

3.Start文件夹:打开固件库文件,①找到启动文件,Ctrl+A全选,Ctrl+C复制,放到Start文件夹下,②再找到stm32f10x.h,system_stm32f10x.c以及system_stm32f10x.h放到Start文件夹中,③最后再找到Core_cm3.c和Core_cm3.h,放到Start文件夹中,finished。

4.Library文件夹:打开库文件的标准外设驱动文件夹->src,全选,复制粘贴到Library文件夹中。

5.User文件夹:打开库文件中的Project文件夹,找到后缀为Template的文件夹,找到main.c和stm32f10x_conf.h,stm32xf10x_it.c,stm32xf10x_it.h这三个复制粘贴

6.System文件夹:存放系统资源的文件夹,如延时函数

7.回到keil5:

1)点击三个箱子的工程文件管理按钮,叉掉默认的组,新建三个组,Start,Library,User。

选中Start,添加这几个文件

选中Library,添加全部文件

选中User,添加全部文件

选中System,添加全部文件

2)点击魔术棒按钮,

选中C/C++,

在Include Paths这一栏,把我们建的文件都添加进来,Start,Library,User,System

在Define这一栏添加:USE_STDPERIPH_DRIVER

选中Debug,

use选中ST-Link,点击settings->Flash Download

勾上这几个->确定,ok

3)打开main.c,删掉全部代码,右键添加头文件以及添加主函数

分享一个小技巧:将keilkill.bat放到工程文件夹中,双击就会把中间文件删除,避免占用内存过多,方便分享给别人

二、GPIO的输入与输出

以点亮LED灯为例:PA0口

1.操作stm32的GPIO分三步

1)使用RCC开启GPIO时钟

开启GPIOA的APB2时钟(标准库写法):
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

传入两个参数:

要使能的外设和外设时钟开关控制

2)GPIO初始化

先来了解一下GPIO的函数有哪些


GPIOx可以指定引脚

第一个为初始化引脚,初始化引脚需要定义结合体

关键结构体 GPIO_InitTypeDef

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 16:10:59

【期末复习01-02】-结构类算法题

文章目录题目要求项目结构1.Action2.ColorableStep1:写接口和父类Step2:写实现类Step3:写测试类题目要求 项目结构 1.Action 参考代码 先写成“成员内部类”的格式(帮助理解) 再写出“匿名内部类”的格式 运行效果 2.Colora…

作者头像 李华
网站建设 2026/6/9 16:12:45

鸿蒙与 Electron:跨平台开发的双雄对决与融合实践

在跨平台开发领域,鸿蒙(HarmonyOS)和 Electron 是两大极具代表性的技术体系。鸿蒙作为华为自研的分布式操作系统,以 “万物互联” 为核心,主打全场景设备的无缝协同;Electron 则基于 Chromium 和 Node.js&a…

作者头像 李华
网站建设 2026/6/9 16:11:26

【珍藏】大模型进阶必学:5种Agentic AI设计模式实战指南

传统的大语言模型在应答时往往是一次性的,这限制了其处理复杂任务的能力。Agentic AI(智能体)的崛起,通过引入自我评估、规划与协作等行为,使模型具备了持续演进、与环境交互的能力。本文将深入探讨构建Agentic AI 的5…

作者头像 李华
网站建设 2026/6/9 8:22:14

为了在本地模拟线上环境,我差点把我的 Mac 搞崩了

还在用 Nginx Docker-compose 折腾微服务?听我一句劝社区里总在讨论:“新项目,应该上单体还是微服务?”我看过无数技术文章,大佬们分析得头头是道,但我每次自己写点东西,最后都老老实实地用单体…

作者头像 李华
网站建设 2026/6/9 16:10:55

KVM 架构概述

传统的非 VHE 模式HostOS 和 Guest OS 运行在 EL1 级别,HostOS 上的 Qemu 运行在 EL0 级别,KVM 运行在 EL2 级别。一个 VM 对应 HostOS 上一个 QEMU 进程;一个 vCPU 对应 HostOS 上一个 QEMU 线程。当 CPU 上运行 Host Context 时&#xff0c…

作者头像 李华
网站建设 2026/6/9 17:23:43

医疗人工智能系统临床验证与测试框架

随着人工智能技术在医疗领域的深度融合,AI辅助诊断、治疗决策和患者管理等系统正逐步应用于临床实践。然而,医疗AI系统的高风险特性要求其必须经过严格的临床验证,以确保安全性、有效性和可靠性。本方案针对软件测试从业者设计,结…

作者头像 李华