|
Hi there
> the format is 1bit start,8bit data,1bit partiy,2bit stop,the total byte is 12bit,
That looks correct.
> the output of 2byte is 25bit,and there is a low bit between two bytes.
A "low bit" is the line just marking between character frames: the line is idle. Is there some kind of delay between the writes to the transmit register?
If you're concerned about throughput, then perhaps you could reduce the frame length by two bits:
The 2 stop bits could be reduced to just 1 stop bit. Modern electronics only need 1 stop bit. The last time I needed to use 2 stop bits was because of an inaccurate baud rate generator on one end.
The parity bit could be omitted since it is not reliable for ensuring data integrity. Parity will catch single bit errors, but give a false negative with a double-bit error (i.e. the error is not reported). If it's binary data, you are much better off including a CRC32 checksum covering the transmitted block than relying on parity checks.
Regards
|