semihost server example program
Dependencies: SWD mbed USBLocalFileSystem BaseDAP USBDAP
LPCXpresso LPC11U68 | LPCXpresso LPC1549 | FRDM-KL46Z | EA LPC4088 QSB app-board | LPC1768 app-board | LPC810 | LPC1114FN28 | |
---|---|---|---|---|---|---|---|
server | server | server | server | server | client | client | |
SWDIO | D12 | D12 | D12 | p25 | p21 | p4(P0_2) | p12 |
SWCLK | D10 | D10 | D10 | p26 | p22 | p3(P0_3) | p3 |
nRESET *option | D6 | D6 | D6 | p34 | p30 | p1(P0_5) | p23 |
GND | GND | GND | GND | p1 | p1 | p7 | p22 |
3.3V | P3V3 | P3V3 | P3V3 | p44 | p40 | p6 | p21 |
flash write | SW2(P0_1) | SW3(P1_9) | SW1 | p14 joystick center | p14 joystick center |
client example:
Import programlpc810-semihost_helloworld
semihost client example program
Diff: Flash.h
- Revision:
- 9:7e71c20c96e4
- Parent:
- 8:d7f5d80531e4
- Child:
- 14:e6acf863207e
--- a/Flash.h Tue Feb 18 09:32:40 2014 +0000 +++ b/Flash.h Thu Feb 20 09:43:03 2014 +0000 @@ -40,6 +40,12 @@ IAP_STATUS remoteIAP(IAP_CMD cmd, uint32_t p0=0, uint32_t p1=0, uint32_t p2=0, uint32_t p3=0); uint32_t part_id; + void attachEvent(void (*ptr)()) { + if (ptr != NULL) { + onUpdate = ptr; + } + } + private: void _setup(); bool remoteREG(uint32_t addr, uint32_t value); @@ -50,11 +56,18 @@ bool sector_head(int addr); bool _write_to_ram(int addr, int size, const uint8_t* buf); bool _patch(uint8_t* buf, int size, int addr); + void (*onUpdate)(); + void update() { + if (onUpdate) { + (*onUpdate)(); + } + } struct { int iap_cclk; int sector_size; } cfg; + protected: Target2* _target; Serial* _pc;