Thông báo

Collapse
No announcement yet.

Sử dụng USB ISP (ZF-007) với Arduino IDE trên Ubuntu

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Sử dụng USB ISP (ZF-007) với Arduino IDE trên Ubuntu

    Em đang học theo cuốn Practical AVR Microcontrollers: Practical AVR Microcontrollers: Games, Gadgets, and Home Automation with the Microcontroller Used in the Arduino
    Cuối này này nó dạy theo hướng sử dụng Arduino IDE để viết code rồi nạp vào chip ATmega328 bằng mạch nạp (programmer) chứ không dùng board built sẵn của Arduino.

    Về phần Arduino IDE cũng cho phép thêm programmer (không phổ biến) chưa được thiết lập sẵn bằng cách chỉnh file programmers.txt. Nhưng phải biết protocol và communication của programmer là gì để thêm vào. Ví dụ:

    Code:
    usbasp.name=USBasp
    usbasp.communication=usb
    usbasp.protocol=usbasp
    Theo như: https://code.google.com/p/arduino/wiki/Platforms
    PROGRAMMER.communication: either "serial" for programmers that use a serial device (to be selected from the Tools > Serial Port menu), "usb" for those that use the "-P usb" parameter to avrdude, or omitted for other programmer types.

    PROGRAMMER.protocol: the programmer's protocol, passed as the "-c" parameter to avrdude.
    Trong sách thì nó sử dụng cái con Polulu (Pololu - Pololu USB AVR Programmer) thì quá rõ rồi. Ở VN không có con này, nên em cũng cố gắng kiếm 1 USBasp hoặc USBtinyISP cho dễ sử dụng. Em thấy có con này giá khá rẻ:

    Do không tìm hiểu kỹ nên em đã nhầm con này là bản USBasp. Đến khi mua về thì mới biết con này là ZF-007 của zhifengsoft. Con này không cần driver gì hết, cắm vô thì windows xp nhận nó là một thiết bị USB HID. Bậc cái soft đi kèm (Progisp 2.0) thì nó nhận (ô PRG ISP sáng lên).

    Google một hồi nhưng không biết làm sao để thiết lập nó chạy với Arduino IDE. Mong các anh chị giúp đỡ. Ngoài ra em cũng muốn biết cách nào kiểm tra mạch có được avrdude nhận ra không.

  • #2
    Em đã flash lại firmware của cái USB ISP (zf-007) bằng firmware của USBasp như theo bài viết này: Hacking an AVR programmer
    (Dĩ nhiên là phải cần một mạch nạp khác. Trong trường hợp của em thì em mượn được một cái USBasp từ một anh bạn tốt bụng.)
    Các lệnh AVRDUDE để flash lại cụ thể như sau (em dùng Ubuntu, em thêm vào flag -v (verbose) để theo dõi, nhưng bỏ đi cũng đc):
    Bước 1: Xóa chip
    Code:
    user@computer:~/20130212_mega8_usbisp/default$ sudo avrdude -c usbasp -P usb -p m8 -v -e
    Bước 2: Set fuses
    Code:
    user@computer:~/20130212_mega8_usbisp/default$ sudo avrdude -c usbasp -P usb -p m8 -v -U lfuse:w:0xef:m -U hfuse:w:0xc9:m
    Bước 3: Flash firmware USBasp đã được chỉnh sữa lại cho phù hợp mạch của con ZF-007 (từ cái bài viết trên (Hacking an AVR programmer)) :
    Code:
    user@computer:~/20130212_mega8_usbisp/default$ sudo avrdude -c usbasp -P usb -p m8 -v -U flash:w:20130212_mega8_usbisp.hex
    Vậy là xong, flash xong thì con này thình một con USBasp chính hiệu và đèn led báo trạng thái màu xanh thay vì màu đỏ.

    Comment

    Về tác giả

    Collapse

    spam12345 Tìm hiểu thêm về spam12345

    Bài viết mới nhất

    Collapse

    Đang tải...
    X