2011年11月15日 星期二

如何讓 Arduino Uno 進入 DFU mode

ATmega8U2 晶片簡介

Arduino Uno 跟先前的板子最大的不同,是不再使用 FTDI 的 USB-to-serial 晶片,取而代之的,是改用 Atmega8U2 這顆晶片當作 USB-to-serial 的轉換器,它的角色是扮演電腦 USB port 跟 Arduino 主控制器 Atmega328p serial port 之間的橋梁。。

image
▲  Atmega8U2 所在的位置

Atmega8U2 上面有韌體,出廠預設燒錄的是 Arduino-usbserial,功能就是做 USB-to-serial 的轉接,然而我們可以透過一個 叫作 DFU (Device Firmware Upgrade) 的 USB 協定來更新 Atmega8U2 的韌體。

所以,如果你要更新 Atmega8U2 的韌體,就得先讓 Atmega8U2 進入 DFU mode,然後再利用專屬的軟體來燒錄韌體,一般而言,在 Windows 上會用 FLIP,而在 MAC & Linux 則是使用 dfu-programmer。這篇我們先說明如何讓 Arduino 進入 DFU mode,下一篇接著介紹如何用 FLIP 更新 Atmega8U2 的韌體。

什麼情況下會需要更新 Atmega8U2 的韌體? 嗯,因為 Atmega8U2 很有彈性,它可以讓你更換成其它韌體,所以你的 Arduino 板子就可以搖身一變變成不同的 USB 裝置,例如 MIDI controller, HID 裝置 (Keyboard, Mouse, Joystick 等等)。

2011年11月13日 星期日

在 Windows XP 上安裝 Arduino Uno 驅動程式

Arduino Uno 是 2010 年的產品,先前我一直使用 Arduino Duemilanove,最近終於跟 Uno 有了接觸。

因為我還在使用 Windows XP,所以這篇記錄一下怎麼在 Windows XP 上安裝 Arduino Uno 驅動程式。相關資訊請參考「Arduino 筆記 - 準備開發環境」。

當你把 USB Cable 接到電腦上時,會出現「尋找新增硬體精靈」:

image

選擇「從清單或特定位置安裝(進階)(S)」後按「下一步」:

image

2011年11月12日 星期六

Netlab Toolkit 與紅外線遙控簡報上線

應德明財經科技大學顏榮泉老師的邀請,今天 (11/12) 到德明分享玩 Arduino 的心得,主題是「Netlab Toolkit and Arduino」與「Arduino 紅外線遙控」。非常感謝顏老師安排這次活動,讓我可以與在場媒計系、資管系、資科系老師、政大資科系沈錳坤老師以及數名研究生分享交流,同時也感謝你們幫忙準備上課器材,讓這次活動得以順利進行。

今天上課的簡報已上線,可以在底下取得: