Serial port on Atmel 8051 chip using Internal Baud Generator

Dec 05, 2003 2 Replies

I have a AT89C51SND1 dev board. I'm using the T0 and T1 lines for detect lines of a compact flash. I need to use the serial port. All examples I find are using the timer1. Please correct if I'm wrong. I'm assuming that the T0 and T1 lines are directly out of the Timers, therefore, to use Timer1 for serial port activity I instead need to use the Internal Baud Rate Generator. I tried doing an sbit (BRR, BDRCON, 4) but the compiler says that BDRCON is a bad base address. Its sfr'ed at 0x92 like the manual says.



Suggestions? Examples not using Timers? Corrections?



FYI, example progs by themself without worry of CompactFlash do work.



Thanks,



Sean


I don't know which chip is on your board, but the below is valid for most

8051's.

Use timer2, I think that one is most frequently used for baudrate generator.

Use fixed baudrate mode (/32, /64)

If you are only using the T0 and T1 pins, you can still use the timers, as long as you don't want an external clock. And you would normally use the internal clock to generate baudrate anyway. IIRC, you can not use timer0 for baudrate generation, only timer1 en timer2.

Stef (remove caps and dashes from e-mail address to reply) "I'd love to go out with you, but I want to spend more time with my blender."

Hello Sean

Ive send you the code I use for RS232-comunication. Its for integration in the SND1 demo-project. Its not perfect, but works in IRQ without problems. If you find some improvements (why is double baudrate not working...), please send the back.

Maybe you can help me with my problem. I need a replacement for the TDA1548 (i cant get such chips anymore). Do you have any suggestions?

Greetings Klaus

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required