def wmain(): file.write('def main():\n') file.write('\tglobal SerialComm\n') file.write('\tglobal port\n\n') file.write( '\tport=portProperties.port_dict_ECB["port"]\n\t# 打开串口,并得到串口对象\n\tSerialComm=serial.Serial(port, baud, timeout=1)\n\tprint("已打开串口", port)\n\tsys.stdout = stdout_backup\n\tprint("已打开串口", port)\n\tsys.stdout = log_file\n') file.write( '\taddr=30285\n\treg_num=2\n\tsend_cmd=Common.combAddrRea(addr, reg_num)\n\trev_data=Common.sendData(SerialComm, send_cmd)\n') file.write('\tif rev_data=="":\n\t\tprint(addr,"rev_data==null")\n\t\tlog_file.close()\n\t\texit(1)\n') file.write('\telse:\n') file.write( "\t\tversion = [int(rev_data[10:12], 16), '.', int(rev_data[12:14], 16), '.', int(rev_data[6:8], 16), '.',int(rev_data[8:10], 16)]\n") file.write( '\t\tprint("当前SMP版本:", version)\n\t\tsys.stdout = stdout_backup\n\t\tprint("当前SMP版本:", version)\n\t\tsys.stdout = log_file\n') file.write('\tfunc()\n\tSerialComm.close()\n\n')
时间: 2023-07-22 16:13:17 浏览: 114
wmain函数的作用是将一系列代码写入文件中。在函数中,使用file.write()方法将代码逐行写入文件。代码的功能是打开串口并发送数据进行通信,然后根据接收到的数据进行处理。
具体的代码逻辑如下:
1. 首先,将字符串'def main():'写入文件。
2. 接着,将字符串'\tglobal SerialComm'写入文件。
3. 然后,将字符串'\tglobal port'写入文件。
4. 再然后,将字符串'port=portProperties.port_dict_ECB["port"]'写入文件。
5. 然后,将字符串'\t# 打开串口,并得到串口对象'写入文件。
6. 接着,将字符串'\tSerialComm=serial.Serial(port, baud, timeout=1)'写入文件。
7. 然后,将字符串'\tprint("已打开串口", port)'写入文件。
8. 接着,将字符串'\tsys.stdout = stdout_backup'写入文件。
9. 然后,将字符串'\tprint("已打开串口", port)'写入文件。
10. 接着,将字符串'\tsys.stdout = log_file'写入文件。
11. 然后,将字符串'\taddr=30285'写入文件。
12. 接着,将字符串'\treg_num=2'写入文件。
13. 然后,将字符串'\tsend_cmd=Common.combAddrRea(addr, reg_num)'写入文件。
14. 接着,将字符串'\trev_data=Common.sendData(SerialComm, send_cmd)'写入文件。
15. 然后,将字符串'\tif rev_data=="":'写入文件。
16. 接着,将字符串'\t\tprint(addr,"rev_data==null")'写入文件。
17. 接着,将字符串'\t\tlog_file.close()'写入文件。
18. 接着,将字符串'\t\texit(1)'写入文件。
19. 然后,将字符串'\telse:'写入文件。
20. 接着,将字符串"\t\tversion = [int(rev_data[10:12], 16), '.', int(rev_data[12:14], 16), '.', int(rev_data[6:8], 16), '.',int(rev_data[8:10], 16)]"写入文件。
21. 接着,将字符串'\t\tprint("当前SMP版本:", version)'写入文件。
22. 接着,将字符串'\t\tsys.stdout = stdout_backup'写入文件。
23. 接着,将字符串'\t\tprint("当前SMP版本:", version)'写入文件。
24. 接着,将字符串'\t\tsys.stdout = log_file'写入文件。
25. 接着,将字符串'\tfunc()'写入文件。
26. 接着,将字符串'\tSerialComm.close()'写入文件。
阅读全文