大彩串口屏读写文件问题

news/2024/11/28 20:40:32/

分区

本文使用的是大彩串口屏M系列的:
串口屏内部有三个分区,分别为A、B、C三个区:
A区:系统区,存储组态工程文件
B区:数据区,存储配置信息,记录数据、历史曲线等
C区:备份区,备份数据区文件
在进行文件读写的时候,建议卸载B区,避免破坏A区、C区文件,B取文件读写需要注意以下两点:
·手动创建文件夹:在工程目录下创建“Public”文件夹,此文件夹表示B区,此后读写操作均在B区完成
在这里插入图片描述
分配空间大小:在工程属性-高级设置-存储分区B(Mbyte)中,需要分配大小大于0,一般默认即可。

路径

屏内文件读取

假设对屏内的test文件读写,路径如下所示

local file_path = ‘B:/test.txt’
SD卡/U盘路径读取

读写SD卡或U盘里的”test.txt“文件时,应巧妙利用LUA脚本SD卡、USB插入触发的回调函数里获取盘符,如下所示:

local file_path = ‘’function  on_usb_inserted(dir)file_path = dir..'/'..'test.txt'
endfunction  on_sd_inserted(dir)file_path = dir..'/'..'test.txt'
end

写文件:读写屏内文件

1.创建Public文件夹,并在该文件夹中创建config.txt文件
config.txt文件中的键值对要与代码中的键值匹配,否则会导致读取异常

2.编写LUA代码
具体代码如下:

local config_file_path = 'B:/config.txt'-- 配置项
local config_table		= {device_id = "test123456",verify_pwd = 123456,alert_stage_1sd_duration_s = 25, -- 第一阶段时长,人员警报秒速alert_stage_2nd_duration_s = 15, -- 第二阶段时长,关闭电磁阀秒数is_auto_open_gas_valve = false, --人员在场是否自动打开电磁阀is_reverse_open_gas_valve = false,--人员在场是否取反打开电磁阀is_maintain_open_gas_valve = false,--人员在场是否持续打开电磁阀alert_capture_duration_s = 10,report_url = "28.19.41.69:8601/MsgPoster",network_param = {dhcp = 0,ipaddr = "",netmask = "",gateway = "",dns = ""}
} -- 配置文件-- 将当前的配置参数保存起来
function save_config_table()local jsonStr = cjson.encode(config_table)set_text(1,33," ")	write_file(config_file_path, jsonStr)
end-- 加载配置文件
function load_config_table()local config1 = read_file(config_file_path)if config1 ~= nil thenlocal data1 = cjson.decode(config1)set_text(1,33," ")if data1 ~= nil thenconfig_table = data1set_text(1,32,"Success")returnendend-- 没有加载成功,将生成默认配制config_table = {device_id = "sfm123456",verify_pwd = 123456,alert_stage_1sd_duration_s = 25,alert_stage_2nd_duration_s = 15,alert_capture_duration_s = 12,is_auto_open_gas_valve = false,is_maintain_open_gas_valve = false,is_reverse_open_gas_valve = false,report_url = "28.19.41.69:8601/MsgPoster",network_param = {dhcp = 0,ipaddr = "",netmask = "",gateway = "",dns = ""}} -- 配置文件	set_text(1,32,"Error")
end---输入数据
---@param file_path string 路径
---@param info string 文件内容
function write_file(file_path, info)-- 以覆盖写入的方式打开文本local wfile = io.open(file_path, "w")if wfile ~= nil thenwfile:write(info)set_text(1,33," ")	endset_text(1,33," ")	wfile:close()flush_nor()
end

http://www.ppmy.cn/news/1183637.html

相关文章

08.K8S高可用方案

K8S高可用方案 1、高可用部署方式 官方提供两种高可用实现方式: 堆叠etcd 拓扑,其中 etcd 节点与控制平面节点共存;外部 etcd 节点,其中 etcd 与控制平面在不同的节点上运行;1.1、堆叠 etcd 拓扑 主要特点: 每个 master 节点上运行一个 apiserver 和 etcd, etcd 只与本…

漏洞复现-dedecms文件上传(CVE-2019-8933)

dedecms文件上传_CVE-2019-8933 漏洞信息 Desdev DedeCMS 5.7SP2版本中存在安全漏洞CVE-2019-8933文件上传漏洞 描述 ​ Desdev DedeCMS(织梦内容管理系统)是中国卓卓网络(Desdev)公司的一套基于PHP的开源内容管理系统&#x…

【Unity程序技巧】Input管理器

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:Uni…

C51--PWN-舵机控制

PWM开发sg90舵机 1、简介 PWM(pulse width modulation)是脉冲宽度调制缩写。 通过对一系列脉冲的宽度进行调制,等效出所需要的波形(包含形状以及幅值)。对模拟信号电平进行数字编码,通过调节占空比的变化来…

网络安全—小白自学

1.网络安全是什么 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高; 二、则是发展相对成熟…

【错误解决方案】ModuleNotFoundError: No module named ‘torch._six‘

1. 错误提示 在python程序中,试图导入一个名为torch._six的模块,但Python提示找不到这个模块。 错误提示:ModuleNotFoundError: No module named torch._six 2. 解决方案 出现这个错误可能是因为你使用的PyTorch版本和你的代码不兼容。在某…

入门人工智能 —— 学习数据持久化、使用 Python 将数据保存到mysql(7)

入门人工智能 —— 学习数据持久化、使用 Python 将数据保存到mysql 什么是数据持久化?使用 Python 进行数据持久化步骤 1: 安装 MySQL步骤 2: 安装必要的 Python 库步骤 3: 连接到 MySQL 数据库步骤 4: 创建数据表步骤 5: 插入数据步骤 6: 查询数据步骤 7: 关闭连接…

PlantSimulation访问本地Excel文件的方法

PlantSimulation访问本地Excel文件的方法 PlantSimulation访问本地Excel文件的方法PlantSimulation访问本地Excel文件的方法 //Param StatusTable,T_DataTable:object var T_DataTable:object:=DataTable IF NOT isComputerAccessPermittedMESSageBox("计算机访问被阻止,…