MachiKania

MachiKania type Pの開発環境

2022年9月30日

MachiKania type Pのver 1.1では、USBケーブルで接続したPC上で、BASICプログラムの開発や、クラスライブラリーの開発が行えます。

下の写真は、開発環境の実行例です。操作としては、PC上のテキストエディターでBASICプログラムを編集し、MachiKaniaのリセットボタンを押すだけです。MMC/SDカードの抜き差しや、BASICファイルのドラッグ&ドロップは必要ありません。

2022-09-25-Clipboard01.png

この機能は結構便利で、私自身が常用しています。MMC/SDカードの抜き差しをほとんどしなくなりました。以下で、開発環境の構築方法について述べます。

ダウンロードした MachiKania type P の ZIP ファイルに、「document」フォルダーがありますから、そこの「 pcconnect.txt」を参照してください。このテキストファイルで、方法について述べてあります。以下、「 pcconnect.txt」の説明文を取り上げながら、説明します(記事中、イタリックの表記が、説明文の抜粋です)。

<準備>

1.ver 1.1以降のMachiKania type Pを、Raspberry Pi Picoにインストールします。
2.ダウンロードしたMachiKania type PのZIPアーカイブ中の「pcconnect」ディレクトリーを、PCのどこかに解凍・展開します。
3.PCとしてLinuxを使用する場合は、connect.cをgccでコンパイルし、a.outを作成してください。Windowsを使用する場合は、forWindows.zipを解凍し、a.exeとcygwin1.dllをpcconnectディレクトリーに展開してください。
4.connect.iniを編集します。「SERIALPORT=」の後にはMachiKaniaをPCに接続した場合のCOMポートを指定します。よく分からない場合は、とりあえずそのまま(「/dev/ttyDUMMY」のまま)で次に進めてください。
5.connect.iniの「ROOT=」の後には、MachiKaniaに転送するファイルを含むディレクトリー名を指定します。デフォルトでは「machikap/」となっています。そのまま使用する場合は、pcconnectディレクトリーにmachikapディレクトリーを作成してください。別のディレクトリーを使用する場合は、指定した名のディレクトリーを作成してください。


説明文では述べていませんが、MacOSはLinuxと同じくPOSIX規格に準拠しているので、Linuxでの説明に従って進めれば、うまく行くはずです(確認していません)。上記まで準備ができれば、Windowsの場合ならフォルダー表示は以下のようになっているはずです。

2022-09-25-dir.png

6.MachiKaniaをPCに接続し、a.out(Linuxの場合)もしくはa.exe(Windowsの場合)を起動します。うまく接続できた場合は「Waiting for request...」と表示され、MachiKaniaからの転送リクエスト待ちになります。
7.接続に失敗した場合は、「open serial port...failed Try some from followings (/dev/tty* would be good)」と表示され、次の行にMachiKaniaが接続されたポートの候補のリストが表示されます。MachiKaniaをPCに接続した状態と接続しない状態でa.out/a.exeに表示されるポート名リストを比較すれば、MachiKaniaのポート名を知ることができます。正しいポート名をconnect.iniの「SERIALPORT=」に指定して、もう一度 a.out/a.exe を起動しなおしてください。


「connect.ini」で「SERIALPORT=/dev/ttyDUMMY」のまま続けた場合、a.exeの実行画面は以下の例のようになります。

2022-09-25-connectFailed.png

この場合、KachiKaniaは「/dev/ttyS2」いう名のポートととして認識されているようです。「connect.ini」で「SERIALPORT=/dev/ttyS2」と編集します。

候補のポート名が複数あってどれだか分からないときは、以下の図を参考にMachiKaniaのポート名を特定してください。

2022-09-26-newPortName.png

正しいポート名でconnecti.iniを設定した後にa.exeを再起動すると、以下の画面のようになります。

2022-09-25-connectSuccess.png

8.machikapディレクトリーを空にしたままで、MachiKaniaのリセットボタンを押してください。この時、「Request detected! Waiting for SENDCMD...OK All done!」と表示されれば、a.out/a.exeとMachiKaniaの通信が問題なく行われています。
9.もし通信がうまく行かない場合は、MachiKaniaのMMC/SDカードのルートにあるMACHIKAP.INIを編集し、「STARTWAIT=」の後の数字を少し多くしてください。500で通信に失敗しても、700や1000なら成功するようなケースもあります。


「STARTWAIT=」の編集が終わり、うまく通信できると、以下のような画面になります。

2022-09-25-transferSuccess.png

ここまでくれば、開発環境のセットアップは終了です。

<ファイルの転送>

1.machikapディレクトリーに転送したいファイル(MACHIKAP.BASなど)を配置し、任意のエディターで編集してください。
2.MachiKaniaのリセットボタンを押すと、PCからMachiKaniaにファイルが転送されます。MACHIKAP.BASがあれば、そのまま実行されます。


「machikap/」ディレクトリーに「machikap.bas」を作成し、a.exeを起動し、MachiKaniaのリセットボタンを押すと、以下のような表示になります。

2022-09-25-machikapbas.png

MachiKania上では、「MACHIKAP.BAS」が実行されているはずです。続けて、「machikap.bas」を編集した後にMachiKaniaのリセットボタンを押せば、編集した後の最新のコードが実行されます。まれに、リセットボタンを押しても反応しなくなる時がありますが、多くの場合はa.exeを再起動すれば改善します。

<後始末>

1.プログラムのデバッグ等が終わって、MMC/SDカードのMACHIKAP.BASが必要なくなった場合、machikapディレクトリー内のMACHIKAP.BASの内容を「fremove "MACHIKAP.BAS"」としてください。
2.a.out/a.exeが起動した状態でMachiKaniaのリセットボタンを押すと、MMC/SDカードのMACHIKAP.BASが削除されます。
3.a.out/a.exeを終了し、MachiKaniaのリセットボタンを再度押せば、MachiKaniaはファイル選択画面になります。


MachiKaniaのMMC/SDカードにMACHIKAP.BASが残っていると、起動時に自動実行されます。このMACHIKAP.BASファイルをPC側の操作で削除するための方法について、述べています。

コメント

Fred Calhoun (2026年9月4日 06:45:39)

Good day from Bonusbacklinks,

Supercharge rad51.net search engine rankings, increase your online exposure and gain powerful backlinks!
BonusBacklinks.com - we build daily backlinks and bring website clicks to your site every day:

https://BonusBacklinks.com/coupons

Get 85% Off
Quality daily seo backlinks
Organic website traffic
Price only from $1
Bonus discount codes

Kind regards,
Fred from BonusBacklinks.com support

Arpit Mishra (2026年9月4日 19:33:30)

Hello,

I hope you’re doing well.

I wanted to reach out and see if you are interested in improving your website’s http://rad51.net visibility on Google and attracting more potential customers through SEO. We offer SEO solutions designed to help businesses increase organic traffic, improve keyword rankings, and generate quality inquiries.

If this sounds interesting, I’d be happy to share our complete SEO packages, activities, timeline, and pricing details for your review.

Looking forward to your response.

Regards,
Arpit

コメント送信