JH7UBCブログ

アマチュア無線 電子工作 家庭菜園など趣味のブログです

PIC16F1705 MCC シリアル通信テスト

2022-04-01 14:36:48 | MPLAB X MCC
 MPLAB X + XC8 + MCCの環境でPIC16F1705のシリアル通信テストをします。
 USBシリアル変換は、秋月電子のFT234モジュールを利用し、PIC16F1705のシリアル通信ポートはデフォルトで、RC4=TX,RC5=RXとします。
 回路図です。PIC16F1705の電源は、FT234からの5Vを利用します。


 プロジェクトを作成し、MCCを立ち上げます。
 System Moduleの設定です。
 Clockは、INTOSC,FOSC,8MHz_HF,PLL Enableとし、32MHzで動作させています。

 EUSARTを導入すると、デフォルトで、RC4=TX,RC5=RXになっています。
 Pin Moduleです。RC4のOutputは最初からチェックが入っています。Analogのチェックは入れても入れなくとも動作するようです。

 EUSART Moduleの設定です。Baud Rateは、デフォルトの9600bpsのままです。他の設定もデフォルトのままです。

 動作確認のために、簡単なエコーバックテストを行いました。 
 プログラムリストです。
------------------------------------------------------------------------
/*
 * PIC16F1705 MCC Serial通信テスト
 * 2022.4.1
 * JH7UBC Keiji Hata
 */

#include "mcc_generated_files/mcc.h"

void main(void)
{
     // initialize the device
     SYSTEM_Initialize();
     uint8_t data;
     while (1)
    {
         data = EUSART_Read();
         EUSART_Write(data);
    }
}
------------------------------------------------------------------------
 ブレッドボードです。

 パソコンと接続して、TeraTermと通信させます。
 パソコンのキーボードで文字を打つと、エコーバックされ、TeraTermに表示されました。

 PIC16F1705では、PPS(Peripheral Pin Select)機能により、任意のPinにTX,RXを設定することができます。

 例えば、RA0=TX,RA1=RXとするには、MCCのPin Managerで下の図のように指定すれば、OKです。プログラムは変更なしで、FT234とPIC16F1705のTX,RXの配線の変更だけで、シリアル通信ができます。