资料介绍
经常有人会问,你们 STM32 编程是用库函数 还是用寄存器的...会说库函数方便,容 易,都用库函数...等等这样的问题,今天我们就来 dis 一下这几种编程方式,STM32 编程 目前常见的几种形式如下:
1. 使用标准外设库开发 2.使用寄存器开 3.使用 CubeMax 生成代码工具开发 下面我们先来说一下目前这几种形式的区别:
1.使用标准外设库开发
Stm32 标准外设库是 stm32 官方提供给用户的全系列芯片的外设驱动,官方把单片机 外设的功能进行包装,提供给用户一个现成的接口函数,用户不用去管寄存器到底是如何操 作的,直接调用接口函数,即可使用这些外设。在这个基础上你直接开发你的应用层程序即 可
这个驱动包名字一般是 STM32Fxxx_StdPeriph_Lib_Vx.x.x 有了它可以大大加速我们 开发 stm32。我们以 STM32F10x_StdPeriph_Lib_V3.5.0 驱动包为例,解压该 zip 文件,得 到如下文件夹和文件
_htmresc
Libraries
Project
Utilities
Release_Notes.html
stm32f10x_stdperiph_lib_um.chm
其中 Libraries 包含库的源代码,Project 包含 stm32 各个外设的使用范例和一个工程模 板,Utilities 是使用 st 公司评估板的例子,stm32f10x_stdperiph_lib_um.chm 教我们怎么用 标准外设库
2. 使用寄存器开发
使用寄存器开发,用户需要自己去操作底层外设寄存器,实现想要的外设功能,这个过 程是需要自己对照手册,一行一行把代码敲出来的
3. 使用 CubeMax 开发
这个是官方提供的图形化的一键生产代码的工具,在这个 IDE 中我们只要根据你想要 的功能,点点鼠标,就可以生成你想要的功能,但是注意这个功能只是你想要的单片机外设 配置功能,并不是你的应用程序功能,比如你想要以一个什么样的方式通讯,还是需要你自 己去完善的。如下图是图形化开发的界面:

上面我们以简洁明了的描述了三种编程方式的使用方式和编程过程,接下来我们来分析 一下这三种方式的优缺点:
第一种方法,官方提供了现成的驱动库,用户可以直接使用,使用起来方便,快捷,开 发速度快,相对起来也容易上手一点,但是对底层的寄存器操作原理了解不深,只知其一不知其二,出了问题,解决起来比较麻烦。且官方的驱动库为了容错性高一些等原因,会引 入一些判断机制,相对复杂一些,但是实际上有的东西是我们用不到的,这就会造成代码执 行效率会相对低一些
第二种方法,虽然开发起来相对来说比较慢一些,比较繁琐一些,但是接触的都是真正 的底层内容,出了问题,我们也能从源头来快速分析解决问题,而且写的代码中省去了一些 不必要的判断过程,执行效率会相对高一些,代码看起来也会清爽一些
第三种方法,使用 IDE 开发,这个相比较来讲入门是最快的,不用接触那些库函数接口, 也不用去理会那些寄存器操作,只要在图形化的界面上勾选一些选项就可以了,这简直是懒 人必备神器啊,但是话说回来,这种开发方式,基本上接触单片机底层内容为 0%,只要写 应用程序就可以了,出了问题更难解决。如果换了个平台,没有这种方便的 IDE,怎么办呢?
完整版技术文档请点击文章开头普通下载
- BLDC霍尔安装角度你知道多少?(可下载)
- 电阻的噪声主要分为两类,你都知道吗?资料下载
- STM32的几种串口通信协议资料下载
- 热电偶基本定律有四个,你都知道是哪些吗?资料下载
- 这两种短路保护的方式你都知道吗?怎么运用?资料下载
- 常用电子元器件的分类,你都知道吗资料下载
- 工业总线和通用以太网之间有什么差别?你知道吗?资料下载
- STM32 经验总结,这些你都知道吗资料下载
- 热敏电阻的四种常见作用,你都知道吗资料下载
- 常用电感,这些你都知道吗资料下载
- 手持红外测温仪为何爆发式增长的原理你知道吗
- C语言编程入门的必做题你知道吗 0次下载
- 无线充电IC你都知道吗 47次下载
- 电池的危害有哪些,你都知道吗? 0次下载
- 汽车后视镜里的科学,你知道吗? 53次下载
- STM32单片机有哪几种常见的开发环境? 3801次阅读
- 任意单片机基于simulink模型开发方式 1012次阅读
- 先楫hpm_sdk开发方式的优缺点 与单片机传统开发方式的不同点 3098次阅读
- STM32嵌入式开发中的RTOS,你用过哪些? 2637次阅读
- STM32的三种开发方式 HAL库固件库安装与用户手册 4527次阅读
- STM32三种开发方式及其区别 1.2w次阅读
- 你了解云计算嘛? 3296次阅读
- 这些PCB黑话你都知道吗? 7466次阅读
- 几种远程监控通信方式的介绍_几种远程监控方式的比较 6184次阅读
- 6个电源设计经验,你都知道吗? 9570次阅读
- MIUI的这10个小设置你都知道吗 4452次阅读
- 你知道吗,高级滤波器背后的原理竟这么简单! 2160次阅读
- 你不知道的STM32知识汇总 4676次阅读
- 电池的危害有哪些,你都知道吗? 1.8w次阅读
- 天线的分类有哪些?看了就知道 2.1w次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论