2023.12.12
前へ
次へ
ホームページトップへ戻る


PICBASICコンパイラ

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
まるでインタプリタ。でもコンパイラです。超カンタン超シンプルです。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第108回]



●SDカードIF(28)SDカードをWindows7に接続する

今回は前回日時データ付きでSDカードにセーブしたテストデータファイルの日付情報を確認してみます。
テストデータファイルはSDカードIFボード(PIC18F2550搭載)をND80Z3.5に接続して書き込みました。
そのSDカードをWindows7マシンにUSB接続したSDカードリーダー(下の写真)にセットします。

この作業を途中で終って翌朝にその続きをしようとしたために「事件」が起きてしまったのでした(「パソコンをつくろう![第342回])。

SDカードはリムーバルディスクとして認識されています。

TEST29.BINが前回作成したテストデータファイルです。
ファイルの作成日付と時間が表示されています。
本来はファイルの作成日時と更新日時は別物なのですがエクスプローラでは更新日時が表示されます。
PICBASICコンパイラシステムとしてはSDカードファイルは作成日時=更新日時になりますから日時データは「更新日時エリア」に記録します。
更新日時エリアについては後日説明します。
TEST29.BINの上のTEST28.BINでも日時が表示されています。
1ヶ月前の日付です。
SDカードに作成日時(更新日時)も記録するようにプログラムを変更したのは1ヶ月も前のことだったのでした。

日時データがWindowsで読み取れることが確認できました。
せっかくSDカードをWindowsマシンに接続したのですから、日時データの確認だけではなくてセーブしたファイルの中身もちゃんと読み取れることを確認しておきたいと思います。
ずっとSDカードをSDカードリーダーにセットしたままにしておくと、またうっかりして「事件」になってしまうかもしれません。
以下のテストのためにSDカードのTEST29.BINをハードディスクにコピーしました。

TEST29.BINはC:ドライブのPICBASICコンパイラプログラムがあるフォルダ(C:¥CPP¥PICBS)にコピーしました。
SDカードはSDカードリーダーから外しました。
これで安心してテストが行なえます。

TEST29.BINはバイナリデータファイルです。
しかしそこにあるデータはASCIIコードデータですからテキストエディタでも開くことができます。
とりあえず一番簡単な方法としてコマンドプロンプト(MSDOSプロンプト)のTYPEコマンドを使ってみました。

TYPE TEST29.BIN[Enter]
と入力するとTEST29.BINの中身(バイナリコード)が文字として表示されます。
この目的のために前回は普通に文字表示が可能なASCIIコードとして$20〜$7Fをファイルにセーブしました。
TYPEコマンドではバイナリデータを文字コードと考えて文字で表示します。
しかしそうではなくでバイナリデータそのものを見たい場合も当然あります(むしろそのほうが多いと思います)。

その場合にはやはりコマンドプロンプトのDEBUGコマンドを使います。

DEBUG ファイル名[Enter]と入力する(ここではDEBUG TEST29.BIN[Enter]と入力する)とそのファイルに対していろいろな操作ができるようになります。
Dコマンドを入力するとファイルの先頭から128バイトが16進数で表示されます。
その右側にはそのバイナリデータをASCIIコードと考えたときの文字が表示されます。
TEST29.BINは96バイトしかありませんから最後のデータはアドレス0CAD:015Fの7Fです。
それより後ろは作業メモリエリアの既存データがそのまま表示されます。
このあと続いてDコマンドを入力することで次の128バイトが表示されます(今回はそうする意味はありませんが)。
アドレスの上位の0CADはWindowsシステムが作業エリアとしてコマンドプロンプトに割り当てたDRAMのアドレスです。
コマンドプロンプトは大昔のMSDOSの機能を踏襲していますから基本的な作業スペースは64KBです(0000〜FFFF)。
ところでこの画面は通常のコマンドプロンプトとちょっと雰囲気が異なっています。
なんとなく文字の書体が異なっているようです。
よく見るとフォルダ(通常はコマンドプロンプトではディレクトリといいます)の区切り文字が’¥’ではなくて’\’になっています。
どうやらWindows7のDEBUGコマンドは英語版のままのようです。
Windows日本語版製作チームの手抜きのようです。
まあ今どきDEBUGコマンドを使っているのはこの私ぐらいのものか。

Qコマンドを入力するとDEBUGが終了します。

すると画面表示が通常のフォントに戻ります。
なんだかなあという感じです。

上でも書きましたようにTEST29.BINは拡張子こそBINですけれどその実体はTXTです(データは文字コードのみなので)。
ですからメモ帳で開くこともできます。

メモ帳などで開くときはファイルの種類を「すべてのファイル」にします。
そうするとTEST29.BINが表示されます。

TEST29.BINをメモ帳で開きました。


フリーのテキストエディタ「TeraPad」でも開いてみました。


これでPICSDカードIFボードでSDカードにセーブしたファイルが日時データとともにファイルの中身もWindowsで見ることができるということが確認できました。

このことについてはまだ続きがあります。
次回に続きます。

PICBASICコンパイラ[第108回]
2023.12.12upload

前へ
次へ
ホームページトップへ戻る