Space / Mbed 2 deprecated SITAEL_LED-Button_Polling

Dependencies:   mbed

Committer:
pinofal
Date:
Wed Jun 01 10:40:15 2022 +0000
Revision:
3:042d47e3c101
Parent:
2:8cd95bea99dc
Test linee di connessione MIMA-STM32-SC

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pinofal 1:832dfb4ba1af 1 // Tested: NUCLE-L476RG
pinofal 1:832dfb4ba1af 2
pinofal 1:832dfb4ba1af 3 #include "mbed.h"
pinofal 1:832dfb4ba1af 4
pinofal 1:832dfb4ba1af 5 // crea oggetti Button, LED e serialPC
pinofal 1:832dfb4ba1af 6 DigitalIn myButton(USER_BUTTON);
pinofal 1:832dfb4ba1af 7 DigitalOut myLed(LED1);
pinofal 3:042d47e3c101 8 DigitalIn InMIMA(PA_0); //PC_1; PB_0; PA_1; PA_0
pinofal 3:042d47e3c101 9 DigitalOut OutSC(PC_0);
pinofal 3:042d47e3c101 10 DigitalIn InSC(PA_10);
pinofal 3:042d47e3c101 11 DigitalOut OutMIMA(PA_9); //PB_3; PB_6; PC_7; PA_9
pinofal 3:042d47e3c101 12
pinofal 3:042d47e3c101 13
pinofal 3:042d47e3c101 14 Serial pc(USBTX, USBRX, 921600);
pinofal 1:832dfb4ba1af 15
pinofal 1:832dfb4ba1af 16
pinofal 1:832dfb4ba1af 17 /********/
pinofal 1:832dfb4ba1af 18 /* MAIN */
pinofal 1:832dfb4ba1af 19 /********/
pinofal 1:832dfb4ba1af 20 int main()
pinofal 1:832dfb4ba1af 21 {
pinofal 3:042d47e3c101 22 // messaggio di benvenuto
pinofal 3:042d47e3c101 23 pc.printf("\r\nHello World \r\n");
pinofal 3:042d47e3c101 24 myLed = 1; // Accendi LED
pinofal 3:042d47e3c101 25 wait_ms(1000);
pinofal 3:042d47e3c101 26 myLed = 0; // Accendi LED
pinofal 3:042d47e3c101 27 wait_ms(1000);
pinofal 3:042d47e3c101 28
pinofal 2:8cd95bea99dc 29
pinofal 2:8cd95bea99dc 30 //imposta il funzionamento del pulsante come "PullDown": Aperto = '0'. L'altra modalità di funzinamento è PullUp
pinofal 3:042d47e3c101 31 myButton.mode(PullUp);
pinofal 3:042d47e3c101 32 InMIMA.mode(PullUp);
pinofal 3:042d47e3c101 33 InSC.mode(PullUp);
pinofal 1:832dfb4ba1af 34
pinofal 2:8cd95bea99dc 35 // POLLING: replica sul LED myLED lo stato del pulsante myButton
pinofal 2:8cd95bea99dc 36 while(true)
pinofal 2:8cd95bea99dc 37 {
pinofal 3:042d47e3c101 38 //+++++ INIZIO Comunicazione da STM32 verso MIMA ++++++++++++++
pinofal 3:042d47e3c101 39 OutSC=myButton;
pinofal 3:042d47e3c101 40 if (InMIMA == 0)
pinofal 3:042d47e3c101 41 {
pinofal 2:8cd95bea99dc 42 // Button is pressed
pinofal 2:8cd95bea99dc 43 myLed = 1; // Accendi LED
pinofal 3:042d47e3c101 44 pc.printf("InMIMA = 0 \r\n");
pinofal 2:8cd95bea99dc 45 }
pinofal 2:8cd95bea99dc 46 else
pinofal 2:8cd95bea99dc 47 {
pinofal 2:8cd95bea99dc 48 // Button i released
pinofal 2:8cd95bea99dc 49 myLed = 0; // Spegni LED
pinofal 3:042d47e3c101 50 pc.printf("InMIMA = 1 \r\n");
pinofal 2:8cd95bea99dc 51 }
pinofal 3:042d47e3c101 52 //+++++ FINE Comunicazione da STM32 verso MIMA ++++++++++++++
pinofal 3:042d47e3c101 53
pinofal 3:042d47e3c101 54 //+++++ INIZIO Comunicazione da S/C verso STM32 ++++++++++++++
pinofal 3:042d47e3c101 55 OutMIMA=myButton;
pinofal 3:042d47e3c101 56 if (InSC == 0)
pinofal 3:042d47e3c101 57 {
pinofal 3:042d47e3c101 58 // Button is pressed
pinofal 3:042d47e3c101 59 myLed = 1; // Accendi LED
pinofal 3:042d47e3c101 60 pc.printf("InSC = 0 \r\n");
pinofal 3:042d47e3c101 61 }
pinofal 3:042d47e3c101 62 else
pinofal 3:042d47e3c101 63 {
pinofal 3:042d47e3c101 64 // Button i released
pinofal 3:042d47e3c101 65 myLed = 0; // Spegni LED
pinofal 3:042d47e3c101 66 pc.printf("InSC = 1 \r\n");
pinofal 3:042d47e3c101 67 }
pinofal 3:042d47e3c101 68 //+++++ FINE Comunicazione da S/C verso STM32 ++++++++++++++
pinofal 3:042d47e3c101 69
pinofal 3:042d47e3c101 70 pc.printf("\r\n"); // per facilità di lettura
pinofal 3:042d47e3c101 71 wait_ms(200);
pinofal 3:042d47e3c101 72
pinofal 1:832dfb4ba1af 73 }
pinofal 3:042d47e3c101 74
pinofal 3:042d47e3c101 75 }