1.Board vi điều khiển mới giá 4 Mỹ kim (4$) đến từ thương hiệu Raspberry Pi
- Raspberry Pico là một board mạch nhỏ gọn, linh hoạt, xử lý tác vụ nhanh với vi điều khiển RP2040, một vi điều khiển mới tinh do Raspberry thiết kế tại UK
- RP2040 có gì đặc biệt?
Giải mã tên gọi RP2040:
+ RP: viết tắt của Raspberry Pi
+ 2: Số lõi (core)
+ 0: Loại core, ở đây là M0+
+ 4: được tính theo floor(log2(ram/16k))
+ 0: được tính theo floor(log2(novolatile/16k), hoặc bằng 0 nếu không có bộ nhớ không bay hơi.
Một số đặc tính cơ bản:
+ Là vi điều khiển trang bị 2 lõi Arm Cortex M0+, tốc độ tới 133MHz
+ 264 kB SRAM chia làm 6 bank
+ 30 chân đa chức năng GPIO
+ 6 chân giành riêng cho SPI Flash ( hỗ trợ XIP)
+ Các giao tiếp thông dụng như UART, SPI, I2C, PWM, ADC, TIMER, RTC
+ Hỗ trợ tính năng DMA
+ Hỗ trợ Programmable IO cho giả lập ngoại vi tốc độ cao (cái này mới)
+ Riêng với ADC thì có tích hợp sẵn cảm biến nhiệt độ, phân giải 12 bit, 0.5MSa/s
+ Hỗ trợ USB 1.1 Host/Device
2. Tổng quan về vi điều khiển RP2040
Hình 1. Sơ đồ thiết kế vi điều khiển RP2040 ( sourse: https://datasheets.raspberrypi.org/rp2040/rp2040-datasheet.pdf)
Qua sơ đồ chúng ta thấy, RP2040 có 2 lõi Cortex M0+, đây là lõi vi xử lý ARM có kiến trúc “Von Neumann” , khác so với Cortex M3,4 có kiến trúc “Harvard”. Đây là vi xử lý 32 bit, pipeline 2-stage. Chi tiết hơn về cấu trúc của Cortex M0+ mới các bạn tham khảo tại đây
- Code cho chip có thể được thực thi trực tiếp từ bộ nhớ ngoài thông qua các giao tiếp chuyên dụng như SPI, DSPI, hoặc QSPI. Một bộ nhớ cache nhỏ được sử dụng để nâng cao hiệu suất cho các ứng dụng thông thường.
- Hỗ trợ debug thông qua giao diện SWD
- Bộ nhớ nội sử dụng công nghệ SRAM có dung lượng 264kB địa chỉ, nhưng về vật lý thì được chia làm 6 bank, thuận tiện cho việc truy cập vào bộ nhớ một cách song song từ nhiều Master.
- Hỗ trợ DMA cho việc truy xuất dữ liệu giữa ngoại vi và bộ nhớ mà không cần sự can thiệp của vi xử lý.
- GPIO được điều khiển trực tiếp hoặc thông qua rất nhiều các hàm logic chuyên dụng.
- Bộ điều khiển cấu hình PIO linh hoạt, cung cấp một số chức năng điều khiển IO tốc độ cao
- Trang bị 2 bộ tổng hợp tần số PLL cung cấp tần số có định 48MHz cho USB hoặc ADC, riêng xung clock hệ thống có thể hoạt động đến 133MHz
Sơ đồ chân vi điều khiển RP2040 trên Raspberry Pi Pico
Sơ đồ bố trí chân của vi điều khiển RP2040 ( Sourse: https://datasheets.raspberrypi.org/rp2040/rp2040-datasheet.pdf)
3. Các cách để lập trình cho Raspberry Pico
- Có thể lập trình Raspberry Pico thông qua ngôn ngữ lập trình C hoặc MicroPython
- Có rất nhiều nền tảng hỗ trợ lập trình cho Pico:
+ Lập trình thông qua chính Raspberry Pi
+ Lập trình Pico bằng SDK và các gói hỗ trợ trên Linux, Window, Mac
4. So sánh với một số dòng vi điều khiển thông dụng hiện nay (đang cập nhật)
Trên đây là một số nét chính để giới thiệu Board vi điều khiển mới rất thú vị của Raspberry. Các thao tác lập trình, kiểm tra hoạt động đầu tiên của Pico được giới thiệu trong các bài tiếp theo.