« カミナリ | メイン | LPC2888(続続) »

2007年10月29日

LPC2888(続)

今日も、あまり時間は取れないながら、合間をみて、LPC2888をつつく。
デフォルトはCPUコアの動作周波数が12MHzのようなので、上限の60MHzまであげてみる。board.hというヘッダファイルに、SYSCLKとして書いておけば、スタートアップルーチン(cstart.s)で、これを使ってPLLを初期化をしているようだ。どうも、標準でついているサンプルが非常によくできているやつっぽく、外付けDRAMの初期化も、標準でちゃんとやっているっぽい。明日、確認してみよう。内蔵RAM領域での実行がまだできていないが、まあ追々。
しかしコアを60MHzにしても、ただI/Oポートの1ビットの値を変えるするだけで、1us近くかかる。なんでこんなにかかるんだろう。LPC2888のデータシートを読む限りは、特にI/Oポート操作にウエイトがかかる様子はないんだけど、なんでだろう。へんなコードを吐いてないか、アセンブル結果を見てみるか。
ちなみにihex→binaryの変換は、xeditでなくても、Cygwinのどれかを入れたときに入ってしまっていたobjcopyで、objcopy hoge.hex hoge.bin -I ihex -O binary と、入出力のファイル形式を明示すると、ちゃんと変換できるっぽい。xeditでつくったBinaryファイルと、最初の1バイトなどがちがうっぽいんだけど、なぜかちゃんと動くっぽい。とりあえず、当面はこれを使うか。

投稿者 akita : 2007年10月29日 23:31

コメント

コメントしてください




保存しますか?

(書式を変更するような一部のHTMLタグを使うことができます)