RX63N Peripheral Driver Generator リファレンスマニュアル 335 ページ R_RG_SCI_StartReceving_C<チャネル番号>

SCI10にて、送信は、できたのですが受信割り込みが発生しない状況です。

かふぇルネでも、紹介のあった サンプルコード プロジェクト SCI_RX3N

を参考にしても、受信のほうはうまくいってない状況です。

PSG2の設定は添付画像のようにさせていただいています。

自動生成されないコードは、自分のほうで動作しているSCI0のC0 の部分を C10

に変更したものを追加等させていただいています。例えば以下のようにです。

UCHAR UART_Receive10 ( UCHAR *p_buf, USHORT i_len ){
USHORT count;
USHORT i;
R_PG_SCI_GetReceivedDataCount_C10(&count);
if (count > i_len) count = i_len; //バッファサイズが受信データ数より大きい場合バッファサイズに合わせる
for(i = 0; i < count; i++){
if(r_buf_sci10[i] != 0x0d){ //データがCRでない場合受信バッファからp_bufへコピー
*(p_buf + i) = r_buf_sci10[i];

}else{
*(p_buf + i) = 0x00; //CRの検出で、p_bufの最後にNULLを書き込む
R_PG_SCI_StopCommunication_C10; //バッファへのコピーを終了し、受信中断
//UART_StartTX (p_buf, i ); //テスト エコー出力
R_PG_SCI_StartReceiving_C10(r_buf_sci10, 30); //新たに受信開始
return 1;
}
}
return 0;
}

 

 

送信側のバーコードリーダーの電圧波形は、オシロスコープで

それらしき電圧波形を確認していて、プリント配線板上のパターンも

RX63N マイコンの必要なピンまで配線されていることは確認済みです。

視野が小さくなりちょっとしたことを忘れていたり、勘違いしていて

動作していないものと考えております。何か確認漏れや勘違いなど

ヒントを知見のあるかたより

お忙しいところお手数をおかけしますが、いただけますと助かります。

#define BUFF_SIZE       (50)

unit8_t *c10_read_buf[BUFF_SIZE];

 

void App_Main(void){

R_PG_Clock_Set();

R_PG_SCI_Set_C10();

data4 = R_PG_SCI_StartReceiving_C10(C10_read_buf,BUFF_SIZE);

略...

Parents
  • Hiroさん、こんにちは。NoMaYです。

    ちょっと確認したいのですが、このサンプルプログラム自体の動作(相手側を必要としないループバックテストだった筈ですが)の確認は出来ましたか?

  • 情報いただきありがとうございます。送信だけPDG2を用いる方法でできました。受信は電圧レベルが最大6{V]程度が入るため、レベル変換用のICを追加の改造中です。最大6[V]レベルのRS-232Cでは、受信割り込みに入っていないのが現状です。
Reply
  • 情報いただきありがとうございます。送信だけPDG2を用いる方法でできました。受信は電圧レベルが最大6{V]程度が入るため、レベル変換用のICを追加の改造中です。最大6[V]レベルのRS-232Cでは、受信割り込みに入っていないのが現状です。
Children
No Data