- Bước đầu tiên là phải xác định xem máy tính đã nhận được USBasp driver chưa? Nếu chưa thì phải cài driver cho nó.Thường khi cắm thiết bị vào, nếu thiết bị hoạt động Ok thì windows sẽ thấy và yêu cầu cài driver. Nếu dùng với win vista hoặc win7 và có kết nối internet thì có thể windows sẽ tự tìm driver và tự cài. Nếu dùng XP thì phần lớn trường hợp là phải cài driver thủ công.
Nếu windows không hỏi driver và trước giờ vẫn chưa dùng USBasp bootloader thì phần lớn trường hợp là mạch chưa hoạt động, hoặc hoạt động mà giao tiếp USB chưa nhận. Lúc này cần xem lại xem mạch & firmware đã đúng & hoạt động chưa. Xem USB có hoạt động.
Với mạch này thì nếu dùng 2 diode zener không đúng như sơ đồ thì mạch cũng không giao tiếp USB được.
- Bước thứ hai là config Arduino để Arduino có thể nhận biết được thiết bị. Do thiết bị này được phát triển thêm, không phải các thiết bị mặt định do chính Arduino phát triển. Nên chúng ta phải config bằng tay. Mình dùng Arduino version 1.0.4. Hiện Arduino có nhiều version mới hơn, nhưng việc config phức tạp hơn nên mình dùng V này. Bạn có thể lên trang http://arduino.cc/en/Main/Software để tìm & download về.Cài đặt Arduino software.
Vào thư mục hardware/arduino trong thư mục cài đặt (thường là C:\Program Files\Arduino\hardware\arduino) mở file board.txt bằng Notebad và chèn đoạn code sau vào cuối file. Sau đó lưu (save) lại rồi đóng file.
Mã:
##########tinyUSBboard (Rev.3 and future)###(magic=0xfe9a5680)#######################
newtinyUSBboard.name=tinyUSBboard (USBaspLoader ATmega328p at 16MHz, Rev.3)
newtinyUSBboard.upload.protocol=usbasp
newtinyUSBboard.upload.maximum_size=28672
newtinyUSBboard.upload.speed=115200
newtinyUSBboard.upload.disable_flushing=true
newtinyUSBboard.bootloader.low_fuses=0xD7
newtinyUSBboard.bootloader.high_fuses=0xD0
newtinyUSBboard.bootloader.extended_fuses=0x04
newtinyUSBboard.bootloader.path=tinyUSBboard
newtinyUSBboard.bootloader.file=tinyUSBboard_atmega328p_16mhz_rev3.hex
newtinyUSBboard.bootloader.unlock_bits=0x3F
newtinyUSBboard.bootloader.lock_bits=0x3F
newtinyUSBboard.build.mcu=atmega328p
newtinyUSBboard.build.f_cpu=16000000L
newtinyUSBboard.build.core=arduino:arduino
newtinyUSBboard.build.variant=tinyusbboard
tinyUSBboard.name=tinyUSBboard (USBaspLoader ATmega8 at 16MHz, Rev.3)
tinyUSBboard.upload.protocol=usbasp
tinyUSBboard.upload.maximum_size=6144
tinyUSBboard.upload.speed=115200
tinyUSBboard.upload.disable_flushing=true
tinyUSBboard.bootloader.low_fuses=0x1F
tinyUSBboard.bootloader.high_fuses=0xC0
tinyUSBboard.bootloader.path=tinyUSBboard
tinyUSBboard.bootloader.file=tinyUSBboard_atmega8_16mhz_rev2.hex
tinyUSBboard.bootloader.unlock_bits=0x3F
tinyUSBboard.bootloader.lock_bits=0x3F
tinyUSBboard.build.mcu=atmega8
tinyUSBboard.build.f_cpu=16000000L
tinyUSBboard.build.core=arduino:arduino
tinyUSBboard.build.variant=tinyusbboard
Mở bài tập Blink trong mục axemple của Arduino.
Chọn Serial Port, vào probety thiết bị USBasp và xem là COM Port nào thì chọn đúng port đó.
Chọn Board là tinyUSBboard (USBaspLoader ATmega8 at 16MHz, Rev.3)
Upload thử xem thế nào..
Driver USBasp.