Manual

PoBlocks user manual (March 31, 2014)
9
www.poscope.com
6. PoLabs PoIL core introduction
PoKeys PoIL core is a virtual 16/32-bit software processor, which interprets PoIL code in PoKeys device
and has access to various PoKeys peripherals.
PoIL code is created in the compiling process in the PoBlocks application and is stored in the flash
memory of the PoKeys device.
6.1. Operating modes
PoIL core has the following operating modes:
- STOPPED: PoIL core is stopped and no code is being executed
- RUNNING: PoIL core is executing code
- EXCEPTION: PoIL core encountered an error and execution had to be stopped
- PAUSE: PoIL core is temporarily halted and when restarted, continues from this point
6.2. Start-up configuration
When PoKeys device is started (power is applied), the PoIL core can be reset (initialization code
executed) and PoIL code execution can start automatically. By default, PoIL code is not automatically
executed on reset (Auto-start is disabled).
6.3. Cycle time
The PoIL core supports priority-based pre-emptive scheduler that switches between two (or more on
later versions) tasks. Task 0 has the lowest priority and is enabled by default. Other tasks are periodic
tasks that have a fixed time-period between executions. Task switching is done at 1 ms intervals or on
task exit events.
Task 1 is automatically used and enabled by PoBlocks software for executing the PoIL code of the
diagram when periodic mode is selected (when cycle time, greater than 0 is specified). In this mode,
minimum cycle time for execution is limited by the code size, but cannot be lower than 1 ms. In non-
periodic mode (cycle time set to 0), task 0 is used and cycle time depends solely on the PoIL code size.
PoBlocks features an integrated Task manager that displays the target and actual cycle times of the tasks
being eecuted Task manager is found in PoBlocks application menu under Tools  Task manager For
more details see Task manager belo
6.4. PoIL programming
PoBlocks enables low-level PoIL language programming using the custom PoIL block. Contact us at
support@poscope.com and request PoIL documentation document.