51单片机与vb通过串口通信,单片机为什么只能发送0至255的数?然后怎么解决(发大于255的数)???

如题所述

第1个回答  2013-10-24
发送大数,你只能多次发送,一次只能发送一帧,而串口发送的一帧可能是7、8、9位,由你设置而定。
第2个回答  2013-10-24
51单片机是8位的,一次只能处理8位数据,也就是一个字节,一个字节只能表示0-255的大小的数据。追问

怎么解决(发大于255的数)???

追答

你把大于255的数据,分开成2字节,分2次发送就可以了。

int var;

第3个回答  2013-10-24
一个字节确实只能是0-255,但你可以连续发两个字节然后在VB里面组成一个大于255的数。
比如发257就是0x01,0x01追问

0x01,0x01 就是257.表示没懂,,,

第4个回答  2013-10-24
数据类型是char型只能是0-255
发int就会大了
串口最大一个数据是8位的,可以用多个字节表示一个数据啊
第5个回答  2013-10-24
可以发送多次,分别发这个数的个十百千万位。然后用程序组合追问

如何用程序组合啊?

追答

比如第一次发个位存到变量G,第二次发十位S,第三次发百位BAIWEI,
最终的数就是=G+S*10+BAIWEI*100
就是这样一个思路了。

本回答被提问者采纳
相似回答