- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
1. I have a application in which I require baud rate converter. Data on rx pin of 9600 baud is to send on tx pin of 115200 baurd & data on rx pin of 115200 uart is to send on tx of 9600 baud.
2. Data is bidirectional & around 250KB-500KB in one go & no data should be lost.
3. Is there any programmable digital peripheral which can do it which can assure data safety.
Or I have to do it software programming only, like make two uart, & in their receive interrupts, send data to each other uart?
- Labels:
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
An UART with RX and TX shares the same clock, parity and other settings. To use different baud rates you will need to use two UARTs connected via an internal buffer and preferably interrupt driven.
You are here in a PSoC5 forum, but I can assure you that this job can be done using a PSoC4. Get hands on a CY8CKIT-043 and start designing, within half a day your work is done!
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Problem will be when the 115kbaud side sends 500kbyte worth of data, and it should be send out to the 9600 baud side - this is 100 times slower. You would need to buffer nearly all of the data, and even a PSoC5 hasn't got enough memory for it.
When you can do flow control, you can stop the sender whenever the buffer is about to overflow. I think you could do this in hardware using a DMA (not in all PSoC4 devices) and some other logic. But its easier to do this in software.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The CY8CKIT-044 PSoC 4 M-Series Pioneer Kit has 1Mbit FRAM (=128kB), which can be used to make a circular buffer. If you can ease the specs on the amount of data transferred in one batch from 115kBd to 9.6kBd UART, then it can be accomplished.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for info.
I have made a circular buffer, & data from 115200 baud now comes in chunk, so that entire data is not to be taken into buffer.