2025-01-29

試用 MH-ET LIVE ATtiny88

在下曾經使用由 Digispark 製作 Attiny85 的開發板,成本低,體積細小
而且支援 Arduino IDE , 令開發與 Arduino 相似
這次在下測試 Digispark 的另一款 MH-ET LIVE Attiny88 開發板

外觀

MH-ET LIVE Attiny88 的正面

T88-15MZ晶片 是其中一種 Attiny88晶片

RESET按鈕,按下後重新啟動 MH-ET LIVE Attiny88

較貼近 7805 5V穩壓器 的 LED為電源燈,接通電源時會亮著綠光
另一粒為 板載LED ,與 D0 連接,高電壓時亮著紅光

MH-ET LIVE Attiny88 使用 Micro USB Type-B 插孔

MH-ET LIVE Attiny88 的背面

引腳

雖然 MH-ET LIVE Attiny88 引腳的數量、距離與 Arduino Nano 完全相同
但引腳的佈局則則完全不同

USB方向(正面)
左排引腳 右排引腳
D15 1 30 D14
D16 2 29 D13/SCK
D17/A6 3 28 D12/MISO
D18/A7 4 27 D11/MOSI
D19/A0 5 26 D10/SS
D20/A1 6 25 D9
D21/A2 7 24 D8
D22/A3 8 23 D7
D23/A4/SDA 9 22 D6
D24/A5/SCL 10 21 D5
D25 11 20 D4
RST 12 19 D3
D0 13 18 5V
D1/USB- 14 17 GND
D2/USB+ 15 16 VIN
編號 引腳 方向 功能
1 D15 輸入輸出 第15數碼引腳
2 D16 輸入輸出 第16數碼引腳
3 D17/A6 輸入輸出 第17數碼引腳,第6類比引腳
4 D18/A7 輸入輸出 第18數碼引腳,第7類比引腳
5 D19/A0 輸入輸出 第19數碼引腳,第0類比引腳
6 D20/A1 輸入輸出 第20數碼引腳,第1類比引腳
7 D21/A2 輸入輸出 第21數碼引腳,第2類比引腳
8 D22/A3 輸入輸出 第22數碼引腳,第3類比引腳
9 D23/A4/SDA 輸入輸出 第23數碼引腳,第4類比引腳,I2C SDA引腳
10 D24/A5/SCL 輸入輸出 第24數碼引腳,第5類比引腳,I2C SCL引腳
11 D25 輸入輸出 第25數碼引腳
12 RST 重設引腳
13 D0 輸入輸出 第0數碼引腳,與 板載LED 連接
14 D1/USB- 輸入輸出 第1數碼引腳,與 USB D- 連接
15 D2/USB+ 輸入輸出 第2數碼引腳,與 USB D+ 連接
16 VIN 電源輸入
17 GND 接地
18 5V 5V 電源輸出
19 D3 輸入輸出 第3數碼引腳
20 D4 輸入輸出 第4數碼引腳
21 D5 輸入輸出 第5數碼引腳
22 D6 輸入輸出 第6數碼引腳
23 D7 輸入輸出 第7數碼引腳
24 D8 輸入輸出 第8數碼引腳
25 D9 輸入輸出 第9數碼引腳,具備 PWM
26 D10/SS 輸入輸出 第10數碼引腳,SPI SS引腳,具備 PWM
27 D11/MOSI 輸入輸出 第11數碼引腳,SPI MOSI引腳
28 D12/MISO 輸入輸出 第12數碼引腳,SPI MISO引腳
29 D13/SCK 輸入輸出 第13數碼引腳,SPI SCK引腳
30 D14 輸入輸出 第14數碼引腳

除了兩側引腳,還提供 ICSP6接口
ICSP6 則與 Arduino Nano 相同,包括方向都相同,方便燒錄 Bootloader 到 T88-15MZ

設定編譯器

在 Arduino IDE 的 File > Preferences > Additional Boards Manager URLs: 加入

https://raw.githubusercontent.com/MHEtLive/arduino-boards-index/master/package_mhetlive_index.json

並到 Tools > Board: > Boards Manager... 搜尋 mh-et 並安裝 MH-ET LIVE Boards

Tools > Board: > MH-ET LIVE Boards > MH-ET LIVE Tiny88 (16.0MHz)

在下使用 閃動板載LED 測試

MH-ET LIVE Attiny88 與 Digispark Attiny85 相同,都是不能直接連著 USB 上載 Sketch
而是需要執行上載程序後,才能在連接 USB 時上載 Sketch
不過由於 MH-ET Live Attiny88 有 重設按鈕 ,因此不需要重覆拔插

但上載時發生錯誤並顯示

This tool doesn't know how to upload to this new device.
Updates may be available. Device reports version as :2.2
Warning : device with unknown new version of Micronucleus detected.

