Example of properly generated strings generated by MCU

Dependencies:   linact mbed

Committer:
henryeherman
Date:
Mon Feb 24 05:55:50 2014 +0000
Revision:
0:5390ac30c076
Initial commit that prints to terminal

Who changed what in which revision?

UserRevisionLine numberNew contents of line
henryeherman 0:5390ac30c076 1 #include "mbed.h"
henryeherman 0:5390ac30c076 2 #include <stdio.h>
henryeherman 0:5390ac30c076 3 #include <linact.hpp>
henryeherman 0:5390ac30c076 4
henryeherman 0:5390ac30c076 5 using namespace IAI;
henryeherman 0:5390ac30c076 6 LinActBuf lbuf;
henryeherman 0:5390ac30c076 7 LinearActuator linact;
henryeherman 0:5390ac30c076 8 DigitalOut myled(LED1);
henryeherman 0:5390ac30c076 9
henryeherman 0:5390ac30c076 10 int main() {
henryeherman 0:5390ac30c076 11 printf("Linear Actuator\r\n");
henryeherman 0:5390ac30c076 12 lbuf.buf[0] = 0x3f;
henryeherman 0:5390ac30c076 13 lbuf.buf[1] = 0x03;
henryeherman 0:5390ac30c076 14 lbuf.buf[2] = 0xf7;
henryeherman 0:5390ac30c076 15 lbuf.buf[3] = 0x00;
henryeherman 0:5390ac30c076 16 lbuf.buf[4] = 0x00;
henryeherman 0:5390ac30c076 17 lbuf.buf[5] = 0x02;
henryeherman 0:5390ac30c076 18 lbuf.len = 6;
henryeherman 0:5390ac30c076 19 lbuf.calc_crc();
henryeherman 0:5390ac30c076 20 printf("%s\r\n", lbuf.as_string());
henryeherman 0:5390ac30c076 21
henryeherman 0:5390ac30c076 22 linact.getGwStatusStr();
henryeherman 0:5390ac30c076 23 printf("GWSTATUS: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 24 linact.getGwStartStr();
henryeherman 0:5390ac30c076 25 printf("GWSTART: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 26
henryeherman 0:5390ac30c076 27 linact.getAxisStatus(0);
henryeherman 0:5390ac30c076 28 printf("Get AXIS 0 Status: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 29
henryeherman 0:5390ac30c076 30 linact.getAxisStatus(1);
henryeherman 0:5390ac30c076 31 printf("Get AXIS 1 Status: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 32
henryeherman 0:5390ac30c076 33 linact.getAxisPos(0);
henryeherman 0:5390ac30c076 34 printf("Get AXIS0 Pos: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 35
henryeherman 0:5390ac30c076 36 linact.getSetAxisPos(1, 1000);
henryeherman 0:5390ac30c076 37 printf("Get Set AXIS0 Pos: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 38
henryeherman 0:5390ac30c076 39 linact.getSetAxisPos(1, 100000001);
henryeherman 0:5390ac30c076 40 printf("Get Set AXIS0 Pos: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 41
henryeherman 0:5390ac30c076 42 linact.getAxisStart(0);
henryeherman 0:5390ac30c076 43 printf("Get Set AXIS0 Start: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 44
henryeherman 0:5390ac30c076 45 linact.getAxisPause(0);
henryeherman 0:5390ac30c076 46 printf("Get Set AXIS0 Pause: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 47
henryeherman 0:5390ac30c076 48 linact.getAxisReset(0);
henryeherman 0:5390ac30c076 49 printf("Get Set AXIS0 Reset: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 50
henryeherman 0:5390ac30c076 51 linact.getAxisBrakeRelease(0);
henryeherman 0:5390ac30c076 52 // It *LOOKS* like the CRC calculation in the datasheet is wrong?
henryeherman 0:5390ac30c076 53 printf("Get Set AXIS0 Brake Release: %s\r\n", linact.buffer.as_string());
henryeherman 0:5390ac30c076 54
henryeherman 0:5390ac30c076 55 printf("\r\n");
henryeherman 0:5390ac30c076 56 linact.send();
henryeherman 0:5390ac30c076 57 printf("\r\n");
henryeherman 0:5390ac30c076 58 //linact.receiveStdin(5);
henryeherman 0:5390ac30c076 59 //linact.receiveStdin(2);
henryeherman 0:5390ac30c076 60
henryeherman 0:5390ac30c076 61 while(1) {
henryeherman 0:5390ac30c076 62 myled = 1;
henryeherman 0:5390ac30c076 63 wait(0.2);
henryeherman 0:5390ac30c076 64 myled = 0;
henryeherman 0:5390ac30c076 65 wait(0.2);
henryeherman 0:5390ac30c076 66 }
henryeherman 0:5390ac30c076 67 }