DOSonCHIP
ストロベリーlinuxで手に入るSDのFATをシリアル経由でアクセスできるようにしたCHIP
以下はブログよりの抜粋
DOSonCHIPの初期設定
- 日付、時刻がわかれば書き換えは可能だけどマイコンもわからんので意味無し。
(初期はたぶん1970年くらいかな)
- エラーに関することだと、コマンド”HEX”でバイナリデータでエラー送るようになる。(2byteデータだけど実質1byte)
(デフォはDECIMALで-xの形)
- 後ローカルエコーもon,off設定が可能で"e0"でoffにできる。(デフォはエコーあり)
- 一応スリープモードも存在するけどうーんどうだろう。
- CTSをlowに下げてもDOSonCHIP側のRTSがhighになりっぱなしの場合は外部リセット端子を一回リセットするとlowになるかも
基本的に使うコマンド覚書
- cd:change directory ディレクトリ移動
- i:information linuxでいうlsみたいなもの。現在ディレクトリのファイルと子ディレクトリが取得できる
- or:Open read ハンドルを指定してファイル名を打てば次からrで読み込みができる
- ow:Open write ハンドルを指定してファイル名を打てば次からwで読み込み可能
(ファイルがない場合は生成される)
- r:read ハンドルを指定して読み込み読み込むバイトを指定できる。
(バイトを指定した場合はその次回読み込み時はその次のバイトから読み込み)
- w:write ハンドルとバイトを指定して書き込み、コマンド送信完了後"という文字がでるのでそこに続けて打つ。
(書き込まれる場所はデフォルトでファイルでいちばん後ろ)
- s:seek ハンドルと先頭からのバイト数を指定すると次のrとwのときにそこから書き込み、読み込みを行う
- q:quit 現在開いているファイルを閉じる。ハンドルを指定することも可能
DOSonCHIPの注意点
- DOSonCHIPでUARTを使うときはRxD,TxDだけでなくCTS,RTSもつなげる必要がある。
- コマンドはコマンド表のまんま、だけどファイル名とかディレクトリを打つときは半角英字大文字
ファイル名がtest.txtであってもTEST.TXTと打たないとエラー
- 基本的なコマンドの打ち方はDOS窓とかシェルとかと同じ。
スペースでコマンド、オプションを区切る。
- 打ち間違えてバックスペースとかDELとかを行うと予想通りエラーが帰ってくるので
打ち直しは出来ない。
- 一旦どうも読み込むとポジションが変わってる?一旦全部読み込んだ後にまた読み込もうとするとエラー?
一旦シークで戻るのか?(それならこっちとしては好都合かな?)
- エラーはバイナリかと思ったら普通に-x(xはエラーの値)で帰ってくる。
- なぜかは知らんが空っぽのディレクトリをいれてそこに移動したら、ごみファイルが生成されていた。
おそらく空っぽのディレクトリはだめなのか?(一応何か入れとけばごみファイルは出ない)
マイコン等からのアクセス法
ひとまず自分はこのやり方でやりました。
- まずUARTアクセスでは,RXD,TXD,RTS,CTSとリセット端子をマイコンにつなぐ(RTS,CTSは任意のIOポート)
- マイコン起動後にリセット端子をlowに一定時間以上(たしか50usec)する。
- リセット端子をhighにあげて、マイコン側RTSをlowにさげて、DOSonCHIPのRTSがlowになるのを待つ。
- 最初に0x0dを二回送信後、'>'を受信するまで待つ。
- ここまで行けば、後はコマンドをうてばアクセスできるはずです。自分の場合はマイコンアクセスなのでローカルエコーが邪魔になるので
、まず最初にローカルエコーをコマンドでオフにします。
DOSonCHIP入手先
最終更新:2007年12月23日 23:59