SerialPort CurrentPort = null
CurrentPort = new SerialPort()
CurrentPort.ReadBufferSize = 128
CurrentPort.PortName = comName //端口号
CurrentPort.BaudRate = bandRate//比特率
CurrentPort.Parity =parity//奇偶校验
CurrentPort.StopBits = stop//停止位
CurrentPort.DataBits = databit//数据位
CurrentPort.ReadTimeout = 1000//读超时,即在1000内未读到数据就引起超时异常
//绑定数据接收事件,因为发送是被动的,所以你无法主动去获取别人发送的代码,只能通过这个事件来处理
CurrentPort.DataReceived += Sp_DataReceived
CurrentPort.Open()
定义一个变量 byte[] receiveStr
//绑定的事件处理函数
private static void Sp_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
SerialPort sp = sender as SerialPort
if (sp == null)
return
byte[] readBuffer = new byte[sp.ReadBufferSize]
sp.Read(readBuffer, 0, readBuffer.Length)
//赋值
receiveStr=readBuffer//当然你可以通过转换将byte[]转换为字符串。
}
//你要求的按钮事件可以这么写
private void button1_Click(object sender, EventArgs e)
{
if(receiveStr!=null)
{
变量 xxx=receiveStr
}
}
关于串口设备,最好联系厂家询问是否提供API接口。关于API接口一般是一个可供调用的DLL文件。
如果有可以直接在C#中引用,作为类库来 *** 作设备。
具体调用方式需要询问厂家或参阅api的文档说明。
不提供软件接口的设备是无法进行开发的。
我大概搜了下这个设备,设备是提供配套软件的,那么这款设备是有相关通讯接口类库的,也就是可以用C#进行开发。
如果找不到API文档,
请尝试用串口调试工具,跟踪配套软件的每一步 *** 作,获取串口通讯报文,用C#模拟 *** 作报文自己封装通讯类后进行开发。
首先,蓝牙串口仅仅是提供一个接口,不具备任何功能,是为手机的pc套件提供底层接口用的。第二,千月的文件传输,不是发送文件,也不是接收文件,而是对远端设备类似于ftp的文件管理,可以上传下载和删除,权限很大,大部分手机已关闭此功能。
第三,正确的发送文件方法是:在要发送的文件上右键,发送到,蓝牙设备
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)