mbed Dev board test program

Dependencies:   EthernetNetIf mbed HTTPServer SerialLCD

Committer:
pangsk
Date:
Mon Jul 11 15:02:04 2011 +0000
Revision:
0:0f36b9fac4c5

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pangsk 0:0f36b9fac4c5 1 #include "mbed.h"
pangsk 0:0f36b9fac4c5 2 #include "SerialLCD.h"
pangsk 0:0f36b9fac4c5 3 #include "SDFileSystem.h"
pangsk 0:0f36b9fac4c5 4 #include "MSCFileSystem.h"
pangsk 0:0f36b9fac4c5 5 #include "EthernetNetIf.h"
pangsk 0:0f36b9fac4c5 6 #include "HTTPServer.h"
pangsk 0:0f36b9fac4c5 7
pangsk 0:0f36b9fac4c5 8 DigitalOut myled(LED1);
pangsk 0:0f36b9fac4c5 9 SerialLCD lcd(p9,p10);
pangsk 0:0f36b9fac4c5 10 DigitalOut led1 (LED1);
pangsk 0:0f36b9fac4c5 11 DigitalOut led2 (LED2);
pangsk 0:0f36b9fac4c5 12 DigitalOut led3 (LED3);
pangsk 0:0f36b9fac4c5 13 DigitalOut led4 (LED4);
pangsk 0:0f36b9fac4c5 14
pangsk 0:0f36b9fac4c5 15 //locate ( int column,int row )
pangsk 0:0f36b9fac4c5 16 DigitalIn click(p21); // Joystick inputs
pangsk 0:0f36b9fac4c5 17 DigitalIn right(p22);
pangsk 0:0f36b9fac4c5 18 DigitalIn down(p23);
pangsk 0:0f36b9fac4c5 19 DigitalIn left(p24);
pangsk 0:0f36b9fac4c5 20 DigitalIn up(p25);
pangsk 0:0f36b9fac4c5 21
pangsk 0:0f36b9fac4c5 22 SDFileSystem sd(p5, p6, p7, p13, "sd");
pangsk 0:0f36b9fac4c5 23 MSCFileSystem fs("fs");
pangsk 0:0f36b9fac4c5 24 AnalogIn ain(p20);
pangsk 0:0f36b9fac4c5 25 #include "HTTPServer.h"
pangsk 0:0f36b9fac4c5 26
pangsk 0:0f36b9fac4c5 27 EthernetNetIf eth;
pangsk 0:0f36b9fac4c5 28 HTTPServer svr;
pangsk 0:0f36b9fac4c5 29 void sd_demo(void);
pangsk 0:0f36b9fac4c5 30 void eth_demo(void);
pangsk 0:0f36b9fac4c5 31 void usb_demo(void);
pangsk 0:0f36b9fac4c5 32
pangsk 0:0f36b9fac4c5 33 int main() {
pangsk 0:0f36b9fac4c5 34 wait(2); // Wait for LCD to startup
pangsk 0:0f36b9fac4c5 35 lcd.cls();
pangsk 0:0f36b9fac4c5 36 lcd.printf("U-USB:D-ETH:L-SD");
pangsk 0:0f36b9fac4c5 37 // lcd.locate(0,0);
pangsk 0:0f36b9fac4c5 38 lcd.printf("");
pangsk 0:0f36b9fac4c5 39 while(1) // Wait until option is selected by the joystick
pangsk 0:0f36b9fac4c5 40 {
pangsk 0:0f36b9fac4c5 41
pangsk 0:0f36b9fac4c5 42 if(down == 0) eth_demo();
pangsk 0:0f36b9fac4c5 43 if(left == 0) sd_demo();
pangsk 0:0f36b9fac4c5 44
pangsk 0:0f36b9fac4c5 45 if(up == 0) usb_demo();
pangsk 0:0f36b9fac4c5 46
pangsk 0:0f36b9fac4c5 47 }
pangsk 0:0f36b9fac4c5 48 while(1) {
pangsk 0:0f36b9fac4c5 49 myled = 1;
pangsk 0:0f36b9fac4c5 50 wait(0.2);
pangsk 0:0f36b9fac4c5 51 myled = 0;
pangsk 0:0f36b9fac4c5 52 wait(0.2);
pangsk 0:0f36b9fac4c5 53 }
pangsk 0:0f36b9fac4c5 54 }
pangsk 0:0f36b9fac4c5 55
pangsk 0:0f36b9fac4c5 56 void eth_demo(void)
pangsk 0:0f36b9fac4c5 57 {
pangsk 0:0f36b9fac4c5 58
pangsk 0:0f36b9fac4c5 59 printf("Setting up23423...\n");
pangsk 0:0f36b9fac4c5 60 EthernetErr ethErr = eth.setup();
pangsk 0:0f36b9fac4c5 61 if(ethErr)
pangsk 0:0f36b9fac4c5 62 {
pangsk 0:0f36b9fac4c5 63 printf("Error %d in setup.\n", ethErr);
pangsk 0:0f36b9fac4c5 64
pangsk 0:0f36b9fac4c5 65 }
pangsk 0:0f36b9fac4c5 66 printf("Setup OK\n");
pangsk 0:0f36b9fac4c5 67
pangsk 0:0f36b9fac4c5 68 svr.addHandler<SimpleHandler>("/"); //Default handler
pangsk 0:0f36b9fac4c5 69 svr.bind(80);
pangsk 0:0f36b9fac4c5 70
pangsk 0:0f36b9fac4c5 71 printf("Listening..d.\n");
pangsk 0:0f36b9fac4c5 72
pangsk 0:0f36b9fac4c5 73
pangsk 0:0f36b9fac4c5 74
pangsk 0:0f36b9fac4c5 75 printf("more...");
pangsk 0:0f36b9fac4c5 76
pangsk 0:0f36b9fac4c5 77
pangsk 0:0f36b9fac4c5 78 Timer tm;
pangsk 0:0f36b9fac4c5 79 tm.start();
pangsk 0:0f36b9fac4c5 80 //Listen indefinitely
pangsk 0:0f36b9fac4c5 81 while(true)
pangsk 0:0f36b9fac4c5 82 {
pangsk 0:0f36b9fac4c5 83 Net::poll();
pangsk 0:0f36b9fac4c5 84 if(tm.read()>.5)
pangsk 0:0f36b9fac4c5 85 {
pangsk 0:0f36b9fac4c5 86 led1=!led1; //Show that we are alive
pangsk 0:0f36b9fac4c5 87 tm.start();
pangsk 0:0f36b9fac4c5 88 }
pangsk 0:0f36b9fac4c5 89 }
pangsk 0:0f36b9fac4c5 90 }
pangsk 0:0f36b9fac4c5 91
pangsk 0:0f36b9fac4c5 92 void sd_demo(void)
pangsk 0:0f36b9fac4c5 93 {
pangsk 0:0f36b9fac4c5 94 lcd.cls();
pangsk 0:0f36b9fac4c5 95 lcd.printf("SD demo");
pangsk 0:0f36b9fac4c5 96 wait(2);
pangsk 0:0f36b9fac4c5 97 lcd.cls();
pangsk 0:0f36b9fac4c5 98
pangsk 0:0f36b9fac4c5 99 FILE *fp = fopen("/sd/sdtest2.txt", "w");
pangsk 0:0f36b9fac4c5 100 if(fp == NULL) {
pangsk 0:0f36b9fac4c5 101 lcd.cls();
pangsk 0:0f36b9fac4c5 102 lcd.printf("Could not open file for write\n");
pangsk 0:0f36b9fac4c5 103 }
pangsk 0:0f36b9fac4c5 104 fprintf(fp, "Hello fun SD Card World! testing 1234");
pangsk 0:0f36b9fac4c5 105 fclose(fp);
pangsk 0:0f36b9fac4c5 106 lcd.locate(0,1);
pangsk 0:0f36b9fac4c5 107 lcd.printf("Writtern to SD card");
pangsk 0:0f36b9fac4c5 108
pangsk 0:0f36b9fac4c5 109 while(1)
pangsk 0:0f36b9fac4c5 110 {
pangsk 0:0f36b9fac4c5 111 led2 = 1;
pangsk 0:0f36b9fac4c5 112 wait(0.1);
pangsk 0:0f36b9fac4c5 113 led2 = 0;
pangsk 0:0f36b9fac4c5 114 wait(0.1);
pangsk 0:0f36b9fac4c5 115
pangsk 0:0f36b9fac4c5 116 }
pangsk 0:0f36b9fac4c5 117
pangsk 0:0f36b9fac4c5 118
pangsk 0:0f36b9fac4c5 119 }
pangsk 0:0f36b9fac4c5 120
pangsk 0:0f36b9fac4c5 121
pangsk 0:0f36b9fac4c5 122 void usb_demo(void)
pangsk 0:0f36b9fac4c5 123 {
pangsk 0:0f36b9fac4c5 124 FILE *fp = fopen("/fs/data.csv", "w");
pangsk 0:0f36b9fac4c5 125 for (int i=0; i<100; i++) {
pangsk 0:0f36b9fac4c5 126 fprintf(fp,"%.2f\n",ain.read());
pangsk 0:0f36b9fac4c5 127 wait(0.05);
pangsk 0:0f36b9fac4c5 128 }
pangsk 0:0f36b9fac4c5 129
pangsk 0:0f36b9fac4c5 130
pangsk 0:0f36b9fac4c5 131 fclose(fp);
pangsk 0:0f36b9fac4c5 132
pangsk 0:0f36b9fac4c5 133 while(1)
pangsk 0:0f36b9fac4c5 134 {
pangsk 0:0f36b9fac4c5 135 led2 = 1;
pangsk 0:0f36b9fac4c5 136 wait(0.1);
pangsk 0:0f36b9fac4c5 137 led2 = 0;
pangsk 0:0f36b9fac4c5 138 wait(0.1);
pangsk 0:0f36b9fac4c5 139
pangsk 0:0f36b9fac4c5 140 }
pangsk 0:0f36b9fac4c5 141
pangsk 0:0f36b9fac4c5 142
pangsk 0:0f36b9fac4c5 143
pangsk 0:0f36b9fac4c5 144 }