更多课程 选择中心

嵌入式培训
美国上市教育机构

400-111-8989

嵌入式培训

嵌入式学习中STM32编程与51编程有什么区别?

  • 发布:嵌入式培训
  • 来源:嵌入式教程
  • 时间:2020-02-13 15:39

单片机是指一个集成在一块芯片上的完整计算机系统。尽管它的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。我们说的51一般是指51系列的单片机,型号有很多,常见的有STC89C51、AT89S51,其中国内用的最多的是STC89C51/2,下面我们就以STC89C51来讲解,并以51简称。

随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。其中ST公司的32位微处理器STM32系列占据了大量的市场份额。

那么作为开发者在开发51系列单片机与stm32系列单片机时存在什么样的差异性呢,下边来讨论下。

(1)编程语言:

由于51单片机结构相对简单,所以通常多使用汇编语言和C语言编程。

而STM32系列的开发工作不会采用汇编语言因为工程量巨大,寄存器太多了,位数也多。

(2)编程方式:

51单片机的任何器件只需要配置寄存器打开就可以进行编程,而STM32系列单片机则需要先打开对应的时钟,包括开启后打开外部时钟(晶振)才开始工作。

库函数不同。由ST厂商推出的STM32系列单片机,ST厂商给了丰富的函数库,可以直接使用库函数,所以比起普通的51单片机在程序编写方面要更加的省时。

(3)资源不同:

资源不同。STM32的内部资源(寄存器和外设功能)较普通的51单片机都要多,基本上接近于计算机的CPU了,所以在程序编写上能有更多的选择。

通过上边的对比可以看到,虽然可以使用相同的编程语言进行程序编写,但是在编程方式和编程的快捷程度上均是STM32比较优秀。

无论是51系列还STM32系列,都同属于单片机,可以说STM32系列是51系列的继任者,随着现在技术发展,对硬件的拓展性和处理能力上有了更高的要求。STM32无论是内核部分还是总线宽度;无论是速度、功耗、外设都比51系列强大。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:嵌入式工程师必要知道的I2C硬件问题解决办法?
下一篇:学习嵌入式中编写C语言有哪些技巧?

如何编写嵌入式Linux设备驱动程序?

嵌入式软件工程师必须会的五道面试题?

搞嵌入式应用层开发要学习什么?看这里

ARM 是如何构架的很多人还不清楚

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省