我正在使用 PIC32MX Clicker(PIC32MX534F064H 微控制器)通过 UART 传输数据,并使用 USB 到串行转换器以 115200 的波特率在 PC 上接收数据。
当我尝试通过 PIC32 发送数据并在我的 PC 上读取时,我收到了数据,但数据不同。请参阅下面的代码片段。如果有人能建议我修改什么以使 uart 工作,那就太好了。谢谢
#define GetSystemClock() (80000000ul)
#define GetPeripheralClock() (GetSystemClock()/(1 << OSCCONbits.PBDIV))
#define GetInstructionClock() (GetSystemClock())
void initSerial(){
UARTConfigure(UART5,UART_ENABLE_PINS_TX_RX_ONLY);
UARTSetFifoMode(UART5, UART_INTERRUPT_ON_TX_NOT_FULL
| UART_INTERRUPT_ON_RX_NOT_EMPTY);
UARTSetLineControl(UART5, UART_DATA_SIZE_8_BITS | UART_PARITY_NONE | UART_STOP_BITS_1);
UARTSetDataRate(UART5, GetPeripheralClock(), 115200);
UARTEnable(UART5, UART_ENABLE_FLAGS(UART_PERIPHERAL | UART_RX | UART_TX));
}
void writeSerial(uint8_t c){
while(!UARTTransmitterIsReady(UART5));
UARTSendDataByte(UART5, c);
while(!UARTTransmissionHasCompleted(UART5));
}