Get accesss to GPIO Registers from serial port

Dependencies:   mbed

Committer:
jm
Date:
Sat Feb 12 16:36:31 2011 +0000
Revision:
0:35df659aaddf
General IO Command Line Interface

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jm 0:35df659aaddf 1 /*************************************************************************
jm 0:35df659aaddf 2 * @file main.cpp
jm 0:35df659aaddf 3 *
jm 0:35df659aaddf 4 * @version 1.0
jm 0:35df659aaddf 5 * @date Feb 11, 2011
jm 0:35df659aaddf 6 */
jm 0:35df659aaddf 7
jm 0:35df659aaddf 8 #include "mbed.h"
jm 0:35df659aaddf 9
jm 0:35df659aaddf 10 // Basic includes
jm 0:35df659aaddf 11 #include "jmInterpreter.h"
jm 0:35df659aaddf 12 #include "jmRingBuffer.h"
jm 0:35df659aaddf 13 #include "jmCommands.h"
jm 0:35df659aaddf 14 #include "jmMessages.h"
jm 0:35df659aaddf 15 #include "LPC17xx.h"
jm 0:35df659aaddf 16
jm 0:35df659aaddf 17 LPC_GPIO_TypeDef *jmGPIO[5] ={LPC_GPIO0,LPC_GPIO1,LPC_GPIO2,LPC_GPIO3,LPC_GPIO4};
jm 0:35df659aaddf 18
jm 0:35df659aaddf 19 // CLIG-INCLUDE
jm 0:35df659aaddf 20 #include "jmLPC17xx_gpio.h"
jm 0:35df659aaddf 21
jm 0:35df659aaddf 22
jm 0:35df659aaddf 23 // Initializations
jm 0:35df659aaddf 24 void Inits(){
jm 0:35df659aaddf 25 InitCommandLineRingBuffer();
jm 0:35df659aaddf 26 InitMessages();
jm 0:35df659aaddf 27 cli_version();
jm 0:35df659aaddf 28
jm 0:35df659aaddf 29 // CLIG-INIT
jm 0:35df659aaddf 30
jm 0:35df659aaddf 31 }
jm 0:35df659aaddf 32
jm 0:35df659aaddf 33 // EggTimer tickers for modules
jm 0:35df659aaddf 34 void eggTimers(){
jm 0:35df659aaddf 35 int i;
jm 0:35df659aaddf 36 // CLIG-TIMER
jm 0:35df659aaddf 37
jm 0:35df659aaddf 38 }
jm 0:35df659aaddf 39
jm 0:35df659aaddf 40 int main() {
jm 0:35df659aaddf 41 unsigned char c;
jm 0:35df659aaddf 42 Serial pc(USBTX, USBRX); // communication medium
jm 0:35df659aaddf 43 pc.baud(115200); // 115200 bauds, 8bits, 1 stop, no control flow
jm 0:35df659aaddf 44 Ticker tick; // enable system ticks
jm 0:35df659aaddf 45 tick.attach_us(&eggTimers,1000); // enable and select granularity for egg timers
jm 0:35df659aaddf 46 Inits(); // initialization
jm 0:35df659aaddf 47
jm 0:35df659aaddf 48 while(true){
jm 0:35df659aaddf 49 if( pc.readable()){ // something to read ?
jm 0:35df659aaddf 50 c= pc.getc(); // read one char
jm 0:35df659aaddf 51
jm 0:35df659aaddf 52 if(Echo) printf("%c",c); // echo it ?
jm 0:35df659aaddf 53
jm 0:35df659aaddf 54 switch(c){ // process it
jm 0:35df659aaddf 55
jm 0:35df659aaddf 56 case 8 : DelChar(pLine); // remove last one
jm 0:35df659aaddf 57 break;
jm 0:35df659aaddf 58 case 10 : Insert(c,pLine); // end of line
jm 0:35df659aaddf 59 Interpret();// process line
jm 0:35df659aaddf 60 break;
jm 0:35df659aaddf 61 default : Insert(c,pLine); // insert char in command line buffer
jm 0:35df659aaddf 62 }
jm 0:35df659aaddf 63 } // if
jm 0:35df659aaddf 64
jm 0:35df659aaddf 65 // CLIG-SM
jm 0:35df659aaddf 66
jm 0:35df659aaddf 67
jm 0:35df659aaddf 68 }// while
jm 0:35df659aaddf 69 }// main
jm 0:35df659aaddf 70
jm 0:35df659aaddf 71
jm 0:35df659aaddf 72