⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inioper.txt

📁 工厂环境污染控制数据采集器
💻 TXT
📖 第 1 页 / 共 5 页
字号:
;;;671    	//	iEnd = len - 1;
;;;672        if (iStart < iEnd)
000864  e15a000b          CMP      r10,r11
000868  2a000008          BCS      |L1.2192|
;;;673    		{
;;;674    		strncpy((char*)&bu[0], (char*)&buf[iStart], iEnd - iStart);
00086c  e04b200a          SUB      r2,r11,r10
000870  e084100a          ADD      r1,r4,r10
000874  e28d0004          ADD      r0,sp,#4
000878  ebfffffe          BL       strncpy
;;;675    		bu[iEnd - iStart] = '\0';
00087c  e3a00000          MOV      r0,#0
000880  e04b100a          SUB      r1,r11,r10
000884  e28d2004          ADD      r2,sp,#4
000888  e7c20001          STRB     r0,[r2,r1]
00088c  ea000001          B        |L1.2200|
                  |L1.2192|
;;;676    		}
;;;677    	else 
;;;678    		bu[0] = '\0';
000890  e3a00000          MOV      r0,#0
000894  e5cd0004          STRB     r0,[sp,#4]
                  |L1.2200|
;;;679    	return &bu[0];
000898  e28d0004          ADD      r0,sp,#4
00089c  e28dd034          ADD      sp,sp,#0x34
0008a0  e8bd4ff0          POP      {r4-r11,lr}
;;;680    }
0008a4  e12fff1e          BX       lr
;;;681    
                          ENDP

                  config PROC
