|

10精币
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | | 变量名 | 类 型 | 数组 | 备 注 | 端口号码 | 整数型 | | 波特率 | 整数型 | | 数据位 | 整数型 | | 校验位 | 文本型 | | 停止位 | 小数型 | | 发送数据内容 | 文本型 | | 配置文件内容 | 文本型 | | 配置文件地址 | 文本型 | | 文本 | 文本型 | |
|
_组合框_端口_鼠标左键被按下 | 逻辑型 | | |
横向位置 | 整数型 | | | | 纵向位置 | 整数型 | | | | 功能键状态 | 整数型 | | | |
计次循环首 (组合框_端口. 取项目数 (), a ) 组合框_端口. 删除项目 (0 ) 计次循环尾 ()端口号码 = 0 计次循环首 (15, a ) 端口号码 = 端口号码 + 1  端口1.端口号 = 端口号码  如果真 (端口1. 启动 () = 真)  组合框_端口. 加入项目 (“COM” + 到文本 (端口号码 ), )  组合框_端口. 置项目数值 (a, 端口号码 )  计次循环尾 () 如果真 (组合框_端口.现行选中项 = -1 ) 组合框_端口.现行选中项 = 0  组合框_波特.现行选中项 = 3 组合框_端口.现行选中项 = 0 组合框_数据.现行选中项 = 2 组合框_校验.现行选中项 = 0 组合框_停止.现行选中项 = 0 发送一区内容. 获取焦点 ()调试输出 (取运行目录 ()) 配置文件地址 = 取运行目录 () + “\pcc.ini”配置文件内容 = UTF8到文本 (读入文件 (配置文件地址 )) 发送一区内容.内容 = 取指定内容 (配置文件内容, “OneContent=”, “;”)发送二区内容.内容 = 取指定内容 (配置文件内容, “TowContent=”, “;”)|
取指定内容 | 文本型 | | |
完整内容 | 文本型 | | | | 左边文本 | 文本型 | | | | 右边文本 | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 位置 | 整数型 | | | 总长度 | 整数型 | | | 文本 | 文本型 | | |
总长度 = 取文本长度 (完整内容 )位置 = 寻找文本 (完整内容, 左边文本, , 假) + 取文本长度 (左边文本 )文本 = 取文本中间 (完整内容, 位置, 总长度 )总长度 = 取文本长度 (文本 )位置 = 寻找文本 (文本, 右边文本, , 假) - 1 文本 = 取文本中间 (文本, 1, 位置 )返回 (文本 )端口1.波特率 = 到整数 (组合框_波特.内容 )端口1.数据位数 = 到整数 (组合框_数据.内容 )端口1.奇偶校验方案 = 多项选择 (组合框_校验.现行选中项 + 1, 0, 1, 2, 3, 4 )端口1.端口号 = 到整数 (取文本右边 (组合框_端口.内容, 1 )) 端口1.停止位数 = 多项选择 (组合框_停止.现行选中项 + 1, 1, 2, 3 ) 如果 (端口1.奇偶校验方案 = 0 ) 端口1.奇偶校验 = 假  端口1.奇偶校验 = 真  如果 (打开串口.标题 = “打开串口”) 打开串口.标题 = “关闭串口” 端口1. 停止 ()   如果 (端口1. 启动 () = 真) 状态指示灯.填充颜色 = #绿色  状态指示灯.填充颜色 = # **  如果真 (打开串口.标题 = “关闭串口”) 如果真 (状态指示灯.填充颜色 = # ** )  打开串口.标题 = “打开串口” 信息框 (“打开串口失败,请检查串口是否被占用!”, 0, “警告”, )   如果 (打开串口.标题 = “关闭串口”) 发送十六进制内容 = (取运行目录 () + “\config.ini”, “打开1”, “”, ) 端口1. 发送数据 (取运行目录 () + “\config.ini”, “打开1”, “”, ) 延迟 (100 ) 端口1. 发送数据 (取运行目录 () + “\config.ini”, “关闭1”, “”, ) 信息框 (“请先打开串口!”, 0, “警告”, ) 返回 () 变量名 | 类 型 | 静态 | 数组 | 备 注 | 转换后的十六进制数据 | 字节型 | | 0 | n | 整数型 | | | 起始字节 | 整数型 | | |
待发送内容 = 删全部空 (待发送内容 )起始字节 = 1 重定义数组 (转换后的十六进制数据, 假, 取文本长度 (待发送内容 ) ÷ 2 ) 计次循环首 (取文本长度 (待发送内容 ) ÷ 2, n ) 转换后的十六进制数据 [n ] = 到字节 (启动窗口进制转换16到10 (取文本中间 (待发送内容, 起始字节, 2 )) ) 起始字节 = 起始字节 + 2  端口1. 发送数据 (转换后的十六进制数据 [n ]) 计次循环尾 ()|
启动窗口进制转换16到10 | 字节型 | | |
文本val | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 数值A | 文本型 | | | 数值B | 文本型 | | | 运算中间值 | 整数型 | | |
数值A = 到大写 (取文本中间 (文本val, 1, 1 )) 数值B = 到大写 (取文本中间 (文本val, 2, 1 )) 判断 (数值A = “0”) 运算中间值 = 0 判断 (数值A = “1”) 运算中间值 = 1 × 16 判断 (数值A = “2”) 运算中间值 = 2 × 16 判断 (数值A = “3”) 运算中间值 = 3 × 16 判断 (数值A = “4”) 运算中间值 = 4 × 16 判断 (数值A = “5”) 运算中间值 = 5 × 16 判断 (数值A = “6”) 运算中间值 = 6 × 16 判断 (数值A = “7”) 运算中间值 = 7 × 16 判断 (数值A = “8”) 运算中间值 = 8 × 16 判断 (数值A = “9”) 运算中间值 = 9 × 16 判断 (数值A = “A”) 运算中间值 = 10 × 16 判断 (数值A = “B”) 运算中间值 = 11 × 16 判断 (数值A = “C”) 运算中间值 = 12 × 16 判断 (数值A = “D”) 运算中间值 = 13 × 16 判断 (数值A = “E”) 运算中间值 = 14 × 16 判断 (数值A = “F”) 运算中间值 = 15 × 16  运算中间值 = 7 判断 (数值B = “0”)运算中间值 = 运算中间值 + 0 判断 (数值B = “1”)运算中间值 = 运算中间值 + 1 判断 (数值B = “2”)运算中间值 = 运算中间值 + 2 判断 (数值B = “3”)运算中间值 = 运算中间值 + 3 判断 (数值B = “4”)运算中间值 = 运算中间值 + 4 判断 (数值B = “5”)运算中间值 = 运算中间值 + 5 判断 (数值B = “6”)运算中间值 = 运算中间值 + 6 判断 (数值B = “7”)运算中间值 = 运算中间值 + 7 判断 (数值B = “8”)运算中间值 = 运算中间值 + 8 判断 (数值B = “9”)运算中间值 = 运算中间值 + 9 判断 (数值B = “A”)运算中间值 = 运算中间值 + 10 判断 (数值B = “B”)运算中间值 = 运算中间值 + 11 判断 (数值B = “C”)运算中间值 = 运算中间值 + 12 判断 (数值B = “D”)运算中间值 = 运算中间值 + 13 判断 (数值B = “E”)运算中间值 = 运算中间值 + 14 判断 (数值B = “F”)运算中间值 = 运算中间值 + 15  运算中间值 = 运算中间值 + 0 返回 (运算中间值) |
进制转换 | 文本型 | | |
被转换文本 | 文本型 | | | | 被转换进制 | 整数型 | | | | 转换的进制 | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 欲转换文本 | 文本型 | | | 临时文本 | 文本型 | | | 临时数值 | 长整数型 | | | 计次变量 | 整数型 | | |
如果真 (被转换进制 < 2 或 转换的进制 < 2 或 被转换进制 > 36 或 转换的进制 > 36 ) 返回 (“参数错误-进制只能在2-36之间”)被转换文本 = 到大写 (到半角 (被转换文本))
计次循环首 (取文本长度 (被转换文本 ), 计次变量 ) 临时文本 = 取文本中间 (被转换文本, 计次变量, 1 ) 如果真 (寻找文本 (取文本左边 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 被转换进制 ), 临时文本, , 假) = -1 )  临时文本 = “参数错误-” + 被转换文本 + “不是一个有效的” + 取文本左边 (数值到金额 (被转换进制, 真), 取文本长度 (数值到金额 (被转换进制, 真)) - 4 ) + “进制数!” 跳出循环 () 如果真 (计次变量 = 取文本长度 (被转换文本 ))   临时文本 = “”  计次循环尾 () 如果真 (临时文本 ≠ “”) 返回 (临时文本 )
如果真 (被转换进制 = 转换的进制 ) 返回 (被转换文本 ) 计次循环首 (取文本长度 (被转换文本 ), 计次变量 )  临时数值 = (寻找文本 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 取文本中间 (被转换文本, 计次变量, 1 ), , 真) - 1 ) × 求次方 (被转换进制, 取文本长度 (被转换文本 ) - 计次变量 ) + 临时数值 计次循环尾 () 判断循环首 (临时数值 > 转换的进制 - 1 ) 欲转换文本 = 取文本中间 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 到数值 (到文本 (临时数值 % 转换的进制 )) + 1, 1 ) + 欲转换文本  临时数值 = 取整 (临时数值 ÷ 转换的进制 ) 判断循环尾 ()欲转换文本 = 取文本中间 (“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”, 临时数值 + 1, 1 ) + 欲转换文本 返回 (欲转换文本 )变量名 | 类 型 | 静态 | 数组 | 备 注 | 被检测内容 | 文本型 | | | n | 整数型 | | | 被检测单字 | 文本型 | | | i | 整数型 | | | j | 整数型 | | |
j = 0 计次循环首 (取文本长度 (待检测内容 ), n ) 被检测单字 = 取文本中间 (待检测内容, n, 1 ) 计次循环首 (17, i )  如果真 ( (取代码 (到大写 (被检测单字 ), 1 ) < 48 或 取代码 (到大写 (被检测单字 ), 1 ) > 57 ) = 真)   如果真 ( (取代码 (到大写 (被检测单字 ), 1 ) < 65 或 取代码 (到大写 (被检测单字 ), 1 ) > 70 ) = 真)    如果真 ( (取代码 (到大写 (被检测单字 ), 1 ) < 32 或 取代码 (到大写 (被检测单字 ), 1 ) > 32 ) = 真)     如果真 ( (取代码 (到大写 (被检测单字 ), 1 ) < 0 或 取代码 (到大写 (被检测单字 ), 1 ) > 0 ) = 真)      j = 1                    计次循环尾 () 计次循环尾 () 如果 (j = 0 ) 返回 (真) 返回 (假)
出错:
正在编译现行程序
正在检查重复名称...
!!! 警告: 发现子程序“取指定内容”中的参数或局部变量名称“文本”与另一程序集变量重名
正在预处理现行程序
错误(30): 找不到指定的变量名称“发送十六进制内容”。
编译现行易程序失败或被中止!
Desktop.rar
(1.24 MB, 下载次数: 3)
|
最佳答案
查看完整内容
补充内容 (2025-3-6 23:11):
你把那两个编辑框删除就行了,我忘了删
|