Renesas Synergy™

FAQ 1007031 : UPD784218Aのアシンクロナス・シリアル・インタフェースの不要データを送信しないための初期化方法について

Q : 質問

UPD784218Aのアシンクロナス・シリアル・インタフェース の送信説明部分において、

注意 UART で送信する場合,1 バイト目は次の手順で行ってください。
(1) ポートを入力モード (PM21=1 または PM71=1) にし,ポート・ラッチに 0 を書き込みます。
(2) アシンクロナス・シリアル・インタフェース・モード・レジスタn (ASIMn) の
ビット7 (TXEn) をセット (1) して送信許可状態にします。
(3) ポートを出力モード (PM21=0 または PM71=0) にします。
(4) TXSn に送信データを書き込み,送信動作を起動します。
先にポートを出力モードにすると,端子から 0 が出力されてしまうために,誤動作する可能性があります。

という記載がありますが、最後の先にポートを出力モードにすると,端子から 0 が出力されてしまうために,誤動作する可能性があります。という文章と、3 と 4 の手順が矛盾しているように思えます。


A : 回答

はい、この手順で間違いありません。
(2).の段階での状態の変化を誤解されています。

細かな動きは以下のとおりです。
(1) の段階では UART は動作していないためその出力は0となっており、端子はポートとして機能するようになっています。このため、ここでは入力ポートにしたままの状態で出力ラッチに 0 をセットします。


(2) の段階で UART の出力が許可されましたので、UART の出力が 1 となります。 (1)で出力ラッチが 0 になっていますので、この段階でポートの出力ラッチと UART の出力の OR した値 (この値がバッファを介して端子に出力されることになる) は 1 となります。 (UM の 図5-4,図5-12 を参照ください。)
つまり、UART を送信許可にすることで UART の出力は STOPビット極性 (マーク状態:1の状態) になります。


(3) ここでポートを出力モードに設定することで、2.の OR した値 (1になっている) が端子に出力されます。つまり、端子としてはハイ・インピーダンスから 1出力となります。 この後 TXSn に送信データを書き込むことで端子から UART の送信データが出力されます。

 

適用製品

UPD784218A

 

他にご質問がございましたら、リクエストを送信してください