dd
Dependencies: xtoff2 RF24Network mbed
Fork of xtoff3 by
Transmitter.cpp@16:691649d8a3da, 2018-09-05 (annotated)
- Committer:
- gimohd
- Date:
- Wed Sep 05 07:50:27 2018 +0000
- Revision:
- 16:691649d8a3da
test
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
gimohd | 16:691649d8a3da | 1 | #include "Transmitter.h" |
gimohd | 16:691649d8a3da | 2 | |
gimohd | 16:691649d8a3da | 3 | Serial pc2(USBTX, USBRX); |
gimohd | 16:691649d8a3da | 4 | RF24 radio(spi_MOSI, spi_MISO, spi_SCK, nrf_CE, nrf_CSN ); |
gimohd | 16:691649d8a3da | 5 | RF24Network network(radio); |
gimohd | 16:691649d8a3da | 6 | |
gimohd | 16:691649d8a3da | 7 | RF24NetworkHeader header_rx; |
gimohd | 16:691649d8a3da | 8 | |
gimohd | 16:691649d8a3da | 9 | Ontvanger::Ontvanger() |
gimohd | 16:691649d8a3da | 10 | { |
gimohd | 16:691649d8a3da | 11 | radio.begin(); |
gimohd | 16:691649d8a3da | 12 | network.begin(90, this_node); |
gimohd | 16:691649d8a3da | 13 | wait_ms(2000); |
gimohd | 16:691649d8a3da | 14 | radio.setPALevel(RF24_PA_MIN); |
gimohd | 16:691649d8a3da | 15 | radio.setDataRate(RF24_250KBPS); |
gimohd | 16:691649d8a3da | 16 | }; |
gimohd | 16:691649d8a3da | 17 | |
gimohd | 16:691649d8a3da | 18 | void Ontvanger::update() |
gimohd | 16:691649d8a3da | 19 | { |
gimohd | 16:691649d8a3da | 20 | network.update(); |
gimohd | 16:691649d8a3da | 21 | } |
gimohd | 16:691649d8a3da | 22 | |
gimohd | 16:691649d8a3da | 23 | bool Ontvanger::available() |
gimohd | 16:691649d8a3da | 24 | { |
gimohd | 16:691649d8a3da | 25 | return network.available(); |
gimohd | 16:691649d8a3da | 26 | } |
gimohd | 16:691649d8a3da | 27 | |
gimohd | 16:691649d8a3da | 28 | void Ontvanger::printDetails() |
gimohd | 16:691649d8a3da | 29 | { |
gimohd | 16:691649d8a3da | 30 | radio.printDetails(); |
gimohd | 16:691649d8a3da | 31 | } |
gimohd | 16:691649d8a3da | 32 | |
gimohd | 16:691649d8a3da | 33 | char * Ontvanger::readArray() |
gimohd | 16:691649d8a3da | 34 | { |
gimohd | 16:691649d8a3da | 35 | char * payload_rx; |
gimohd | 16:691649d8a3da | 36 | network.read(header_rx,&payload_rx,sizeof(payload_rx)); |
gimohd | 16:691649d8a3da | 37 | return payload_rx; |
gimohd | 16:691649d8a3da | 38 | } |
gimohd | 16:691649d8a3da | 39 | |
gimohd | 16:691649d8a3da | 40 | bool Ontvanger::writeArray(char * message) |
gimohd | 16:691649d8a3da | 41 | { |
gimohd | 16:691649d8a3da | 42 | RF24NetworkHeader header_tx(other_node); |
gimohd | 16:691649d8a3da | 43 | char packet[128]; |
gimohd | 16:691649d8a3da | 44 | strcpy(packet,message); |
gimohd | 16:691649d8a3da | 45 | |
gimohd | 16:691649d8a3da | 46 | return network.write(header_tx,&packet,sizeof(packet)); |
gimohd | 16:691649d8a3da | 47 | } |
gimohd | 16:691649d8a3da | 48 | |
gimohd | 16:691649d8a3da | 49 | |
gimohd | 16:691649d8a3da | 50 | payload_t Ontvanger::read() |
gimohd | 16:691649d8a3da | 51 | { |
gimohd | 16:691649d8a3da | 52 | payload_t payload_rx; |
gimohd | 16:691649d8a3da | 53 | network.read(header_rx,&payload_rx,sizeof(payload_rx)); |
gimohd | 16:691649d8a3da | 54 | |
gimohd | 16:691649d8a3da | 55 | |
gimohd | 16:691649d8a3da | 56 | return payload_rx; |
gimohd | 16:691649d8a3da | 57 | } |
gimohd | 16:691649d8a3da | 58 | |
gimohd | 16:691649d8a3da | 59 | bool Ontvanger::write(payload_t message) |
gimohd | 16:691649d8a3da | 60 | { |
gimohd | 16:691649d8a3da | 61 | RF24NetworkHeader header_tx(other_node); |
gimohd | 16:691649d8a3da | 62 | payload_t packet; |
gimohd | 16:691649d8a3da | 63 | packet = message; |
gimohd | 16:691649d8a3da | 64 | |
gimohd | 16:691649d8a3da | 65 | return network.write(header_tx,&packet,sizeof(packet)); |
gimohd | 16:691649d8a3da | 66 | } |
gimohd | 16:691649d8a3da | 67 | |
gimohd | 16:691649d8a3da | 68 | bool Ontvanger::isValid() |
gimohd | 16:691649d8a3da | 69 | { |
gimohd | 16:691649d8a3da | 70 | return radio.isValid(); |
gimohd | 16:691649d8a3da | 71 | } |
gimohd | 16:691649d8a3da | 72 | |
gimohd | 16:691649d8a3da | 73 | bool Ontvanger::testRPD() |
gimohd | 16:691649d8a3da | 74 | { |
gimohd | 16:691649d8a3da | 75 | return radio.testRPD(); |
gimohd | 16:691649d8a3da | 76 | } |
gimohd | 16:691649d8a3da | 77 | |
gimohd | 16:691649d8a3da | 78 | void Ontvanger::printMessage(char index){ |
gimohd | 16:691649d8a3da | 79 | switch (index) { |
gimohd | 16:691649d8a3da | 80 | case '1': |
gimohd | 16:691649d8a3da | 81 | pc2.printf("Message: Initializing...\n\r"); |
gimohd | 16:691649d8a3da | 82 | break; |
gimohd | 16:691649d8a3da | 83 | case '2': |
gimohd | 16:691649d8a3da | 84 | pc2.printf("Message: Taring...\n\r"); |
gimohd | 16:691649d8a3da | 85 | break; |
gimohd | 16:691649d8a3da | 86 | case '3': |
gimohd | 16:691649d8a3da | 87 | pc2.printf("Message: Error: Tare first\n\r"); |
gimohd | 16:691649d8a3da | 88 | break; |
gimohd | 16:691649d8a3da | 89 | case '4': |
gimohd | 16:691649d8a3da | 90 | pc2.printf("Message: Tare completed\n\r"); |
gimohd | 16:691649d8a3da | 91 | break; |
gimohd | 16:691649d8a3da | 92 | case '5': |
gimohd | 16:691649d8a3da | 93 | pc2.printf("Message: Error: Tare value to low... Retry\n\r"); |
gimohd | 16:691649d8a3da | 94 | break; |
gimohd | 16:691649d8a3da | 95 | case '6': |
gimohd | 16:691649d8a3da | 96 | pc2.printf("Message: Waiting on the right position...\n\r"); |
gimohd | 16:691649d8a3da | 97 | break; |
gimohd | 16:691649d8a3da | 98 | case '7': |
gimohd | 16:691649d8a3da | 99 | pc2.printf("Message: Wait 5 Seconds on POSITION...\n\r"); |
gimohd | 16:691649d8a3da | 100 | break; |
gimohd | 16:691649d8a3da | 101 | case '8': |
gimohd | 16:691649d8a3da | 102 | pc2.printf("Message: ERROR: Not on position\n\r"); |
gimohd | 16:691649d8a3da | 103 | break; |
gimohd | 16:691649d8a3da | 104 | } |
gimohd | 16:691649d8a3da | 105 | } |
gimohd | 16:691649d8a3da | 106 | |
gimohd | 16:691649d8a3da | 107 |