分享本文,简单分析STM32与51单片机的区别与取舍之处。

单片微型计算机简称单片机,简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入输出设备(串口、并口等)和中断系统处于同一芯片的器件,在我们自己的个人电脑中,CPU、RAM、ROM、I/O这些都是单独的芯片,然后这些芯片被安装在一个主板上,这样就构成了我们的PC主板,进而组装成电脑,而单片机只是将这所有的集中在了一个芯片上而已。

51单片机

应用最广泛的8位单片机当然也是初学者们最容易上手学习的单片机,最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“经典”,为以后的其它单片机的发展奠定了基础。

51单片机特性

51单片机之所以成为经典,成为易上手的单片机主要有以下特点:

从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。

同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便。

乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。

51单片机缺点

  • AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担

  • 虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋

  • 运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利

  • 51保护能力很差,很容易烧坏芯片


51单片机应用范围

目前在教学场合和对性能要求不高的场合大量被采用,使用最多的器件是8051、80C51。


STM32单片机

由ST厂商推出的STM32系列单片机,行业的朋友都知道,这是一款性价比超高的系列单片机,应该没有之一,功能及其强大。其基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核,同时具有一流的外设:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,在功耗和集成度方面也有不俗的表现,当然和MSP430的功耗比起来是稍微逊色的一些,但这并不影响工程师们对它的热捧程度。


STM32单片机特性

由STM32简单的结构和易用的工具再配合其强大的功能在行业中赫赫有名,其强大的功能主要表现在:

  • 内核:ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法

  • 存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器

  • 时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶振。内嵌出厂前调校的8MHz RC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振

  • 调试模式:串行调试(SWD)和JTAG接口。最多高达112个的快速I/O端口、最多多达11个定时器、最多多达13个通信接口。

    STM32使用最多的器件:

  • STM32F103系列

  • STM32 L1系列

  • STM32W系列

51单片机和STM32单片机的区别

51单片机是对所有兼容Intel8031指令系统的单片机的统称,这一系列的单片机的始祖是Intel的8031单片机,后来随着flash ROM技术的发展,8031单片机取得了长足的进展成为了应用最广泛的8bit单片机之一,他的代表型号就是ATMEL公司的AT89系列。

STM32单片机则是ST(意法半导体)公司使用arm公司的cortex-M3为核心生产的32bit系列的单片机,他的内部资源(寄存器和外设功能)较8051、AVR和PIC都要多的多,基本上接近于计算机的CPU了,适用于手机、路由器等等。

简单分析STM32和51的区别相关推荐

  1. STM32单片机和51单片机区别

    单片机简介 单片微型计算机简称单片机,简单来说就是集CPU(运算.控制).RAM(数据存储-内存).ROM(程序存储).输入输出设备(串口.并口等)和中断系统处于同一芯片的器件,在我们自己的个人电脑中 ...

  2. stm32和51单片机的区别,先学51还是先学stm32?

    之前无际在网上看了一些老工程师给初学者的一些建议. 其中一个就是新手可不可以直接跳过51单片机学习stm32. 很多老鸟教唆初学者说51已经过时了,建议直接学stm32单片机. 如果新手信了他的邪,能 ...

  3. STM32和51单片机有什么区别

    在项目开发过程中,我们经常会遇到单片机选型的需要,所以我们往往会根据项目的功能需求选择合适的品牌和型号.常见的51单片机和STM32单片机也将是我们主要考虑的机型. STM32和51单片机参数区别 核 ...

  4. x264源代码简单分析:x264_slice_write()

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

  5. x264源代码简单分析:x264命令行工具(x264.exe)

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

  6. FFmpeg的H.264解码器源代码简单分析:宏块解码(Decode)部分-帧间宏块(Inter)

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

  7. FFmpeg源代码简单分析:makefile

    ===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...

  8. x264源代码简单分析:编码器主干部分-1

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

  9. FFmpeg的H.264解码器源代码简单分析:宏块解码(Decode)部分-帧间宏块(Inter)...

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

最新文章

  1. 来聊聊可形变卷积及其应用
  2. PHP对请求时间范围条件的判断
  3. wp7 通过后台代码给ListBoxItem添加ContextMenu 属性
  4. WordPress主题-果核剥壳站长开发CorePress v2.6
  5. ML《集成学习(四)Boosting之回归树、提升树和GBDT》
  6. 由HEAP Corruption DETECTED查到的
  7. datetime-local 传时间戳_传世经典,此生必读——《呼兰河传》
  8. 将代码部署到 GitHub Pages 的快速简易方法
  9. IAP测试购买失败,Error Domain=SKErrorDomain Code=0 无法连接到 iTunes Store
  10. 基于遗传算法的TSP算法
  11. vbs格式编程教程基础
  12. 高通手机 进入 高通9008模式
  13. Linux shell下的颜色含义
  14. Google pixel 原生安卓出现 WiFi 网络受限、优化网速、网络无法连接问题
  15. RT-Thread源码-__rt_ffs函数剖析
  16. 积目服务器维护,搭建经济高效的制作网络服务器群试验平台
  17. Linux常用过滤命令之grep命令的使用
  18. AddressBook 地址簿 (电话簿) 访问与修改
  19. 致敬博士-博士学位真的那么重要吗
  20. 2003系统 金碟服务器设置,金蝶K3软件系统在Win2003环境的设置指南

热门文章

  1. 剖析Docker Swarm和Mesos:是什么?如何结合?有什么优势?
  2. PE文件RV转FOA及FOA转RVA
  3. 演示:两台交换机成环后的STP计算原则
  4. solaris下用户不能正常登录CDE界面的解决办法
  5. 用matlab简单电路模型,基于MATLAB的电路模型仿真应用
  6. jenkins日志乱码linux,Jenkins控制台中乱码问题解决
  7. rabbitmq接口异常函数方法_RabbitMQ监控(三):监控队列状态
  8. 【python】有意思的python小项目GitHub地址汇总
  9. Zookeeper的简介及命令行操作
  10. 本地音频播放,使用AVFoundation.framework中的AVAudioPlayer来实现