mbed-os5

Fork of mbed-os-example-blinky by richard misi

main.cpp

Committer:
RCMISbed
Date:
2018-10-15
Revision:
78:aedfba031509
Parent:
77:d67966bc6494

File content as of revision 78:aedfba031509:

#include "mbed.h"

#define TSample        0.001
#define Periode        700
#define onTime          50

DigitalOut led1(LED1);
DigitalOut led2(LED2);
DigitalOut led3(LED3);
DigitalOut led4(LED4);

DigitalOut son(p8);

int wdt = 0;
int ledCT= 1;
int ledON= 0;

Ticker TMainProcess;


void MainProcess_Isr(){
    --wdt; 
    if((wdt< onTime)& (wdt> 0)){ledON= 1;};
    if(wdt<= 0){ledON= 0; wdt= Periode; 
                switch(ledCT){
                        case 1: ledCT= 2; break;
                        case 2: ledCT= 3; break;
                        case 3: ledCT= 4; break;
                        case 4: ledCT= 1; break; 
                        default: break;   
                        };
                };  
                
                switch(ledCT){
                        case 1: led1= ledON; led2= 0; led3= 0; led4= 0;  break;
                        case 2: led1= 0; led2= ledON; led3= 0; led4= 0;  break;
                        case 3: led1= 0; led2= 0; led3= ledON; led4= 0;  break;
                        case 4: led1= 0; led2= 0; led3= 0; led4= ledON;  break;
                        default: led1= 0; led2= 0; led3= 0; led4= 0; break;                        
                        
                        };
               
                
                
    }
    
    

void init(void){
    son= 0;
    TMainProcess.attach(&MainProcess_Isr, TSample); 
    }


// main() runs in its own thread in the OS
void main() {
     init();
     while (true) {};
}