與 Digispark Attiny85 一樣,由於 Micronucleus 的版本比較舊
需要到 https://github.com/micronucleus/micronucleus/releases/tag/v2.6 下載最新版本

並將 micronucleus 複製到 .arduino15/packages/mhetlive/tools/micronucleus 的目錄中

使用最新版本的 Micronucleus 後,再出現另一個問題

usb_open(): Permission denied. For Linux, copy file https://github.com/micronucleus/micronucleus/blob/master/commandline/49-micronucleus.rules to /etc/udev/rules.d

最簡單的方法就是根據提示下載 49-micronucleus.rules/etc/udev/rules.d ,在 Terminal 輸入

sudo wget `curl "https://github.com/micronucleus/micronucleus/blob/master/commandline/49-micronucleus.rules" | grep 'href *= *"http.*49-micronucleus.rules"' | sed -r 's/.*href *= *"(http.*49-micronucleus.rules)".*/\1/g'` -O "/etc/udev/rules.d/49-micronucleus.rules"
sudo service udev restart

亦可以在 Terminal 輸入

echo 'SUBSYSTEMS=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0753", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0753", MODE:="0666", ENV{ID_MM_DEVICE_IGNORE}="1"' \
| sudo tee "/etc/udev/rules.d/49-micronucleus.rules"

直接在 /etc/udev/rules.d 建立 49-micronucleus.rules 而不需要從網絡下載

設置 49-micronucleus.rules 檔案後,輸入

sudo service udev restart

重新整理 udev 的規則

終於可以使用 Arduino IDE 上載 Sketch 到 MH-ET LIVE Attiny88

測試效果

不過通電後, MH-ET LIVE Attiny88 的 紅色LED 會閃動 ,大約 6秒 才正式運作

在下焊接引腳時,同樣根據引腳的功能,使用對應的顏色

與 Arduino Nano 及 Arduino Nano 兼容開發板比較
MH-ET LIVE Attiny88 的外觀與 Arduino Nano 開發板大致相同
最主是由於 MH-ET LIVE Attiny88 沒有硬件 UART ,因此缺少了顯示 TX 及 RX 狀態的 LED
及使用比較常見的 Micro USB Type-B 插孔,而 Arduino Nano 則使用已經不再普及的 Mini USB Type-B
不過大多數 Arduino Nano 兼容開發板已經改用 Micro USB Type-B 或 USB Type-C 插孔

補充資料

MH-ET LIVE Attiny88 的 D1 及 D2 使用時要非常小心

USB D+ T88 D+ OUT D2 68R USB D- T88 D- OUT D1 68R

如圖中所示, D1 及 D2 分別連接到 USB D- 及 USB D+
如果將 D1 及 D2 當作一般 IO引腳 使用,在寫入 Sketch 到 MH-ET LIVE Attiny88 前,不能接地
否則有機會會將 微控制器晶片 的韌體損壞
(在下不慎將 Digispark Attiny85 韌體損壞一樣 使用 Arduino IDE 將 Sketch 直接寫入到 ATtiny85 # 意外操作)

如果真的不慎損壞了 MH-ET LIVE Attiny88 的韌體,便需要燒錄新的 Bootloader

ICSP10 轉 ICSP6 轉接器

轉接器的 ICSP6接口 可以直接連接到 MH-ET LIVE Attiny88 上的 ICSP6接口

使用 USB ASP 燒錄 Bootloader 到 MH-ET LIVE Attiny88

到在 Arduino IDE 的 File > Preferences > Additional Boards Manager URLs: 加入

https://drazzy.com/package_drazzy.com_index.json

並到 Tools > Board: > Boards Manager... 搜尋 attinycore 並安裝 ATTinyCore

到 Tools > Board: > ATTinyCore > ATtiny88 (Micronucleus, MH-ET t88 w/16MHz CLOCK)

Burn Bootloader Method: > Fresh install (via ISP, set fuses)

Programmer: > USBasp (ATTinyCore)

設定完成後,點選 Burn Bootloader 便會將 Bootloader 燒錄到 MH-ET LIVE Attiny88

總結

MH-ET LIVE Attiny88 與 Arduino Nano 基本上相同,但成本則比 Arduino Nano 甚至 Arduino Nano 兼容板低
不過與 Digispark Attiny85 一樣,都是無法使用 序列輸入及輸出,因此亦沒有 UART 的 TX 及 RX
而且 具備 PWM 的引腳只有 D9 及 D10
但考慮成本上的折衷,如果只是控制數碼引腳輸入及輸出等基本操作
MH-ET LIVE Attiny88 比 Arduino Nano 作為入門設備更低適合初學者

參考資料

沒有留言 :

張貼留言