2026年9月10日木曜日

mmbasic pcのファイルをraspicoとやりとりしたい!!

 sudo picocom -b 115200 --omap delbs /dev/ttyACM0と,もう一つxterminalを立ち上げる

1. MMBasic 側で受信待機にする

MMBasic のプロンプトで以下のいずれかを実行します(保存先に応じて選んでください)。
  • プログラムメモリ(RAM)に直接読み込む場合:
    basic
    XMODEM RECEIVE
    
    コードは注意してご使用ください。
  • SDカードやフラッシュ内のファイルとして保存する場合:
    basic
    XMODEM RECEIVE "foo.bas"
    
    コードは注意してご使用ください。
2. Linux(PC)側から XMODEM で送信する
使用しているシリアル通信環境に合わせて、sx コマンドを使ってファイルを送信します。 [1, 2]
GNU screen を使用している場合:
シリアルセッション中に Ctrl+A を押した後、:exec !! sx foo.bas と入力するか、一度端末をバックグラウンドにして以下のようにリダイレクトします。 [1]
bash
sx foo.bas < /dev/ttyACM0 > /dev/ttyACM0
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
まずエディタからもどってRAM内容をsave "foo.bas"とする
成功しているかfilesで確認する
1. MMBasic(マイコン)側で送信コマンドを実行する
MMBasicのプロンプトで、送信したいファイル名を指定して XMODEM SEND(または省略形の XMODEM S)を実行します。 [1, 2]
  • SDカードやフラッシュ内のファイルを送信する場合:
    basic
    XMODEM SEND "foo.bas"
    
    コードは注意してご使用ください。
  • 現在メモリ(RAM)にあるプログラムをそのまま送信する場合:
    basic
    XMODEM SEND
    
    コードは注意してご使用ください。
コマンドを実行すると、マイコンはPC側からの受信開始合図(NAK文字など)を待つ状態(待機状態)になります。 [1, 2]
2. PC(Linux)側で XMODEM 受信を実行する
マイコンが待機状態になったら、60秒以内にPC側で受信コマンドを実行してください。Linuxでは rx コマンド(XMODEM受信ツール)を使用します。 [1]
一般的なシリアルポート(例: /dev/ttyACM0)で直接やり取りする場合:
端末(ターミナル)を開き、以下のコマンドを実行してファイルを受け取ります。
bash
rx foo.bas < /dev/ttyACM0 > /dev/ttyACM0
コードは注意してご使用ください。

0 件のコメント:

コメントを投稿