Searching \ for 'Asynchrone RX with another PIC in TX?' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: massmind.org/techref/microchip/ios.htm?key=rx
Search entire site for: 'Asynchrone RX with another PIC in TX?'.

Truncated match.
PICList Thread
'Asynchrone RX with another PIC in TX?'
1998\08\14@193323 by Sylvain Bilanger

picon face
Hi everybody,
I am trying to program two PIC (16C74A) one is a TX master in asynchrone
and the other in RX master asynchrone. The problem is not the TX because
i check it with a scope it works fine. But when i put the TX output of
my first Pic in the RX  input of the other PIC nothing works... What im
trying to do is to get the other PIC to recognize the data, and light a
led on PORTA 0 if its good and PORTA 1 if not... I cant figure out the
problem...

Here is my source in Hi-Tech C:

#define BaudRate 25  // 2400 = 4MHz / 64(X+1)

void initialise();

void main()
{
initialise();
while(1)
{
 if(RCIF = 1)
 {
  if(RCREG == 36) {RA0 = 1; RA1 =0;}
  else {RA0 = 0; RA1 =1;}
 }
}
}

void initialise()
{
GIE = 0;   /* Disable les interruptions */

TRISA = 0x00;     // 0000 0000 porta en output
TRISB = 0x00;     // 0000 0000 portb en output.
TRISC = 0xC0;     // 1100 0000 portc en 7:6 TX/RX
 /* configuration du USART pour un master asynchrone */
SPBRG = BaudRate;
TXSTA = 0x82;     // 1000 0000 ... Mode Master, USART asynchrone,
Baudrate asynchrone
RCSTA = 0xA6;     // 1001 0110 ... Enable le Port serie
TXIE = 0;         // Disable the USART transmit interrupt
RCIE = 0;         // Disable reception interrupt
GIE = 1;          // Enable les interruptions
}

If anyone as an idea please let me know.

Thanks all for the help!!
Sylvain

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com

1998\08\14@200631 by Bob Blick

face
flavicon
face
Sylvain,

Try:
       RCSTA = 0x90;

Cheerful regards,
Bob

1998\08\17@104943 by Matt Bonner

flavicon
face
Bob Blick wrote:
>
> Sylvain,
>
> Try:
>         RCSTA = 0x90;

Also, instead of
   if(RCIF = 1)    // You're assigning RCIF instead of comparing
use:
   if(RCIF == 1)

--Matt

More... (looser matching)
- Last day of these posts
- In 1998 , 1999 only
- Today
- New search...