关于物联型串口屏LUA脚本API.docx
- 文档编号:27270011
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:14
- 大小:76.05KB
关于物联型串口屏LUA脚本API.docx
《关于物联型串口屏LUA脚本API.docx》由会员分享,可在线阅读,更多相关《关于物联型串口屏LUA脚本API.docx(14页珍藏版)》请在冰豆网上搜索。
关于物联型串口屏LUA脚本API
物联型LUA脚本API
类别
内容
关键词
LUA脚本
摘要
物联型串口屏提供的LUA脚本API接口函数
版本
日期
原因
编制
审查
V1.0
2017/11/29
创建文档
刘仁武
李勇
1.适用范围
文档仅适合新物联型系列串口屏产品,W系列。
2.LUA脚本介绍
LUA是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
具体的LUA脚本教程,初学者可以通过登录菜鸟教程官网,搜索LUA教程进行学习。
3.API接口函数
3.1控件属性类
3.1.1change_screen(screen)
切换到指定画面
screen:
目标画面ID
3.1.2set_value(screen,control,value)
设置控件数值
按钮控件:
value-0按下,1弹起
文本控件:
value-整数或小数
也可以设置进度条、滑块、仪表等
3.1.3get_value(screen,control)
获取控件数值,按钮、文本、进度条、滑块、仪表等
3.1.4set_visiable(screen,control,visiable)
设置控件是否可见,visiable为0隐藏,1显示
3.1.5set_enable(screen,control,enable)
设置控件是否可触摸,enable为0禁止触摸,1启用触摸
3.1.6set_fore_color(screen,control,color)
设置控件前景色,color为RGB565
例如文本控件文字颜色,进度条显示颜色。
3.1.7set_back_color(screen,control,color)
设置控件背景色,color为RGB565
例如文本控件背景颜色,进度条背景颜色。
3.1.8set_text(screen,control,text)
设置控件显示内容(字符串),文本控件,二维码控件等
3.1.9get_text(screen,control)
获取控件字符串内容(字符串),文本控件,二维码控件等
3.2常用回调函数
3.2.1on_init()
系统加载LUA脚本文件之后,立即调用此回调函数,通常用于执行初始化操作。
3.2.2on_systick()
系统每隔1秒钟自动调用此回调函数。
3.2.3on_control_notify(screen,control,value)
用户触摸修改控件后,执行此回调函数。
点击按钮控件,修改文本控件、修改滑动条都会触发此事件。
value-为数值类型,如果需要获取文本控件的字符串值,使用get_text(screen,control)。
1.
2.
3.
3.1
3.2
3.2.1
3.2.2
3.2.3
3.2.4on_screen_change(screen)
当画面需要切换时,执行此回调函数,screen为目标画面。
注意,此函数内部调用change_screen,不会嵌套执行on_screen_change。
3.2.5on_press(state,x,y)
用户点击触摸屏时,执行此回调函数。
state-0松开,1按下,2持续按压
x,y-为触摸坐标
3.2.6on_usb_inserted(driver)
U盘插入时,执行此回调函数,dirver为U盘的盘符
3.2.7on_usb_removed()
U盘拔出时,执行此回调函数
3.3绘图函数
3.3.1redraw()
发送重绘请求,触发on_draw的执行。
3.3.2on_draw(screen)
重绘时执行此回调函数,可在此执行绘图指令。
3.3.3set_pen_color(color)
设置画笔的颜色,RGB565,用于指定线、矩形、圆等的颜色。
3.3.4draw_line(x0,y0,x1,y1,width)
绘制直线
x0,y0起始点坐标
x1,y1结束点坐标
width为线条的厚度,1~10
3.3.5draw_rect(x0,y0,x1,y1,fill)
绘制矩形
x0,y0左上角坐标
x1,y1右下角坐标
fill为0不填充,1填充
3.3.6draw_circle(x,y,r,fill)
绘制圆形
x,y圆的中心坐标
r圆的半径
fill为0不填充,1填充
3.3
3.3.1
3.3.2
3.3.3
3.3.4
3.3.5
3.3.6
3.3.7draw_ellipse(x0,y0,x1,y1,fill)
绘制椭圆
x0,y0左上角坐标
x1,y1右下角坐标
fill为0不填充,1填充
3.3.8draw_image(image_id,frame_id,dstx,dsty,width,height,srcx,srcy)
绘制图片
image_id图片资源的ID
frame_id对应图标,可以设置帧ID,其他图片固定为0
dstx图片显示X坐标
dsty图片显示Y坐标
width图片显示宽度
height图片显示高度
srcx图片裁剪X坐标
srcy图片裁剪Y坐标
3.3.9draw_image_file(filename,dstx,dsty,width,height,srcx,srcy)
绘制图片
filename图片文件,支持BMP/JPEG/PNG
dstx图片显示X坐标
dsty图片显示Y坐标
width图片显示宽度
height图片显示高度
srcx图片裁剪X坐标
srcy图片裁剪Y坐标
3.3.10draw_text(text,x,y,w,h,font,color,align)
显示文字
text字符串
x显示X坐标
y显示Y坐标
w显示宽度
h显示高度
font字体编号
color颜色RGB565
align对齐方式
bit0~bit1水平对齐方式,0左对齐,1居中对齐,2右对齐
bit2~bit3垂直对齐方式,0上对齐,1居中对齐,3下对齐
3.4寄存器访问
LUA中访问MODBUS/PLC等协议中定义的变量,需要通过下面的变量访问接口
3.4.1get_variant(name)
获取协议变量的数值,get_variant(“Variable1”)
3.4.2set_variant(name,value)
设置协议变量的数值,set_variant(“Variable1”,12345)
3.5网络相关
3.5.1get_wifi_cfg()
返回4个参数
wifi_mode,secumode,ssid,password=get_wifi_cfg()
wifi_mode无线网络模式0-禁用无线网络,1-无线网卡模式,2-AP热点模式
secumode加密模式0-AUTO(默认值)1-WEP2-WPAPSK3-WPAPSK2
ssid无线网络名称
password无线网络密码
3.5.2set_wifi_cfg(wifi_mode,secumode,ssid,password)
参数说明同上
3.5.3get_network_state()
state=get_network_state()
状态位说明
bit0-无线网络连接
bit1-有线网络连接
bit2-是否连上服务器
bit3-是否有客户端连上
3.5.4set_network_cfg(dhcp,ipaddr,netmask,gateway,dns)
dhcp-启用DHCP,0禁用1启用,禁用时后面的参数才有效
ipaddr-静态IP
netmask-掩码
gateway-子网掩码
dns-域名服务器
3.5.5get_network_cfg()
返回五个参数,说明同上
dhcp,ipaddr,netmask,gateway,dns=get_network_cfg()
3.5.6save_network_cfg()
保存网络设置,并重连网络
3.5.7set_network_service_cfg(wificom,mode,port,server_addr)
设置网络服务参数
wificom-默认为0,为1时启用透传模式(即无线串口屏)
mode-0禁用网络服务,1客户端模式,2服务器模式
port-服务端口,默认5050
server_addr-服务器位置,(屏作客户端时)
3
3.4
3.5
3.5.1
3.5.2
3.5.3
3.5.4
3.5.5
3.5.6
3.5.7
3.5.8get_network_service_cfg()
返回4个参数,说明同上
wificom,mode,port,server_addr=get_network_service_cfg()
3.5.9scan_ap()
扫描无线热点,返回热点数目
ap_count=scan_ap()
3.5.10get_ap_info(index)
获取指定热点的信息
ssid,security,quality=get_ap_info(index)
index热点索引
ssid热点名称
security加密方式
quality信号质量
3.5.11client_send_data(packet)
通过客户端SOCKET发送报文
localpacket={}–定义数组
packet[0]=0x01
packet[1]=0x02
…
client_send_data(packet)
3.5.12server_send_data(packet)
过服务端SOCKET发送报文
3.5.13on_client_recv_data(packet)
当客户端SOCKET接收到数据时,系统自动回调此函数。
3.5.8
3.5.9
3.5.10
3.5.11
3.5.12
3.5.13
3.5.14on_server_recv_data(packet)
当服务端SOCKET接收到数据时,系统自动回调此函数。
处理方法与on_client_recv_data类似。
3.6定时器
3.6.1start_timer(timer_id,timeout,countdown,repeat)
启动定时器
timer_id-定时器ID,0~31
timeout-超时时间,单位毫秒
countdown-0顺计时,1倒计时
repeat-重复次数,0表示无限重复
3.6.2stop_timer(timer_id)
停止定时器
3.6.3on_timer(timer_id)
定时器超时回调函数
3.6.4get_timer_value(timer_id)
获取定时器当前计时时间
3.7串口
3.7.1uart_send_data(packet)
通过串口发送数据
3.7.2uart_set_timeout(timeout,timeout_inter)
设置串口接收超时时间
timeout-接收总超时
timeout_inter-字节间隔超时
3.7.3uart_set_baudrate(baudrate)
设置波特率
3.7.4uart_get_baudrate()
获取波特率
3.7.5on_uart_recv_data(packet)
串口接收数据的回调函数,有两种方式可以触发此函数执行:
Ø使用自定义串口指令:
格式为EEB5【自定义数据】FFFCFFFF
Ø使用自由串口协议:
在LUA脚本中定义全局变量uart_free_protocol=1
3.8音视频
3.8.1play_sound(filename)
播放指定的声音文件,例如play_sound(„a:
/sounds/welcome.wav‟)
3.8.2set_volume(level)
设置音量0~100
3.8.3get_volume()
获取音量
3.9其他
3.9.1set_backlight(level)
设置背光亮度0~100
3.9.2get_backlight()
level=get_backlight
3.9.3beep(time)
蜂鸣器叫,单位毫秒
3.10机智云接口
3.10.1gagent_get_info()
系统自动调用此函数,获取机智云配置信息
3
3.6
3.7
3.8
3.9
3.10
3.10.1
3.10.2gagent_send_data(packet)
发送数据到机智云
3.10.3gagent_reset()
复位机智云设备绑定信息
3.10.4gagent_get_bind_url()
获取机智云绑定链接,可用于二维码控件扫描绑定
bind_url=gagent_get_bind_url()
3.10.5gagent_get_status()
获取机智云连接状态
status=gagent_get_status()
3.10.6on_gagent_recv_data(packet)
机智云数据接收回调函数
[文档可能无法思考全面,请浏览后下载,另外祝您生活愉快,工作顺利,万事如意!
]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关于 物联型 串口 LUA 脚本 API