http://mbed.org/users/okini3939/notebook/melinverter

Dependencies:   mbed RingBuffer MelInverter

Committer:
okini3939
Date:
Thu Mar 29 06:14:05 2012 +0000
Revision:
0:da7944d01fd0

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
okini3939 0:da7944d01fd0 1 #include "mbed.h"
okini3939 0:da7944d01fd0 2 #include "MelInverter.h"
okini3939 0:da7944d01fd0 3
okini3939 0:da7944d01fd0 4 DigitalOut myled(LED1);
okini3939 0:da7944d01fd0 5 Serial pc(USBTX, USBRX);
okini3939 0:da7944d01fd0 6
okini3939 0:da7944d01fd0 7 MelInverter mel(p28, p27);
okini3939 0:da7944d01fd0 8
okini3939 0:da7944d01fd0 9 int main() {
okini3939 0:da7944d01fd0 10 int i;
okini3939 0:da7944d01fd0 11 char c;
okini3939 0:da7944d01fd0 12 char buf[20];
okini3939 0:da7944d01fd0 13
okini3939 0:da7944d01fd0 14 pc.baud(115200);
okini3939 0:da7944d01fd0 15
okini3939 0:da7944d01fd0 16 pc.printf("MelInverter\r\n");
okini3939 0:da7944d01fd0 17
okini3939 0:da7944d01fd0 18 myled = 1;
okini3939 0:da7944d01fd0 19 for (;;) {
okini3939 0:da7944d01fd0 20 if (pc.readable()) {
okini3939 0:da7944d01fd0 21 c = pc.getc();
okini3939 0:da7944d01fd0 22 pc.putc(c);
okini3939 0:da7944d01fd0 23 switch (c) {
okini3939 0:da7944d01fd0 24 case 'r':
okini3939 0:da7944d01fd0 25 // cw
okini3939 0:da7944d01fd0 26 mel.send(0, MELCMD_RUN, "02");
okini3939 0:da7944d01fd0 27 break;
okini3939 0:da7944d01fd0 28 case 'c':
okini3939 0:da7944d01fd0 29 // ccw
okini3939 0:da7944d01fd0 30 mel.send(0, MELCMD_RUN, "04");
okini3939 0:da7944d01fd0 31 break;
okini3939 0:da7944d01fd0 32 case 's':
okini3939 0:da7944d01fd0 33 // stop
okini3939 0:da7944d01fd0 34 mel.send(0, MELCMD_RUN, "00");
okini3939 0:da7944d01fd0 35 break;
okini3939 0:da7944d01fd0 36 case '0':
okini3939 0:da7944d01fd0 37 case '1':
okini3939 0:da7944d01fd0 38 case '2':
okini3939 0:da7944d01fd0 39 case '3':
okini3939 0:da7944d01fd0 40 case '4':
okini3939 0:da7944d01fd0 41 case '5':
okini3939 0:da7944d01fd0 42 case '6':
okini3939 0:da7944d01fd0 43 // freq x10Hz
okini3939 0:da7944d01fd0 44 sprintf(buf, "%04X", (c - '0') * 1000);
okini3939 0:da7944d01fd0 45 mel.send(0, MELCMD_FREQ, buf);
okini3939 0:da7944d01fd0 46 break;
okini3939 0:da7944d01fd0 47 case '?':
okini3939 0:da7944d01fd0 48 // name
okini3939 0:da7944d01fd0 49 mel.send(0, MELCMD_NAME_R, "");
okini3939 0:da7944d01fd0 50 i = mel.recv(0, buf, sizeof(buf) - 1);
okini3939 0:da7944d01fd0 51 buf[i] = 0;
okini3939 0:da7944d01fd0 52 pc.printf("recv: %s\r\n", buf);
okini3939 0:da7944d01fd0 53 break;
okini3939 0:da7944d01fd0 54 }
okini3939 0:da7944d01fd0 55 }
okini3939 0:da7944d01fd0 56 }
okini3939 0:da7944d01fd0 57
okini3939 0:da7944d01fd0 58 }