Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Message

RE: [AVR-Chat] Multiple software uarts..........

2003-11-13 by Al Welch

Ken a quick search turned up the Maxim3110 which is dual channel, SPI and
has drivers and recvrs built in.

http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2052

Al Welch

-----Original Message-----
From: Al Welch [mailto:alwelch@axxiomchromatography.com]
Sent: Thursday, November 13, 2003 12:13 PM
To: AVR-Chat@yahoogroups.com
Subject: RE: [AVR-Chat] Multiple software uarts..........


Ken

I suggest you find a way to add hardware uarts. It can be hard to service
uarts and not miss a character. IF the char is important such as part of a
command or something then you will not want to drop chars and have a bad
message. All you need is some occasional software task that takes longer
than one char time and you will drop a char. Trying to do this in software
seems like a lot of overhead. UARTS with FIFO buffers are real handy when
you have a lot going on and you do not want to miss a char. Another thing is
what if the two software uarts are async to each other? You would have to
time differently from the start bit of one channel to the start bit of the
second channel I would think.

Perhaps there may be an SPI or I2C hardware uart out there you could hang on
just a few lines of your board?

Al Welch

-----Original Message-----
From: ktucker8825 [mailto:ken_tucker@sbcglobal.net]
Sent: Tuesday, November 11, 2003 1:21 PM
To: AVR-Chat@yahoogroups.com
Subject: [AVR-Chat] Multiple software uarts..........


I am currently working on a project with bascom-avr, atmega16L.
i am utiliizing the hardware usart to talk to a serial LCD display. i
need 2 additional ports. i can get both software uarts to work, but
only one at a time. when i try to implement both software uarts only
one will work properly. the other is putting out garbage (as seen on
the terminal) my code is only calling one software uart at a
time....... i am (at this time) only interested in outputting data on
these ports and the output strings will be sent with no handshaking
as canned strings ............any ideas
TIA

Ken Tucker

***** Code Snip

Do

Call Serial_1()
Call Serial_2()
Loop

Sub Serial_1()

'open portD.4 for output
Open "comd.4:9600,8,n,1" For Output As #1

'open portD.5 for input
Open "comd.5:9600,8,n,1" For Input As #2

Print #1 , "this is a test output of soft port 1";

'close ports
Close #1
Close #2


End Sub


Sub Serial_2()

'open portD.6 for output
Open "comd.6:9600,8,n,1" For Output As #3

'open portD.7 for input
Open "comd.7:9600,8,n,1" For Input As #4

Print #3 , "this is a test output of soft port 2";

'close ports
Close #3
Close #4


End Sub




To unsubscribe from this group, send an email to:
AVR-Chat-unsubscribe@yahoogroups.com



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/





To unsubscribe from this group, send an email to:
AVR-Chat-unsubscribe@yahoogroups.com



Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.