Robert Mercado
/
serial_com
Virtual Serial USB Communication
main.cpp@0:d48409ed9d39, 2014-11-10 (annotated)
- Committer:
- mercadrs
- Date:
- Mon Nov 10 18:34:47 2014 +0000
- Revision:
- 0:d48409ed9d39
Virtual Serial USB Communication
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mercadrs | 0:d48409ed9d39 | 1 | #include "mbed.h" |
mercadrs | 0:d48409ed9d39 | 2 | #include "USBSerial.h" |
mercadrs | 0:d48409ed9d39 | 3 | #include <iostream> |
mercadrs | 0:d48409ed9d39 | 4 | #include <string> |
mercadrs | 0:d48409ed9d39 | 5 | |
mercadrs | 0:d48409ed9d39 | 6 | //sending data example |
mercadrs | 0:d48409ed9d39 | 7 | //https://developer.mbed.org/forum/helloworld/topic/2579/ |
mercadrs | 0:d48409ed9d39 | 8 | |
mercadrs | 0:d48409ed9d39 | 9 | //Outgoing comm from board to chip |
mercadrs | 0:d48409ed9d39 | 10 | Serial micro(p9, p10);//tx, rx |
mercadrs | 0:d48409ed9d39 | 11 | //Virtual serial port over USB |
mercadrs | 0:d48409ed9d39 | 12 | Serial pc(USBTX, USBRX); |
mercadrs | 0:d48409ed9d39 | 13 | |
mercadrs | 0:d48409ed9d39 | 14 | int main(void) { |
mercadrs | 0:d48409ed9d39 | 15 | pc.printf("%s", "connected...\n"); |
mercadrs | 0:d48409ed9d39 | 16 | //config for outgoing comm |
mercadrs | 0:d48409ed9d39 | 17 | micro.format(8, Serial::None, 1); |
mercadrs | 0:d48409ed9d39 | 18 | micro.baud(9600); //maybe back down to 9600 |
mercadrs | 0:d48409ed9d39 | 19 | |
mercadrs | 0:d48409ed9d39 | 20 | int word_size = 0; |
mercadrs | 0:d48409ed9d39 | 21 | uint8_t arr[50]; |
mercadrs | 0:d48409ed9d39 | 22 | while(1){ |
mercadrs | 0:d48409ed9d39 | 23 | for(int i = 0; i < 50; i++) |
mercadrs | 0:d48409ed9d39 | 24 | { |
mercadrs | 0:d48409ed9d39 | 25 | |
mercadrs | 0:d48409ed9d39 | 26 | arr[i] = pc.getc(); |
mercadrs | 0:d48409ed9d39 | 27 | pc.putc(arr[i]); |
mercadrs | 0:d48409ed9d39 | 28 | word_size += 1; |
mercadrs | 0:d48409ed9d39 | 29 | if(arr[i] == '.'){break;} |
mercadrs | 0:d48409ed9d39 | 30 | } |
mercadrs | 0:d48409ed9d39 | 31 | for(int i = 0; i < word_size; i++) |
mercadrs | 0:d48409ed9d39 | 32 | { |
mercadrs | 0:d48409ed9d39 | 33 | if(micro.writeable()){ |
mercadrs | 0:d48409ed9d39 | 34 | micro.printf("%c", arr[i]); |
mercadrs | 0:d48409ed9d39 | 35 | } |
mercadrs | 0:d48409ed9d39 | 36 | pc.printf("%c", arr[i]); |
mercadrs | 0:d48409ed9d39 | 37 | } |
mercadrs | 0:d48409ed9d39 | 38 | pc.printf("\n"); |
mercadrs | 0:d48409ed9d39 | 39 | |
mercadrs | 0:d48409ed9d39 | 40 | word_size = 0; |
mercadrs | 0:d48409ed9d39 | 41 | } |
mercadrs | 0:d48409ed9d39 | 42 | |
mercadrs | 0:d48409ed9d39 | 43 | } |