I've checked the hardware many times, but I checked again and I'm definately on pin 17 (it's the 28 pin package). When I clear the tris bit for the TX pin before enabling the UART, the pin is driven low for a few instruction cycles before it goes high and stays high. My polling loop right now is: forever loop delay_100ms( 5 ) LED = high delay_100ms( 1 ) if (TXIF == low) then LED = low else TXREG = "H" end if delay_100ms( 5 ) LED = low end loop So I'm using the LED to help me see what TXIF is. TXIF never goes high, so I never even try to transfer a byte, so with this code, it's no surprise that I'm getting no signal on TX. Jason ----- Original Message ----- From: "trossin" To: Sent: Tuesday, October 17, 2006 3:57 PM Subject: Re: [PIC] USART on 16F876 > > Enabling interrupts will not be the answer. I just left this in comments > in > case I want to enable it one day. I have used this code on many projects > (previously in assember form) without trouble on many 16F87x parts. When > you enable the UART it will override the PORTC TX and RX I/O control so in > theory it does not matter what you set the TRISC value to. When TXEN (bit > 5 > of TXSTA) is set, PORTC[6] will become an output. > > In looking at your code again it seems that you have the correct settings. > The only thing I can suggest is to create a loop that checks the status > like > my RS232putch and keep sending a character with lots of toggles. Also, > double check that you are using the correct pin (pin 25 on the 40-pin > package, pin 17 on the 28 pin package). Sometimes it is the simple stuff > that is going wrong when nothing makes sense. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist