Norimasa Okamoto
/
pymite
python-on-a-chip online compiler
- http://pymbed.appspot.com/
- https://code.google.com/p/python-on-a-chip/
- http://www.youtube.com/watch?v=Oyqc2bFRW9I
- https://bitbucket.org/va009039/pymbed/
more info: python-on-a-chip
platform/mbed/main.cpp@14:5abe76ac7caf, 2016-04-14 (annotated)
- Committer:
- va009039
- Date:
- Thu Apr 14 11:36:03 2016 +0000
- Revision:
- 14:5abe76ac7caf
- Parent:
- 11:0522cf53ac30
- Child:
- 15:94ca5c8003e5
added Nucleo-F446RE(head:120Kbytes)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
va009039 | 0:65f1469d6bfb | 1 | /* |
va009039 | 0:65f1469d6bfb | 2 | # This file is Copyright 2009 Dean Hall. |
va009039 | 0:65f1469d6bfb | 3 | # |
va009039 | 0:65f1469d6bfb | 4 | # This file is part of the Python-on-a-Chip program. |
va009039 | 0:65f1469d6bfb | 5 | # Python-on-a-Chip is free software: you can redistribute it and/or modify |
va009039 | 0:65f1469d6bfb | 6 | # it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1. |
va009039 | 0:65f1469d6bfb | 7 | # |
va009039 | 0:65f1469d6bfb | 8 | # Python-on-a-Chip is distributed in the hope that it will be useful, |
va009039 | 0:65f1469d6bfb | 9 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
va009039 | 0:65f1469d6bfb | 10 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
va009039 | 0:65f1469d6bfb | 11 | # A copy of the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1 |
va009039 | 0:65f1469d6bfb | 12 | # is seen in the file COPYING up one directory from this. |
va009039 | 0:65f1469d6bfb | 13 | */ |
va009039 | 0:65f1469d6bfb | 14 | |
va009039 | 0:65f1469d6bfb | 15 | |
va009039 | 0:65f1469d6bfb | 16 | #include "pm.h" |
va009039 | 0:65f1469d6bfb | 17 | |
va009039 | 5:19bd98307341 | 18 | #if defined(TARGET_LPC1768) |
va009039 | 0:65f1469d6bfb | 19 | #define HEAP_SIZE 0x7000 |
va009039 | 8:88d4fba4ccd5 | 20 | #define USRLIB_IMG (uint8_t*)77824 |
va009039 | 8:88d4fba4ccd5 | 21 | |
va009039 | 5:19bd98307341 | 22 | #elif defined(TARGET_LPC1549) |
va009039 | 5:19bd98307341 | 23 | #define HEAP_SIZE 0x8000 |
va009039 | 8:88d4fba4ccd5 | 24 | #define USRLIB_IMG (uint8_t*)61440 |
va009039 | 8:88d4fba4ccd5 | 25 | |
va009039 | 5:19bd98307341 | 26 | #elif defined(TARGET_KL46Z) |
va009039 | 5:19bd98307341 | 27 | #define HEAP_SIZE 0x7000 |
va009039 | 8:88d4fba4ccd5 | 28 | #define USRLIB_IMG (uint8_t*)73728 |
va009039 | 8:88d4fba4ccd5 | 29 | |
va009039 | 5:19bd98307341 | 30 | #elif defined(TARGET_KL25Z) |
va009039 | 5:19bd98307341 | 31 | #define HEAP_SIZE 0x3400 |
va009039 | 8:88d4fba4ccd5 | 32 | #define USRLIB_IMG (uint8_t*)73728 |
va009039 | 8:88d4fba4ccd5 | 33 | |
va009039 | 6:e428c1e68f0c | 34 | #elif defined(TARGET_LPC4088) |
va009039 | 6:e428c1e68f0c | 35 | #define HEAP_SIZE 0xf000 |
va009039 | 14:5abe76ac7caf | 36 | #define USRLIB_IMG (uint8_t*)77824 |
va009039 | 8:88d4fba4ccd5 | 37 | |
va009039 | 7:71a6f45bc563 | 38 | #elif defined(TARGET_NUCLEO_F401RE) |
va009039 | 8:88d4fba4ccd5 | 39 | #define HEAP_SIZE 0x15000 |
va009039 | 8:88d4fba4ccd5 | 40 | #define USRLIB_IMG (uint8_t*)69632 |
va009039 | 8:88d4fba4ccd5 | 41 | |
va009039 | 8:88d4fba4ccd5 | 42 | #elif defined(TARGET_LPC11U68) |
va009039 | 8:88d4fba4ccd5 | 43 | #define HEAP_SIZE 0x7000 |
va009039 | 8:88d4fba4ccd5 | 44 | #define USRLIB_IMG (uint8_t*)61440 |
va009039 | 8:88d4fba4ccd5 | 45 | |
va009039 | 9:2bba4682879b | 46 | #elif defined(TARGET_NUCLEO_F411RE) |
va009039 | 14:5abe76ac7caf | 47 | #define HEAP_SIZE 0x1e000 |
va009039 | 14:5abe76ac7caf | 48 | #define USRLIB_IMG (uint8_t*)73728 |
va009039 | 14:5abe76ac7caf | 49 | |
va009039 | 14:5abe76ac7caf | 50 | #elif defined(TARGET_NUCLEO_F446RE) |
va009039 | 14:5abe76ac7caf | 51 | #define HEAP_SIZE 0x1e000 |
va009039 | 14:5abe76ac7caf | 52 | #define USRLIB_IMG (uint8_t*)77824 |
va009039 | 9:2bba4682879b | 53 | |
va009039 | 10:c4ad5f9ca3e4 | 54 | #elif defined(TARGET_NUCLEO_F103RB) |
va009039 | 10:c4ad5f9ca3e4 | 55 | #define HEAP_SIZE 0x4000 |
va009039 | 10:c4ad5f9ca3e4 | 56 | #define USRLIB_IMG (uint8_t*)69632 |
va009039 | 10:c4ad5f9ca3e4 | 57 | |
va009039 | 11:0522cf53ac30 | 58 | #elif defined(TARGET_NUCLEO_L152RE) |
va009039 | 11:0522cf53ac30 | 59 | #define HEAP_SIZE 0x12000 |
va009039 | 14:5abe76ac7caf | 60 | #define USRLIB_IMG (uint8_t*)73728 |
va009039 | 11:0522cf53ac30 | 61 | |
va009039 | 5:19bd98307341 | 62 | #else |
va009039 | 5:19bd98307341 | 63 | #error "target error" |
va009039 | 3:559c4bd38111 | 64 | #endif |
va009039 | 0:65f1469d6bfb | 65 | |
va009039 | 5:19bd98307341 | 66 | uint8_t heap[HEAP_SIZE]; |
va009039 | 0:65f1469d6bfb | 67 | |
va009039 | 0:65f1469d6bfb | 68 | int |
va009039 | 0:65f1469d6bfb | 69 | main(void) |
va009039 | 0:65f1469d6bfb | 70 | { |
va009039 | 0:65f1469d6bfb | 71 | PmReturn_t retval; |
va009039 | 0:65f1469d6bfb | 72 | |
va009039 | 8:88d4fba4ccd5 | 73 | retval = pm_init(heap, HEAP_SIZE, MEMSPACE_PROG, USRLIB_IMG); |
va009039 | 0:65f1469d6bfb | 74 | PM_RETURN_IF_ERROR(retval); |
va009039 | 0:65f1469d6bfb | 75 | |
va009039 | 0:65f1469d6bfb | 76 | /* Run the sample program */ |
va009039 | 0:65f1469d6bfb | 77 | retval = pm_run((uint8_t *)"main"); |
va009039 | 0:65f1469d6bfb | 78 | |
va009039 | 0:65f1469d6bfb | 79 | return (int)retval; |
va009039 | 0:65f1469d6bfb | 80 | } |