Chip vi điều khiển ATtiny85 là một giải pháp thay thế mạnh mẽ và giá cả phải chăng cho các vi điều khiển Arduino khác, đặc biệt khi bạn muốn thu nhỏ dự án của mình. Con chip này có 8 chân, trong đó sáu chân là I / O (Bao gồm cả Reset) và hai là chân nguồn. Nhưng làm thế nào để bạn lập trình nó vì nó không có giao diện USB như các bo mạch vi điều khiển khác? Vì vậy, trong bài viết này, tôi sẽ hướng dẫn bạn quá trình lập trình ATtiny85 từ Arduino IDE với sự trợ giúp của Arduino Uno. Về cơ bản, chúng tôi sẽ sử dụng Arduino UNO làm lập trình viên ATtiny85.
Các thành phần cần thiết để lập trình ATtiny85
- Arduino UNO
- IC ATtiny85
- Đèn LED
- Điện trở 220 ohm
- Breadboard
- Dây nhảy
Chip vi điều khiển ATtiny85 - Giới thiệu
ATtiny85 của Atmel là bộ vi điều khiển 8-bit công suất thấp, hiệu suất cao dựa trên Kiến trúc RISC Nâng cao. Chip vi điều khiển này có bộ nhớ flash 8KB ISP, 512B EEPROM, 512-Byte SRAM, 6 đường I / O cho mục đích chung, 32 thanh ghi làm việc cho mục đích chung, một bộ đếm / bộ đếm thời gian 8 bit với các chế độ so sánh, một 8 bit tốc độ cao bộ đếm thời gian / bộ đếm, USI, Ngắt bên trong và bên ngoài, bộ chuyển đổi A / D 4 kênh 10-bit, bộ định thời giám sát có thể lập trình với bộ dao động bên trong, ba chế độ tiết kiệm năng lượng có thể lựa chọn phần mềm và debugWIRE để gỡ lỗi trên chip. ATtiny85 Pinout được đưa ra dưới đây:
Hầu hết các chân I / O của chip có nhiều hơn một chức năng. Kiểm tra bảng dưới đây để biết về mô tả pin ATtiny85 cho mỗi pin.
Số pin |
Tên ghim |
Ghim Mô tả |
1 |
PB5 (PCINT5 / ADC0 / dW) |
PCINT5: Ngắt thay đổi chân 0, Nguồn5 ĐẶT LẠI: Đặt lại mã pin ADC0: Kênh đầu vào ADC 0 dW: gỡ lỗi WIRE I / O |
2 |
PB3 (PCINT3 / XTAL1 / CLKI / ADC3) |
PCINT3: Ngắt thay đổi chân 0, Nguồn3 XTAL1: Chân dao động tinh thể1 CLKI: Ngõ vào đồng hồ bên ngoài ADC3: Kênh đầu vào ADC 3 |
3 |
PB4 (PCINT4 / XTAL2 / CLKO / OC1B / ADC2) |
PCINT4: Ngắt thay đổi chân 0, Nguồn 4 XTAL2: Chân dao động tinh thể 2 CLKO: Đầu ra đồng hồ hệ thống OC1B: Bộ hẹn giờ / Bộ đếm1 So sánh Đầu ra Khớp B ADC2: Kênh đầu vào ADC 2 |
4 |
GND |
Ghim nối đất |
5 |
PB0 (MOSI / DI / SDA / AIN0 / OC0A / AREF / PCINT0) |
MOSI: SPI Master Data Output / Slave Data Input DI: Đầu vào dữ liệu USI (Chế độ ba dây) SDA: Đầu vào dữ liệu USI (Chế độ hai dây) AIN0: Bộ so sánh tương tự, đầu vào tích cực OC0A: Bộ hẹn giờ / Bộ đếm0 Đầu ra So sánh Khớp A AREF: Tham chiếu Analog bên ngoài PCINT0: Ngắt thay đổi chân 0, Nguồn 0 |
6 |
PB1 (MISO / D0 / AIN1 / OC0B / OC1A / PCINT1) |
MISO: SPI Master Data Input / Slave Data Output DO: Đầu ra dữ liệu USI (Chế độ ba dây) AIN1: Bộ so sánh tương tự, Đầu vào âm OC0B: Bộ định thời / Bộ đếm0 So sánh Đầu ra Khớp B OC1A: Bộ hẹn giờ / Bộ đếm1 So sánh Đầu ra So sánh A PCINT1: Ngắt thay đổi chân 0, Nguồn 1 |
7 |
PB2 (SCK / USCK / SCL / ADC1 / T0 / INT0 / PCINT2) |
SCK: Đầu vào đồng hồ nối tiếp USCK: Đồng hồ USI (Chế độ ba dây) SCL: Đồng hồ USI (Chế độ hai dây) ADC1: Kênh đầu vào ADC 1 T0: Nguồn đồng hồ Timer / Counter0 INT0: Ngắt ngoài 0 Ngõ vào PCINT2: Ngắt thay đổi chân 0, Nguồn 2 |
số 8 |
VCC |
Cung cấp pin điện áp |
Bước 1: Định cấu hình Arduino Uno làm ISP:
Vì ATtiny85 chỉ là một vi điều khiển nên nó yêu cầu một ISP (Lập trình trong hệ thống) được lập trình. Vì vậy, để lập trình ATtiny85, trước tiên chúng ta cần cấu hình Arduino Uno làm ISP để hoạt động như một lập trình viên cho ATtiny85. Để thực hiện điều đó, hãy kết nối Arduino Uno với Máy tính xách tay và mở Arduino IDE. Sau đó, điều hướng đến Tệp> Ví dụ> ArduinoISP và tải lên mã Arduino ISP.
Bước 2: Sơ đồ mạch lập trình ATtiny85:
Sơ đồ hoàn chỉnh để Lập trình ATtiny85 với Arduino Uno được đưa ra dưới đây:
Chân dương của LED được nối với chân 0 của IC ATtiny85 thông qua một điện trở 220Ω trong khi chân GND được kết nối với GND của IC. Các kết nối hoàn chỉnh được đưa ra trong bảng dưới đây:
ATtiny85 Pin |
Arduino Uno Pin |
Vcc |
5V |
GND |
GND |
Pin 2 |
13 |
Ghim 1 |
12 |
Ghim 0 |
11 |
Cài lại |
10 |
Bước 3: Lập trình ATtiny85 bằng Arduino IDE:
Để lập trình ATtiny85 với Arduino IDE, trước tiên, chúng ta cần thêm Hỗ trợ ATtiny85 vào Arduino IDE. Để làm điều đó, hãy chuyển đến Tệp> Tùy chọn và thêm liên kết bên dưới vào URL Trình quản lý Bảng bổ sung và nhấp vào 'OK.'
Sau đó, vào Tools> Board> Board Manager và tìm kiếm 'attiny' và cài đặt phiên bản mới nhất.
Sau khi cài đặt nó, bây giờ bạn sẽ có thể thấy một mục mới trong menu Board có tiêu đề 'Attiny25 / 45/85'.
Bây giờ, đi tới Tệp > Ví dụ> Cơ bản và mở ví dụ Blink.
Thay đổi số pin ở đó từ LED_BUILTIN thành 0.
Bây giờ quay lại Công cụ -> Bảng và chọn “Attiny25 / 45/85”, sau đó chọn ATtiny85 trong Công cụ> Bộ xử lý.
Bây giờ, hãy tiếp tục và tải lên mã. Nếu đèn LED kết nối với chân 0 của IC Attiny85 nhấp nháy, thì mã đã được tải lên thành công.
Đây là cách bạn có thể lập trình Chip vi điều khiển ATtiny85 bằng Arduino IDE và Arduino Uno. Dưới đây là một video hoạt động. Nếu bạn có bất kỳ câu hỏi nào, hãy để lại trong phần bình luận. Bạn cũng có thể đăng các truy vấn kỹ thuật của mình trên Diễn đàn Điện tử của chúng tôi để có được thông tin chi tiết tốt hơn.