PSOC 개발시 Logging을 사용하기 위해 USB UART를 사용하는 예제 입니다.

TopDesign은 아래와 같이 USBUART Component 를 추가 합니다.
LED는 Test 목적으로 Red, Green, Yellow LED를 ON/OFF 시키도록 할 예정입니다.

초기화 하고, USBUART를 Configuration 합니다.

    /* Start USBFS operation with 5-V operation. */
    USBUART_Start(USBFS_DEVICE, USBUART_5V_OPERATION);
    
    for(;;)
    {
        /* Host can send double SET_INTERFACE request. */
        if (0u != USBUART_IsConfigurationChanged())
        {
            /* Initialize IN endpoints when device is configured. */
            if (0u != USBUART_GetConfiguration())
            {
                /* Enumeration is done, enable OUT endpoint to receive data 
                 * from host. */
                USBUART_CDC_Init();
                break;
            }
        }
    
    }

아래와 같이 USBUART_PutString()을 이용하여, UART로 String을 전송 하여, Log Data를 전송 합니다.
Test 목적으로 LED Control에 3 bit로 write 합니다.

    int count =0;
    for(;;)
    {
        Control_Reg_LED_Write(count % 8);
           
        /* Service USB CDC when device is configured. */
        if (0u != USBUART_GetConfiguration())
        {
            sprintf(buffer, "LED Count 0x%x\r\n", count++);
            USBUART_PutString(buffer);
        }
        CyDelay(100);
    }

Tera Term을 이용하여 COM Port를 통해 UART Data를 Receive한 예

실제 Test를 위한 LED 예제 입니다.