呵呵,原来如此
冷先生看到一句
SCON=0x90;
就激动了,
DMX512,是采用11位通讯方式,所以一定用这11位模式,
然后,第一次是同步字节,所以,RB8=0,
后面的数据字节,RB8=1
所有数据,按产生的时间,为第零个字节,第一个字节,,,,最大为512个字节,所以叫DMX512,
程序是没有问题,按楼主所说,可能是在第一个中断和第二个中断之间有一个更高级别的中断,导致接收的响应时间太短,而产生误差。
把NUM和TEMP 改成CHAR ,也是不完全对,因为DMX512是有512个数据,当然,你不要后面的数据就没问题。 |
|