PDA自作日記

 

まとめトップ

最近のコメント


   

起動シーケンス ━━━━

このPDAで使用しているマイコンボードOAKS32RのフラッシュROMには、μITRONなどのミドルウェアとROMライターが書き込まれています。ボードにはジャンパスイッチが2つあり、JP1をオープンにするとROMライターが、JP1をショートさせるとミドルウェアが起動します。ROMライターで書き込んだユーザープログラムを、ミドルウェアから実行するという使い方になります。

本来ならば、ユーザープログラムからミドルウェアの機能を呼びだすようなプログラムを作るのですが、この自作PDAでは別のやり方をしています。ROMに書き込まれるユーザープログラムは、こちらで新規開発したモニタで、起動するとミドルウェアから制御を奪います。JP2がショートの状態では、シリアルからのコマンド操作を受け付け、メモリアクセスやプログラムのダウンロードなどができるようになっています。

(リセットベクタ)S(JP1チェック){#ccce[標準ROMライター]}S[標準OS]S[#cf8自作モニタ]S(#cf8JP2チェック){#ccce[#cf8コマンド受け付け]}S[#cf8自作ブートローダ]S[#fc8PDAソフトウェア]

JP2をオープンにしてモニタを起動すると、あらかじめ決められたアドレスを呼びだします。ここにはブートローダーを書き込んでおきます。ブートローダーは最初にSRAMとSDRAMに乱数を書き込み、メモリチェックをおこないます。その後、LCDを初期化し、メモリカードからイメージを読み込んでSDRAMに展開します。このプログラムを呼びだすことで、PDAとして機能するようになっています。

SDカードからの起動 拡大

実は当初はモニタを使うことが多かったため、JP2をオープンにするとモニタが起動し、ショートすると書き込んだプログラムを自動起動するようにしていました。その後、I/Oピンが足りなくなり、JP2に使われている端子をメモリカードに割り当てることになったため、メモリカードからの起動時にJP2をオープンにするように変更しました。

コメントを書く


 
  Copyright © π 2009-2012
Powered by light work group
このページの内容は無保証です