立即注册 登录
一牛网 返回首页

xy123456的个人空间 http://bbs.16rd.com/?92285 [收藏] [复制] [RSS]

日志

微控制器是什么 主要类型有哪些

热度 1已有 385 次阅读2019-8-16 16:28 |系统分类:基础知识| 控制器

使用电阻器,电容器,晶体管和运算放大器的构建电路只能发展至此,因为它们通常是模拟电路。即使使用分立逻辑芯片构建的数字电路也会很快变得过大和复杂!在过去,离散逻辑芯片之后的下一步是构建具有CPU,内存和IO设备的定制计算机。然而,这样的壮举不应该轻易尝试,因为它们通常很容易出错!值得庆幸的是,MICrochip,Intel和Atmel等多家制造商发明了一种称为微处理器的设备。但什么是微处理器以及它们如何在项目中使用?

微处理器是单一的包含CPU,内存(RAM和rom)和IO硬件的芯片。这种芯片通常包含许多输入和输出引脚,允许您将它们连接到许多不同类型的电路,包括模拟和数字电路。与台式计算机不同,大多数微处理器功能不多,内存有限,但在项目中非常小巧且易于实现。
许多微控制器都有DIP-8封装。

下表显示了针对常见微控制器的计算机的典型特征(例如PIC范围)。

微控制器类型
业余爱好者和制造商最常用的类型有哪些。

PIC - Microchip
PIC单片机可能是最实用的芯片之一,具有个人和商业功能。这些器件使用5到6个引脚,可以使用微芯片提供的众多编程器之一进行编程。最容易使用的是PICKIT3,它是一个程序员,允许您使用PC对微控制器进行编程和调试。 PICKIT3可以为您的项目提供电源(虽然数量很少),这有时非常有用。

PIC微控制器有各种形状和尺寸,从爱好友好的DIP封装到所有通向BGA,这使它们在商业环境中有用。最便宜的PIC可以0.20美元购买,但仍然提供许多有用的功能。即使是最便宜的设备,您可以期待的一些外围设备包括。
UART
I2Cspi
引脚中断

PIC有不同的范围:PIC16,PIC18,PIC24和PIC32。 PIC16和PIC18都是8位微控制器,这意味着内部的所有数据(寄存器和RAM)都是8位宽。 PIC24器件是16位器件,而PIC32器件是32位器件。上升范围通常意味着更多的功能,速度和记忆,但不一定是价格上涨。如果您希望从事业余爱好工作或简单项目,请坚持使用PIC16/PIC18系列,因为它们相对易于在汇编器和C语言中进行编程。由于两个原因,PIC24和PIC32系列编程可能更加困难。首先,它们使用不同的CPU(MIPS),这意味着它们与其他PIC器件具有完全不同的指令集,其次,它们包含更高级的硬件,如果您不熟悉微控制器,这可能会令人不安。

AVR - Atmel(现在是Microchip)
AVR系列微控制器非常有趣,因为从表面上看,它们是与Microchip PIC系列非常相似。两个控制器都有很棒的在线支持,可以用于像C这样的语言,价格便宜,并且有很多外围设备。但是,有一个功能可以区分两者,这通常不会给予足够的重视:CPU。

PIC CPU是基于RISC的,这意味着它们只有一些指令( PIC16范围有大约30-40条指令)。这对于基本任务是有益的,因为它降低了代码的复杂性。 AVR将自己称为基于RISC的CPU,但ATMEGA328等设备有100多条指令。虽然有些人可能认为这很难学,但实际上它给程序员带来了很大的力量,能够在更短的时间内完成更复杂的任务。 AVR CPU也可以在一个时钟周期内完成大部分指令,而不是PIC的四个指令,这意味着当以相同的速度运行时,AVR比PIC快四倍。 AVR CPU也没有用于寄存器的存储区切换,这在PIC器件中很难解决。 AVR缺乏的一个因素是它们的许多指令都在通用寄存器上工作,它们只有32个。这意味着如果正在处理大量数据,可能需要不断地从SRAM加载数据。然而,PIC在执行操作时可以完全访问其SRAM,但其SRAM通常被分成256字节的块,这是存储体切换的地方。

