Skimask,
Also changed ADCON0 to 0 (just in case),
Serout2 works OK (same pin) but that's not the point!
Sanity rapidly departing, need to go away and have a think.
Thanks for your help - another brain always sees something different!
Cheers,
Phil.
If SEROUT2 works, and DEBUG doesn't work, it's gotta be the way you config'd DEBUG
Check your upper/lower case...ALL CAPS on the DEFINE's
Check your modes...
Post your codes...
(hey that rhymes!!!)
NOTE: Changing ADCON0 isn't going to do anything to the pin. It's only going to shut off the A/D module.
Last edited by skimask; - 9th March 2008 at 10:33.
I think I see your problem back in the 1st post:
If this is the code you're using...what's wrong with this picture?Code:DEFINE OSC 8 ' Tell PicBASIC define DEBUG_REG PORTA define DEBUG_Bit 1 DEFINE DEBUG_BAUD 9600 DEFINE DEBUG_MODE 1
The problem is very subtle. I missed it a dozen times. Check page 31 of the manual.
Last edited by skimask; - 9th March 2008 at 10:37.
Yeah, saw that too, changed define to DEFINE both times (double checked with Notepad).
No joy.
I'm just going to stick with Serout2 for now - it's less painful! I'll sort out DEBUG later.
Thanks for all your posts!
Phil.
Last edited by skimask; - 9th March 2008 at 10:56.
Change DEFINE DEBUG_Bit 1 to DEFINE DEBUG_BIT 1 and it should work.
Having the last 2 characters in lower case was making pin RA0 an output VS RA1.
At least is was in MPSIM. I don't have a 737 to test, but this works fine in MPSIM once
I change Bit to BIT.
There's a section in the library that sets up default values, and if something isn'tCode:@ __config _CONFIG1, _INTRC_IO & _MCLR_OFF & _DEBUG_OFF & _WDT_OFF & _CP_OFF ' Defines DEFINE OSC 8 DEFINE DEBUG_REG PORTA DEFINE DEBUG_BIT 1 ' note it's all UPPER CASE DEFINE DEBUG_BAUD 9600 DEFINE DEBUG_MODE 1 ' 1 = inverted ' System Constants OSCCON = $F0 ' set 8MHz internal ADCON1 = $0F ' all digital CMCON = 7 ' comparators disabled ' Code start Init: PAUSE 100 ' let things settle DEBUG "Start",10,13 GOTO Init END
DEFINED, the value will be whatever the default is. In this case it's 0.
ifndef DEBUG_BIT ; Debug pin bit
DEBUG_BIT EQU 0
If wasn't seeing DEBUG_Bit as DEBUG_BIT so the default was RA0.
Last edited by Bruce; - 9th March 2008 at 17:03.
Aaaaarrrrggggghhhhhh!
That was it - thanks Bruce & Skimask - make sure WHOLE DEFINE is in UPPERCASE.
Mutter, mutter, mutter! Too many IDEs, too many languages, not enough grey cells!
Again, thanks!
Phil.
Bookmarks