Update to send and receive the new EOF marker.

This commit is contained in:
Jonathan Naylor
2021-08-25 21:11:09 +01:00
parent 7275f65e44
commit 63a8e61a45
8 changed files with 163 additions and 5 deletions
+28 -1
View File
@@ -114,7 +114,7 @@ void CM17TX::process()
}
}
uint8_t CM17TX::writeData(const uint8_t* data, uint8_t length)
uint8_t CM17TX::writeHeader(const uint8_t* data, uint8_t length)
{
if (length != (M17_FRAME_LENGTH_BYTES + 1U))
return 4U;
@@ -129,6 +129,33 @@ uint8_t CM17TX::writeData(const uint8_t* data, uint8_t length)
return 0U;
}
uint8_t CM17TX::writeStream(const uint8_t* data, uint8_t length)
{
if (length != (M17_FRAME_LENGTH_BYTES + 1U))
return 4U;
uint16_t space = m_buffer.getSpace();
if (space < M17_FRAME_LENGTH_BYTES)
return 5U;
for (uint8_t i = 0U; i < M17_FRAME_LENGTH_BYTES; i++)
m_buffer.put(data[i + 1U]);
return 0U;
}
uint8_t CM17TX::writeEOT()
{
uint16_t space = m_buffer.getSpace();
if (space < M17_EOF_LENGTH_BYTES)
return 5U;
for (uint8_t i = 0U; i < M17_EOF_LENGTH_BYTES; i++)
m_buffer.put(M17_EOF_BYTES[i]);
return 0U;
}
void CM17TX::writeByte(uint8_t c)
{
q15_t inBuffer[4U];