マイクロテクニカ製品サポートFAQ
[一覧] [1つ前に戻る] [マニュアル及び各種ダウンロードページへ]
UART通信を使用するにあたっての設定
MMC-24に使用されているPIC24はUART通信で使用する信号ピン(RX,TX,CTS,RTSピンなど)は特定のピンにアサインされていません。
どのピンにUART信号線を割り当てるかはプログラム内でレジスタを設定することで指定します。

これらはリマッパブルピンと呼ばれ、PICマイコンのデータシート内ではRP1やRPI3などと記載されています。例えばPIC24FJ256GB110ではPORTD.3(RD3)はRP22とされています。またPORTD.1(RD1)はRP24とされています。
ピン名とリマッパブルピン名は混同されやすいので注意が必要です。RD3はあくまでもピン名、RP22はリマッパブルピン名です。

UART信号のどの信号線を、どのリマッパブルピンに割り当てるかはレジスタで設定しますが、mikroC PRO for dsPICをお使いの場合簡単なライブラリで設定ができます。

■PPS_Mapping関数の使い方

リマッパブルピンに指定した機能を割り当てる場合にはPPS_Mapping関数を使います。書式は次の通りです。

unsigned PPS_Mapping(short rp_num, short direction, short func_name);

rp_num:リマッパブルピン名を指定します。
direction: I/O方向を指定します。(決まった書式)
func_name: どんな機能を割り当てるのかを指定します。(決まった書式)

※書式一覧はmikroCのHelpで確認できます。

例えばMMB-24の場合RD3(RP22)はRXピン、RD1(RP24)はTXピンとして使うことが推奨されていますので、次のように記述します。

PPS_Mapping(22, _INPUT, _U1RX);
PPS_Mapping(24, _OUTPUT, _U1TX);

この記述をUart1_init();関数の前で記述することでRXピン、TXピンが割り当てられます。この記述をしないとUARTは使えないのでご注意ください。

その他I2CやSPI通信、コンパレータなどを使う場合には同様にしてリマッパブルピンへの機能の割り付けが必要となります。








オリジナル - FAQみたいです - 猫でいいです