鈴木@豊川様、アドバイスありがとうございます。
以下御報告です。
> > // 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
> ★☆☆☆★年★☆★☆月★☆★★★日
>