Your Universal Remote Control Center
RemoteCentral.com
RS-232 & IP Control Forum - View Post
Previous section Next section Up level
Up level
The following page was printed from RemoteCentral.com:

Login:
Pass:
 
 

Topic:
Design a circuit that receives serial data from an RS232 port on my CPU
This thread has 3 replies. Displaying all posts.
Post 1 made on Wednesday December 27, 2017 at 03:42
Waylen
Junior Member
Joined:
Posts:
December 2017
1
I am new here and new to programming, so I thought maybe some of you might be able to help me in the right direction.

I am looking to design a circuit that receives serial data from an RS232 port on my CPU, and input that into what I would imagine would be a microcontroller of sorts, containing a Digital-to-Analog converter. From there, based on the specific data from serial, output voltages to drive a Bar Graph LED meter.

In more detail, there is an audio recording program I am using that outputs MIDI metering data in groups of 8. I am able to convert those MIDI messages to serial messages, outputting via one RS232 cable. I would like to send this serial data to a microchip, and program that data to output specific voltages, per channel.

Lets say I have Meter 1 outputting serial data to a microcontroller. I would want to use the microchip to convert that data to a voltage, out of one pin of the micro chip. Since there are 8 channels of metering, I hope it's possible to have 8 separate pins, outputting 8 specific voltages based on its serial data input programming, to drive 8 separate LED Bar Meters.

The reason I am looking to convert to analog, is because it gives the meter a finer resolution. After lots of research on LED matrices (digital meters), this seems like a better solution. The serial data should have specific levels outputting, as does the converted MIDI data. I will be monitoring this in the near future to confirm. The LED meter circuits do accept analog input.

The initial plan to design a 'Midi Meter bridge', staying in the digital realm didn't seem possible after lots of talking and research. This is why I am exploring this route. Ultimately I am looking to have a meter 32 LED's tall, 32 channels across total... but using a digital led matrix, I haven't found that to be an option.

My apologies, when I refer to resolution, I mean this... designing a meter bridge via an LED matrix, the most resolution I can get is 16 LEDs. Even though, the MIDI protocol is 8-bit, allowing 128 steps for the meter. If it were possible to program a Microchip to output a specific voltage for every 4 steps, the resolution on the analog LED bar meter would look better than the MIDI matrix. Additionally, using my analog LED bar graph, I can add many more segments than I could with the matrix.


As an alternative, (noob here) looking at the analog schematic above, would it make more sense (or even be possible) for the PIC16f88 to accept the 'serial data' instead of the audio to control the LED meters??
Post 2 made on Wednesday January 3, 2018 at 01:00
sm2345110
Junior Member
Joined:
Posts:
January 2018
1
RS stands for recommended standard. In the 60's a standards committee now known as the Electronic Industries Association developed an interface to connect computer terminals to modems. Over the years this has been updated: the most commonly used version of the standard is RS232C (sometimes known as EIA232); the most recent is RS232E. The standard defines the electrical and mechanical characteristics of the connection - including the function of the signals and handshake pins, the voltage levels and maximum bit rate.

If RS232 is a standard why can't I just use a standard lead to connect together two RS232 ports and expect them to talk to one another? That's a good question. The answer is that the RS232 standard was created for just one specific situation and the difficulties come when it is used for something else. The standard was defined to connect computers to modems.

Get to touch with the :- [Link: cetpainfotech.com]
Sharon Maxwell
CETPA Infotech Pvt Ltd
[Link: cetpainfotech.com]
Post 3 made on Monday January 8, 2018 at 01:44
buzz
Super Member
Joined:
Posts:
May 2003
2,805
Throwing a digital to analog conversion into this seems like a lot of extra work to me since you already have digital data.

You may need to add a few buffers, but you should be able to directly drive the displays from your favorite PIO's (programmable I/O port) on your favorite P. I'd probably use a Raspberry PI, because it is inexpensive and there is a large, enthusiastic support network. An RS232 port for the Raspberry PI only costs a few dollars. A USB port is built-in. If you are more familiar with PIC, go with that.
Post 4 made on Saturday February 3, 2018 at 12:38
Barry Gordon
Founding Member
Joined:
Posts:
August 2001
2,121
A standard RS 232 cable is designed to connect a DTE (Data Terminal Equipment, e.g. a display or computer) to a DCE (Data Communications Equipment, i.e. a modem). To connect two DTE's together you need a null modem cable, sometimes called a crossover cable. Look up Null modem configuration on the Web, I am sure it is there. In most situations today you will see a "Serial Cable" called out. This is a 3 wire cable whose voltages, rise times, etc. do not always follows those specified in the RS 232 spec. The three signals in a serial cable are ground, transmit and receive. In a serial crossover cable used to connect two DTE equipments the transmit and receive lies are crossed. The signal pin out is: ground pin 5, transmit pin 3, receive pin 2.


Jump to


Protected Feature Before you can reply to a message...
You must first register for a Remote Central user account - it's fast and free! Or, if you already have an account, please login now.

Please read the following: Unsolicited commercial advertisements are absolutely not permitted on this forum. Other private buy & sell messages should be posted to our Marketplace. For information on how to advertise your service or product click here. Remote Central reserves the right to remove or modify any post that is deemed inappropriate.

Hosting Services by ipHouse