当前位置: 首页 > news >正文

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

http://www.cnnetsun.cn/news/134938.html

相关文章:

  • COMSOL网格划分:有限元分析中的基础与技巧
  • Langflow第三方组件完全指南:从基础使用到高级集成
  • 【值得收藏】360大模型安全白皮书深度解析:五大风险+双轨防御+实战案例
  • 模型漂移的检测与应对:软件测试者的实战手册
  • 金融科技的智能风控测试
  • Open WebUI重排序终极指南:三步提升搜索精准度90%
  • 测试预算的动态优化:从静态规划到敏捷响应
  • 【树莓派pico/pico2】在pico-sdk中自定义板子
  • 【Java + Elasticsearch全量 增量同步实战】
  • 科研数据探索新维度:NSFC项目智能分析系统深度体验
  • 7、利用CardSpace和Windows Communication Foundation开发软件+服务
  • Scada-LTS开源项目完整使用指南:从零开始构建工业监控系统
  • 浏览器插件跨平台兼容性终极指南:5个核心技巧解决Chrome/Edge/Firefox差异
  • Godot-MCP革命:用AI对话创造你的梦想游戏世界
  • 大明开国勋臣的三重贡献:李善长、胡惟庸与蓝玉的历史功绩再审视
  • Python GUI终极指南:5步掌握DearPyGui的完整开发流程
  • Heroicons 2.1.5版本实战指南:23个新图标如何提升你的开发效率
  • python-flask-django学习课程辅助系统设计与实现_s01d6vz0
  • FLORIS风电场仿真实战:从入门到精通的终极指南
  • 机器学习图表设计专家:快速创建专业级科研可视化
  • 惠普游戏本终极性能控制指南:OmenSuperHub完全实战教程
  • 煤矿高压电缆绝缘监测技术深度解析:从局部放电到智能预警的科技防线
  • 收藏必备!LangGraph核心概念详解:从思维链到多智能体,一文掌握大模型应用架构
  • python-flask-django大学生健康管理系统_35l867i9
  • python-flask-django宠物商城 论坛领养系统_07ggc7q2
  • 46、《Linux使用技巧与技术综合指南》
  • SSLUnpinning_Xposed:Android安全测试终极指南
  • Kotaemon本地化部署方案:满足数据不出境要求
  • Blynk物联网开发完全指南:从零到一的智能硬件实战教程
  • 终极指南:如何彻底卸载Windows 10中的OneDrive