当前位置:编程学习 > C#/ASP.NET >>

HELP 串口通信

我用3个Button实现  初始化   发送    接受  的功能 

初始化 
            serialPort1.PortName = "com1";//选择串口COM1 
            serialPort1.BaudRate = 9600;//设置通信口参数 
            serialPort1.DataBits = 8;//数据位  
            serialPort1.Parity = Parity.None;//校验位 None 
            serialPort1.StopBits = StopBits.One;//停止位1位 


发送 
            byte[] bytesData = {123,23};  

            if (!serialPort1.IsOpen) 
            { 
                serialPort1.Open(); 
                serialPort1.Write(bytesData, 0, bytesData.Length); 
            }    

接受 
            byte[] b = new byte[serialPort1.BytesToRead]; 
            serialPort1.Read(b, 0, b.Length); 
            serialPort1.Close(); 

问题1:
我想问下高手  为什么我在接受的时候b里没有数据呢? 

问题2:
如果我要发送并接受这样一串数据  $GPRMC,013946.00,A,3337.3186,N,11900.4483,E,0.05,218.30,111105,4.5,W,A*20.. 
这样定义byte[] bytesData = {$GPRMC,013946.00,A,3337.3186,N,11900.4483,E,0.05,218.30,111105,4.5,W,A*20.. };  就会出错 为什么 --------------------编程问答-------------------- 用个串口监视工具看下实际发出和接收到的信息看看先。
关注中。 --------------------编程问答-------------------- 串口监视工具监示数据是否发出,你是用的一个串口短接来调试的吗?

问题2:byte[] bytesData = {$GPRMC,013946.00,A,3337.3186,N,11900.4483,E,0.05,218.30,111105,4.5,W,A*20.. };  
这样当然会出错,你数组里的每一个元素都不是字节.
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,