/* Get current unhandled data entry */
currentDataEntry = RFQueue_getDataEntry();
RSSIout = rxStatistics.lastRssi;
/* Handle the packet data, located at &(currentDataEntry->data):
* - Length is the first byte with the current configuration
* - Data starts from the second byte
*/
packetLength = *(uint8_t *)(&(currentDataEntry->data));
packetDataPointer = (uint8_t *)(&(currentDataEntry->data) + 1);
/* Copy the payload + status byte to the rxPacket variable */
memcpy(rxPacket, packetDataPointer, (packetLength + 1));
/* Check the packet against what was transmitted */
int16_t status = memcmp(returnCheck, rxPacket, checkLength);
> I have tried including the line UART_write(uart, &RSSIout, sizeof(RSSIout)
> below my existing UART_write lines
That seemed a reasonable thing to try.
> However it causes my TX and RX to stop transmitting after a few seconds
Does the thing at the other end understand that you're now sending RSSI information?
In particular, is rxPacket entirely printable characters, and is RSSIout something like a raw integer?
At lot of things complain if you send arbitrary binary data over a UART.
RSSIout is a 8 bit integer value! is there anyway to send a 8 bit sign integer over uart? and is it possible to send two bundles of data (the packet information and the RSSI signal strength) through Uart?
Hi salem sorry to trouble again. now that i have the RSSI value, is it possible to UART_write 2 different information? i am now unable to
char buff[10]; // take a chance that 10 is always enough
sprintf(buff,"%d ",RSSIout);
UART_write(uart, buff, strlen(buff));
UART_write(uart, &Rxpacket, sizeof(rxpacket);
the display only shows
char buff[10]; // take a chance that 10 is always enough
sprintf(buff,"%d ",RSSIout);
UART_write(uart, buff, strlen(buff));
is it possible to display both of this information in the same line?