Attiny85のdigispark化
Attiny85をdigispark化するプロトタイプを作る。
【ファームの書き込み準備と書き込みテスト】
コマンドプロンプトから、avrdude.exeを使ってhexをArduinoをISPにしてAttiny85に送り込むことをまずやる。最初は練習問題。
長いパスを記載するのが大変なので、C:¥やD:¥直下に、”avrdude”というフォルダを作っておく。(名前はなんでもOK)
Attiny85のICをArduinoをISPにして書き込みできる状態にする。
(https://funasover.blogspot.com/2024/06/attiny85-fuserest.htmlで作ったものを利用。ブレッドボードだけど)
PB4(3番ピン)に抵抗を介して、LEDをつけてあるので、書き込みが終了するとブリンクするようにしてある。
File-スケッチ例-01.BasicsのBLINKを編集して、ピンを4番(LEDをつけたピン)にしてこれをAttiny85に書き込んで点滅を確認する。
最初に、avrdudeの格納場所が記載されているので、エクスプローラーで開く。
私の環境下では、
C:\Users\ユーザ名\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude
と記載されているが、”/”を"\"に置き換えて
C:\Users\ユーザ名\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17\bin
をエクスプローラーに入れてやる。
次に、-CC: 以下の部分にavrdude.confのパスが記載されているので、これも”/”を適宜"\"に置き換えつつ、エクスプローラーで開いて、avrdude.confを先ほど作った、arvdudeというフォルダーにコピー
次に、Arduino-IDEに表示される白い部分をずっと右側に
-Uflash:w:を見つけて、その後にこのBLINKのhexファイル”Blink.ino.hex”の在りかがあるのでエクスプローラーで開く。ここも”/”を適宜"\"に置き換える。
Blink.ino.hexを先ほど作った、arvdudeというフォルダーにコピーする。
コマンドプロンプトを開いてarvdudeフォルダーに移る。
arvdudeを実行してみると、使い方が表示される。
でここでプロンプトから、arvdudeを用いて、Blink.ino.hexを流し込んでやるんですが、このBlink.ino.hexは1秒間隔で点滅する、流し込んで変化するのが確認できないので、Arduino-IDEで間隔を1秒ではない間隔にしておく。
avrdude -C avrdude.conf -v -pattiny85 -carduino -PCOM12 -b19200 -Uflash:w:Blink.ino.hex
とコマンドプロンプトに流すと、書き込みが開始され終わる。終われば、ちゃんと間隔が1秒間隔に戻るはず。
-C はコンフィグファイルで、-p
ここまでは練習。
【ファームダウンロードとブートローダー書き込み】
全部ダウンロードしてもいいが、必要なのはt85_default.hexをこれクリックするとバイナリーが開くが、右上の"Download raw file"のボタンを押してダウンロード。それを先ほどのavrdudeつくったフォルダーにコピーする。
そして、先ほどの例題と同様に、t85_default.hexを送り込む。今回は、後ろにフィーズの設定を入れる。
avrdude -C avrdude.conf -v -pattiny85 -carduino -PCOM22 -b19200 -Uflash:w:t85_default.hex -U lfuse:w:0xe1:m -U hfuse:w:0xdd:m -U efuse:w:0xfe:m
COM22の部分は環境にあわせて変更
フィーズは、以下の設定
Low: 0xE1
High: 0xDD
Extended: 0xFE
問題なければ、これでAttiny85にブートローダーを入れる所まで完了
【ArduinoIDEの設定】
FILE-基本設定を開いて、追加のボートマネージャーのURLに
http://digistump.com/package_digistump_index.json,http://drazzy.com/package_drazzy.com_index.json
を入れる。
スクショとっていないが、インストールすると、Windowsのドライバーのインストールがはじまるので入れる。
【USBケーブル】
ジャンク屋さん(ハードオフなど)で、100円などのUSBマウスやキーボードを調達して分解してケーブルを取り出す。
【回路】
回路は
を参考に作成。5番ピン(PB0)に抵抗を介してLEDをつけている。
ここまで問題なければ、パソコンのUSBに接続する。
ここまで問題なければ、パソコンのUSBに接続する。
無事にいけば、以下のようにデバイスマネージャーで認識される。
【テストプログラム:Lチカ】
ArduinoIDEを立ち上げて、
File-スケッチ例-01.BasicsのBLINKを開いて、 setupの中の
pinMode(LED_BUILTIN, OUTPUT);の上に
#define LED_BUILTIN 0
の一行を追加する。
ツールの下の設定を
ボード:”Attiny85(Micronucleus/DigiSpark)"
書き込み装置:”USBTinyISP(ATtinyCore)FAST, for parts running >= 2MHz"
> Please plug in the device (will time out in 60 seconds) ...
というメッセージが出てから、USBを刺すと書き込みが始まる。
無事できれいればLEDが点滅を開始する。
コメント
コメントを投稿