今天本文简单分析STM32与51单片机的区别与取舍之处。
一、STM32
由ST厂商推出的STM32系列单片机,行业的朋友都知道,这是一款性价比超高的系列单片机,应该没有之一,功能及其强大。其基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核;同时具有一流的外设,1μs的双12位ADC,4Mbit/秒的UART,18Mbit/秒的SPI等。
在功耗和集成度方面也有不俗的表现,当然和MSP430的功耗比起来是稍微逊色的一些,但这并不影响工程师们对它的热捧程度。
由于其简单的结构和易用的工具,再配合其强大的功能,在行业中赫赫有名。
STM32系列专为要求高性能、低成本、低功耗的嵌入式应用设计的ARM Cortex?-M0,M0+,M3, M4和M7内核。
1、按内核架构分为不同产品:
主流产品(STM32F0、STM32F1、STM32F3)
超低功耗产品(STM32L0、STM32L1、STM32L4、STM32L4+)
高性能产品(STM32F2、STM32F4、STM32F7、STM32H7)
2、STM32单片机的特性
(1)内核:ARM 32位Cortex-M3 CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法。
(2)存储器:片上集成32-512KB的Flash存储器,6-64KB的SRAM存储器。
(3)时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压,POR、PDR和可编程的电压探测器(PVD),4-16MHz的晶振,内嵌出厂前调校的8MHz RC振荡电路,内部40 kHz的RC振荡电路,用于CPU时钟的PLL,带校准用于RTC的32kHz的晶振。
(4)调试模式:串行调试(SWD)和JTAG接口,最多高达112个的快速I/O端口、最多多达11个定时器、最多多达13个通信接口。
3、STM32常用的器件
目前,使用最多的器件是STM32F103系列、STM32 L1系列、STM32W系列。
单片微型计算机简称单片机,简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入输出设备(串口、并口等)和中断系统处于同一芯片的器件,在我们自己的个人电脑中,CPU、RAM、ROM、I/O这些都是单独的芯片,然后这些芯片被安装在一个主板上,这样就构成了我们的PC主板,进而组装成电脑,而单片机只是将这所有的集中在了一个芯片上而已。
二、51单片机
应用最广泛的8位单片机,当然也是初学者们最容易上手学习的单片机。最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“经典”,为以后的其它单片机的发展奠定了基础。
1、主要产品
Intel(英特尔):80C31、80C51、87C51,80C32、80C52、87C52等;
ATMEL(艾德梅尔):89C51、89C52、89C2051,89S51(RC),89S52(RC)等
Philips(飞利浦)、华邦、Dallas(达拉斯)、Siemens(西门子)等公司的许多产品
STC(国产宏晶)单片机:89c51、89c52、89c516、90c516等众多品牌
2、51单片机的特性
51单片机之所以成为经典,成为易上手的单片机主要有以下特点:
从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。
同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便。
乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘法功能,做乘法时还得编上一段子程序调用,十分不便。
3、51单片机的缺点
(1)AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担。
(2)虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋。
(3)运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利。
(4)51保护能力很差,很容易烧坏芯片。
4、51单片机的应用范围
目前在教学场合和对性能要求不高的场合大量被采用,而使用最多的器件是8051、80C51。
三、51单片机和STM32的区别
51单片机和STM32区别在以下几点:
内核
51单片机采用的是51 Core,8Bit@2MHzMax(分频后),0.06DMIPS;
STM32采用的是ARM Cortex-M3,32Bit@72MHz ,1.25DMIPS;
地址空间
51单片机只有64KB;
STM32有4GB;
片上储存器
51单片机ROM只有2K-64K,RAM仅为128B-1K;
STM32的ROM为20K-1MB,RAM有8K-256K?
外设
51单片机仅有三个定时器和一个串口;
STM32却拥有AD,DA,Timer,WWDG,IWDG,CRC,DMA,IIC,SPI,USART等众多外设。
开发工具
51单片机采用的是早期的UV2;
STM32使用的是UV4,甚至更高;
操作系统
51单片机连RTOS都很难能跑;
STM32采用的是uClinux,uC/OS。