我用51内核的单片机给上位机发200多个整型数据,串口方式1,我的数据是逐个减小的,发现以下问题,当低8位减小到要向高8位借位的时候,低8位减下来了,高8位却没借出去。而且这个现象只会出现在低8位恰好减小到FF的时候会出现,其他的都正常,以下列了几列数据: 错误:(0E 0B)(0E FF)(0D F1)此处当低8位恰好减小到FF时,高8位却不减小,从而使本应减小的数据出现一个突然的增大,尤其在画曲线时更加显露无疑。非常尴尬。 正常:(0E 0B)(0D FE)(0D F0)只要低8位不出现FF,数据都是对的 通讯过程没有校验,不过我想不会是这个原因吧,这么巧错误只会出现在低8位为FF的时候,板子我也换过一块,也是一样。不知道是什么原因,寻高人解惑!~ |