본문 바로가기

[Microchip]/PIC12F_PIC10F

[PIC12F EVM] Soft UART 테스트

[PIC12F EVM] Soft UART 테스트


소형 MCU에서 UART를 이용하면 디버깅 하기에 편리한 점이 많다. PIC12F683 보드도 Soft UART를 이용하여 시리얼 제어 [LCD Module] 에 디버깅 정보를 표시하는 테스트를 해 보았다.

먼저 Serial.c 코드를 좀 수정하여 기존 코드와 호환 가능하도록 수정한다.
//  GPIO.0 as UART Rx, and 1 as Tx
#define SOFT_UART_INIT()     do{ \
         TRISIO = 0x39;\
         ANSEL = 0x00;\
         GPIO = 0;\
         Soft_UART_Init(&GPIO,0, 1, 9600, 0 );\
         }while(0)


#define U0_PutByte             Soft_UART_Write


void U0_Init(unsigned char baud)
{
        SOFT_UART_INIT();
}


PIC12F683 UART테스트 예제 코드
void main()
{
    unsigned char buf[6];

    SystemInit();

    //UART초기화
    U0_Init(BAUD_9600);

    Delay(1000);

    Led1Init();

    U0_PutByte(4);
    Delay(500);
   
             //0123456789abcdef
    U0_PutStr("PIC12 LCD Test");
    U0_PutStr("\r\n");
 
    while(1)
    {
                Led1Toggle();
   
                PutInt(0, count++, buf);
                U0_PutStr(buf);
                U0_PutStr("\n");

                Delay(300);
    }
}

반응형