常见的AVR设备包括:
tinyAVR(非常小的设备,外围设备有限但价格便宜且紧凑)
megaAVR(4-256KB程序存储器,扩展指令)
XMEGA(大程序存储器,DMA,大引脚封装)

ST微控制器
ST微控制器系列提供AVR和PIC器件中的许多功能,包括外设,速度和存储器。 PIC和AVR是业余爱好电子领域中最常见的两种器件,但这并不意味着ST器件不适用。就像PIC系列一样,ST设备有两个不同的系列:stm8stm32。 STM8器件是8位微控制器,具有许多功能,包括多达80个CPU指令,16位寄存器,间接寻址,堆栈和16位除法。但是,一些STM8器件具有流水线指令,这允许更高的吞吐量(假设没有条件分支)。 STM32设备可以说比PIC和AVR设备更现代,因为它们使用arm皮层内核,可以将它们打开到许多不同的软件库和编译器。

STM8和STM32设备可以通过ST-Link轻松编程V2程序员,可低至4美元。 STM设备的一个主要缺点是它们的包装;它们很少出现在爱好友好的DIP包装中。这使得它们难以在不使用适配器和跳线的情况下集成到项目中。然而,由于它们的价格和表面贴装封装,它们在商业环境中非常有用,这就是它们在零售产品中常见的原因。这一优势不仅体现在STM8器件中,STM32器件的售价仅为5美元,包含120MHz ARM内核,512KB ROM,128KB RAM,144引脚,CAN,I2C,SPI,UART和USB。虽然单个项目的5美元可能听起来很多,但考虑到这个价格你基本上只有一台具有令人难以置信的处理能力的ARM计算机!

Arduino
我们将看到的最后一个微控制器是Arduino系列。 Arduino因其低成本,用户友好性和外围功能而在业余爱好社区中大受欢迎。事实证明,Arduino基于Atmega设备,使用ATMEGA328的一个更常见的板。因此,如果Arduino使用Atmel器件,为什么不单独使用Atmel芯片呢?您可以在一个芯片上使用一个原因有几个原因!
Arduino板具有USB转UART桥接器(便于PC通信)
包含一个引导加载程序,因此可以通过USB进行编程端口
具有出色的软件支持,并且有许多在线示例
无需外部硬件即可运行(仅限电源)
可以在项目中轻松使用(螺丝安装座)
有一个屏蔽系统,允许与其他电路板(如以太网)一起扩展Arduino比芯片本身,但他们提供的东西非常适合那些刚接触电子产品并且可能很难在面包板上使用IC的人。 Arduino通常使用Arduino IDE在C ++中编程,除非用户决定自己编程寄存器并进行可能会破坏Arduino库的调整,否则用户可以减少控制。它们是快速原型设计的绝佳设备,但它们通常在商业环境中受损。

结论
市场上充斥着许多不同的设备,追踪它们可能会很痛苦。有些很好用汇编程序编程,而有些很容易在电路中使用。但问题仍然存在,你应该选择哪种设备?这完全取决于您,但这里有一些建议,具体取决于您的具体情况:
对于商业环境,请避免使用Arduino。 ST器件可能更适合,但PIC和AVR仍然是很好的微控制器。
如果速度很关键,请查看AVR/ST器件。尽管PIC具有高时钟速度,但除非超出PIC18范围,否则它们通常难以超过16MIPS。
如果需要简单,则使用Arduino。如果要在商业上销售该项目并且需要简单,那么PIC可能很有用。
对于需要复杂操作和时间的,AVR设备对于复杂的指令可能非常有用设置(尽管他们说的是什么)。
对于高端工作,应考虑到STM32设备的ARM内核和大内存空间。

路过

鸡蛋

鲜花

握手

雷人

发表评论 评论 (1 个评论)

回复 cooltt 2019-8-21 21:59
  

facelist

您需要登录后才可以评论 登录 | 立即注册

联系我们|小黑屋