code pour piloter les balises

Dependencies:   mbed RF24

Committer:
hamaint
Date:
Thu Dec 13 09:27:07 2018 +0000
Revision:
0:b643b00c78dc
Child:
1:45ed2ebefd5a
coucou

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hamaint 0:b643b00c78dc 1 #include "mbed.h"
hamaint 0:b643b00c78dc 2 #include <RF24.h>
hamaint 0:b643b00c78dc 3
hamaint 0:b643b00c78dc 4
hamaint 0:b643b00c78dc 5 RF24 device(SPI_MOSI, SPI_MISO, SPI_SCK, SPI_CS, D9);
hamaint 0:b643b00c78dc 6 DigitalIn ms(D2);
hamaint 0:b643b00c78dc 7 DigitalIn mybutton(USER_BUTTON);
hamaint 0:b643b00c78dc 8 const uint64_t pipe_address = 0xF0F0F0F0AA;
hamaint 0:b643b00c78dc 9
hamaint 0:b643b00c78dc 10 void receiver();
hamaint 0:b643b00c78dc 11 void transmitter(char* message);
hamaint 0:b643b00c78dc 12
hamaint 0:b643b00c78dc 13 int main() {
hamaint 0:b643b00c78dc 14
hamaint 0:b643b00c78dc 15 device.begin();
hamaint 0:b643b00c78dc 16
hamaint 0:b643b00c78dc 17 while (1){
hamaint 0:b643b00c78dc 18 char message[32] = "nique ta mere";
hamaint 0:b643b00c78dc 19
hamaint 0:b643b00c78dc 20
hamaint 0:b643b00c78dc 21 if (ms){
hamaint 0:b643b00c78dc 22 /*master*/
hamaint 0:b643b00c78dc 23 if (mybutton == 0) {
hamaint 0:b643b00c78dc 24
hamaint 0:b643b00c78dc 25 transmitter(message);
hamaint 0:b643b00c78dc 26 printf("%s => size : %d\r\n",message,sizeof(message));
hamaint 0:b643b00c78dc 27 wait(0.2);
hamaint 0:b643b00c78dc 28
hamaint 0:b643b00c78dc 29 }
hamaint 0:b643b00c78dc 30
hamaint 0:b643b00c78dc 31 } else{
hamaint 0:b643b00c78dc 32 /*slave*/
hamaint 0:b643b00c78dc 33
hamaint 0:b643b00c78dc 34 receiver();
hamaint 0:b643b00c78dc 35
hamaint 0:b643b00c78dc 36 }
hamaint 0:b643b00c78dc 37 }
hamaint 0:b643b00c78dc 38
hamaint 0:b643b00c78dc 39 }
hamaint 0:b643b00c78dc 40
hamaint 0:b643b00c78dc 41 void transmitter(char* message){
hamaint 0:b643b00c78dc 42 device.openWritingPipe(pipe_address);
hamaint 0:b643b00c78dc 43 device.stopListening();
hamaint 0:b643b00c78dc 44 device.write(message,sizeof(message));
hamaint 0:b643b00c78dc 45 }
hamaint 0:b643b00c78dc 46
hamaint 0:b643b00c78dc 47 void receiver(){
hamaint 0:b643b00c78dc 48 device.openReadingPipe(0,pipe_address);
hamaint 0:b643b00c78dc 49 device.startListening();
hamaint 0:b643b00c78dc 50 if (device.available()){
hamaint 0:b643b00c78dc 51 char text[32];
hamaint 0:b643b00c78dc 52 device.read(&text, sizeof(text));
hamaint 0:b643b00c78dc 53 if (text[0]!='\0')
hamaint 0:b643b00c78dc 54 printf("%s size : %d\n\r",text,sizeof(text));
hamaint 0:b643b00c78dc 55 }
hamaint 0:b643b00c78dc 56 }
hamaint 0:b643b00c78dc 57
hamaint 0:b643b00c78dc 58