;;;333    void  config(void)
;;;334    {
0008a8  e92d41f0          PUSH     {r4-r8,lr}
0008ac  e24dd0c8          SUB      sp,sp,#0xc8
;;;335     int ret, vv;
;;;336     unsigned char i, j;
;;;337     char config_file[20]="plugin.ini";
0008b0  e3a02014          MOV      r2,#0x14
0008b4  e59f1408          LDR      r1,|L1.3268|
0008b8  e28d00b4          ADD      r0,sp,#0xb4
0008bc  ebfffffe          BL       __aeabi_memcpy4
;;;338     char buf[MAX_CFG_BUF];
;;;339     char tmpbuf[50];
;;;340     char tmppbuf[20];
;;;341    
;;;342     cfghandle=__fopen((char *)config_file, FILE_A);	  
0008c0  e3a01008          MOV      r1,#8
0008c4  e28d00b4          ADD      r0,sp,#0xb4
0008c8  ebfffffe          BL       __fopen
0008cc  e59f13d4          LDR      r1,|L1.3240|
0008d0  e5810000          STR      r0,[r1,#0]  ; cfghandle
;;;343     cfgfilelen =__get_flen(cfghandle);
0008d4  e5911000          LDR      r1,[r1,#0]  ; cfghandle
0008d8  e3a0200d          MOV      r2,#0xd
0008dc  e0010192          MUL      r1,r2,r1
0008e0  e59f23e0          LDR      r2,|L1.3272|
0008e4  e0820101          ADD      r0,r2,r1,LSL #2
0008e8  e3a01000          MOV      r1,#0
0008ec  ebfffffe          BL       __getfsize
0008f0  e59f13ac          LDR      r1,|L1.3236|
0008f4  e5810000          STR      r0,[r1,#0]  ; cfgfilelen
;;;344     if (cfgfilelen > 0)
0008f8  e2810000          ADD      r0,r1,#0
0008fc  e5900000          LDR      r0,[r0,#0]  ; cfgfilelen
000900  e3500000          CMP      r0,#0
000904  da000007          BLE      |L1.2344|
;;;345     	cfgfilebufpage = (cfgfilelen / MAX_CFG_BUF) + 1;
000908  e3a01064          MOV      r1,#0x64
00090c  e59f0390          LDR      r0,|L1.3236|
000910  e5900000          LDR      r0,[r0,#0]  ; cfgfilelen
000914  ebfffffe          BL       __aeabi_idivmod
000918  e2800001          ADD      r0,r0,#1
00091c  e59f13a8          LDR      r1,|L1.3276|
000920  e5810000          STR      r0,[r1,#0]  ; cfgfilebufpage
000924  ea000002          B        |L1.2356|
                  |L1.2344|
;;;346     else
;;;347     {
;;;348     	cfgfilebufpage = 0;
000928  e3a00000          MOV      r0,#0
00092c  e59f1398          LDR      r1,|L1.3276|
000930  e5810000          STR      r0,[r1,#0]  ; cfgfilebufpage
                  |L1.2356|
;;;349    	//addexceptionmsg();
;;;350    	//showexception(char *rt, char * buf);
;;;351     }
;;;352     //__setfpos(ff_handle,0);
;;;353     
;;;354     /*for (i = 0; i < cfgfilebufpage; i++)	
;;;355     {
;;;356        __setfpos(cfghandle, CFG_BUF_LEN * i);
;;;357    	__read(cfghandle, cfgfilebuffer, MAX_CFG_BUF);
;;;358    	//__write(ff_handle,tmp_buf1, 12);
;;;359     }*/
;;;360    
;;;361     //site_prop
;;;362     ret = ConfigGetKey(cfghandle, "SITE_INFO", "SITE_TYPE", buf);
000934  e28d3050          ADD      r3,sp,#0x50
000938  e28f2e39          ADR      r2,|L1.3280|
00093c  e28f1fe6          ADR      r1,|L1.3292|
000940  e59f0360          LDR      r0,|L1.3240|
000944  e5900000          LDR      r0,[r0,#0]  ; cfghandle
000948  ebfffffe          BL       ConfigGetKey
00094c  e1a04000          MOV      r4,r0
;;;363     if (ret == CFG_OK)
000950  e3540000          CMP      r4,#0
000954  1a000003          BNE      |L1.2408|
;;;364     {
;;;365     	//系统编号
;;;366    	g_site_conf.site_type = atoi(buf);
000958  e28d0050          ADD      r0,sp,#0x50
00095c  ebfffffe          BL       atoi
000960  e59f1380          LDR      r1,|L1.3304|
000964  e5810000          STR      r0,[r1,#0]  ; g_site_conf
                  |L1.2408|
;;;367     }
;;;368    /*ret = ConfigGetKey(cfghandle, "SITE_INFO", "SITE_NAME", buf);
;;;369     if (ret == CFG_OK)
;;;370     {
;;;371     	//监测点名称
;;;372    	strcpy(g_site_conf.site_name, buf);
;;;373     }*/
;;;374     ret = ConfigGetKey(cfghandle, "SITE_INFO", "AREA_ID", buf);
000968  e28d3050          ADD      r3,sp,#0x50
00096c  e28f2fde          ADR      r2,|L1.3308|
000970  e28f1fd9          ADR      r1,|L1.3292|
000974  e59f032c          LDR      r0,|L1.3240|
000978  e5900000          LDR      r0,[r0,#0]  ; cfghandle
00097c  ebfffffe          BL       ConfigGetKey
000980  e1a04000          MOV      r4,r0
;;;375     if (ret == CFG_OK)
000984  e3540000          CMP      r4,#0
000988  1a000003          BNE      |L1.2460|
;;;376     {
;;;377     	//AREA_ID
;;;378    	g_site_conf.area_id = atoi(buf);
00098c  e28d0050          ADD      r0,sp,#0x50
000990  ebfffffe          BL       atoi
000994  e59f134c          LDR      r1,|L1.3304|
000998  e5810004          STR      r0,[r1,#4]  ; g_site_conf
                  |L1.2460|
;;;379     }
;;;380      ret = ConfigGetKey(cfghandle, "SITE_INFO", "CORP_ID", buf);
00099c  e28d3050          ADD      r3,sp,#0x50
0009a0  e28f2fd3          ADR      r2,|L1.3316|
0009a4  e28f1e33          ADR      r1,|L1.3292|
0009a8  e59f02f8          LDR      r0,|L1.3240|
0009ac  e5900000          LDR      r0,[r0,#0]  ; cfghandle
0009b0  ebfffffe          BL       ConfigGetKey
0009b4  e1a04000          MOV      r4,r0
;;;381     if (ret == CFG_OK)
0009b8  e3540000          CMP      r4,#0
0009bc  1a000003          BNE      |L1.2512|
;;;382     {
;;;383     	//企业ID
;;;384    	g_site_conf.corp_id = atoi(buf);
0009c0  e28d0050          ADD      r0,sp,#0x50
0009c4  ebfffffe          BL       atoi
0009c8  e59f1318          LDR      r1,|L1.3304|
0009cc  e5810008          STR      r0,[r1,#8]  ; g_site_conf
                  |L1.2512|
;;;385     }
;;;386      ret = ConfigGetKey(cfghandle, "SITE_INFO", "SITE_ID", buf);
0009d0  e28d3050          ADD      r3,sp,#0x50
0009d4  e28f2e32          ADR      r2,|L1.3324|
0009d8  e28f1fbf          ADR      r1,|L1.3292|
0009dc  e59f02c4          LDR      r0,|L1.3240|
0009e0  e5900000          LDR      r0,[r0,#0]  ; cfghandle
0009e4  ebfffffe          BL       ConfigGetKey
0009e8  e1a04000          MOV      r4,r0
;;;387     if (ret == CFG_OK)
0009ec  e3540000          CMP      r4,#0
0009f0  1a000003          BNE      |L1.2564|
;;;388     {
;;;389     	//站点ID
;;;390    	g_site_conf.site_id = atoi(buf);
0009f4  e28d0050          ADD      r0,sp,#0x50
0009f8  ebfffffe          BL       atoi
0009fc  e59f12e4          LDR      r1,|L1.3304|
000a00  e581000c          STR      r0,[r1,#0xc]  ; g_site_conf
                  |L1.2564|
;;;391     }
;;;392       ret = ConfigGetKey(cfghandle, "SITE_INFO", "TIMEOUT", buf);
000a04  e28d3050          ADD      r3,sp,#0x50
000a08  e28f2fbd          ADR      r2,|L1.3332|
000a0c  e28f1fb2          ADR      r1,|L1.3292|
000a10  e59f0290          LDR      r0,|L1.3240|
000a14  e5900000          LDR      r0,[r0,#0]  ; cfghandle
000a18  ebfffffe          BL       ConfigGetKey
000a1c  e1a04000          MOV      r4,r0
;;;393     if (ret == CFG_OK)
000a20  e3540000          CMP      r4,#0
000a24  1a000003          BNE      |L1.2616|
;;;394     {
;;;395     	//超时时间
;;;396    	g_site_conf.site_timeout = atoi(buf);
000a28  e28d0050          ADD      r0,sp,#0x50
000a2c  ebfffffe          BL       atoi
000a30  e59f12b0          LDR      r1,|L1.3304|
000a34  e5810010          STR      r0,[r1,#0x10]  ; g_site_conf
                  |L1.2616|
;;;397     }
;;;398       ret = ConfigGetKey(cfghandle, "SITE_INFO", "TIMEOUT_RECONNECT", buf);
000a38  e28d3050          ADD      r3,sp,#0x50
000a3c  e28f2fb2          ADR      r2,|L1.3340|
000a40  e28f1fa5          ADR      r1,|L1.3292|
000a44  e59f025c          LDR      r0,|L1.3240|
000a48  e5900000          LDR      r0,[r0,#0]  ; cfghandle
000a4c  ebfffffe          BL       ConfigGetKey
000a50  e1a04000          MOV      r4,r0
;;;399     if (ret == CFG_OK)
000a54  e3540000          CMP      r4,#0
000a58  1a000003          BNE      |L1.2668|
;;;400     {
;;;401     	//超时次数
;;;402    	g_site_conf.site_timeout_reconnect = atoi(buf);
000a5c  e28d0050          ADD      r0,sp,#0x50
000a60  ebfffffe          BL       atoi
000a64  e59f127c          LDR      r1,|L1.3304|
000a68  e5810014          STR      r0,[r1,#0x14]  ; g_site_conf
                  |L1.2668|
;;;403     }
;;;404    
;;;405     //COM PORT属性
;;;406     for (i = 0; i < 5; i++)
000a6c  e3a05000          MOV      r5,#0
000a70  ea00006c          B        |L1.3112|
                  |L1.2676|
;;;407     {
;;;408     	strncpy(tmpbuf, "COM", 3);
000a74  e3a02003          MOV      r2,#3
000a78  e28f1e2a          ADR      r1,|L1.3360|
000a7c  e28d001c          ADD      r0,sp,#0x1c
000a80  ebfffffe          BL       strncpy
;;;409    	tmpbuf[3] = (unsigned char)(i + 1 + 0x30);  
000a84  e2850031          ADD      r0,r5,#0x31
000a88  e5cd001f          STRB     r0,[sp,#0x1f]
;;;410    	tmpbuf[4] = '\0';
000a8c  e3a00000          MOV      r0,#0
000a90  e5cd0020          STRB     r0,[sp,#0x20]
;;;411    	strncat(tmpbuf, "_INFO", 5);
000a94  e3a02005          MOV      r2,#5
000a98  e28f1d09          ADR      r1,|L1.3296|
000a9c  e28d001c          ADD      r0,sp,#0x1c
000aa0  ebfffffe          BL       strncat
;;;412    	ret = ConfigGetKey(cfghandle, "COM_PORT_PROP", tmpbuf, buf);
000aa4  e28d3050          ADD      r3,sp,#0x50
000aa8  e28d201c          ADD      r2,sp,#0x1c
000aac  e28f1e27          ADR      r1,|L1.3364|
000ab0  e59f01f0          LDR      r0,|L1.3240|
000ab4  e5900000          LDR      r0,[r0,#0]  ; cfghandle
000ab8  ebfffffe          BL       ConfigGetKey
000abc  e1a04000          MOV      r4,r0
;;;413    	 if (ret == CFG_OK)
000ac0  e3540000          CMP      r4,#0
000ac4  1a000055          BNE      |L1.3104|
;;;414    	 {
;;;415    	 	//串口设置
;;;416    		ret = getcsvlen(buf);
000ac8  e28d0050          ADD      r0,sp,#0x50
000acc  ebfffffe          BL       getcsvlen
000ad0  e1a04000          MOV      r4,r0
;;;417    		g_site_conf_extend.com_port[i].port_num = i;//端口号
000ad4  e0850185          ADD      r0,r5,r5,LSL #3
000ad8  e59f1254          LDR      r1,|L1.3380|
000adc  e7c15100          STRB     r5,[r1,r0,LSL #2]
;;;418    		g_site_conf_extend.com_port[i].flgUsed = TRUE;
000ae0  e3a00001          MOV      r0,#1
000ae4  e0851185          ADD      r1,r5,r5,LSL #3
000ae8  e59f2244          LDR      r2,|L1.3380|
000aec  e0821101          ADD      r1,r2,r1,LSL #2
000af0  e5810004          STR      r0,[r1,#4]
;;;419    		strcpy(tmpbuf, pickcsvdata(buf, ret, ';',  ',', 0)); 
000af4  e3a03000          MOV      r3,#0
000af8  e58d3000          STR      r3,[sp,#0]
000afc  e3a0302c          MOV      r3,#0x2c
000b00  e3a0203b          MOV      r2,#0x3b
000b04  e1a01004          MOV      r1,r4
000b08  e28d0050          ADD      r0,sp,#0x50
000b0c  ebfffffe          BL       pickcsvdata
000b10  e1a08000          MOV      r8,r0
000b14  e1a01000          MOV      r1,r0
000b18  e28d001c          ADD      r0,sp,#0x1c
000b1c  ebfffffe          BL       strcpy
;;;420    		g_site_conf_extend.com_port[i].baud = atoi(tmpbuf); 
000b20  e28d001c          ADD      r0,sp,#0x1c
000b24  ebfffffe          BL       atoi
000b28  e0851185          ADD      r1,r5,r5,LSL #3
000b2c  e59f2200          LDR      r2,|L1.3380|
000b30  e0821101          ADD      r1,r2,r1,LSL #2
000b34  e581000c          STR      r0,[r1,#0xc]
;;;421    		strcpy(tmpbuf, pickcsvdata(buf, ret, ';',  ',', 1));  
000b38  e3a03001          MOV      r3,#1
000b3c  e58d3000          STR      r3,[sp,#0]
000b40  e3a0302c          MOV      r3,#0x2c
000b44  e3a0203b          MOV      r2,#0x3b
000b48  e1a01004          MOV      r1,r4
000b4c  e28d0050          ADD      r0,sp,#0x50
000b50  ebfffffe          BL       pickcsvdata
000b54  e1a08000          MOV      r8,r0
000b58  e1a01000          MOV      r1,r0
000b5c  e28d001c          ADD      r0,sp,#0x1c
000b60  ebfffffe          BL       strcpy
;;;422    		g_site_conf_extend.com_port[i].flgChk = atoi(tmpbuf);//奇偶校验 0-无,1-奇,2-偶
000b64  e28d001c          ADD      r0,sp,#0x1c
000b68  ebfffffe          BL       atoi

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -