| 964 | } |
| 965 | |
| 966 | void DataTransfer::StartNextTransfer() noexcept |
| 967 | { |
| 968 | lastTransferNumber = rxHeader.sequenceNumber; |
| 969 | |
| 970 | // Reset RX transfer header |
| 971 | rxHeader.formatCode = InvalidFormatCode; |
| 972 | rxHeader.numPackets = 0; |
| 973 | rxHeader.protocolVersion = 0; |
| 974 | rxHeader.dataLength = 0; |
| 975 | rxHeader.crcData = 0; |
| 976 | rxHeader.crcHeader = 0; |
| 977 | |
| 978 | // Set up TX transfer header |
| 979 | txHeader.numPackets = packetId; |
| 980 | txHeader.sequenceNumber++; |
| 981 | txHeader.dataLength = txPointer; |
| 982 | txHeader.crcData = CalcCRC32(txBuffer, txPointer); |
| 983 | txHeader.crcHeader = CalcCRC32(reinterpret_cast<const char *>(&txHeader), sizeof(TransferHeader) - sizeof(uint32_t)); |
| 984 | |
| 985 | // Begin SPI transfer |
| 986 | ExchangeHeader(); |
| 987 | } |
| 988 | |
| 989 | void DataTransfer::ResetConnection(bool fullReset) noexcept |
| 990 | { |
no outgoing calls
no test coverage detected