大彩串口屏读写文件问题

分区

本文使用的是大彩串口屏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.hqwc.cn/news/151503.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java练习题2022-3

从键盘上输入一个数值字符串(表示非负整数,所以该字符串不带正负号和小数点),输出这个字符串中的数字字符重新组合的最小数。例如“654321”输出的为“123456”;“001254”输出为“100245”;“00000”输出为…

iOS Autolayout 约束设置【顺序】的重要性!

0x00 顺序不同,结果不同 看图说话 1 代码是这样滴~ 设置好约束,让 4 个按钮,宽度均分~ 结果如上图 [_pastButton.topAnchor constraintEqualToAnchor:_textView.bottomAnchor constant:6].active YES;[_pastButton.leftAnchor constraintEq…

香港服务器运行不正常原因简析

​  网站在线业务的部署需要服务器的存在。于我们而言,租用正规服务商(正规机房)的服务器,一般情况下是会很少出现问题。但,要知道,再稳定的服务器也有出现问题的时候,香港服务器也不例外,而且恰恰这个原…

变压器分析

参考方向 如图所示,是变压器的原理图。其中, ϕ \phi ϕ是变压器铁芯的有效磁通, ϕ 1 \phi_1 ϕ1​是主线圈的漏磁通, ϕ 2 \phi_2 ϕ2​是副线圈的漏磁通。图中 u 1 u_1 u1​为初级线圈输入电压, i 1 i_1 i1​为初级…

LeetCode刷题:88. 合并两个有序数组

文章目录 写在前面⭐️88. 合并两个有序数组⭐️🔐题目描述💡解题思路🔑代码 写在前面 本题的题解代码是用C语言编写的。 📒博客主页:2023Fighting的博客主页 🎉欢迎关注🔎点赞👍收…

大厂面试题-JVM中的三色标记法是什么?

目录 问题分析 问题答案 问题分析 三色标记法是Java虚拟机(JVM)中垃圾回收算法的一种,主要用来标记内存中存活和需要回收的对象。 它的好处是,可以让JVM不发生或仅短时间发生STW(Stop The World),从而达到清除JVM内存垃圾的目的&#xff…

前端 读取/导入 Excel文档

情况: 需要通过Excel表,将数据导入到数据库,但是后台人员出差了,我又只会PHP,没用过node,所以只能前端导入Excel文件,然后循环调用后台的单条添加接口了。 库: Excel.js&#xff08…

云原生安全:如何保护云上应用不受攻击

文章目录 云原生安全的概念1. 多层次的安全性2. 自动化安全3. 容器安全4. 持续监控5. 合规性 云原生安全的关键挑战1. 无边界的环境2. 动态性3. 多云环境4. 容器化应用程序5. API和微服务 如何保护云上应用不受攻击1. 身份验证和访问控制示例代码: 2. 数据加密示例代…

仿真软件Proteus8.10 SP3 pro一键安装、汉化教程(附proteus8.10下载链接安装视频)

本破解教程仅供个人及 proteus 8.10粉丝们交流学习之用,请勿用于商业用途, 谢谢支持。此版本为Proteus8.10 SP3 pro 这里写目录标题 安装包下载链接:视频教程 一、安装软件解压二、软件安装三、汉化 安装包下载链接: http://www.eemcu.cn/2022/05/14/pr…

Visual Studio Professional 2019 软件安装教程(附安装包下载)

Microsoft Visual Studio 是一个非常强大的集成开发环境(IDE),适用于 Windows 上的 .NET 和 C 开发人员。它提供了一系列丰富的工具和功能,可以提升和增强软件开发的每个阶段。 Visual Studio IDE 是一个创意启动板,可…

JVM虚拟机:运行时数据区详解

本文重点 我们前面已经将类的加载过程进行了全面的了解和学习,按照如下所示的JVM架架构图,接下来我们应该学习运行时数据区了。 运行时数据区 如上图所示,灰色的标识线程私有,基本不存在垃圾回收。而非灰色的是线程共享的,存在垃圾回收。 PC计数器 每个线程都有一个程序…

P7473 重力球

P7473 重力球 Solution 考虑 Brute Force:对于每一次询问,通过 BFS 处理出最近的交汇点,输出答案。 很显然,会 TLE \colorbox{navy}{\color{white}{TLE}} TLE​。 故,考虑 优化: 观察发现障碍物数量非…