Nuvoton
/
NuMaker-mbed-noXRAM-example
NuMaker without external SRAM configuration
main.cpp@3:d4c3ead6f4c7, 2017-07-11 (annotated)
- Committer:
- ccli8
- Date:
- Tue Jul 11 10:41:01 2017 +0800
- Revision:
- 3:d4c3ead6f4c7
- Parent:
- 1:a3b9047e5ae0
Update mbed-os to mbed-os-5.5.2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ccli8 | 0:763694026416 | 1 | #include "mbed.h" |
ccli8 | 0:763694026416 | 2 | |
ccli8 | 0:763694026416 | 3 | // main() runs in its own thread in the OS |
ccli8 | 0:763694026416 | 4 | int main() { |
ccli8 | 0:763694026416 | 5 | |
ccli8 |
1:a3b9047e5ae0 | 6 | while (true) { |
ccli8 |
1:a3b9047e5ae0 | 7 | void *heap = new uint8_t[32]; |
ccli8 |
1:a3b9047e5ae0 | 8 | |
ccli8 |
1:a3b9047e5ae0 | 9 | uint32_t heap_ = ((uint32_t) heap) & 0xF0000000; |
ccli8 |
1:a3b9047e5ae0 | 10 | switch (heap_) { |
ccli8 |
1:a3b9047e5ae0 | 11 | case 0x20000000: |
ccli8 |
1:a3b9047e5ae0 | 12 | printf("Heap allocated at 0x%08x (IRAM)\r\n", heap); |
ccli8 |
1:a3b9047e5ae0 | 13 | break; |
ccli8 |
1:a3b9047e5ae0 | 14 | |
ccli8 |
1:a3b9047e5ae0 | 15 | case 0x60000000: |
ccli8 |
1:a3b9047e5ae0 | 16 | printf("Heap allocated at 0x%08x (XRAM)\r\n", heap); |
ccli8 |
1:a3b9047e5ae0 | 17 | break; |
ccli8 |
1:a3b9047e5ae0 | 18 | |
ccli8 |
1:a3b9047e5ae0 | 19 | default: |
ccli8 |
1:a3b9047e5ae0 | 20 | printf("Heap allocated at 0x%08x (ILLEGAL)\r\n", heap); |
ccli8 |
1:a3b9047e5ae0 | 21 | } |
ccli8 |
1:a3b9047e5ae0 | 22 | |
ccli8 |
1:a3b9047e5ae0 | 23 | delete [] heap; |
ccli8 |
1:a3b9047e5ae0 | 24 | heap = NULL; |
ccli8 |
1:a3b9047e5ae0 | 25 | |
ccli8 |
1:a3b9047e5ae0 | 26 | wait(2.0); |
ccli8 |
1:a3b9047e5ae0 | 27 | } |
ccli8 |
1:a3b9047e5ae0 | 28 | |
ccli8 | 0:763694026416 | 29 | return 0; |
ccli8 | 0:763694026416 | 30 | } |