GR-SAKURA
GR-KURUMI
GR-COTTON
GR-CITRUS
GR-PEACH
GR-KAEDE
GR-ADZUKI
GR-LYCHEE
GR-ROSE
GR-MANGO(*)
SNShield
Web Compiler
IDE for GR
TOPPERS関連
女子美コラボ
その他
※プロデューサミーティング中
作り方使い方資料
イベント関連
作品記事
体験記事
ライブラリ
ツール
その他・過去ファイル
IDも作ってしまいましたので早速ながら?質問させて頂きます
GR-SAKURAではタイマ割込みはどのように利用すればいいのでしょうか。
なひたふさまがこちらhttp://japan.renesasrulz.com/gr_user_forum_japanese/f/4/t/78.aspxで
TMRなら、というような表現がありましたので自分なりに調べてみようと思い
RX62N周辺のWebクイックラーニングを参考にコーディングを試みましたが上手くいきません。
TMR01の16bitカスケード接続で定期的に自前関数を呼びたいのですが…
抱えている問題は2点です。
あと、ここまでやってふと思ったのですが、もしかしてintvect.cあたりで
ハンドラ?を設定すれば自前関数が適に呼び出せるのでしょうか?
そもそもArduinoではloop()から起動時間を見るプログラムにするものでしょうか?
初心者すぎて滅裂な質問かと思いますが、助言よろしくお願いします
ソースは…どうやって添付するのでしょう…か…
バッチリです(^ー^)b
16bitとして利用したので
//void Excep_TMR1_CMIA1(void){ }
としました。
プロトタイプも同様に
void Excep_TMR1_CMIA1(void)__INTTERUPT_FUNC;
ビルドすると「undefined reference」うんぬんかんぬん言われましたので
intvect.hをgr_sketch.cppでインクルードしてみたところ上手くいきました。
初心者の車輪の再発明に付き合わせてしまい申し訳ありませんでした!
それでも自分としては勉強になったので大収穫ですが(^^ゞ
本当にありがとうございました。
(教科書通りの関数ですが一応載せておきます…)
void init_tmr16()
{
//Wakeup TMR0,TMR1
MSTP(TMR0) = 0;
//TCORA is 20ms count
//48000kHz(48MHz)*20/8192
TMR0.TCORA = 48000 * 20 / 8192 - 1;
//TCORA is 50 times count
TMR1.TCORA = 50 - 1;
//TCNT0 clear by compare match A
TMR0.TCR.BIT.CCLR = 1;
TMR1.TCR.BIT.CCLR = 1;
//TCNT0 counts for compare match of TCORA
TMR1.TCCR.BIT.CSS = 3;
//CMIEA is enable
TMR1.TCR.BIT.CMIEA = 1;
//CMIA1 is enable
IEN(TMR1,CMIA1) = 1;
//CMIA1 interrupt Level is 1
IPR(TMR1,CMIA1) = 1;
}
void start_tmr16()
//count start
//CSS internal clock
//CKS is PCLK/8192
TMR0.TCCR.BYTE = 0x0E;