ドライバをマージしたmes2.motではなく、ドライバをモジュール化したcore.motを使用してください
実はmes2版のbuild方法が分かりませんでした。CBarでコンパイルすると大量のコンパイルエラー。どなたか、正しくbuildする方法をご存じでしたら教えてください
以下に実験で使用したファイルを掲載しますので参考にしてください(たぶん、間違いや不要なパラメタが残っていると思います)
1.config.sys
dram b=400000 s=200000 bw=8 w=0 sci1 f=20000000 br=57600 memory b=400000 s=180000 ram0 b=580000 s=80000 ne0 b=200000 bw=8 irq=5 i2c0 p=6 clk=1 dat=0 size=20000 lcd0 p=4 d4=0 d5=1 d6=2 d7=3 rs=4 e=5 row=2 col=16 mmc1 p=11 cs=0 sio=2 boot dev=/ram0/ end
2.autoexec.bat
ne.exe ne0 b=200000 bw=8 ifconfig ne0 192.168.1.100 255.255.255.0 gateway 192.168.1.1 lcd.exe lcd0 p=4 d4=0 d5=1 d6=2 d7=3 rs=4 e=5 row=2 col=16 mmc.exe mmc1 p=11 cs=0 sio=2
3.module.sys
sci.exe sci0 f=20000000 br=57600 sci1 f=20000000 br=57600 ne.exe ne0 b=200000 bw=8 end
4.実行結果
(1)コンソール
(2)SDカードアクセス
手持ちのSDカードで動作確認しました。2010.4.22版のmmcドライバでKINGMAX 2GB SDカードにアクセス出来ています(セクタとクラスタを誤解していたので訂正しました。汗・・)
メーカ | 容量 | クラスタ | ファイル数 | 結果 | 備考 |
Mediafo | 512MB | 8KB | 約80個 | OK | SD&USBのコンボ。スーパJUSCOで398円!! |
Kingston | 1GB | 16KB | 約130個 | OK | Micro SDカード |
TOSHIBA | 16MB | 8KB | 約130個 | OK | mini SDカード SD-S16 |
TOSHIBA | 1GB | 16KB | NG→OK | Micro SDカード mountでDisk IO error | |
KINGMAX | 2GB | 32KB | NG→OK | mountでDisk IO error | |
Hagiwara | 1GB | 16KB | 約130個 | OK | SDカード |
※:「ファイル数」は最大搭載可能ファイル数
どうにも解せない結果(クラスタサイズと認識ファイル数)ですが、多分間違い無いと思います
あまり無いと思いますが800KB超のJPEGファイルをtftpすると、一度だけ失敗(Disk IO Error)しました。それ以降は上手く転送出来ています。数十KBのファイルは全く問題ありません。
転送速度は7KB/s強でEEPROMの6倍程度の速度が出ています
転送速度は7KB/s強でEEPROMの6倍程度の速度が出ています
ご承知と思いますが、DisktoolはWindows XP以前でしか動作しません。拙宅で通常使用しているのはWindows Vistaで、XPを使うためには再起動が必要になります(「7」を立ち上げ、その上でVMPlayerを起動しています)
この再起動を避けるためには出来るだけ内蔵ROMを使わないで使用環境をSDカード上に置けばよいはずです(「h83069f 屋根裏 計画」を参考にしました)
要約するとautoexec.bat(正確には/ram0/autoexec.bat)でmmc1をmountして、mmc1上のもう一つのautoexec.bat(正確には/mmc1/autommc.bat)を起動すると言う物です
1.config.sys
dram b=400000 s=200000 bw=8 w=0 sci1 f=20000000 br=57600 memory b=400000 s=180000 ram0 b=580000 s=80000 i2c0 p=6 clk=1 dat=0 size=20000 boot dev=/ram0/ end
2.autoexec.bat
mmc.exe mmc1 p=11 cs=0 sio=2 mount mmc1 cd /mmc1 autommc.bat
3.autommc.bat
ne.exe ne0 b=200000 bw=8 ifconfig ne0 192.168.1.100 255.255.255.0 gateway 192.168.1.1 lcd.exe lcd0 p=4 d4=0 d5=1 d6=2 d7=3 rs=4 e=5 row=2 col=16 type welcome.txt
4.実行結果
(1)コンソール
/ram0、/mmc1フォルダに置くファイルは実行結果を参考にしてみてください(関係ないファイルも残っています)
思ったよりも上手く行きました、、、でもmmcドライバはやはり内蔵ROMにある必要があります・・・残念!!
SDカードボードの動作環境 mmcドライバの改修2
コメントをかく