Propeller II: Drivers & Tools (please see post #1 before posting here)
![Cluso99](https://forums.parallax.com/uploads/userpics/035/nJPU0EF20AFBB.png)
Rules for this thread...
- This thread is currently intended for P2 Drivers and/or Tools that can be used in the development of P2 Programs on the DE0 & DE2 P2 emulations prior to the release of the P2.
- What will happen after release of the P2 is not known at this time.
- Only 1 post per Driver or Tool which may/should include:
- Description of the Driver or Tool.
- Link to the thread(s) where discussion about this driver/tool is taking place
- MUST INCLUDE: "Please use this link to the appropriate thread for any questions or discussions about this Driver/Tool."
- Attached Driver or Tool and any demonstration code or instructions (optional but preferred)
Comments
DRIVER/TOOL:
DESCRIPTION:
- xxx
- xxx
DISCUSSION THREAD:Paste-link-here
"Please use this link to the appropriate thread for any questions or discussions about this Driver/Tool."
ATTACHMENTS:
Insert-attachments-here
DESCRIPTION:
- LMM execution loop for LMM code
- Hub based LMM code for SerialDebugger
- This debugger currently has the following call options:
- TX - send a long as character(s), lower byte first. ($00 from the top byte down are ignored)
- ASCII - send TX character(s) where control/invisible characters $00..$1F and $7F..$FF will be output as "<xx>" where xx=hex.
- HEX - send a long as HEX with using the number of digits specified (8..1). Optional modifiers are:
- REVERSED - the long is sent lower byte first
- SPACE - a space is added between hex character pairs
- STRING - sends a string of TX characters and is terminated by a $00 (nul)
- DUMP - sends 4 longs as a string of spaced hex characters followed by ASCII characters where control/invisible are sent as "."
- Modifiers are COG and HUB where HUB is the default.
- Lower byte is sent first (HEX REVERSED) as would be normal when dumping memory using byte mode.
- RX - waits to receive a character. Half duplex is used, so any characters received when not waiting in this loop are ignored.
- Does all this from your program's cog:
- Uses the same cog as the users program. The user calls the debugger to send/receive and at the end, the debugger returns to the users program.
- Uses a small cog footprint
- Uses minimal P2 resources
- Uses hub to store the LMM debug code
- Excellent for debugging P2 programs using the single cog DE0 emulator
- LMM mode is a method where each instruction is copied from hub to cog to be executed in an LMM execution loop (devised by Bill Henning for the P1).
DISCUSSION THREAD:http://forums.parallax.com/showthread.php/146688-LMM_SerialDebug-Simple-Serial-Tx-amp-Rx-for-debugging-single-cog-programs
"Please use this link to the appropriate thread for any questions or discussions about this Driver/Tool."
ATTACHMENTS:
LMM_SerialDebugger_030.spin