PSL_2021 / Mbed OS new_emetteur

Dependencies:   mbed-os nRF24L01P

Committer:
emerichartmann
Date:
Fri Mar 18 10:03:55 2022 +0000
Revision:
13:f8a0252d346e
Parent:
12:155a1ce7c92b
emetteur;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lderr 3:57925f75ede1 1 /*
evedelegue 10:c24908236b2d 2 RobotCup ENS Paris Saclay 2021-2022
evedelegue 10:c24908236b2d 3 Code by Eve Delegue
evedelegue 10:c24908236b2d 4 2021-12-17
lderr 3:57925f75ede1 5
lderr 3:57925f75ede1 6 Programme communication PC-Robot
lderr 3:57925f75ede1 7 Point de vue : pc
lderr 3:57925f75ede1 8 micro controleur : L432
lderr 3:57925f75ede1 9
lderr 3:57925f75ede1 10 envoi d'une chaine de caractère de taille TRANSFER_SIZE = 20
lderr 3:57925f75ede1 11 */
lderr 3:57925f75ede1 12
Owen 0:a51a6e7da590 13 #include "mbed.h"
Owen 0:a51a6e7da590 14 #include "nRF24L01P.h"
emerichartmann 11:dfaa218e7949 15
emerichartmann 5:e0a364225ab5 16 /* 115200 bit/s */
emerichartmann 13:f8a0252d346e 17 BufferedSerial pc(USBTX, USBRX,115200); // tx, rx
Owen 0:a51a6e7da590 18
Fab2A 2:e309f19062b7 19 //Définition des E/S de la liaison SPI vers le module nRF24L01+
Fab2A 2:e309f19062b7 20 nRF24L01P my_nrf24l01p(D11, D12, D13, A3, D9, A0); // mosi, miso, sck, csn, ce, irq
Owen 0:a51a6e7da590 21
Owen 0:a51a6e7da590 22
lderr 3:57925f75ede1 23 int main()
emerichartmann 13:f8a0252d346e 24 {
Owen 0:a51a6e7da590 25
emerichartmann 12:155a1ce7c92b 26 #define TRANSFER_SIZE 12
Owen 0:a51a6e7da590 27
emerichartmann 13:f8a0252d346e 28 char c[50];
lderr 3:57925f75ede1 29
Owen 0:a51a6e7da590 30
Owen 0:a51a6e7da590 31 my_nrf24l01p.powerUp();
emerichartmann 13:f8a0252d346e 32 my_nrf24l01p.setRfFrequency(2406);
emerichartmann 13:f8a0252d346e 33 my_nrf24l01p.setAirDataRate(1000);
lderr 3:57925f75ede1 34 my_nrf24l01p.setRfOutputPower(-6);
Owen 0:a51a6e7da590 35 my_nrf24l01p.setTransferSize( TRANSFER_SIZE );
emerichartmann 7:cc8f8fd07dcd 36 my_nrf24l01p.setTransmitMode();
emerichartmann 11:dfaa218e7949 37 my_nrf24l01p.setCrcWidth(0);
emerichartmann 11:dfaa218e7949 38 my_nrf24l01p.setTxAddress();
Owen 0:a51a6e7da590 39 my_nrf24l01p.enable();
emerichartmann 13:f8a0252d346e 40 DigitalOut led1(D4);
emerichartmann 13:f8a0252d346e 41 DigitalOut led2(D5);
Owen 0:a51a6e7da590 42
Owen 0:a51a6e7da590 43 while (1) {
emerichartmann 13:f8a0252d346e 44 for (int i=0; i< TRANSFER_SIZE ; i++) {
emerichartmann 13:f8a0252d346e 45 while(!pc.readable());
emerichartmann 13:f8a0252d346e 46 led1 = !led1;
emerichartmann 13:f8a0252d346e 47 pc.read(c+i,1);
emerichartmann 13:f8a0252d346e 48 }
emerichartmann 13:f8a0252d346e 49 led2 = !led2;
emerichartmann 13:f8a0252d346e 50 my_nrf24l01p.write( NRF24L01P_PIPE_P0, c,TRANSFER_SIZE);
emerichartmann 13:f8a0252d346e 51 //pc.write(c,TRANSFER_SIZE);
emerichartmann 13:f8a0252d346e 52 }
emerichartmann 11:dfaa218e7949 53 }
emerichartmann 13:f8a0252d346e 54
emerichartmann 13:f8a0252d346e 55
emerichartmann 13:f8a0252d346e 56