STM32简介+stm32的16个年头发展现状+单片机高效学习方法

2023年 10月 12日 30.7k 0

STM32简介+stm32的16个年头发展现状+单片机高效学习方法

大家好,我是杰哥编程!!!
以下都是所有博客都会提到的关于st单片机历史的基本信息,我估计大家都看腻了
所以我会讲讲我目前知道的关于st公司除了这几款单片机型号资源以外的产品
让大家对st的产品有一些额外的认识
最后会面向小白讲讲入坑32如何学习!!!

欢迎关注我的Gitee仓库:gitee.com/wrj12138/em…

你印象中的STM32

什么是单片机?

单片机(Single-Chip Microcomputer)是一种集成电路芯片,把具有数据处理能力的中央处
理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功
能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成
到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。

STM系列单片机命名规则

ST -- 意法半导体

M -- Microelectronics 微电子

32 -- 总线宽度

1_32名称定义.png

STM32F103C8T6单片机简介

项目 介绍
内核 Cortex-M3
Flash 64K x 8bit
SRAM 20K x 8bit
GPIO 37个GPIO,分别为PA0-PA15、PBO-PB15、PC13-PC15、PDO-PD1
ADC 2个12bit ADC合计12路通道,外部通道: PAO到PA7+PBO到PB1内部通道: 温度传感器通道ADC Channel 16和内部参考电压通道ADC Channel 17
定时器/计数器 4个16bit定时器/计数器,分别为TIM1、TIM2、TIM3、TIM4TM1带死区插入,常用于产生PWM控制电机
看门狗定时器 2个看门狗定时器 (独立看门狗IWDG、窗口看门狗WWDG)
滴答定时器 1个24bit向下计数的滴答定时器systick
工作电压、温度 2V3.6V、-40°C85°C
通信串口 2 * IIC,2 * SPI,3 * USART,1 * CAN
系统时钟 内部8MHz时钟HSI最高可倍频到64MHZ,外部8MHZ时钟HSE最高可倍频到72MHZ

