//! Send a stream of data followed by checksum static void ubx_cfg_send_checksummed(uintptr_t gps_port, const uint8_t *dat, uint16_t len) { // Calculate checksum ubloxTxChecksumReset(); for (uint16_t i = 0; i < len; i++) { ubloxTxChecksum(dat[i]); } // Send buffer followed by checksum PIOS_COM_SendChar(gps_port, UBLOX_SYNC1); PIOS_COM_SendChar(gps_port, UBLOX_SYNC2); PIOS_COM_SendBuffer(gps_port, dat, len); PIOS_COM_SendChar(gps_port, ubloxTxCK_A); PIOS_COM_SendChar(gps_port, ubloxTxCK_B); ubx_cfg_pause_parse(gps_port, UBLOX_WAIT_MS); }
static void TaskHIDTest(void *pvParameters) { uint8_t byte; uint8_t line_buffer[128]; uint16_t line_ix = 0; for(;;) { /* HID Loopback Test */ #if 0 if(PIOS_COM_ReceiveBufferUsed(COM_USB_HID) != 0) { byte = PIOS_COM_ReceiveBuffer(COM_USB_HID); if(byte == '\r' || byte == '\n' || byte == 0) { PIOS_COM_SendFormattedString(COM_USB_HID, "RX: %s\r", line_buffer); PIOS_COM_SendFormattedString(COM_DEBUG_USART, "RX: %s\r", line_buffer); line_ix = 0; } else if(line_ix < sizeof(line_buffer)) { line_buffer[line_ix++] = byte; line_buffer[line_ix] = 0; } } #endif /* HID Loopback Test */ if(PIOS_COM_ReceiveBufferUsed(COM_USART2) != 0) { byte = PIOS_COM_ReceiveBuffer(COM_USART2); #if 0 if(byte == '\r' || byte == '\n' || byte == 0) { PIOS_COM_SendFormattedString(COM_DEBUG_USART, "RX: %s\r", line_buffer); line_ix = 0; } else if(line_ix < sizeof(line_buffer)) { line_buffer[line_ix++] = byte; line_buffer[line_ix] = 0; } #endif PIOS_COM_SendChar(COM_DEBUG_USART, (char)byte); } } }
void SSP_SerialWrite(uint8_t value) { PIOS_COM_SendChar(PIOS_COM_TELEM_RF,value); }