View previous topic :: View next topic |
Author |
Message |
Teriyaki
Joined: 07 Sep 2006 Posts: 7 Location: Munich, Germany
|
Streaming and monitoring Data through ICDU64 |
Posted: Thu Aug 16, 2012 12:24 am |
|
|
Hi all,
Does anybody know in detail how the directive #use rs232(ICD) is working?
I made a few tests but it is not fully clear from the descriptions found in the compiler manual and information in the CCS website.
1. When I am using the ICD debugger with #use rs232(ICD), nothing happens, no data stream shown in the debugger monitor window. But in the website it is actually mentioned that automatically the siow program will be started for receiving the data stream.
How can this function be used with the debugger?
2. Programming the chip with ccsload and running the program will automatically open the new streaming data functions in the ccsload program like live terminal, siow etc.
But how can I use any other terminal program to see the data stream? How to set up all the communication parameters like ports, baud rate, etc?
3. I tried to use #use rs232(stream=ICD) instead of #use rs232(ICD). It can be compiled, but the streaming function is not working after programming the chip with ccsload.
How can the ICD data streaming function be used together with other data streams in the same program like f. e. #use rs232(stream=DISPLAY)?
4. In the tutorial video in the CCS website there is a demo shown how to use the siow graph functions. Where can I find a short description about the special characters and the string format I have to use for this program (like labeling axes, number of points, gain, etc.)?
5. Is there any example program available demonstrating all the features?
6. With #use rs232(DEBUGGER) I can use the debugger monitor window to see the data stream.
What is the difference between #use rs232(DEBUGGER) and #use rs232(ICD)? |
|
|
Rich
Joined: 27 Apr 2011 Posts: 3
|
ICD-U64 Steaming problems |
Posted: Mon Oct 29, 2012 11:56 pm |
|
|
Hello,
I am having the same problem getting the new serial streaming through the ICD-U64 to work with the latest CSSLOAD firmware(4.039) and PCH V4.137 compiler. Is there any additional information on this new streaming command? All I could find was a video. On the chip I am using I have two serial ports. Is it possible to use the rs232(ICD) command with other parameters like:
#use rs232(ICD, baud=38400, xmit=PIN_B6, rcv=PIN_B7,stream=P233,ERRORS)
Also, how do these settings apply to using the 'ICD' mode?
#device ICD=TRUE ?
#FUSES NODEBUG //No Debug mode for ICD |
|
|
Requan
Joined: 11 May 2008 Posts: 74
|
|
Posted: Tue Oct 30, 2012 1:59 am |
|
|
Quote: |
When I am using the ICD debugger with #use rs232(ICD), nothing happens, no data stream shown in the debugger monitor window.
|
Hi,
I observed that sometimes variable are not seen in debugger. When we define it as global we can see but i don't know why it's happen.
Best Regards,
Martin |
|
|
Douglas Kennedy
Joined: 07 Sep 2003 Posts: 755 Location: Florida
|
|
Posted: Tue Oct 30, 2012 7:53 am |
|
|
The difference between debug monitoring and plain monitoring is....
Debug
With CCS IDE and debug monitoring using #USE RS232(DEBUGGER) any printf is directed through the default pinB3 to the monitor screen in the CCS IDE when debug is selected. The choice of the monitor pin is selectable.
Run time
Now suppose you don't want to debug but would still like to monitor. Also suppose you are powering the target board via the ICDU64. Your printf can still be directed through PIN_B3. The small advantage is you don't need to add a max232 level shifter and since you originally wired your target for programming and debugging via the ICD- U64 there is no extra wiring. The ICD-U64 delivers the printf data through the usb cable to a PC program without needing the IDE and its debugger. This avoids the very small overhead the debugger would need. Again its a small advantage that is a bit more useful with small code space PIC's and can help in some rare situations |
|
|
Mike Walne
Joined: 19 Feb 2004 Posts: 1785 Location: Boston Spa UK
|
|
Posted: Tue Oct 30, 2012 8:23 am |
|
|
Quote: | I observed that sometimes variable are not seen in debugger. When we define it as global we can see but i don't know why it's happen. |
Not strange at all. Does the same in MPLAB. Local variables only show when executing their routine. Outside the routine the RAM can be used for other variables, so does not make sense to show it in debug. Global variables don't have the same issues.
Mike |
|
|
Requan
Joined: 11 May 2008 Posts: 74
|
|
Posted: Fri Nov 02, 2012 12:48 am |
|
|
Thanks Mike for explanation |
|
|
|