Hiện nay, vi điều khiển rất rẻ và dễ mua đến mức người ta thường sử dụng nó thay vì các mạch logic để có được tính linh hoạt trong thiết kế và giảm bớt không gian. Một số máy móc và robot sẽ dựa vào một số lượng lớn các bộ vi điều khiển, trong đó mỗi bộ thực hiện một nhiệm vụ. Các bộ vi điều khiển mới có thể điều chỉnh chương trình đang được thực thi mà không cần tháo vi điều khiển khỏi vị trí của nó. Trong bài viết này, chúng ta sẽ so sánh sự khác nhau giữa vi điều khiển AVR, ARM, 8051 và PIC.
Vi điều khiển là gì?
Vi điều khiển có thể được so sánh với máy tính nhỏ độc lập. Nó là một thiết bị cực kỳ mạnh mẽ, có thể thực hiện một loạt các tác vụ được lập trình sẵn và tương tác với các thiết bị phần cứng bổ sung. Được đóng gói trong một mạch tích hợp (IC) nhỏ có kích thước và trọng lượng không đáng kể, nó đang trở thành bộ điều khiển hoàn hảo cho robot hoặc bất kỳ máy móc nào cần tự động hóa thông minh. Một bộ vi điều khiển là đủ để quản lý một robot di động nhỏ, một máy giặt tự động hoặc một hệ thống an ninh. Một số bộ vi điều khiển chứa một bộ nhớ để lưu trữ chương trình sẽ được thực thi và rất nhiều dòng đầu vào và đầu ra có thể được sử dụng để hoạt động chung với các thiết bị khác, như đọc trạng thái của cảm biến hoặc điều khiển động cơ.
Vi điều khiển 8051
Vi điều khiển 8051 là dòng vi điều khiển 8-bit được phát triển bởi Intel vào năm 1981. Đây là một trong những họ vi điều khiển phổ biến đang được sử dụng trên toàn thế giới. Vi điều khiển này có 128 byte RAM, 4 Kbyte ROM, 2 bộ hẹn giờ, 1 cổng nối tiếp và 4 cổng trên một chip. CPU cũng có thể hoạt động với 8 bit dữ liệu tại một thời điểm vì 8051 là bộ xử lý 8 bit. Trong trường hợp dữ liệu lớn hơn 8 bit thì phải chia nhỏ thành nhiều phần để CPU có thể xử lý dễ dàng. Hầu hết vi điều khiển 8051 đều chứa 4Kbyte ROM, cũng có trường hợp số lượng ROM có thể vượt quá lên đến 64 K byte.
Vi điều khiển PIC
Bộ điều khiển giao diện ngoại vi (PIC) là vi điều khiển được phát triển bởi Microchip, vi điều khiển PIC thực hiện chương trình nhanh chóng và đơn giản khi so sánh với các vi điều khiển khác như 8051. Nhờ dễ dàng lập trình và giao tiếp đơn giản với các thiết bị ngoại vi khác nên PIC là vi điều khiển rất được ưa chuộng.
Chúng ta biết rằng vi điều khiển là một chip tích hợp bao gồm RAM, ROM, CPU, TIMER và COUNTER. PIC là vi điều khiển cũng bao gồm RAM, ROM, CPU, TIMER, COUNTER, ADC (bộ chuyển đổi analog sang kỹ thuật số), DAC (bộ chuyển đổi kỹ thuật số sang analog). Vi điều khiển PIC cũng hỗ trợ các giao thức như CAN, SPI, UART để giao tiếp với các thiết bị ngoại vi bổ sung.
Vi điều khiển AVR
Vi điều khiển AVR được phát triển vào năm 1996 bởi Atmel Corporation. Thiết kế cấu trúc của AVR được phát triển bởi Alf-Egil Bogen và Vegard Wollan. AVR lấy tên từ các nhà phát triển của nó là viết tắt của vi điều khiển Alf-Egil Bogen Vegard Wollan RISC, còn được gọi là Advanced Virtual RISC. AT90S8515 là vi điều khiển ban đầu dựa trên kiến trúc AVR, tuy nhiên vi điều khiển đầu tiên được tung ra thị trường thương mại là AT90S1200 vào năm 1997.
Bộ vi điều khiển AVR có ba loại
TinyAVR: - Ít bộ nhớ, kích thước nhỏ, chỉ thích hợp cho các ứng dụng đơn giản
MegaAVR: - Đây là loại phổ biến có bộ nhớ tốt (lên đến 256 KB), số lượng thiết bị ngoại vi cao hơn và thích hợp cho các ứng dụng từ đơn giản đến phức tạp.
XmegaAVR: - Được sử dụng trong thương mại cho các ứng dụng phức tạp, cần bộ nhớ chương trình lớn và tốc độ cao.
Bộ xử lý ARM
Bộ xử lý ARM cũng là một trong số họ CPU dựa trên kiến trúc RISC (máy tính tập lệnh giảm) được phát triển bởi Advanced RISC Machines (ARM).
ARM tạo ra bộ vi xử lý đa lõi RISC 32 bit và 64 bit. Bộ xử lý RISC được thiết kế để thực hiện một số lượng nhỏ các loại lệnh máy tính để có thể hoạt động ở tốc độ cao, thực hiện thêm hàng triệu lệnh mỗi giây (MIPS). Bằng cách loại bỏ các hướng dẫn không cần thiết và tối ưu hóa các đường dẫn, bộ xử lý RISC cho hiệu suất vượt trội ở một phần nhu cầu điện năng của quy trình CISC (tính toán tập lệnh phức tạp).
Bộ xử lý ARM được sử dụng rộng rãi trong các thiết bị điện tử như điện thoại thông minh, máy tính bảng, trình phát đa phương tiện và các thiết bị di động khác, chẳng hạn như thiết bị đeo. Do được giảm thành tập lệnh, nên nó cần ít transistor hơn, cho phép kích thước khuôn IC nhỏ hơn. Vi xử lý ARM kích thước nhỏ, giảm độ khó và tiêu thụ điện năng thấp nên rất phù hợp với các thiết bị thu nhỏ.
Sự khác biệt chính giữa vi điều khiển AVR, ARM, 8051 và PIC
8051 |
PIC |
AVR |
ARM |
|
Chiều rộng bộ nhớ |
8-bit cho lõi tiêu chuẩn |
8/16/32-bit |
8/32-bit |
Chủ yếu 32-bit và cũng có 64-bit |
Phương thức giao tiếp |
UART, USART, SPI, I2C |
PIC, UART, USART, LIN, CAN, Ethernet, SPI, I2S |
UART, USART, SPI, I2C, (AVR đặc biệt hỗ trợ CAN, USB, Ethernet) |
UART, USART, LIN, I2C, SPI, CAN, USB, Ethernet, I2S, DSP, SAI (giao diện âm thanh nối tiếp), IrDA |
Tốc độ |
12 chu kỳ xung |
4 chu kỳ xung |
1 chu kỳ xung |
1 chu kỳ xung |
Bộ nhớ |
ROM, SRAM, FLASH |
SRAM, FLASH |
Flash, SRAM, EEPROM |
Flash, SDRAM, EEPROM |
ISA |
CLSC |
Một số tính năng của RISC |
RISC |
RISC |
Kiến trúc bộ nhớ |
Kiến trúc Von Neumann |
Kiến trúc Harvard |
Biến đổi |
Kiến trúc Harvard đã biến đổi |
Tiêu thụ điện năng |
Trung bình |
Thấp |
Thấp |
Thấp |
Các họ |
Các biến thể 8051 |
PIC16,PIC17, PIC18, PIC24, PIC32 |
Tiny, Atmega, Xmega, AVR mục đích đặc biệt |
ARMv4,5,6,7 và các dòng |
Cộng đồng |
Rộng |
Rất tốt |
Rất tốt |
Rộng |
Nhà sản xuất |
NXP, Atmel, Silicon Labs, Dallas, Cyprus, Infineon, ... |
Microchip Average |
Atmel |
Apple, Nvidia, Qualcomm, Samsung Electronics, và TI... |
Chi phí (so với các tính năng cung cấp) |
Rất rẻ |
Trung bình |
Trung bình |
Rẻ |
Các vi điều khiển phổ biến |
AT89C51, P89v51,... |
PIC18fXX8, PIC16f88X, PIC32MXX |
Atmega8, 16, 32, Cộng đồng Arduino |
LPC2148, ARM Cortex-M0 đến ARM Cortex-M7, ... |
Hotline: 0979 466 469