286 次浏览【转载需注明来源】
在快码编程中,提供了一个跨平台的串口通信库;使用该类库可以在windows、linux、mac系统中进行串口的通信;实现程序与硬件的交互~
注意:观看本博客时,请务必保证你是最新版的快码编程;否则无法正常使用串口支持库~
要使用该功能首先需要引用WEB串口库【创建网页项目、桌面端项目都可以使用,本博客推荐使用桌面端项目~】
引用了支持库后,你还需要准备一个串口设备,这里博客测试用的是一个串口继电器设备。
下单地址:串口店铺
注意:任意商家的任意串口设备都可以,你们可以自行去选择
上方的串口继电器分别在COM1、NO1接入了两条线,线的另外两端分别接入了灯泡和插头,接下来使用USB线将灯泡介入你的电脑设备【可以是电脑、linux-arm开发板等】
接下来我们就可以正式的进行开发了,首先第一步需要使用代码选择相关的串口设备:
异步 定义函数 初始化连接() {
同步 串口对象.选择串口设备((ev) => {
调试输出(ev);
}, (ev) => {
调试输出("连接成功");
}, (ev) => {
调试输出("连接失败");
},[{ usbVendorId: 0x1a86, usbProductId:0x7523 }])
同步 串口对象.打开串口(9600,8,1,"none","none");
}
注解:在上方的代码中,我们创建了一个异步函数,在这个函数中进行串口设备的选择并打开选择的串口,其中选择串口设备命令的最后一个参数传递的是一个数组[{ usbVendorId: 0x1a86, usbProductId:0x7523 }],这个数组中的成员对象usbVendorId代表串口的产品ID,usbProductId代表串口的厂商ID。
接下来再定义两个函数用来开启串口通电或关闭串口通电。
定义函数 发送关灯(){
串口对象.发送串口数据("A00100A1")
}
定义函数 发送开灯(){
串口对象.发送串口数据("A00101A2")
}
注解:发送串口数据采用的是十六进制数据,具体要怎么与串口交互要看您的串口设备所提供的相关资料。
然后还可以接受串口的相关信息,实例代码如下:
定义函数 获取串口返回数据(){
某个串口对象.获取串口数据(5000,(数据信息)=>{
调试输出(数据信息)
})
}
注解:获取串口数据一般在使用了发送串口数据命令后,用以获取串口返回的数据;该命令有两个参数,第一个是超时时间,例如5秒没有返回则停止获取,第二个参数是返回数据的回调函数。
完整案例代码如下:
<!文档类型 网页类型>
<网页 语言代码="中文">
<网页头部>
<网页信息 文档编码="UTF8">
<网页信息 名称="页面视图" 关联数据="视图宽度=填充视图宽度,初始缩放值=1,最大缩放值=1,用户缩放状态=假">
<网页信息 关联HTTP="兼容模式" 关联数据="最高IE版本">
<网页标题>Document</网页标题>
</网页头部>
<网页主体>
<!--这里编写网页代码-->
<按钮 点击回调="初始化连接()">初始化链接</按钮>
<按钮 点击回调="发送关灯()">发送关灯</按钮>
<按钮 点击回调="发送开灯()">发送开灯</按钮>
<脚本>
局部变量 串口对象 = 新建对象 浏览器串口类();
定义函数 发送关灯(){
串口对象.发送串口数据("A00100A1")
}
定义函数 发送开灯(){
串口对象.发送串口数据("A00101A2")
}
定义函数 获取串口返回数据(){
某个串口对象.获取串口数据(5000,(数据信息)=>{
调试输出(数据信息)
})
}
异步 定义函数 初始化连接() {
同步 串口对象.选择串口设备((ev) => {
调试输出(ev);
}, (ev) => {
调试输出("连接成功");
}, (ev) => {
调试输出("连接失败");
},[{ usbVendorId: 0x1a86, usbProductId:0x7523 }])
同步 串口对象.打开串口(9600,8,1,"none","none");
}
</脚本>
</网页主体>
</网页>
测试账号
老白568 Time: 2023-04-30 21:24:16
评论ID
感谢快码官方,非常神速!
快码FOF编程 Time: 2023-05-01 00:08:00
评论ID
非常好的博客,大家多多学习