LPC2119評価
LPC2119続き。
今日は、A/Dコンバータを試す。
こちらはあっけなくOK。
次は問題の割り込み。
とりあえずFIQ。
はまる...
割り込みハンドラでの、分岐命令がまずかったようだ...
FIQは割り込みテーブルの最後なので、ロングブランチでもいいかと思っていたのだけれど、24ビットブランチにするとうまく行った。
理由は不明...
まだなにか勘違いしてるかも。
------
H8やshでは、ハードウエアで割り込みベクタテーブルからジャンプ先を持ってくるようになっている。
慣れてしまっているから、こんなもんかと思っていたけれど、なんで割り込みベクタまでROMにある必要があるのだろう?
あらためて考えると、かえって不便なような。
------
ブートするためには、リセットベクタはROMしかないと思うけれど、一般のベクタはレジスタに設定するほうが自由度が高いと思う。
割り込み発生のときに読み込むにも、バスがあくのを待たなくて良くなるから、割り込み応答時間も早くなるような気がする。
やっぱり、パテントの絡みだろうか...
------
ARMは、シンプルなベクタ割り込みコントローラと、ソフトウエアで実現するようになっていて、ソフトウエアで処理する部分が多くて、一見煩雑に見える。
しかし、実質的にベクタがSFRにアサインされているのは、上に書いた理由で使いやすい気がしてきている。
...いや、何をいまさら、かもしれないけど。
| 固定リンク | 0
コメント