[PIC32 - SM EVM] UART 테스트
PIC32MX4에는 2개의 UART Port(RD2, RD3, RF4, RF5)가 있다.
보레이트설정
U1BRG레지스터에 계산값을 설정하면 된다.
PIC24와 레지스터 및 구조가 거의 비슷하다. Seial.c에 있는 U0_GetByte(), U0_PutByte()를 수정해 주면 된다.
PIC32 UART테스트 예제코드
PIC32MX4에는 2개의 UART Port(RD2, RD3, RF4, RF5)가 있다.
보레이트설정
U1BRG레지스터에 계산값을 설정하면 된다.
PIC24와 레지스터 및 구조가 거의 비슷하다. Seial.c에 있는 U0_GetByte(), U0_PutByte()를 수정해 주면 된다.
unsigned char U0_GetByte(void)
{
unsigned char read_data;
read_data = U1RXREG;
U1STAbits.OERR = 0;
return (read_data);
}
void U0_PutByte(unsigned char Data)
{
while(U1STAbits.UTXBF == 1);
U1TXREG = Data;
}
{
unsigned char read_data;
read_data = U1RXREG;
U1STAbits.OERR = 0;
return (read_data);
}
void U0_PutByte(unsigned char Data)
{
while(U1STAbits.UTXBF == 1);
U1TXREG = Data;
}
PIC32 UART테스트 예제코드
main()
{
unsigned int cnt = 0;
SystemInit();
Led1Init();
Led2Init();
U0_Init(BAUD_115200);
U0_PutStr("PIC32 UART Test\r\n");
while( 1)
{
Led1Toggle();
U0_printf("Cnt=%d\r\n", cnt++);
Delay(300);
}
{
unsigned int cnt = 0;
SystemInit();
Led1Init();
Led2Init();
U0_Init(BAUD_115200);
U0_PutStr("PIC32 UART Test\r\n");
while( 1)
{
Led1Toggle();
U0_printf("Cnt=%d\r\n", cnt++);
Delay(300);
}
반응형