Nạp bootloader cho vi điều khiển trên Arduino

1. Tại sao ta cần bootloader ?

Bootloader là một chương trình nhỏ được nạp sẵn vào chip vi điều (VĐK) khiển trên Arduino. Bạn lập trình cho Arduino một cách dễ dàng được là nhờ thứ này. Nếu không có bootloader, bạn sẽ không thể upload chương trình lên vi điều khiển trên Arduino theo cách thông thường được, mà phải cần một số phần cứng khác hỗ trợ (gọi là Programmer)

Trên thực tế, vi điều khiển trên mạch Arduino đã có sẵn bootloader rồi nên bạn không cần thao tác gì cả. Tuy nhiên, với một số trường hợp cần nạp bootloader, bạn sẽ cần đọc bài viết này để biết cách thực hiện.

2. Nối dây

Bạn hãy nối dây trước theo sơ đồ sau (minh họa giữa 2 mạch Arduino sử dụng vi điều khiển ATmega328)

Bạn nên chú ý mạch Arduino của mình sử dụng vi điều khiển nào để nối dây cho đúng. 

Arduino có bootloader

Arduino chưa có bootloader

(ATmega328/168/8)

Arduino chưa có bootloader

(ATmega32u4)

Arduino chưa có bootloader

(ATmega1280/2560)

GND GND GND GND
5V 5V 5V 5V
D10 (SS) RESET RESET RESET
D11 (MOSI) D11 (MOSI) D16 (MOSI)  D51 (MOSI)
D12 (MISO) D12 (MISO) D14 (MISO) D50 (MISO)
D13 (SCK) D13 (SCK) D15 (SCK) D52 (SCK)

3. Tiến hành thực hiện

Bước 1: Mở Arduino IDE

Bước 2: Mở chương trình mẫu Arduino ISP

Bước 3: Nạp chương trình mẫu Arduino ISP lên mạch Arduino đang có bootloader

  • Vào menu Tools -> Boards để chọn mạch Arduino đang có bootloader
  • Vào menu Tools -> Serial Port để chọn cổng Serial đang sử dụng
  • Vào menu Tools -> Programmer chọn AVR ISP
  • Bấm Ctrl + U để upload chương trình

Bước 4: Nạp bootloader

  • Vào menu Tool -> Boards để chọn mạch Arduino cần được nạp bootloader
  • Vào menu Tool -> Programmer chọn Arduino as ISP
  • Vào menu Tools chọn Burn Bootloader
  • ... bạn hãy đợi một lát là xong.

Sau khi nạp bootloader xong, bạn sẽ thấy đèn LED 13 trên cả 2 mạch Arduino nhấp nháy báo hiệu bootloader đã được nạp thành công.

lên
9 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Attiny13 học lệnh từ remote, điều khiển on/off 3 kênh

Có bao giờ bạn có tự hỏi như mình: liệu có thể làm một thiết bị remote từ xa sử dụng điều khiển TV hay không? Với bài viết Infrared remote control (điều khiển bằng hồng ngoại) với Arduino của bạn NTP_PRO, mình đã làm được điều đó. Nhưng thực sự Arduino UNO quá đắt để làm được việc này! Vì vậy, mình dùng một dòng chip khác là ATtiny13. Và hôm nay, mình sẽ hướng dẫn các bạn làm nên mạch này!

lên
7 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Mạch cầu H và điều khiển động cơ với SN754410

Trong bài viết này, mình sẽ giới thiệu đến các bạn mạch cầu H để ứng dụng trong việc điều khiển cùng lúc 2 động cơ DC theo 2 chiều quay bất kì. Bên cạnh đó, mình cũng sẽ giới thiệu đến các bạn IC SN754410 tích hợp sẵn một mạch cầu H, giúp bạn thao tác thuận tiện, không phải tốn công làm mạch điều khiển động cơ.

lên
7 thành viên đã đánh giá bài viết này hữu ích.

Các rắc rối thường gặp khi làm việc với Arduino

Trong bài viết này, mình sẽ giới thiệu cho các bạn các rắc rối thường gặp khi làm việc với Arduino. Mặc dù tôi đã nghiên cứu Arduino được khá lâu nhưng thỉnh thoảng tôi cũng hay gặp phải chúng. Bài viết có thể sẽ được cập nhật dần để bao quát hết được các xu hướng mắc lỗi thường gặp cũng như những lỗi hay hiện tượng "từ trên trời rơi xuống" của người mới nghiên cứu Arduino.

lên
6 thành viên đã đánh giá bài viết này hữu ích.