嵌入式——STM32

学习stm32的时候思考了一个问题:什么是嵌入式?

首先嵌入式是以应用为中心,以计算机技术为基础,软硬件可以裁剪的微型计算机系统。他的特点是:成本、可靠性、体积、功耗都有严格要求。

既然是以应用为中心,软件硬件都可以裁剪,就意味着嵌入式的高度定制化、灵活性强、应用广泛。可以实现精准的定制产品所需要的应用功能,非常的灵活。目前日常生活中,工业生产中,都随处可见嵌入式的应用,比如智能手机、智能家居设备、汽车电子控制系统等等。

随着物联网、人工智能、大数据等等的技术发展,嵌入式系统也在不断的创新与进化,满足更加复杂和多样化的应用需求。发展前景十分的可观。

ARM和STM32

1.什么是ARM

        ARM是一家公司,专门生产内核,以授权专利的反式盈利,所以也是基于ARM公司的内核而设计出来的芯片的统称。

        ASM是一种32位的精简指令集处理器架构。由低功耗、高性能和广泛的应用领域而闻名。正是因为ARM这些特点,全世界的绝大多数半导体公司都使用了ARM公司的授权,ARM公司通过这个一本万利。

2.ARM内核分类

最初是通过数字命名,比如arm7、arm9、arm11。后来这样的命名方式得不到满足,于是在arm11之后把内核分为了三大类:cortex -a、cortex -r、cortex -m。

cortex -a

针对开放性的操作系统(运算量大,人机交互,性能要求较高),该系列发展的速度很快,不断的推出新的型号提升性能。比如手机、平板、电视机等等。

cortex -r

针对实时性要求高的领域(实时响应,可靠性),比如航空航天、汽车电子、军工等等

cortex -m

针对低功耗嵌入式系统,比如微控制器、传感器结点、空调、智能排查等等。

STM32F407VET6

本人学习使用的正是STM32F407VET6,所以使用这个举例说明

内核是arm内核 cortex -m M4

ST:代表的是意法半导体公司

M:代表的是MCU,是微控制器(Microcontroller Unit)的缩写,这里不展开说明,读者可自行查阅

32:代表是32位(bit),即cpu一次处理数据的位数

F:代表的是通用型

407:4高性能 07子型号

V:代表的是引脚数 100pin(引脚)

E:FLASH大小为512k

T:封装 LQFP,这里是硬件部分的知识,了解即可

6:代表温度是-40~85

STM32的开发方式

stm32的开发方式一般为三种:寄存器开发、标准库开发、HAL库开发。还有一种ll库开发,但是目前还不成熟,加上之前2019年因为某些原因并没有火起来,所以本文不算入其中。

寄存器开发

这是相对来说最难的开发方式,因为需要开发者通过查阅手册,找到对应的寄存器,对寄存器的每一位进行开发,需要不断的查阅手册,开发效率相对来说比较慢,但是这种开发方式的代码执行效率是最高的。有时候使用标准库开发时,并没有提供相应的接口,即函数给我们使用,所以有时候并不只是单纯的用一种开发方式进行开发。

标准库开发

这是使用最广的一种开发方式,开发难度和代码执行效率都适中。很适合新手初学时使用,不过缺点是并没有使用寄存器开发时更容易理解里面的底层逻辑,最好是初学时也要搞清楚寄存器的开发原理。需要注意的是,因为意法半导体公司已经停止该开发方式的更新,所以是有限制的,目前在更新HAL库。

HAL库开发

这是最简单的开发方式,HAL库是一种图形界面开发,使用者知道原理逻辑,使用这种开发方式效率很高,不过代码的执行效率是最低的。初学者学会前两种开发方式后,HAL库很容易就上手。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值