STM32学习(一)什么是嵌入式?STM32是什么?
一、嵌入式了解
1、概念
嵌入式技术是专用计算机,它以应用为中心,以计算机技术为基础,软硬件均可裁剪,使用在对功能,功耗有严格要求的系统之中,嵌入式技术的开发人员需要对整个体系(从底层硬件到上层软件操作系统)有所了解。下图粗略介绍了嵌入式技术的知识结构。
2、小白到技术大咖的学习之路
3、嵌入式的特点
(1)硬件特点:
- 体积小、集成效率高
- 面向特定的应用场景
- 功耗低、电磁兼容性好
(2)软件特点
- 嵌入式软件的开发和硬件紧密关联。
- 软件代码要求高效率和高可靠性。
- 软件代码一般固化在FLASH或者ROM里面。
- 软件系统具有高实时性。
- 一般采用C语言开发。
4、主流的嵌入式芯片架构----ARM架构
(1)ARM介绍
- ARM是英国一家电子公司的名字。
- ARM敢为天下先,该公司不生产芯片,也不设计芯片,而是设计出高效的IP内核,授权给半异体公司使用。
- ARM提供一系列内核、体系扩展、微处理器和系统芯片解决方案。
- ARM是一种功耗很低的高性能处理器芯片架构。
(2)ARM架构
ARM以前的架构:ARM7、 ARM9、 ARM11
ARM现在的架构:Cortex-A、R、M
- Cortex-A --开放式操作系统的高性能处理器 ----> linux方向
A8 A9 A15 A52 A53 A72 A73 A76 A77
应用场景:智能手机、上网本、数字电视、机顶盒
- Cortex-R --面向实时应用的卓越性能
应用场景:汽车制动系统、动力传输、航天航空
- Cortex-M --面向具有确定性的微控制应用的成本敏感性的产品
M0 M3 M4 M7 ------> 32方向
应用场景:门禁、扫地机器人、 平衡车、手环等等
二、STM32介绍
1、概念
ST-意法半导体,是一个公司名,即SOC厂商。 M--Microelectronic的缩写,表示微控制器,注意微控制器和微处理器的区别。 32--32bit的意思,表示是一个32bit的微控制器。
2、STM32有什么?
STM32属于一个微控制器,自带了各种常用的通信接口,功能非常强大
串口--USART:用于跟串口接口的设备通信,比如:USB转串口模块、ESP8266WIFI、GPS、GSM模块、串口屏、指纹识别模块。 内部集成电路--I2C,用于跟I2C接口的设备通信,比如:EEPROM、电容屏、陀螺仪MPU6050、0.96寸OLED模块。 串口通信接口--SPI,用于跟SPI信号的设备通信,比如串行Flash、以太网W5500、音频模块VS1053。 SDIO、FSMC的超级、ADC、GPIO。
3、选择合适的MCU
一个原则:花最少的钱,做最多的事
在确定项目需求的情况下,一般按照下面顺序来选择合适的MCU。
选择哪种内核的芯片,内核越高意味着功耗也越高。 选择多少引脚的芯片,引脚多少决定了资源的多少,也影响价格。 选择多少RAM和FLASH的芯片FLASH越大,价格越贵。 还要考虑所选型号采购是否容易,供货是否稳定
4、STM32的命名方式
相关链接:STM32简介、选型及其目标