Me he referido a http://microchipdeveloper.com/harmony:example-usart-dynamic-wf32 para configurar el UART y enviar/recibir datos entre la PC (Putty) y mi PIC32MZ.
El programa de demostración en el enlace recibe los datos, le agrega uno y lo transmite de nuevo a PuTTY.
case APP_STATE_RX: // USART receive state
{
// if byte received in USART instance pointed to by myUSARTHandle (USART1 in this case)
if (!DRV_USART_ReceiverBufferIsEmpty(myUSARTHandle))
{
appData.rx_byte = DRV_USART_ReadByte(myUSARTHandle); // read received byte
appData.tx_byte = appData.rx_byte + 1; // modifying received byte confirms it was received
appData.state = APP_STATE_TX; // change state to TX
}
break;
}
case APP_STATE_TX: // USART transmit state
{
// make sure the transmit buffer is not full before trying to write byte
if(!(DRV_USART_TRANSFER_STATUS_TRANSMIT_FULL & DRV_USART_TransferStatus(myUSARTHandle)) )
{
DRV_USART_WriteByte(myUSARTHandle, appData.tx_byte); // send modified byte
appData.state = APP_STATE_RX; // change state to RX and wait for next received byte
}
}
Sin embargo, cada vez que ingreso (transmito) cualquier dato de Putty a PIC, el PIC lo lee como "ý";0xff .
El código PIC suma 1 a 0xff y devuelve NULL;0x0 .
La pantalla Puty siempre está en blanco.
¿Cómo puedo transmitir/recibir datos adecuados entre mi PIC y la PC?
¡Gracias de antemano!
Editar: - Verifiqué dos veces la configuración del reloj para UART, etc., sin embargo, cada vez que envío algo desde Puty (caracteres o números), todo lo que recibo en el búfer UART_Rx es "ý"; 0xff .
Para todas las preguntas relacionadas con el tiempo, recomiendo comenzar con algo muy simple que confirme todas las configuraciones del reloj del sistema. Hacer parpadear un LED a una velocidad conocida es una forma de hacerlo.
La configuración del reloj puede ser complicada, y el paso 1 es asegurarse de que lo hizo bien. Incluso si tiene la configuración de su reloj arruinada, los PIC tienden a encontrar un modo para comenzar. Comienzo casi todos los proyectos asegurándome de tener el reloj correcto.
isdi
Sandrocottus
isdi
pjc50
Sandrocottus
Sandrocottus
Sandrocottus
scott seidman
Sandrocottus
Sandrocottus