PSL_2021 / Mbed OS new_emetteur

Dependencies:   mbed-os nRF24L01P

Committer:
emerichartmann
Date:
Fri Feb 11 08:19:10 2022 +0000
Revision:
12:155a1ce7c92b
Parent:
11:dfaa218e7949
Child:
13:f8a0252d346e
a;

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 11:dfaa218e7949 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 5:e0a364225ab5 24 {
Owen 0:a51a6e7da590 25
emerichartmann 12:155a1ce7c92b 26 #define TRANSFER_SIZE 12
Owen 0:a51a6e7da590 27
emerichartmann 11:dfaa218e7949 28 char c;
lderr 3:57925f75ede1 29
Owen 0:a51a6e7da590 30
Owen 0:a51a6e7da590 31 my_nrf24l01p.powerUp();
emerichartmann 11:dfaa218e7949 32 my_nrf24l01p.setRfFrequency(2418);
emerichartmann 11:dfaa218e7949 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();
Owen 0:a51a6e7da590 40
Owen 0:a51a6e7da590 41 while (1) {
emerichartmann 11:dfaa218e7949 42 if (pc.readable())
emerichartmann 11:dfaa218e7949 43 {
emerichartmann 12:155a1ce7c92b 44 for (int i=0; i< TRANSFER_SIZE ; i++){
emerichartmann 11:dfaa218e7949 45 pc.read(&c+i,1);
lderr 3:57925f75ede1 46 }
emerichartmann 12:155a1ce7c92b 47 my_nrf24l01p.write( NRF24L01P_PIPE_P0, &c ,TRANSFER_SIZE);
emerichartmann 12:155a1ce7c92b 48 pc.write(&c,TRANSFER_SIZE);
emerichartmann 11:dfaa218e7949 49 }
Owen 0:a51a6e7da590 50 }
emerichartmann 11:dfaa218e7949 51
emerichartmann 11:dfaa218e7949 52
Owen 0:a51a6e7da590 53 }