Paul Clarke
/
JTAG_Programmer_copy
Currently Non-working JTAG programmer
main.cpp@0:a23e8a7c9275, 2012-06-28 (annotated)
- Committer:
- monpjc
- Date:
- Thu Jun 28 13:36:55 2012 +0000
- Revision:
- 0:a23e8a7c9275
new
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
monpjc | 0:a23e8a7c9275 | 1 | #include "mbed.h" |
monpjc | 0:a23e8a7c9275 | 2 | #include "micro.h" |
monpjc | 0:a23e8a7c9275 | 3 | |
monpjc | 0:a23e8a7c9275 | 4 | DigitalOut led_1(LED1); |
monpjc | 0:a23e8a7c9275 | 5 | DigitalOut led_2(LED2); |
monpjc | 0:a23e8a7c9275 | 6 | DigitalOut led_3(LED3); |
monpjc | 0:a23e8a7c9275 | 7 | DigitalOut led_4(LED4); |
monpjc | 0:a23e8a7c9275 | 8 | |
monpjc | 0:a23e8a7c9275 | 9 | LocalFileSystem local("local"); |
monpjc | 0:a23e8a7c9275 | 10 | Serial pc(USBTX, USBRX); |
monpjc | 0:a23e8a7c9275 | 11 | |
monpjc | 0:a23e8a7c9275 | 12 | FILE *fp; |
monpjc | 0:a23e8a7c9275 | 13 | |
monpjc | 0:a23e8a7c9275 | 14 | int main() { |
monpjc | 0:a23e8a7c9275 | 15 | led_1 = 1; |
monpjc | 0:a23e8a7c9275 | 16 | led_2 = 1; |
monpjc | 0:a23e8a7c9275 | 17 | led_3 = 1; |
monpjc | 0:a23e8a7c9275 | 18 | led_4 = 1; |
monpjc | 0:a23e8a7c9275 | 19 | wait(1); |
monpjc | 0:a23e8a7c9275 | 20 | pc.printf("\nJTAG Programmer\nLooking for /local/XSVF.bit\n"); |
monpjc | 0:a23e8a7c9275 | 21 | led_1 = 0; |
monpjc | 0:a23e8a7c9275 | 22 | led_2 = 0; |
monpjc | 0:a23e8a7c9275 | 23 | led_3 = 0; |
monpjc | 0:a23e8a7c9275 | 24 | led_4 = 0; |
monpjc | 0:a23e8a7c9275 | 25 | wait(1); |
monpjc | 0:a23e8a7c9275 | 26 | led_1 = 1; //Program Started |
monpjc | 0:a23e8a7c9275 | 27 | |
monpjc | 0:a23e8a7c9275 | 28 | FILE *fp = fopen("/local/XSVF.bit", "rb"); |
monpjc | 0:a23e8a7c9275 | 29 | |
monpjc | 0:a23e8a7c9275 | 30 | if (fp == NULL) { |
monpjc | 0:a23e8a7c9275 | 31 | pc.printf("Failed to open file\n"); |
monpjc | 0:a23e8a7c9275 | 32 | while(1) //blink LED2 as a error |
monpjc | 0:a23e8a7c9275 | 33 | { |
monpjc | 0:a23e8a7c9275 | 34 | led_2 = 1; |
monpjc | 0:a23e8a7c9275 | 35 | wait(1); |
monpjc | 0:a23e8a7c9275 | 36 | led_2 = 0; |
monpjc | 0:a23e8a7c9275 | 37 | wait(0.2); |
monpjc | 0:a23e8a7c9275 | 38 | } |
monpjc | 0:a23e8a7c9275 | 39 | } else { |
monpjc | 0:a23e8a7c9275 | 40 | pc.printf("Binary file opened successfully\n"); |
monpjc | 0:a23e8a7c9275 | 41 | led_2 = 1; // file open, starting programming progress |
monpjc | 0:a23e8a7c9275 | 42 | xsvfExecute(); |
monpjc | 0:a23e8a7c9275 | 43 | fclose(fp); |
monpjc | 0:a23e8a7c9275 | 44 | } |
monpjc | 0:a23e8a7c9275 | 45 | |
monpjc | 0:a23e8a7c9275 | 46 | pc.printf("Programming complted\n"); |
monpjc | 0:a23e8a7c9275 | 47 | while(1) |
monpjc | 0:a23e8a7c9275 | 48 | { |
monpjc | 0:a23e8a7c9275 | 49 | led_4 = 1; |
monpjc | 0:a23e8a7c9275 | 50 | wait(1); |
monpjc | 0:a23e8a7c9275 | 51 | led_4 = 0; |
monpjc | 0:a23e8a7c9275 | 52 | wait(0.2); |
monpjc | 0:a23e8a7c9275 | 53 | } |
monpjc | 0:a23e8a7c9275 | 54 | } |