| View previous topic :: View next topic |
| Author |
Message |
newguy
Joined: 24 Jun 2004 Posts: 1934
|
|
Posted: Thu Nov 10, 2016 12:13 pm |
|
|
I've found that any CCS programmer I've ever used (ICD-U40, ICD-U64 and Load-n-Go) will all trigger multiple chip resets when I would click the Run/Stop button. Hitting /MCLR manually (via a switch) enables/disables the PIC only once. That may be why you're seeing 3x "awake" messages.
Sorry, no experience with the PIC24 series. Someone else will have to recommend a suitable replacement. |
|
 |
starfire151
Joined: 01 Apr 2007 Posts: 203
|
|
Posted: Thu Nov 10, 2016 12:49 pm |
|
|
Thanks for that reply. I think you're right. I can manually reset after the device is programmed and it only displays the message once.
To everyone who responded to this topic, thank you for your responses. I consider this a closed topic now, though. I have already started to migrate my design to a more suitable PIC24 candidate, the PIC24FV32KA301. While this part doesn't have 4 hardware UART ports (it only has 2), the 2 it does have behave normally. I can make my third port a software port, since it's not as critical. |
|
 |
jeremiah
Joined: 20 Jul 2010 Posts: 1411
|
|
Posted: Thu Nov 10, 2016 1:48 pm |
|
|
| newguy wrote: | I've found that any CCS programmer I've ever used (ICD-U40, ICD-U64 and Load-n-Go) will all trigger multiple chip resets when I would click the Run/Stop button. Hitting /MCLR manually (via a switch) enables/disables the PIC only once. That may be why you're seeing 3x "awake" messages.
Sorry, no experience with the PIC24 series. Someone else will have to recommend a suitable replacement. |
That's very interesting. We've got well over 30 ICD-U64s (both hardware Rev 2 and 3 ) and a few stray ICD-U40s, but none of them have issued multiple resets from the run/stop in CCSLoad. We primarily program PIC24s, but occasionally do PIC12s, PIC16s, and dsPICs. I wonder if there is some sort of setup difference. |
|
 |
Ttelmah
Joined: 11 Mar 2010 Posts: 20059
|
|
Posted: Thu Nov 10, 2016 2:55 pm |
|
|
Separately, the garbage character is quite normal, and depends on your hardware.
This is what PCM_Programmer was pointing out. It is very common to get a single garbage character at the start. It takes time for the interface chip to actually wake, and it is quite common if the PIC starts before the output is stable, to see 'something'.
Standard sequence is:
| Code: |
//delay till the line is likely to be stable - perhaps 10mSec typically
//Then:
while (kbhit())
getc();
clear_interrupts(INT_RDA);
//Now enable the interrupts
|
Resetting the chip after a moment, ensures this does not happen, since then the interface chip is already awake and powered. |
|
 |
|