void serialEventRun(void)
{
  if (Serial.available()) serialEvent();
  if (Serial1.available()) serialEvent1();
  if (Serial2.available()) serialEvent2();
  if (Serial3.available()) serialEvent3();
}
Beispiel #2
0
/**
 *  Reads in a packet from the buffer
 *
 *  @param serialPort Which serial port to read from
 *
 *  @return PacketStatus indicating validity of packet
 */
PacketStatus RXPacket::readPacket(USARTClass serialPort) {
    serialPort.readBytes(_data, RX_PACKET_SIZE);
    uint16_t checksum = _data[RXCHECKSUM+1] << 8;
    checksum += _data[RXCHECKSUM];
    if (computeChecksum() == checksum) {
        return VALID_PACKET;
    } else {
        return INVALID_PACKET;
    }
}
void USART3_Handler(void)
{
  Serial3.IrqHandler();
}
void USART1_Handler(void)
{
  Serial2.IrqHandler();
}
// IT handlers
void USART0_Handler(void)
{
  Serial1.IrqHandler();
}
//Serial.begin() mapped to USART3(PC10,PC11)
void USART3_IRQHandler(void) 
{
  Serial.IrqHandler();
}
// IT handlers
void USART1_IRQHandler(void) 
{
  Serial.IrqHandler();//USART1 must be Serial,for usart flash programming.
}