Renesas Synergy™

FAQ 1007073 : uPD789177Yで以下のプログラムを作成して、A/D変換させようとしているが、 割り込み要求フラグがセットされない。

    ADM0 = 0x28;
    ADS0 = 0x00;
    ADMK0 = 0;
    ADCS0 = 1;
    EI();
    while(ADIF0 == 0) ;

このプログラムには問題があります。
A/D変換完了割り込みのマスクが解除され、CPUが割り込み許可状態になっています。
この状態では、割り込みが受け付けられてしまい、 割り込みが受け付けられると割り込み要求フラグ ADIF0はクリアされてしまいます。
割り込みはマスクした状態で実行してください。

    ADM0 = 0x28;
ADS0 = 0x00;
ADMK0 = 1;
ADCS0 = 1;
EI();
while(ADIF0 == 0) {
NOP();
}
ADIF0 = 0;

 

適用製品

RL78 ファミリ
78K0/Dx
78K0/Fx
78K0/Ix
78K0/Kx
78K0/Lx
UPD78F07xx
UPD7800xx
UPD7802xx
UPD7803xx
UPD7807xx
UPD7808xx
UPD7809xx
UPD780xx
UPD78F8025
UPD78917x
78K0/VAN ASCP
他にご質問がございましたら、リクエストを送信してください