Actually I intend to design a DLL interface for serial communication supporting MARK and SPACE mode. When the data from outside come, I wish the simulation to put them into the registers of the 8051. However, as mentioned before, the SBUF seems of little use, and I have tried SIN, which I assumed that the value in SBUF would change with it accordingly but found that it was of no help. What should I do to get the data into the registers? Thanks!
The problem is the uVision is unable to simulate the serial transmission in MARK or SPACE mode I do not use the simulator, but am heavily involved in many types of serial comm. Something here puzzles me: the RS232 standard IS "mark and space" e.g. http://www.tldp.org/HOWTO/Text-Terminal-HOWTO-22.html states A "mark" is a 1-bit (or logic 1) and a "space" is a 0-bit (or logic 0) so how can ANYTHING that support the PC serial port not support "mark and space" Pleae inform, I'd love to hear about it. Erik
A "mark" is a 1-bit (or logic 1) and a "space" is a 0-bit (or logic 0) I am not proficient in serial comm. What I learned is that in MARK mode the parity is always 1, whereas in SPACE mode the parity is 0. And in keil we could not simulate this function in that it only provide mode 0(no parity),1(odd parity),2 (even parity). But this is not the relevant matter, my focus is writing the data from DLL into the registers or variables in simulation.
"What I learned is that in MARK mode the parity is always 1, whereas in SPACE mode the parity is 0." Not quite - you are suffering from sloppy terminology, I'm afraid. There is no such thing as "Mark Mode" nor "Space Mode." What you are talking about is "Mark-Parity" and "Space-Parity" - ie, when the Parity bit is "fixed" in the Mark or Space state, irrespective of the other bits in the byte. Anyhow, why do you specifically need this setting?