标准库与HAL库区别

  • 寄存器
    • 寄存器众多,需要经常翻阅芯片手册,费时费力;
    • 更大灵活性,可以随心所欲达到自己的目的;
    • 深入理解单片机的运行原理,知其然更知其所以然。
  • 标准库
    • 将寄存器底层操作都封装起来,提供一整套接口(API)供开发者调用
    • 每款芯片都编写了一份库文件,也就是工程文件里stm32F1xx…之类的;
    • 配置结构体变量成员就可以修改外设的配置寄存器,从而选择不同的功能;
    • 大大降低单片机开发难度,但是在不同芯片间不方便移植。
  • HAL库
    • ST公司目前主力推的开发方式,新的芯片已经不再提供标准库;
    • 为了实现在不同芯片之间移植代码;
    • 为了兼容所有芯片,导致代码量庞大,执行效率低下。

    STM32系列单片机发展史

    在中国,熟悉单片机的人士大多会听说过STM32。这是意法半导体(STMicroelectronics, 简称ST)的32位微控制器(MCU)家族,基于ARMCortex-M内核。

    除了众人熟知的f1、f4系列,嵌入式开发新手们貌似不知道目前stm32单片机家族已经发展到了哪些境界

    前几天我算了一下,stm32第一款单片机07年在国内公布诞生于北京现世至今23年,

    刚好到了传统文化里的16岁成年了 特此出一篇文章讲讲STM32系列单片机这些年已经发展了多少种类

    32发展经年史.jpg

    2007年:STM32诞生

    我们简单回顾一下STM32的发展历程。2007年,STM32首次亮相。这是业界首款搭载ARM Cortex-M3内核的32位MCU,采用180nm闪存工艺,配有128KB闪存和20KB RAM,运行主频为72MHz,在当时属于相当高的配置。历史证明,这是一款超级成功的产品。它不仅为STM32家族开辟了一条康庄大道,而且自身也成为了一款长盛不衰的产品,至今仍是许多中国工程师的首选。

    回顾这个时期的单片机市场本还是百花齐放、百家争鸣,但总体来说,还是势均力敌、一片祥和的。当时,物联网(Internet of Things,IoT)逐步进入人们的视野范围。随着它的发展,嵌入式领域对于高性能处理器的需求呈现爆发式增长。
    虽然8位CISC(复杂指令集)架构内核8051占据了半壁江山,但奈何其性能低下,寻址范围受限,已经难以适应更多的新兴应用领域。
    而32位架构微处理器内核凭借其极佳的执行效能,不仅能满足物联网对数据处理能力的要求,还能兼顾物联网的低功耗和高性能要求,斩获物联网市场的独家宠爱。
    在32位架构微处理器中,属ARM公司推出了面向各类嵌入式应用的微控制器核 Cortex-M内核受到市场青睐,Cortex-M之于32位MCU就如同8051之于8位MCU。
    而正是Cortex-M的出现,让ST公司看到了这个内核的强大之处——利用该内核设计了大放光芒的STM32,打破了曾经的单片机局面。

    2009年:STM32L1系列

    STM32L1系列是STM32的第一款,也是全球第一款超低功耗子系列,采用了Cortex-M3内核,并提供了多种不同的型号,以满足不同应用的需求。

    2010年:STM32F2系列

    2010年推出了第一款在高性能的基于90纳米工艺、120 MHz 的STM32F2产品线;
    STM32F2系列引入了更高性能的Cortex-M3处理器,以及更多的外设和存储器选项,使其适用于需要更多计算能力和存储空间的应用。

    2011年:STM32F4系列

    STM32F4系列将性能提升到了一个新的水平,采用了Cortex-M4内核,具备浮点运算单元(FPU),可用于高性能计算和数字信号处理应用。

    2012年:STM32F0系列

    STM32F0系列是STM32的低成本系列,适用于成本敏感的应用。它们采用了Cortex-M0内核,提供了足够的性能和外设来满足许多基本嵌入式需求。

    2014年:STM32F7系列

    全球第一款cortex-M7内核的单片机STM32F7,该系列引入了更多高级特性,包括更多的外设、更多的存储器和更高的性能,适用于要求高性能的应用。

    2016年:STM32H7系列

    STM32H7系列继续提高性能,采用了Cortex-M7内核,以及更多的外设和存储器。这些单片机通常用于高性能计算、图形处理和数字信号处理应用。

    2017年:STM32G0系列+STM32WB系列

    STM32G0系列是低功耗系列,旨在满足电池供电的应用需求。它们采用Cortex-M0+内核,提供了低功耗和高性能的平衡。

    STM32WB系列是针对物联网(IoT)应用的系列,具备双模式蓝牙(Bluetooth)和无线电(Wi-Fi)连接能力,以及Cortex-M4+M0异构双内核。

    2019年:STM32MP1系列

    STM32MP1系列不仅仅是微控制器,还具备了多核处理器,可用于高级嵌入式计算和Linux运行环境。

    2020年:STM32WL系列

    全球第一款板载Lora无线通信模块的片上单片机,同STM32WB系列服务于物联网应用。

    STM32新支持

    STM32 Trust

    这几年消费电子,国内信创,全球区块链技术的兴起对信息安全的发展起到很重要的作用,单片机的性能提升也使他们自己能在这些领域发挥自己的作用。

    所以设备变得越来越智能,连接性越来越强,这引起了更多的安全问题。如今,单片机开发面临着设计挑战,以确保其物联网设备的强大安全级别并保护设备完整性。

    政府和监管机构正在提高对物联网设备安全重要性的认识,并制定了高标准来简化该方法。

    嵌入式开发人员面临着新的挑战:

    • 在几个新的认证计划中遵守不同法规的必要性
    • 不断增加的可扩展性要求
    • 当今设备中使用的多个MCU开发框架和实时操作系统,这增加了安全性的复杂性
    • 缺乏安全专业知识和需要提高他们的技能,这需要时间和金钱

    芯片原厂们也考虑到这些问题,研发新支持,简化产品研发公司的开发流程:
    st公司做了以下:

    STM32Trust简化了您的安全方法。STM32 MCU和MPU将安全性置于开发人员和市场监管之间的中心。
    安全实施由意法半导体在安全保证的背景下开发,并符合安全方案。它们还旨在满足不同级别的行业标准的不同要求,以提供更大的可扩展性。
    STM32Trust解决方案为开发人员提供了强大的多级策略,以增强新产品设计的安全性。它基于我们的STM32微控制器和微处理器,结合我们的STSAFE安全元素。
    用一套12 种安全功能STM32Trust提供意法半导体和第三方的硬件、软件和设计服务,符合国家法规和安全标准对应用的新要求。
    

    STM32 AI

    工具

    STM32官网 AI训练构建自己的神经网络以及推理工具介绍使用

    stm32ai tool.png

    芯片板子

    STM32N6,首款带有NPU的MCU即将问世!?

    (md 其实已经说了好几年了 博主天天想着啥时候可以买 实际产品一直没推出来),

    官网23年4月新发博客可以看看,看文章意思应该是可以申请云测试:

    STM32官网 AI开发板已经在云测试

    stm32N6.png

    扯远了(其实是写博客写累了哈哈哈哈哈哈)

    32该怎么学???

    入坑STM32后,我们应该如何学习?

    如今,STM32堪称爆火,并且潜力无穷。所以,有很多人都在学STM32。

    但STM32对入门者可能不是特别友好,因为知识很多,但是对于有一定开发经验的人来说,就是一把好兵器,它能帮你大大缩短开发周期。

    那应该如何入坑STM32呢?

    我觉得大学生时实验室里一脉相传的STM32学习方法挺不错的,分享给大家。如果你能适应这种学习路线,那么轻松上手STM32绝对没问题!

    下面具体说说:

    (1)根据时间表定时定量学习

    大学时期,都有实验室的学长学姐带你入门,安排任务。

    比如,基本任务是一周内学完搭好环境、熟悉调试软件,结合《STM32Fxxx参考手册》、《STM32固件库使用手册》和光盘视频,实现基本篇的GPIO应用。

    (2)举一反三,并通过阶段任务检查学习效果

    在你学习例程时,你可以尝试修改该例程的外设配置,达到举一反三的效果。

    每一周,学长学姐会根据你的学习进度,安排给你一个阶段任务,用来检查你的学习效果。

    如果你是自学,那么可以根据网上教程和各大资源网站上的“STM32入门小项目合集”,主动给自己找一个小项目,把它实现出来。

    这里我推荐具备项目驱动型的单片机课程资源,以实现有趣的项目为目的,更能激发大学生的学习兴趣,毕竟是大学生自己的单片机课让我对STM32充满激情

    (3)基本外设、功能会用就行,后期需要什么再去针对性地学

    按部就班地把STM32知识从头到尾系统性地学习完,固然很好。但是,你要知道学习单片机只是为了解决问题,我们只要在遇到问题时,能够通过STM32解决就行。

    因此,当你把基本外设、功能都差不多掌握了,程序能跑起来,并且也知道哪里可以修改、修改成什么就已经基本入门了。

    此后,你可以通过一些大大小小项目,巩固理解和探索新功能,你的经验也随之增加。

    (4)学好C语言,如果在大一大二期间就掌握以上内容,可以学着画PCB制板、焊接 甚至深入学习armlinux

    软件和硬件都要两手抓。

    C语言对于STM32的学习至关重要,C语言不好,还跑什么代码?

    学会画板子、焊板子,这样有什么需求,都可以自己添加。

    当然,上面的建议都是给0基础的STM32入门者,若是你有一定基础,那当然是对症下药,哪里不会补哪里。

    学海无涯,勇于探索新技术

    相关文章

    服务器端口转发,带你了解服务器端口转发
    服务器开放端口,服务器开放端口的步骤
    产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
    如何使用 WinGet 下载 Microsoft Store 应用
    百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
    百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

    发布评论