I have a strange problem in my code. I cannot receive characters via the serial port.
I've read up on the TI and RI interrupts and I think I am handling these correctly.
The program goes to the serial I/O isr, but just sits at the gets(comin,4) line. When I examine comin in the watch window and input chars via the SIN = xx (where xx is an ascii code), I can see the comin array remains empty.
Below is the serial I/O interrupt routine (my application does not need Tx)
pre void uart_rx_isr (void) interrupt 4 using 3 { signed char index=0; EA=0;
if (RI == 1) { gets(comin,4); command = atoi(comin); } RI=FALSE; /* finished isr - clear flag */ TI=FALSE; /* TI will not be used - always clear it*/ EA=1; }
/pre
Here is a fragment from main() - you can see that I set TI=1 initially to set the UART up
pre
TI=TRUE; /* always set TI=1 initially to allow serial printing */ RI=0;
loop: //RI=0; //IDLE
while ((1));
goto loop; } /pre
Appreciate some pointers here.
Jason
look, up in sky! Its a bird, its a plane its... its Super Code Monkey!
No offense. Well partially none.
--Cpt. Vince Foster 2nd Cannon Place Fort Marcy Park, VA
Vince,
No idea what your on about (or on), but your post made me laugh.
Whoops,
Better fix that error:
No idea what you're on about (or on), but your post made me laugh.
you're on about (or on)...
15mg Hydrocodone, 650mg of APAP, 20mg Diazapam, 350mg of Cordosiporol, 1.5 shots of Bacardi 151, one "Rules for Coding [Monkey] Radicals," one fulll lip of Copenhagan, and bio-lab bunker level #3 with elevated O2 levels. Yet I still function at a higher strata than a sardine: 999.
Dirty-Deeds-Done-Dirt-Cheap.... what a concocted world I live in.
That should be, "a higher stratum", surely??
As usual, Vince, you rock...! :-)
"Diazapam, a benzodiazepine, C16H13ClN2O, used for alleviation of anxiety and tension..."
Have been working to close to warheads lately, captain :-)
I'm glad to see you are up to you old antics. Now I have a excellent mental image to carry my through the day.
Thanks Vince