procvis

Dependencies:   Serial_HL mbed

Fork of ProcVisDemo by michael hollegha

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers ProcVisDemo.cpp Source File

ProcVisDemo.cpp

00001 #include "mbed.h"
00002 #include "Serial_HL.h"
00003 
00004 SerialBLK pc(USBTX, USBRX);
00005 SvProtocol ua0(&pc);
00006 
00007 // V2.0
00008 // BusOut leds(LED1,LED2,LED3,LED4); Bertl14
00009 // M0-Board
00010 //BusOut leds(P1_13,P1_12,P1_7,P1_6,P1_4,P1_3,P1_1,P1_0,LED4,LED3,LED2,LED1);
00011 
00012 
00013 void CommandHandler();
00014 
00015 int main(void)
00016 {
00017     pc.format(8,SerialBLK::None,1);
00018     pc.baud(115200);
00019    // leds = 9;
00020 
00021     ua0.SvMessage("SvTest_Serial_HL"); // Meldung zum PC senden
00022 
00023     int16_t sv1=0, sv2=100;
00024     Timer stw;
00025     stw.start();
00026     while(1) {
00027         CommandHandler();
00028         if( ua0.acqON && (stw.read_ms()>100) ) { // 10Hz
00029             // dieser Teil wird mit 10Hz aufgerufen
00030             stw.reset();
00031             sv1++;
00032             sv2++;
00033             if( ua0.acqON ) {
00034                 // nur wenn vom PC aus das Senden eingeschaltet wurde
00035                 // wird auch etwas gesendet
00036                 ua0.WriteSvI16(1, sv1);
00037                 ua0.WriteSvI16(2, sv2);
00038             }
00039         }
00040     }
00041     return 1;
00042 }
00043 
00044 void CommandHandler()
00045 {
00046     uint8_t cmd;
00047     int16_t idata1, idata2;
00048 
00049     // Fragen ob überhaupt etwas im RX-Reg steht
00050     if( !pc.IsDataAvail() )
00051         return;
00052 
00053     // wenn etwas im RX-Reg steht
00054     // Kommando lesen
00055     cmd = ua0.GetCommand();
00056 
00057     if( cmd==2 ) {
00058         // cmd2 hat 2 int16 Parameter
00059         idata1 = ua0.ReadI16();
00060         idata2 = ua0.ReadI16();
00061         // für die Analyse den Wert einfach nur zum PC zurücksenden
00062         ua0.SvPrintf("Command2 %d %d", idata1, idata2);
00063     }
00064 }
00065 
00066