stm32比51强多少,51单片机和STM32相比还有优势吗
来源:整理 编辑:亚灵电子网 2023-05-02 20:06:53
1,51单片机和STM32相比还有优势吗

2,stm32和51单片机的区别
stm32和51单片机的区别:1.不同的开发方式51单片机一般直接操作寄存器,STM32主操作库函数编程。2.系统资源不同一般来说,STM32的资源比51单片机多。3.开发环境可能不同一般来说,51和STM32都可以在KEIL下开发,但是STM32的选择更多,可以在Linux、windows esplease,甚至vscode+插件模式下开发。4.操作系统差异一般来说,51单片机不支持操作系统,STM32支持各种主流操作系统,STM32更容易开发,可以很方便的使用系统实现各种场景的应用。由于51单片机没有操作系统,其发展存在一定的障碍,有时不得不牺牲一些功能来实现整体功能的和谐运行。

3,51处理器与stm32处理器的异同点
要vip 我不是vip所以具体怎么处理我不知道咯,抱歉
4,STM32比51单片机有什么优点
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M3内核。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。包括新的互连型系列在内的STM32系列微控制器具有多种配套软件和开发工具,其中包括意法半导体免费提供的软件库以及第三方工具厂商的广泛支持。意法半导体还将推出一个新的评估板,目前正在向大客户提供STM32F105和STM32F107互连型系列的样片stm32的运算速度大约是51单片机的几十倍吧而且外围接口功能比51强大太多。。可以这么STM32是最先进的技术而51是好几十年前的东西虽然用的还是不少。但是内核已经天地之别。
5,STM32比51单片机有什么优点STM32难学不
当然是功能更强大啦。。速度也快了很多。。stm32里面的寄存器很多。内容比51多了好几个级别,当然!作用和功能也多了很多个级别。。stm32属于arm内核的一个版本,比传统的51单片机高级多了,有很多资源是51不具备的,如usb控制器。而且已经废除了机器周期什么的,速度不是51能比的
6,同一个项目分别用stm32和51单片机会有什么不同
李工的经验,有如下几点不同,希望你供你参考。 1.51是8位单片机,而stm32是32位单片机。时钟方面stm32运行频率更高,性能更好。两种单片机性能差别比较大。 2.片上资源不一样。简单讲stm32单片机外设丰富,比如串口,I2c等。stm32单片机片上flash和RAM更大。以后升级功能,改进功能的空间大。如果考虑以后功能升级,建议考虑stm32. 3.成本上应该是51单片机要便宜一些。 4.stm32单片机开发资料和参考程序比较多,有库函数,应用起来方便。51单片机更多直接操作寄存器,开发不方便。 我是北漂李工,一个北漂8年的程序员。 在项目开发过程中,我们经常会遇到需要单片机选型,所以我们常常会根据项目功能需求来选择合适的单片机品牌和型号。常见的51内核单片机和STM32单片机也会是我们主要考虑的型号。 STM32与51单片机的参数差异 STM32与51单片机软件开发难度差异 STM32使用寄存器比51单片机要多很多,其配置比51复杂,而且中断逻辑,时钟配置使能控制等很多概念都是51单片机中所没有的,再加上stm32很多功能如USB,FSMC。等等功能,其功能更加强大,虽然官方提供了开发固件库和相关开发辅助工具,但很多时候,遇到bug调试难度也加大了很多。 stm32固件库很多实用结构体和指针变量,很多在51单片机开发过程不太注重结构体与指针的使用,那么在STM32开发过程中,就难以理解其固件库的运用逻辑。 STM32与51单片机的性价比差异 STM32比51处理速度快,外设功能丰富强大,所以价格普遍比51单片机偏贵,在项目选型过程中,需要根据项目功能需求,选择合适的单片机,如果是51单片机能用,那么考虑项目成本,肯定是不能选择STM32,如果51单片机不能用,即使再便宜,也用不了。 总之, 作为单片机开发工程师,需要能够进行一定的器件选型能力,这个也是必备的专业技能。 搞多了开发,你会发现其实用什么真的不重要,只要你会用就行。单片机好比一个精密机床,你要想加工一件作品,你用任何品牌的机床都可以,关键点是这个机床你会不会用,了解通透程度如何。不同品牌机床操作方法肯定大同小异,不会差别很多,你会用一种,另外一种不用看手册,也能猜出个七八分。机床这样,编程也是这样,给你个51,你应该能控制全世界。 首先如果同一个项目可以用51和STM32同时开发,就不建议使用STM32了,51成本更低。 STM32和51单片机不同点有很多: 1.开发方式不同 51单片机一般是直接操作寄存器,STM32主要操作库函数编程 2.系统资源不同 一般而言STM32资源要比51单片机更多 3.开发环境可能不同 51和STM32一般来讲都可以在Keil下开发,但STM32有更多中选择,可以在Linux下面开发,windows Esplise下开发,甚至直接用VSCode + 插件方式开发。 4.操作系统区别 一般而言,51单片机不支持操作系统,STM32支持各种主流操作系统,STM32开发起来更容易,可以很方便的利用系统实现各种场景下的应用,51单片机由于没有操作系统,开发起来有一定阻碍,甚至有时候必须要做出部分功能的牺牲才能达到整体功能的和谐运行。 5.后期维护方式可能不同 STM32资源足够多,可以写一个bootloader程序来完成之后的系统升级工作,不需要拆机就可以完成固件的升级,而51单片机则不可以。 STM32系列单片机分为CORTEX M0,M1,M4内核,个人觉得STM32F0系列的从性价比,功能上可以完全替代51单片机,而且性能更好。当然也可以使用51,价格更便宜一些,,但是要做功能复杂一些的产品,51系列的单片机是不能满足的,比如驱动RGB 屏,至少要用STM32F429,支持LTDC接口,而且需要外扩内存,支持FMC接口,比如要做数字音频,要支持I2S ,比如要做USB传输,要支持USB ,要移植操作系统,文件系统等等,要看CPU 的资源等等,总之,要根据所做的项目看CPU的资源是否满足要求是非常重要的,这要再设计前期靠考虑周到,否则,项目做到一半发现资源不够,需要重来是很郁闷的事情。 做产品要考虑成本,几毛钱就能搞定的,没必要几块甚至几十块。一般来讲,价格越贵的,资源越多,使用起来越简单,随心所欲。简而言之,价格越低,资源越少的单片机,完成项目的难度越大,需要优化代码和算法。 在stm32之前是8051的天下,silabs的c8051f外设相当的强大。硬件不错,可惜代码不够多。atmel的代码比较多,可惜芯片不够强大。 stm32一出,横扫天下,要硬件有硬件,要软件有软件,价格便宜量又足,连低端产品都用他。 电动自行车控制器都用它,无刷电机都用它。 stm32是史上最广泛使用的单片机。 只要资源够用,都可以,20年前我用8051,现在用stm32。stm32方便些,可以在线调试。我现在开发东西复杂一点的,用stm32 1系列和4系列。简单一点的用stm8s一块多钱的样子。 我觉得你的问题对比对象不太对,一般能用51的项目用stm8或者avr即可。一般来说stm32比51强太多了,无论是性能和价格都没有可比性。 所以在我看来开发上没有什么太大不同,无非就是开发环境不一样,如果代码规范的话很容易进行互相移植(最近芯片涨价严重,我们公司正在换国产),而所谓的外设(uart iic spi等等)其实没有太大区别。 但是在生产上差别就出来了,主要在于交货能力,一般而言同为一级代理采购物料,st的交货能力要比stc的强(当然最近行情st也不行了,交期干到了9月份)。所以如果你的产品是主力长期货,建议选择交货能力强的。 我就记得51单片机放不了几个变量就超出了。复杂点的程序都很难写。
7,STM32比STC51速度快多少
以51单片机12MHZ时钟和STM32用72MHZ主频来说,大概快了60多倍stm32属于arm内核的一个版本,比传统的51单片机高级多了,有很多资源是51不具备的,如usb控制器。而且已经废除了机器周期什么的,速度不是51能比的。单片机,通常指的就是8位单片机,比如51等,stm32是属于32位机,应该算是arm系列了,其实还是单片机,只不过要比8位单片机处理速度要快,功能要强,集成的资源也更丰富,其次就是编程的模式有改变,单片机通常直接对硬件资源进行操作,而stm32是在厂家提供的库上进行程序开发了。51单片机是8位微控制器。stm32,与51属于微控制器范畴,单片集成多种用于控制,通信,存储的外设。系统在程序的控制下执行。stm32运算速度、存储容量远高于51单片机。如果指的是经典的那几款型号,STM32主要凑从两个方面的速度优势。一是构架,STM32是哈弗构架,51是冯诺依曼结构,STM32每次执行一个命令需要一个时钟时钟周期,51就需要3个周期。二是主频,STM32典型的是72M,51是12M。所以从这两点来说STM32比51快18倍,另外STM32作为后来者还有其他方面的优化,速度会更快。
8,stm32和stc51的区别原创
STM32属于arm内核的一个版本,比传统的51单片机高级多了,有很多资源是51不具备的,如usb控制器。而且已经废除了机器周期什么的,速度不是51能比的。单片机,通常指的就是8位单片机,比如51等,stm32是属于32位机,应该算是arm系列了,其实还是单片机,只不过要比8位单片机处理速度要快,功能要强,集成的资源也更丰富,其次就是编程的模式有改变,单片机通常直接对硬件资源进行操作,而stm32是在厂家提供的库上进行程序开发了。51单片机是8位微控制器。STM32,与51属于微控制器范畴,单片集成多种用于控制,通信,存储的外设。系统在程序的控制下执行。STm32运算速度、存储容量远高于51单片机。STC51是STC公司推出的以MCS-51为内核的单片机的。和AT89C51基本一致,但是可以通过串口直接烧写所以被广泛使用。MCS-51是入门级一款很经典的MCU,特点就是简单,所以在教学时大量采用。但是因为是70年代的芯片,设计和资源上在现在来看已经严重不足了。STM32是基于ARM公司最新一代cortex-M内核的芯片,意法半导体(ST)公司推出的,因为其超高的性价比和简单函数库编程方式,而广泛采用。STM32系列几乎集成了所有工控领域的所有功能模块,包括USB、网络、SD卡、AD、DA等等。主频72M。stc为8 位机 速度20多M 功能少而简单存储空间也小!stm32 为32位机 速度72M或168M,功能多,引脚多,存储空间大!处理一个长整型,stm比stc快几十倍!stm32更高级,32位的,而且编程可以用寄存器,但更可以用官方提供的库函数,比较方便,是趋势!!!望采纳!!!对于stc51和stm32,简单有简单的好处,复杂有复杂的用途。并不能完全说哪个更好,怎么也是单片机吗,能好过最新的CPU之类的吗?由其对于一些简单的任务,比如读取温度传感器的数据,显示到一个小小的屏幕上,这个你要用stm32来做,是不是太大才小用了。适合就好,哪怕是末来,在大量的小的,不需要运算力多大的地方,8位机,还是大有用处。
9,stm32跟普通的51单片机在程序编写方面有什么区别
1、库函数不同。由ST厂商推出的STM32系列单片机,ST厂商给了丰富的函数库,可以直接使用库函数,所以比起普通的51单片机在程序编写方面要更加的省时。2、运行速度不同。普通的51单片机运行速度较慢,特别是双数据指针,而STM32系列单片机最高工作频率可达72MHz。3、便利程度不同。51单片机的任何器件只需要配置寄存器打开就可以进行编程,而STM32系列单片机则需要先打开对应的时钟,包括开启后打开外部时钟(晶振)才开始工作。4、资源不同。STM32的内部资源(寄存器和外设功能)较普通的51单片机都要多,基本上接近于计算机的CPU了,所以在程序编写上能有更多的选择。5、编程语言选择不同。STM32基本不会选择汇编语言了,因为工程量巨大,寄存器太多了,位数也多,而51单片机则多使用汇编语言。至于C语言编程方面的区别就不大了。参考资料来源:搜狗百科-stm32参考资料来源:搜狗百科-51单片机库有很大不同,stm有非常庞大的类库,而且就建个工程stm也是很复杂stm32 是后来出现的升级版单片机 性能更强 资源更多 功耗更低,如果是最原始的 看芯片手册寄存器 编程那么没差别,只是stm32的 芯片寄存器比51多十几倍,因为功能多 寄存器当然就多, 但是 st公司也想到这个问题了,所以 stm32 意法半导体 公司有官方的 HAL 库,这个库封装了大量底层的 寄存器操作,吧一系列操作封装为一个个 的 接口函数, 编程直接调用库函数就很简单你,比如你 开启串口 如果用寄存器编程你要一步一步 设置每个关于串口的寄存器,设置时钟等等,估计需要一百多行代码,但是 库函数就调用两个函数就行了 一个 初始化函数 一个设置使能函数就完事了, 两行 最多三时行 对新手很友好,以为串口这么简单 那ing个函数就可以串口通信了。其实是 HAL 库函数 封装了一系列的 串口寄存器操作以C进行"操作"时并无明显区别, 使用上并无大变化. 唯单片机核心架构不同, 故其Register控制方式不同, 会有些差异, 多是因为在硬件架构所致.例如: 中断上的操作比单纯的bit控制, 多上一些复杂度; boot起始位置也具备变化性; IO设置与51的直接输出控制稍有不同, 多了些设置; 其他则需要个别依照所用到的部分, 逐一查阅文件.stm32和51单片机相比,代码效率高(32位包含信息量大,多数指令一个字节搞定)、执行速度快(72MHz系统时钟不是盖的)、功能强大(外设丰富、管脚多、管脚功能可重映射),优点多多。编程的区别,stm32基本别比划汇编了,能把脑袋搞大大滴,寄存器太多了,位数也多,我一直搞51汇编也放弃了。C语言编程区别就不大了,况且stm32在国内技术支持很到位,资料丰富(关键是不但有E文,中文资料翻译的也多),还有完整的库函数支持,从51转过去没太大困难。有51相似电路的程序,移植的话好多都不用改的,只是针对寄存器、IO口、中断等的修改,软件流程、控制逻辑基本不用改。说了一大堆,不是说stm32有多好学,还是有点难度,但比起它的优越来,付出是值得的。希望对你有所帮助。51主要是调用寄存器,而32里面的寄存器太多,商家就把它封装成了很多库函数,你只用调用库函数就行了。这是其最大区别。
10,51PICAVRSTM32单片机
精通STM32F4完整版电子书免费下载链接: https://pan.baidu.com/s/1HvsswhlYzF5NbaYQmComig精通STM32F4 库函数版_张洋,刘军,左忠凯编著_北京:北京航空航天大学出版社_2015.04_P607_试读版 PDF电子书下载 带索引书签目录.pdf11.65M 来自:百度网盘提取码: 1y61复制提取码跳转 提取码: 1y61《精通STM32F4(库函数版)》由浅入深,带领读者学习STM32F407的各个功能。本书总共分为3篇:第一篇为硬件篇,主要介绍本书的实验平台;第二篇为软件篇,主要介绍STM32F4常用开发软件的使用以及一些下载调试的技巧,并详细介绍几个常用的系统文件(程序);第三篇为实战篇,通过41个实例带领读者一步步深入了解STM32F4。本书可配套ALIENTEK 探索者STM32F4开发板学习使用,配套资料里面包含详细原理图以及所有实例的完整代码。这些代码都有详细的注释,并且所有源码都已经经过严格测试,不会有任何警告和错误。另外,源码有生成好的hex文件,读者只需要通过串口/仿真器下载到开发板即可看到实验现象,亲自体验实验过程。STM32吧!首先,无论性能和资源STM都完胜其它类型的单片机,其低端配置的STM32F1系列或STM8系列在性价比上比传统的51更有优势,大有取代51的趋势;其次,就个人了解,目前大多公司的产品应用中,stm32以无可争议的成为了新宠。此外,STM32f4系列控制器集成了大多单片机所不具有的单周期DSP指令和FPU(floating point unit,浮点单元),再加上168Mhz的工作频率、1M的FLASH存容量,足以满足中、高端的单片机应用场合。若你没有单片机经验,我强烈建议你学习51单片机,把它学透,做几个实实在在的项目,你在学习其他的单片机,两个星期基本就能掌握一种单片机。51的市场占有率是最高的,当然STM32在国内也是近几年流行起来的,性价比有目共睹,无需多说,应用也很广,主打中偏高档,C语言要学好,不然是硬伤。一句:建议你先玩转51,其他的都会信手拈来。遗憾没用过PIC,其它单片机都开发过项目。51最老,用得人最多,价格最便宜,资料丰富,性能差点。你可以去看看STC的单片机,很不错。avr不错,前几年很火,但是atmel货源经常出现问题,价格也贵,国内开发的人有少的趋势。stm32单片机现在火啊,中高低通吃,就是主要基于arm的,难度会大点。pic没用过,不了解,据说抗干扰性不错,很多家电上用,价格不便宜。有一款要和msp430比功耗 。顺便提一下msp430,很有特色的单片机,功耗最低,非常适合一些节电和精确定时场合的应用。其实单片机入门之后都差不多,只不过用法上不同罢了,精通一两种就可以了。目前推荐你学STM32。和你顺序差不多,我是先学c8051fxxx,然后在学arm9(2440),中间弄了一段的stm32。个人感觉他们之间貌似没什么太大的关系,51以及51兼容的大多c编程简单,简单到基本上能看到的程序都用的c知识比较少,avr强点,(没用过,貌似性能和c8051f系列的差不多~~~)但还是那些老套路,配寄存器,写函数什么的(当然不嫌麻烦还能挂个μcos什么的,片子那么慢再加上刚刚接触,不好用~)~~stm32也可以这么干,但大多数人貌似还是用库编程~~个人感觉你要是c语言还不错可以不弄51,直接stm32,这是个改变编程习惯的片子呀~~arm嘛,要是把他当单片机用,到和之前的差不多,但是要是挂系统,基本上和前面的那些又没什么关系了,你要弄的是了解各种结构体,各种该死的协议,不过习惯了就好了~~~至于arm和dsp结合~~我认为,你要是真想把arm学好,就别弄得太复杂,在弄dsp,那样你学什么都学不精,再说貌似fpga+dsp才是主流方案吧~~ 至于fpga大学才几年呀,弄那么多点多混乱呀,一点也不精~~~
文章TAG:
stm32比51强多少stm32 多少 单片机