Ok, so be gentle... I'm just diving into this. It started with the need to document RS-232 properties in a DNC system. Having absolutely NO background with this, it obviously lead to a lot of research on the subject. So, I have a pretty strong understanding of the main points we're going to be defining:
Port: sets the comport to be used
Baud Rate: Is the modulation rate of data transmission as expressed in bits per second.
Parity: Parity is an error checking function that uses the addition of a Parity bit in the data packet to ensure the total sum of 1's for the selected number of Data Bits matches the value of the selected Parity. The receiving terminal can then verify the sum of the received 1's matches the expected Parity.
Data Bits: sets the amount of bits that exist in the data packet before Start, Stop, and Parity Bits are added.
Stop Bits: set the amount of Stop Bits output in the data packet.
Discard Null: removes spaces from the output.
Here's where my question comes in. I was reading this article that a user on this site pointed someone else to: https://www.lammertbies.nl/comm/info/RS-232_specs.html . It's very helpful, but it confuses me a little, because I was wondering if it's an actual bit, or just a pause in bits.... It says "The stop bit identifying the end of a data frame can have different lengths. Actually, it is not a real bit but a minimum period of time the line must be idle (mark state) at the end of each word. On PC's this period can have three lengths: the time equal to 1, 1.5 or 2 bits. 1.5 bits is only used with data words of 5 bits length and 2 only for longer words. A stop bit length of 1 bit is possible for all data word sizes." .... it also says: "The start bit has always space value, the stop bit always mark value. If the receiver detects a value other than mark when the stop bit should be present on the line, it knows that there is a synchronization failure. This causes a framing error condition in the receiving UART. The device then tries to resynchronize on new incoming bits."
I understand this to mean that:
Start bits always equal 0 (which is the Space state... Positive charge)
Stop bits always equal 1 (which is the Mark state... Negative charge)
So in a 4E2 data packet where we are transmitting "1010" we will end up with:
01010011 (0_1010_0_11 / Start_Data_Parity Bit_Stop Bits)
Question 1)
Is that correct? ... cause if it is, then Stop Bits ARE real bits right?
Question 2)
There are no pauses between this data right? ... only between data packets. So it wouldn't really read like:
zero one zero one zero zero one one ... but more like:
zero'one'zero'one'zeroooo'ooooone' ..... which would make more sense since I can set my stop bits to 1.5 as well. (can you tell that I over think things yet? lol)
I think these are my main questions right now. Any help would be very much appreciated.
Port: sets the comport to be used
Baud Rate: Is the modulation rate of data transmission as expressed in bits per second.
Parity: Parity is an error checking function that uses the addition of a Parity bit in the data packet to ensure the total sum of 1's for the selected number of Data Bits matches the value of the selected Parity. The receiving terminal can then verify the sum of the received 1's matches the expected Parity.
Data Bits: sets the amount of bits that exist in the data packet before Start, Stop, and Parity Bits are added.
Stop Bits: set the amount of Stop Bits output in the data packet.
Discard Null: removes spaces from the output.
Here's where my question comes in. I was reading this article that a user on this site pointed someone else to: https://www.lammertbies.nl/comm/info/RS-232_specs.html . It's very helpful, but it confuses me a little, because I was wondering if it's an actual bit, or just a pause in bits.... It says "The stop bit identifying the end of a data frame can have different lengths. Actually, it is not a real bit but a minimum period of time the line must be idle (mark state) at the end of each word. On PC's this period can have three lengths: the time equal to 1, 1.5 or 2 bits. 1.5 bits is only used with data words of 5 bits length and 2 only for longer words. A stop bit length of 1 bit is possible for all data word sizes." .... it also says: "The start bit has always space value, the stop bit always mark value. If the receiver detects a value other than mark when the stop bit should be present on the line, it knows that there is a synchronization failure. This causes a framing error condition in the receiving UART. The device then tries to resynchronize on new incoming bits."
I understand this to mean that:
Start bits always equal 0 (which is the Space state... Positive charge)
Stop bits always equal 1 (which is the Mark state... Negative charge)
So in a 4E2 data packet where we are transmitting "1010" we will end up with:
01010011 (0_1010_0_11 / Start_Data_Parity Bit_Stop Bits)
Question 1)
Is that correct? ... cause if it is, then Stop Bits ARE real bits right?
Question 2)
There are no pauses between this data right? ... only between data packets. So it wouldn't really read like:
zero one zero one zero zero one one ... but more like:
zero'one'zero'one'zeroooo'ooooone' ..... which would make more sense since I can set my stop bits to 1.5 as well. (can you tell that I over think things yet? lol)
I think these are my main questions right now. Any help would be very much appreciated.