鈴木@豊川様、アドバイスありがとうございます。 以下御報告です。 > > // 1bit以上待つ > > for(i=0;i<50;i++); > > 50で1bit以上時間が空いているか疑問です。 > > > 念のためlong変数liにて for(li=0;li=400000;li++) を行い待ち時間(1秒)を作りましたが変わりませんでした。 > // シリアル通信ポート(Aポート)の入出力の設定 > > PA.DDR = 0x0A; // 0000 1010 A1:TX A2:RX > A3:LED > > DDRを設定する前にDRを設定した方がよいと思います。 > 以下DDR設定前にをやってみましたが、改善されませんでした 。 PA.DR.BIT.B1 = 1; // TXラインをhigh状態に PA.DR.BIT.B2 = 1; // RXラインをhigh状態に > > SCI2.SSR.BIT.TDRE=0; // clear(set > 0) only writable > > ここでTDREの設定は不要と思います。 > 削除してみましたが、改善されませんでした。 HEWのシミュレータを使用し、IOレジスタ等の確認を 行おうと思うのですが、こちらもうまくいきません。 現基板はモード7のみの拡張シングルチップモード で動作させています。 *2000Nと2000Aとどちらで動作させるのが正しいのでしょうか ? またSimDebug-2000XとSimSessionは何が違うのでしょうか? SimSession-2000N・・・実行できて動作が確認できるが、 なぜかIOレジスタが何も表示されない。 IOファイルのロードによりH8S2000N.io をロードしても変化なし。 こちらに関しても何かありましたらよろしく 御願いします。 > 鈴木@豊川です。 > > ytqrm969@xxxxxxxxxxxxxxxxxxx... > > > > > 確かにモジュールストップモードを解除していませんでした ! > > SCI0,2について解除し動作させてみました.... > > なぜか結果は以前と同じく正常動作しませんでした。 > > また何か気づきましたらよろしく御願いします。 > > > > //--------------------------------program > > > > void init_sci2(void){ > > int i; > > volatile unsigned char tmp; > > > > SCI2.SCR.BYTE = 0x00; // 0000 0000 > // 設定終わるまで送 > > 受信禁止 > > // スマートカードインタフェースを使用しない > > SCI2.SCMR.BIT.SMIF = 0; > > //シリアルモードレジスタ > > SCI2.SMR.BYTE=0x00; // 0000 0000 > > // シリアルボーレートレートレジスタ > > //SCI2.BRR=23; // = N(Err > rate 0% 19.2kbps) > > SCI2.BRR = 47; // = N(Err > rate 0% 9600kbps) > > > > // 1bit以上待つ > > for(i=0;i<50;i++); > > 50で1bit以上時間が空いているか疑問です。 > > > > > > // シリアル通信ポート(Aポート)の入出力の設定 > > PA.DDR = 0x0A; // 0000 1010 A1:TX A2:RX > A3:LED > > DDRを設定する前にDRを設定した方がよいと思います。 > > > SCI2.SSR.BIT.TDRE=0; // clear(set > 0) only writable > > ここでTDREの設定は不要と思います。 > > > > > SCI2.SCR.BYTE = 0x30; // 0011 0000 > 通信を許可 > > > > return; > > > > } > > +--------- --------- --------- --------- --------- > ---------+ > from Makio Suzuki > ★☆☆☆★年★☆★☆月★☆★★★日 >