问题描述
初始化privatevoidForm1_Load(objectsender,EventArgse){serialPort1.PortName="com1";//选择串口COM1serialPort1.BaudRate=9600;//设置通信口参数serialPort1.DataBits=8;//数据位serialPort1.Parity=Parity.None;//校验位 NoneserialPort1.StopBits=StopBits.One;//停止位1位serialPort1.Open();}button1按钮,用来发送数据privatevoidbutton1_Click(objectsender,EventArgse){byte[]bytesData=newbyte[]{123,23};serialPort1.Write(bytesData,0,bytesData.Length);}很奇怪为什么serialPort1.BytesToRead=0呢?应该有数据的啊!
解决方案
解决方案二:
你是发数据,又没有接收,
解决方案三:
你先搞清楚一个问题,通过串口与PC连接的设备有没有向你的PC发数据.
解决方案四:
串口上连接设备了吗?设备发数据了吗?
解决方案五:
你得让你的主线程休眠一段才能读到数据:)
解决方案六:
4楼的高人能详细解释下吗?
解决方案七:
你没读数据呀.当然没有了,你可以用串口工具模拟给你发,然后看看有没值
解决方案八:
你可以在datarecieved时间里加上一个system.Threading.Thread.sleep()里面添你休眠时间就OK了,可以自己测试一下要休眠多久:)
时间: 2024-08-01 06:25:03