Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to increase UART/Serial Port on a uC ?

Status
Not open for further replies.

ayeong

Full Member level 1
Joined
Dec 31, 1999
Messages
96
Helped
2
Reputation
4
Reaction score
2
Trophy points
1,288
Activity points
904
spi2uart

Hi,

Does anybody have any idea on how to increase the number of serial ports on a microcontroller ?

Currently, I'm having only a single serial port and I need another 2 more.

Does anybody has any chip to recommend ? Or can the number of serial port be easily implemented on a CPLD ?

Thanks

Cheers,
 

pic dual uart

Hi,

You can use 16c552 dual uart.

h**p://focus.ti.com/docs/prod/folders/print/tl16c552a.html
h**p://www.exar.com

* = t
 

spi uarts

i think that is depending how you must use a auxiliary UART, if you con poll the status register and if you need only for the standard config. 8,n,1 you can use also a cpld or fpga to implement many uart, otherwise, if you need standard and copnfigurable devices i think that a standard device is needed, youo can search also at TI site, i now that exist a device whic implement 4 uart in a single chip.
you must have a data bus to mange this.
Bye.
G.
 

dual uart pic

Is there any chip whereby the microcontroller could talk to the dual UART via I2C protocol instead of parallel bus ?

Cause PIC16F877A only have 40 pins, just because fo 2 UART, it will consume all the pins for communication with serial port controller.

Thanks

Cheers,
 

pic dual serial

Hi
Well reagrding your question ,.. There is plenty of information missing here
How about the speed of those PORTS .. how much data is being received .
and how much buffering is required and what type of microcontroller are you using?
That makes a big difference on a software UARTS's which are very simple to implement and most companies give the code away ..And the other option a HARDWARE solution with real UARTS and some BUFERING on board .
 

cpld uarts

thanks for your reply.

A thousand apologises that I have forgotten to mention that I'm using PIC16F877A which has a single UART and I2C/SPI port.

Thus, I'm hoping to use the I2C/SPI port to interface with an external dual UART. As for the speed of the UART, is not critical as it will be interfacing with barcode scanner and and send those data via the 2nd serial port to the computer.

Lastly, the on-chip UART on PIC is being used to communicate with Lantronix Xport.

Thanks

Cheers,
 

uart soft multiplexer

If you use Pic Basic Pro, you can define an I/O pin as a serial I/O, the code, baud rate, parity is automaticaly generated.

If you use C or assembly, you will find on the net many examples to make a software serial port.

hc
 

serial port interface uc

Maxim has a SPI2UART chip called max3100...

They even have SPI UART with buil-in rs232 transceivers...


hxxp://para.maxim-ic.com/compare.asp?Fam=UART&Tree=Interface&HP=Interface.cfm&ln=
 

ti spi uart

Hello!

Did you consider option with replacement of existing uC with more powerful one?

Regards!
 

need more uart port

We have used the LPC2106 with two UART's and created two more (one full duplex and one half duplex) very easily. I would not recommend to do this with an 8051 or a PIC core. The 0 wait state flash in the LPC2106 makes it very fast. Cost wise it turns out to be a cheaper solution.

Ajay
 

uart serial port

Thanks everybody for your reply.

I was hoping to use hardware rather than "bit-bang" method. However, most of the hardware come with parallel bus than I2C or SPI.

I'm wondering has anybody manage to do that on aCPLD successfuly ? Any hints on where to begin if I were to use a CPLD to do that ?

Cheers,
 

microcontroller port increasing

ayeong said:
Thanks everybody for your reply.

I was hoping to use hardware rather than "bit-bang" method. However, most of the hardware come with parallel bus than I2C or SPI.

I'm wondering has anybody manage to do that on aCPLD successfuly ? Any hints on where to begin if I were to use a CPLD to do that ?

Cheers,

https://www.opencores.org/browse.cgi/by_category
 

howto xmit long serial

I'm sure Phillips do uarts with i2c interface. It's better to buy an off the shelf solution rather than reinvent the whell unless your volumes are high.

If you are going to role your own in a CPLD look at Cohen's VHDL books - he has uart implementations in most of them. There's probably implementations in Xilinx's or cypress's FPGA/PLD application notes.
 

spi +uart uc

Add another PIC or AVR for 2nd UART and connect them via i2c . It will cost only 2-3 USD .
 

cpld uart

With CCS PIC C Compiler you can use an arbitary number of uarts, using the uart by hardware provide by the 877 and adding uarts by software using the compiler features, for example:


#use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7,stream=HOSTPC) //HW UART
#use rs232(baud=1200,xmit=pin_b1,rcv=pin_b0,stream=GPS) //SOFT UART
#use rs232(baud=9600,xmit=pin_b3,stream=DEBUG) // SOFT UART

...
while(TRUE) {
c=fgetc(GPS);
fputc(c,HOSTPC);
if(c==13)
fprintf(DEBUG,"Got a CR\r\n");
}
 

avr fgetc uart

a very simple method is to use a multiplexer.
I used it with a gps modul and a mobile phone.
it worked without a problem
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top