USB BARCODE READER
main.cpp@1:a12f904713ed, 2017-02-17 (annotated)
- Committer:
- jamike
- Date:
- Fri Feb 17 12:04:00 2017 +0000
- Revision:
- 1:a12f904713ed
- Parent:
- 0:0282e73ca55b
- Child:
- 2:107b7b44bd35
Fix MSD (improve NYET handling)
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| jamike | 0:0282e73ca55b | 1 | #include "mbed.h" |
| jamike | 0:0282e73ca55b | 2 | #include "USBHostMSD.h" |
| jamike | 0:0282e73ca55b | 3 | DigitalOut led(LED1); |
| jamike | 0:0282e73ca55b | 4 | void msd_task(void const *) { |
| jamike | 0:0282e73ca55b | 5 | printf("init msd\n"); |
| jamike | 1:a12f904713ed | 6 | USBHostMSD *msd; |
| jamike | 0:0282e73ca55b | 7 | int i = 0; |
| jamike | 0:0282e73ca55b | 8 | printf("wait for usb memory stick insertion\n"); |
| jamike | 0:0282e73ca55b | 9 | while(1) { |
| jamike | 1:a12f904713ed | 10 | msd = new USBHostMSD("usb"); |
| jamike | 0:0282e73ca55b | 11 | // try to connect a MSD device |
| jamike | 1:a12f904713ed | 12 | while(!msd->connect()) { |
| jamike | 0:0282e73ca55b | 13 | Thread::wait(500); |
| jamike | 0:0282e73ca55b | 14 | } |
| jamike | 0:0282e73ca55b | 15 | |
| jamike | 0:0282e73ca55b | 16 | // in a loop, append a file |
| jamike | 0:0282e73ca55b | 17 | // if the device is disconnected, we try to connect it again |
| jamike | 0:0282e73ca55b | 18 | |
| jamike | 0:0282e73ca55b | 19 | // append a file |
| jamike | 0:0282e73ca55b | 20 | FILE * fp = fopen("/usb/test1.txt", "a"); |
| jamike | 0:0282e73ca55b | 21 | |
| jamike | 0:0282e73ca55b | 22 | if (fp != NULL) { |
| jamike | 0:0282e73ca55b | 23 | fprintf(fp, "Hello fun SD Card World: %d!\r\n", i++); |
| jamike | 0:0282e73ca55b | 24 | printf("Goodbye World!\r\n"); |
| jamike | 0:0282e73ca55b | 25 | fclose(fp); |
| jamike | 0:0282e73ca55b | 26 | } else { |
| jamike | 0:0282e73ca55b | 27 | printf("FILE == NULL\r\n"); |
| jamike | 0:0282e73ca55b | 28 | } |
| jamike | 0:0282e73ca55b | 29 | Thread::wait(500); |
| jamike | 0:0282e73ca55b | 30 | printf("again\n"); |
| jamike | 0:0282e73ca55b | 31 | // if device disconnected, try to connect again |
| jamike | 1:a12f904713ed | 32 | while (msd->connected()) { |
| jamike | 0:0282e73ca55b | 33 | Thread::wait(500); |
| jamike | 0:0282e73ca55b | 34 | } |
| jamike | 1:a12f904713ed | 35 | delete msd; |
| jamike | 0:0282e73ca55b | 36 | } |
| jamike | 0:0282e73ca55b | 37 | } |
| jamike | 0:0282e73ca55b | 38 | |
| jamike | 0:0282e73ca55b | 39 | int main() { |
| jamike | 0:0282e73ca55b | 40 | Thread msdTask(msd_task, NULL, osPriorityNormal, 1024 * 4); |
| jamike | 0:0282e73ca55b | 41 | while(1) { |
| jamike | 0:0282e73ca55b | 42 | led=!led; |
| jamike | 0:0282e73ca55b | 43 | Thread::wait(500); |
| jamike | 0:0282e73ca55b | 44 | } |
| jamike | 0:0282e73ca55b | 45 | } |