??? 12/05/06 18:16 Modified: 12/05/06 18:31 Read: times |
#129021 - SADEN and SADDR is a bitch to explain Responding to: ???'s previous message |
The problem occurs when I enable multiprocessor communication (SM2 = 1. When the Master's SADEN and SADDR = Slave's SADEN and SADDR registers my data is still not getting through.
SCON = 0xf0; in both of them SADEN and SADDR is a bitch to explain, try reading about them in a another (e.g. NXP, SILabs) datasheet as well, the language will (hopefully) be different. try first without address recognition just do this in the read: if RB8 the if me (address in SBUF match) enable reception, else ignore (leave SM2 set) Does it also pose a problem if the slave has to speak to the master? Since my slave DOES speak to the master. The master does not need to be addressed, it 'knows' that all data coming in is for it (when it is transmitting the transciever should be read disabled). However it get to be a true mess if you try to speak to slaves in 9 bit and the master in 8 bit, just stay in 9 bit. DO be aware that the TI interrupt happen before the byte is finished (~1/2 bit time for recieve, 1 bit time when transmit) many have failed by turning the bus too early. Erik |