• ベストアンサー

H8/36037 CCRの設定方法

現在AH7000でH8/36037に書き込んでいます. タイマZ0割り込み処理にジャンプするために,コンディションコードレジスタ(CCR)のIビットが0クリアされていないといけません. このCCRはコントロールレジスタなので「組み込み関数」で設定できるとのことなのですが,調べてみてもよく分かりませんでした. 組み込み関数をつかってどのようにしてコントロールレジスタを設定するのでしょうか。教えてください.

質問者が選んだベストアンサー

  • ベストアンサー
  • R32C
  • ベストアンサー率39% (115/290)
回答No.2

コンパイラのユーザーズマニュアルに関数説明があり 使用例の記載もあります。参照ください。 10.2.3.組み込み関数 set_imask_ccr(0); /* * 0を渡せば、マスクがクリアされ、割り込みが受け付けられます。 */ それから、 ccr Iビットは、例外発生時にマイコンがセットするので、 再度割り込みを可能にするためには、都度クリアが必要になります。

参考URL:
http://documentation.renesas.com/jpn/products/tool/rjj10b0166_h8s.pdf

その他の回答 (1)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

AH7000はデバッガなので、コンパイラが何かによって対応が変わります。 ルネサスの純正コンパイラであれば、set_ccrだったかの組み込み関数がありませんか? GCCだと、インラインアセンブラで記述する必要があると思います。

ss_ryuusei
質問者

補足

ccrは以下の二個があるのですけど,これのどちらかを変更すればよいのですか? // set_imask_ccr((_UBYTE)0); // set_imask_ccr((_UBYTE)1);