一个微控制器 就像是一个微型的独立计算机,它被封装在单个集成电路(IC)芯片中,专门设计用来执行嵌入式系统的特定任务。微控制器内部集成了处理单元、少量的存储器(ROM、RAM等)、用于连接外设的I/O端口以及定时器等组件。AVR和PIC都属于微控制器家族。PIC微控制器和AVR微控制器在架构、指令集、速度、成本、存储器、功耗和总线宽度等方面各有不同。现在,让我们详细探讨一下它们之间的区别。
AVR 微控制器
AVR 微控制器 由Atmel公司(现已被收购)于1996年推出。它基于RISC(精简指令集计算机)指令集架构(ISA),也被称为高级虚拟RISC。AT90S8515是AVR家族中的初期代表产品。AVR微控制器是目前最流行的控制器类别之一,且价格低廉,因此在许多机器人应用中都能看到它的身影。
AVR 的优势
- 易于编程: 得益于Arduino集成开发环境(IDE)的生态支持,AVR微控制器相对更容易上手编程,即使是初学者也能轻松使用。
- 执行速度快: 由于采用了 RISC(精简指令集计算)架构,AVR微控制器在大多数指令上都能在单个时钟周期内完成执行,这使得它在某些应用中速度更快。
- 低功耗: AVR微控制器专为低功耗设计而优化,这对于电池供电的设备来说至关重要。
- 庞大的社区支持: AVR微控制器拥有完善的文档、丰富的库函数和代码资源,这使得我们在寻找教程或寻求帮助时变得非常容易。
AVR 的劣势
- 外设支持有限: 在与PIC微控制器相比时,AVR在某些内置外设方面略显不足,这可能会限制其在某些复杂应用中的实用性。
- 成本较高: 与同等级别的PIC等其他微控制器相比,AVR微控制器的相对成本较高。
PIC 微控制器
PIC代表“外围接口控制器”。PIC微控制器由Microchip公司开发。从实现和性能的角度来看,这是一种非常快速且简单的微控制器。它不仅易于编程,而且与其他外设的连接(接口)也非常简便。
PIC 的优势
- 选择范围广: 我们可以根据具体项目的规格要求,在多种不同类型的PIC微控制器中进行选择,总能找到最合适的型号。
- 丰富的外设集: PIC微控制器拥有增强且普及的内置外设,如 ADC、PWM和各种通信外设,这可以最大限度地减少外部辅助单元的使用。
- 性价比高: 在大多数情况下,PIC微控制器比AVR更便宜,这使得它们成为那些寻求低成本微控制器方案的理想选择。
- 性能稳定: PIC的特点是即使在特定的不利条件下也能保持卓越的耐用性,因此非常适合工业用途。
PIC 的劣势
- 编程复杂: PIC微控制器的编程过程似乎比AVR更具挑战性,对于初学者来说可能需要一定的学习曲线。
- 时钟速度较低: 部分PIC微控制器的时钟频率评级低于AVR,这在性能上可能会产生差异,特别是在对时间敏感的应用中。
AVR 和 PIC 之间的区别
AVR
—
AVR 代表 Advanced Virtual RISC(高级虚拟RISC)微控制器。
AVR 微控制器的总线宽度为 8/32 位。
它支持 UART, USART, SPI, I2C 通信协议。
它的速度是 1 个时钟周期/指令周期。
AVR 微控制器基于 RISC 指令集架构。
它基于哈佛架构。
AVR 家族包括 Tiny, Atmega, Xmega, 特殊用途 AVR。
AVR 微控制器的制造商是 Atmel。