App1_S5
/
APP4_IRQ
APP4 S5
radio.h@13:b44c1f678aff, 2017-10-22 (annotated)
- Committer:
- Cheroukee
- Date:
- Sun Oct 22 20:20:42 2017 +0000
- Revision:
- 13:b44c1f678aff
- Parent:
- 10:c4629b6c42f8
Needs testing, added CRC calculations and adapted queue code to work with radio
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Cheroukee | 10:c4629b6c42f8 | 1 | |
Cheroukee | 10:c4629b6c42f8 | 2 | #pragma once |
Cheroukee | 1:5fc0c0996264 | 3 | |
Cheroukee | 1:5fc0c0996264 | 4 | #define HEADER_DELIMITER 0b01010101 |
Cheroukee | 1:5fc0c0996264 | 5 | |
Cheroukee | 10:c4629b6c42f8 | 6 | #define HEADER_START 0b01111110 |
Cheroukee | 1:5fc0c0996264 | 7 | |
Cheroukee | 1:5fc0c0996264 | 8 | #define FOOTER_END 0b11111110 |
Cheroukee | 1:5fc0c0996264 | 9 | |
Cheroukee | 1:5fc0c0996264 | 10 | #define MAX_MESSAGE_LENGTH 80 |
Cheroukee | 1:5fc0c0996264 | 11 | |
Cheroukee | 2:fdb34827d964 | 12 | typedef char byte; |
Cheroukee | 1:5fc0c0996264 | 13 | |
Cheroukee | 1:5fc0c0996264 | 14 | typedef struct { |
Cheroukee | 1:5fc0c0996264 | 15 | byte preambule; |
Cheroukee | 1:5fc0c0996264 | 16 | byte start; |
Cheroukee | 1:5fc0c0996264 | 17 | byte options; |
Cheroukee | 1:5fc0c0996264 | 18 | byte length; |
Cheroukee | 13:b44c1f678aff | 19 | byte data[MAX_MESSAGE_LENGTH]; |
Cheroukee | 1:5fc0c0996264 | 20 | byte control; |
Cheroukee | 1:5fc0c0996264 | 21 | byte end; |
Cheroukee | 1:5fc0c0996264 | 22 | } radio_message_t; |
Cheroukee | 1:5fc0c0996264 | 23 | |
Cheroukee | 2:fdb34827d964 | 24 | // API |
Cheroukee | 10:c4629b6c42f8 | 25 | // public functions |
Cheroukee | 3:6ea97936f6fa | 26 | void init_radio_system(); |
Cheroukee | 3:6ea97936f6fa | 27 | |
Cheroukee | 13:b44c1f678aff | 28 | bool send_message(char* buffer, int length); |
Cheroukee | 13:b44c1f678aff | 29 | |
Cheroukee | 13:b44c1f678aff | 30 | bool get_message(radio_message_t* message); |