お世話になります。
RX621のSCI2を使って通信をしようとしています。
開発環境は、以下です。
・e2Studio
・GCC
・ビッグエンディアン
・クロック:12MHz
テストの為、単純にTxD2を出力し続けていますが、全く出力されません。
確認は、TeraTermを使用しつつ、オシロでも波形を確認しています。
テストに使用したコードは以下です。
自動生成された初期化部分に書いています。
void HardwareSetup(void){ unsigned char BRR = 48 *1000000 / 32 / 38400 - 1; // System Clock SYSTEM.SCKCR.BIT.ICK = 0x00; // システムクロック x8 96MHz SYSTEM.SCKCR.BIT.PCK = 0x01; // 周辺クロック x4 48MHz SYSTEM.SCKCR.BIT.BCK = 0x01; // 外部バスクロック x4 48MHz WDT.WRITE.WINA = 0xa503; // WDT stop MSTP(SCI2) = 0; /* Enable SCI2 */ SCI2.SCR.BYTE = 0; /* Disable Tx/Rx */ PORT5.DDR.BIT.B0 = 1; /* P50=TxD2 */ PORT5.DDR.BIT.B2 = 0; /* P52=RxD2 */ PORT5.ICR.BIT.B2 = 1; /* P52=RxD2 Enable Input Buffer */ SCI2.SCMR.BYTE = 0; SCI2.SMR.BYTE = 0x00; SCI2.BRR = BRR; SCI2.SCR.BYTE = 0x30; /* Enable Tx/Rx */ while(1){ while(SCI2.SSR.BIT.TDRE == 0){}; SCI2.TDR = 'A'; }}よろしくお願いします。
申し訳ありません、自己解決しました。
IOPORT.PFFSCI.BIT.SCI2S = 1;
が抜けていました。
でも、SCI2のサンプルコードを検索したのですが、この設定を
しているのは見つからなかったです......