AppleScriptでlpc21ispをmbedライクに使うImplement Mbed-like lpc21isp with AppleScript
2014 年 6 月 26 日
mbedライクなlpc21isp + LPC1114環境をAppleScriptで作成しました。
LPC1114の書き込みにはlpc21ispというコマンドラインのプログラムを使うと便利です。
MacOSXの上ではApplScriptを使うと、フォルダにファイルを入れた時点で自動的に処理を行うことが出来ます。フォルダアクションと呼ばれます。
フォルダアクションを使って、mbedオンラインコンパイラからブラウザ経由でファイルをダウンロードすると、直ぐに書き込みまで自動的に実行するようにしてみました。
(坪井さんの設計したmbed LPC1114FN28ライクな環境を実現できます。書き込みはlpc21ispのほうが速いかもしれません。)
1. AppleScriptプログラム
AppleScriptエディタを使って、次のプログラムを~/Library/Scripts/Folder Action Scripts/write lpc21isp.scptに作成します。
(* lpc21isp writer script for folder action *) on adding folder items to this_folder after receiving added_items set serialport to "/dev/cu.usbserial*" -- change me set lpcbin to "/opt/local/bin/lpc21isp " -- change me try tell application "Finder" --get the name of the folder set the folder_name to POSIX path of this_folder set msg to "" repeat with aFile in added_items set file_name to name of aFile if file_name ends with ".bin" then set msg to file_name end if end repeat end tell if msg is equal to "" then quit me -- not a bin file end if set full_path to POSIX path of this_folder & file_name set dev to do shell script "ls " & serialport set msg to "Would you like to write " & return & full_path & return & "to" & dev display dialog the msg buttons {"Yes", "No"} default button 2 with icon caution set the user_choice to the button returned of the result if user_choice is "Yes" then set lpccmd to lpcbin & " -control -bin '" & full_path & "' " & dev & " 115200 48000" -- write to LPC with Terminal -- tell application "Terminal" -- do script lpccmd -- end tell -- write to LPC with shell do shell script lpccmd end if end try end adding folder items to
2. フォルダーアクションの追加
ブラウザーでダウンロードファイルを置く設定をしているフォルダにFolder Actionを設定します。
・マウス右クリック ー>サービスー>フォルダアクション設定
・関連付けるスクリプトの選択でwrite lpc21isp.scptを選択
・フォルダアクションの利用のチェックボックスをチェックする
3. 利用方法
mbedコンパイラからダウンロードするだけで、自動的に書き込みをします。
(了)
カテゴリー: mbed, Physical Computing