PASD on the Professional Prop Proto board
JackBak
Posts: 45
In debugging some of my PASM code I noticed that if I load my code (with the proper PASD hooks in the code) into
either the Prop demo board or the Prop USB Proto board I can debug with PASD. Try the same on the Pro board
and I get the "no data - assembly code with Debug Kernel loaded in Propeller Chip?" message.
So I backed up and used the PASD_AsmDebugDemo code that comes with PASD. Same thing. The only difference
I see from Parallax's schematics from the FTDI USB chip is that on the Proto board Tx and Rx are directly connected
to P30 and P31 whereas on the Pro board both lines have a 150 ohm resister in series. This isn't the famous FTDI reset
issue is it? Oh and I double checked that I am connecting to the same COM port in PASD that the Prop IDE used to
download the code with.
Any help would be appreciated.
either the Prop demo board or the Prop USB Proto board I can debug with PASD. Try the same on the Pro board
and I get the "no data - assembly code with Debug Kernel loaded in Propeller Chip?" message.
So I backed up and used the PASD_AsmDebugDemo code that comes with PASD. Same thing. The only difference
I see from Parallax's schematics from the FTDI USB chip is that on the Proto board Tx and Rx are directly connected
to P30 and P31 whereas on the Pro board both lines have a 150 ohm resister in series. This isn't the famous FTDI reset
issue is it? Oh and I double checked that I am connecting to the same COM port in PASD that the Prop IDE used to
download the code with.
Any help would be appreciated.
Comments
I tested it with my PPDB and did the steps in exactly the same order as the user manual recommends it
1) Double click the PASD_AsmDebugDemo.spin module to load it into the Propeller IDE.
2) Note: If you are working on a Hydra or target hardware
other then the Propeler Demo Board then you must modify
the _clkmode and _xinfreq settings to match your target
hardware and establish an 80MHz clock. For the Hydra
these setting would be:
CON
_clkmode = xtal1 + pll8x
_xinfreq = 10_000_000
3) Power on and connect your target hardware.
4) Press <F10> to upload and run PASD_AsmDebugDemo.spin. NOTE: Do not close the Propeller IDE.
5) Double click the PASD.exe executable to start it.
6) In PASD, Select “Com Port” from the “COM” menu and specify your COM port.
7) Make sure that the Propeller IDE is still open, and that the “PASD_AsmDebugDemo spin” window in the Propeller IDE is the currently active window.
Press <F2> (or alternatively select “Get Asm Code” from the “File” menu)
The main PASD window will update to show the source code for the module being debugged (PASD_AsmDebugDemo.spin).
best regards
Stefan
Yeah, isn't that weird I did all of that and it's like PASD can't talk to the PPDB yet I can down load
the code via F10 from the IDE. As I said the PASD works with my code just fine if its NOT the
PPDB so I think I've got all the steps down correctly.
You get this message if the PASD-PC-Application can not communicate with the debugged cog. Possible reasons:
- Wrong COM Port set in PASD
- PASDebug object or Debug Kernel not included
- Wrong Clock frequency set, or Clock does not work propper
As you say the first 2 points shoud not be the reason, so I think it has something to do with the clock.
If you have not changed the 5 MHz crystal, then perhaps the PLL of your Propeller chip not works anymore.
The PLL is the first thing that breaks down if the Propeller is stressed by overvoltage or so. The internal RCfast
oscillator still works, and downloading is therefore possible.
You can check the PLL also with a code that blinks a LED with a calculated frequency (i.e 1 Hz @ 80MHz), if the LED blinks
much too slow then the PLL not works.
Andy
I tested it with my PPDB and it works with my PPDB. I mean Propeller Professional Development Board
best regards
Stefan
@Ariba: Thanks. Below is the code I am testing with it is just stub code but I added a button push to light a LED
for three seconds at 80MHz with PLL and if I comment out the dbg.start line we see the LED on for 3 sec.
With dbg.start active pressing the button does NOT light the LED
Even when I comment out the _clockmode and _xinfreq lines (which should put us in RCFAST mode) PASD still
can't communicate with the PPDB.
if your PLL is damaged all _clockmode and _xinfreq are NOT working anymore
The only thing that is still working is rcfast / rcslow
but with rcfast or rcslow you CAN'T connect to PASD
in other words if _clockmode and _xinfreq are NOT working anymore you CAN'T connect to PASD
if you want to narrow down the problem you have to keep most things constant and working
So to check if your PPDB can connect to PASD. Take a *.spin-file that is WELL KNOWN and TESTED to work with PASD
Did you perfom a test with the file PASD_AsmDebugDemo.spin ?
I tested your PASM-code. PASD steps through some of your PASM-longs and res ??? strange
I think I've found it. If the dbg.start methode blocks the whole code then it waits for a start byte from the PC-Application.
So it seams that the COM port is the problem. I guess your Professional Development Board has a higher COM number than the Proto and DemoBoard.
The Problem was that PASD uses an older syntax to open the COM-port which works only up to COM10 or 16 or so (don't know the exact number). Attached is the corrected version 0.5 of PASD (only the .exe). I hope this fixes your problem.
@pjv
I don't find the thread where you ask me for this feature, but this version includes also Watchpoints. These Watchpoints are Breakpoints with Auto-continue, so they just update the Viewer content and continue to run. To set such a Watchpoint, you need to select the Code column of the line and then choose 'Toggle Watchpoint' (or Shift-F9) from the Menu. Then it looks like a Breakpoint, but with green Text (deselect the Code column to see this). With 'Clear All Breakpoints' also these Watchpoints are cleared.
Andy
Thanks for the quick look into fixing this. When I got a 3 second LED I was pretty sure the PLL worked on my PPDB but good
thinking so that we could rule it out.
Regards,
Jack
I'm in Hawaii just now on vacation (rotten weather back home in Canada) and I will install the new version as soon as I get home.
Thanks for dealing with this, it will be quite a help.
Cheers,
Peter (pjv)