python-on-a-chip online compiler
PyMite User API. More...
Go to the source code of this file.
Functions | |
PmReturn_t | pm_init (uint8_t *heap_base, uint32_t heap_size, PmMemSpace_t memspace, uint8_t const *const pusrimg) |
Initializes the PyMite virtual machine and indexes the user's application image. | |
PmReturn_t | pm_run (uint8_t const *modstr) |
Executes the named module. | |
PmReturn_t | pm_vmPeriodic (uint16_t usecsSinceLastCall) |
Needs to be called periodically by the host program. | |
Variables | |
volatile uint32_t | pm_timerMsTicks = 0 |
Stores the timer millisecond-ticks since system start. | |
volatile uint32_t | pm_lastRescheduleTimestamp = 0 |
Stores tick timestamp of last scheduler run. |
Detailed Description
PyMite User API.
High-level functions to initialize and run PyMite
Definition in file pm.c.
Function Documentation
PmReturn_t pm_init | ( | uint8_t * | heap_base, |
uint32_t | heap_size, | ||
PmMemSpace_t | memspace, | ||
uint8_t const *const | pusrimg | ||
) |
Initializes the PyMite virtual machine and indexes the user's application image.
The VM heap and globals are reset. The argument, pusrimg, may be null for interactive sessions.
- Parameters:
-
heap_base The address where the contiguous heap begins heap_size The size in bytes (octets) of the given heap. Must be a multiple of four. memspace Memory space in which the user image is located pusrimg Address of the user image in the memory space
- Returns:
- Return status
PmReturn_t pm_run | ( | uint8_t const * | modstr ) |
PmReturn_t pm_vmPeriodic | ( | uint16_t | usecsSinceLastCall ) |
Needs to be called periodically by the host program.
For the desktop target, it is periodically called using a signal. For embedded targets, it needs to be called periodically. It should be called from a timer interrupt.
- Parameters:
-
usecsSinceLastCall Microseconds (not less than those) that passed since last call. This must be <64535.
- Returns:
- Return status
Variable Documentation
volatile uint32_t pm_lastRescheduleTimestamp = 0 |
volatile uint32_t pm_timerMsTicks = 0 |
Generated on Tue Jul 12 2022 23:13:47 by 1.7.2