Atmega16U2へのhexファイルの書き込みが毎回PowerShellを開いてerase flash resetとコピペするのがめんどくさかったのでワンクリックでできるといいな~って思ってたら一応できたので解説します。(トプ画の使いまわしは目をつぶってください)
スクリプトとか全然わからないんでもっと楽な方法とかあるかもしれません.
あったら教えてください
【3/19追記】PowerShellにこだわる必要なくねということでバッチファイル一個作ればええやんってことに気づきました。
バッチファイルの作成
メモ帳を開いて以下のコマンドをコピペしてください。
.\dfu-programmer.exe ATmega16U2 erase
.\dfu-programmer.exe ATmega16U2 flash Joystick.hex
.\dfu-programmer.exe ATmega16U2 reset
PAUSE
コピペしたら○○.batに拡張子を変更して使いたい自動化プログラム(Joystick.hexファイルなど)の入ってるフォルダに保存してください。
使い方
バッチファイルをクリックするだけ!簡単!
バッチファイルそのままコピペで他のフォルダに移しても使える!すごいね!
以下にPowerShellにこだわってた時の記事を残しときます。
とりあえず2クリックで書き込めるようにする
とりあえずこれだけ作れば2動作で書き込めるようになります。
この方法だと書き込みに成功してても失敗してても画面がすぐ消えちゃうんで結果が分かりませんw
(誰か消えないようにする方法あったら教えてください)
ps1ファイルの作成
メモ帳に以下のソースコードをコピペます。
拡張子を○○.ps1にして使いたいプログラム(Joystick.hex)が入ってるフォルダに保存します。
ソースコード
.\dfu-programmer.exe ATmega16U2 erase
.\dfu-programmer.exe ATmega16U2 flash Joystick.hex
.\dfu-programmer.exe ATmega16U2 reset
使い方
マイコンはDFUモードにしといてください。
- ps1ファイルを右クリック
- 「PowerShell で実行」をクリック
となります。
1クリックで書き込めるようにする
さっきのファイルを1クリックで書き込めるショートカットを作ります。
このショートカットなら処理終了後に画面が閉じないので成功してるか失敗してるかの確認もできます。
1クリックで実行できるファイルの作り方
さっきのps1ファイルを右クリックしてショートカットの作成をします。
ショートカットのプロパティを開き,リンク先の先頭に
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit
と入力してOKを押します。
使い方
マイコンをDFUモードにして,ショートカットをダブルクリックします。(1クリックじゃねぇじゃん)
注意
ps1ファイルはファイルのコピペで他のフォルダにもっていっても使えます。
ショートカットはリンク先がコピー元のファイルのアドレスになってるのでそこを書き換えるか新しくショートカットを作り直してください。
フォルダ名が日本語や記号を使ってるともしかしたらうまくいかないかもしれなのでそのときは英数名に変えてください。
さいごに
PowerShellとかスクリプトとか完全初心者なので誰かもっと効率いいとか良い方法とかあれば教えてください。
質問などはコメント欄までお願いします。
コメント