初学stm32-基础知识及经典案例

stm32基础

    • stm32概述
    • stm32、ARM介绍及其联系
    • stm32命名规则
    • stm32经典案例

stm32概述

1.stm32初学要买开发板还是最小系统板?

最小系统板优点:因最小系统板引脚全部引出,自己学习操作时自由度非常高,想测试哪个外设就连接哪个外设,比如:;led、蜂鸣器……,对于复杂外设tft lcd屏幕,mpu6050也可以自己焊个板子,连接到最小系统板,在自己的项目开发测试中非常方便。
缺点是:外设过多过零散易丢失,当自己想测试简单功能时,需重新焊接电路,导致硬件bug频繁。

开发板优点:所有引脚都被引出,连接于各个外设,不用当心硬件bug问题,专心于软件开发,等自己后期开发熟练时,开发板作用就略显鸡肋,但当自己需要测试某个功能时,直接拿块板出来就好了。
缺点:贵,嗯对,只有这个缺点。

综上:根据自己的水平以及经济能力而定,初学最好还是选择开发板,无需过多关注硬件bug,专心于应用开发上,资料的话,网上有各种开源资料,无需担心。而我使用的是stm32F4系列开发板。
 

stm32、ARM介绍及其联系

stm32字面意思
ST:意法半导体,是一个公司的名字。
M:Microelectronics的缩写,ARM公司的cortex-M内核
32:32bit的意思,表示这是一个32bit的微控制器。

ARM:Advanced RISC Machine
ARM是英国一家电子公司的名字
ARM敢为天下先,首创了chipless的生产模式,即该公司既不生产芯片,也不设计芯片,而是设计出高效的IP内核,授权给半导体公司使用。
ARM提供一系列内核、体系扩展、微处理器和系统芯片方案
ARM是一种通用的32位RISC处理器
ARM是一种功耗很低的高性能处理器

ARM处理器的特点:
体积小、低功耗、低成本、高性能;
支持 Thumb(16位)和ARM(32位)双指令集;
大量使用寄存器,指令执行速度更快;
大多数数据操作都在寄存器中完成;
寻址方式灵活简单,执行效率高;
指令长度固定;
对操作系统的支持广泛。

ARM内核分类:Cortex-A、Cortex-R、Cortex-M
ARM Cortex™-A 系列为应用型处理器
ARM在Cortex-A系列处理器大体上可以排序为:Cortex-A77处理器、Cortex-A73处理器、Cortex-A57处理器、Cortex-A53处理器、Cortex-A15处理器、Cortex-A9处理器、Cortex-A8处理器、Cortex-A7处理器、Cortex-A5处理器、ARM11处理器、ARM9处理器、ARM7处理器
Cortex-A15、Cortex-A9、Cortex-A8处理器和高效的Cortex-A7和Cortex-A5处理器均共享同一架构,因此具有完全的应用兼容性,支持传统的 ARM、Thumb指令集和新增的高性能紧凑型Thumb-2指令集。
产品:手机、平板、电视、智能音箱等
 
ARM Cortex-R为实时处理器(响应速度)
要求可靠性、高可用性、容错功能、可维护性和实时响应的嵌入式系统提供高性能计算解决方案。
高性能:与高时钟频率相结合的快速处理能力
实时:处理能力在所有场合都符合硬实时限制
安全:具有高容错能力的可靠且可信的系统
经济:可实现最佳性能、功耗和面积的功能。
产品:汽车制动系统、飞机、火箭。
 
ARM Cortex™-M为面向微控制器
处理器系列是一系列可向上兼容的高能效、易于使用的处理器,帮助开发人员满足将来的嵌入式应用的需要。用更低的成本提供更多功能、不断增加连接、改善代码重用和提高能效。
功耗更低、代码更小、使用更方便、更具产品竞争力。
Cortex-M 系列针对成本和功耗敏感的MCU和终端应用(如智能测量、人机接口设备、汽车和工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。
Cortex-M系列细分为M0、M3、M4、M7和超低功耗的M0+
产品:3D打印机、无人机、智能手环、机器人、平衡车等。

stm32命名规则

截至2010年7月1日,市面流通的型号有:
基本型:STM32F101R6、STM32F101C8、STM32F101R8、STM32F101V8、STM32F101RB、STM32F101VB
增强型:STM32F103C8、STM32F103R8、STM32F103V8、STM32F103RB、STM32F103VB、 STM32F103VE、STM32F103ZE

以STM32F103RBT6这个型号的芯片为例:
初学stm32-基础知识及经典案例_第1张图片

stm32经典案例

案例1: 工程搭建及时钟参数修改.
案例2: 寄存器开发案例:点灯、流水灯、蜂鸣器.
案例3: 库函数开发案例:流水灯实现.
案例4: 库函数开发案例:EXTI按键中断.
案例5: 库函数开发案例:Systick滴答时钟定时.
案例6: 库函数开发案例:通用定时器的使用.
案例7: 库函数开发案例:PWM的应用-呼吸灯.
案例8: UART串口及蓝牙通信 控制开发板硬件.
案例9: 超声波传感器的应用.
案例10: 红外遥控器的应用.
案例11: DHT11传感器的应用.
案例12: 独立看门狗的应用.
案例13: RTC时钟的应用.
案例14: IIC详解及其应用.

你可能感兴趣的:(嵌入式,stm32,c语言)