diff --git a/HARDWARE/PID.c b/HARDWARE/PID.c
index 517f340..b37c9ec 100644
--- a/HARDWARE/PID.c
+++ b/HARDWARE/PID.c
@@ -40,7 +40,7 @@ void PID_Init()
pid.hp_l = 19.2;
pid.hi_l = 0.08;
pid.hd_l = 0;
- pid.h_base_l = 30;
+ pid.h_base_l = 53;
pid.cp = 4.8;
pid.ci = 0;
diff --git a/HARDWARE/rs485.c b/HARDWARE/rs485.c
index 16afe73..bff3615 100644
--- a/HARDWARE/rs485.c
+++ b/HARDWARE/rs485.c
@@ -338,6 +338,9 @@ void RS485_3_Init(u32 bound)
RS485_3_TX_EN = 0;
}
+/**
+ * send data to Serial 1
+*/
void RS485_1_Send_Data(u8 *buf, u8 len)
{
u8 t;
@@ -353,7 +356,7 @@ void RS485_1_Send_Data(u8 *buf, u8 len)
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
;
- RS485_RX_CNT = 0;
+ // RS485_RX_CNT = 0;
RS485_1_TX_EN = 0;
}
@@ -378,7 +381,10 @@ void RS485_1_Send_Data_1(u8 *buf, u8 len)
RS485_1_TX_EN = 0;
}
-void RS485_1_Send_Data_2(void)
+/**
+ * upload params to serial 1, HMI
+*/
+void RS485_1_Upload_Params(void)
{
// when T eq 0 and H eq 0, don't send
if (T == 0 && H == 0) {
@@ -392,7 +398,7 @@ void RS485_1_Send_Data_2(void)
sendbuf[46] = 0xFC;
sendbuf[47] = 0xFF;
sendbuf[48] = 0xFF;
- // u8 a;
+
if (T <= 1000 && T >= -1000)
{
if (T < 0) {
@@ -497,12 +503,12 @@ void RS485_1_Send_Data_2(void)
// u8 tmpabc[] = {0xAA, 0xBB, 0xCC};
// RS485_1_Send_Data(tmpabc, 3);
// only when modify happen, then send
- if (cmp_str(prev_sendbuf, sendbuf, 49) != 0) {
+ // if (cmp_str(prev_sendbuf, sendbuf, 49) != 0) {
RS485_1_Send_Data(sendbuf, 49);
cp_str_to_prev(prev_sendbuf, sendbuf, 49);
- }
+ // }
}
diff --git a/HARDWARE/rs485.h b/HARDWARE/rs485.h
index 881fa75..703f7ba 100644
--- a/HARDWARE/rs485.h
+++ b/HARDWARE/rs485.h
@@ -21,7 +21,7 @@ void RS485_3_Init(u32 bound);
void RS485_1_Send_Data(u8 *buf,u8 len);
void RS485_1_Send_Data_1(u8 *buf,u8 len);
//void RS485_3_Send_Data_1(void);
-void RS485_1_Send_Data_2(void);
+void RS485_1_Upload_Params(void);
void RS485_1_Send_Data_3(void);
void RS485_3_Send_Data(u8 *buf,u8 len);
void RS485_Receive_Data(u8 *buf,u8 *len);
diff --git a/USER/control.uvguix.Administrator b/USER/control.uvguix.Administrator
index 5e11bd1..f505196 100644
--- a/USER/control.uvguix.Administrator
+++ b/USER/control.uvguix.Administrator
@@ -95,7 +95,7 @@
0
1454
- 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000B00000002000000010000005E453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C6D796672656572746F735C6D796672656572746F732E63000000000C6D796672656572746F732E6300000000C5D4F200FFFFFFFF52453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C555345525C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF55453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C5049442E6300000000055049442E6300000000BECEA100FFFFFFFF55453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C5049442E6800000000055049442E6800000000F0A0A100FFFFFFFF58453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C52656C6179732E63000000000852656C6179732E6300000000BCA8E100FFFFFFFF57453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C555345525C73746D3332663130782E68000000000B73746D3332663130782E68000000009CC1B600FFFFFFFF57453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C72733438352E63000000000772733438352E6300000000F7B88600FFFFFFFF57453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C77726974652E63000000000777726974652E6300000000D9ADC200FFFFFFFF6A453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C53544D3332463130785F46574C69625C7372635C73746D3332663130785F74696D2E63000000000F73746D3332663130785F74696D2E6300000000A5C2D700FFFFFFFF59453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C573235513132382E630000000009573235513132382E6300000000B3A6BE00FFFFFFFF62453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C555345525C6275696C645C4B65696C5C636F6E74726F6C2E6D6170000000000B636F6E74726F6C2E6D617000000000EAD6A300FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000010030000
+ 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000B00000000000000010000005E453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C6D796672656572746F735C6D796672656572746F732E63000000000C6D796672656572746F732E6300000000C5D4F200FFFFFFFF52453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C555345525C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF55453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C5049442E6300000000055049442E6300000000BECEA100FFFFFFFF55453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C5049442E6800000000055049442E6800000000F0A0A100FFFFFFFF58453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C52656C6179732E63000000000852656C6179732E6300000000BCA8E100FFFFFFFF57453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C555345525C73746D3332663130782E68000000000B73746D3332663130782E68000000009CC1B600FFFFFFFF57453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C72733438352E63000000000772733438352E6300000000F7B88600FFFFFFFF57453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C77726974652E63000000000777726974652E6300000000D9ADC200FFFFFFFF6A453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C53544D3332463130785F46574C69625C7372635C73746D3332663130785F74696D2E63000000000F73746D3332663130785F74696D2E6300000000A5C2D700FFFFFFFF59453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C48415244574152455C573235513132382E630000000009573235513132382E6300000000B3A6BE00FFFFFFFF62453A5CD6C7C4DCC5A9D2B520D6C7C4DCBBB7BEB3C6F8BAF2CFE45CD6C7C4DCC6F8BAF2C5E0D1F8CFE45CD6F7BFD8B0E55CB4FAC2EB5C636F6E74726F6C5F6672656572746F735C555345525C6275696C645C4B65696C5C636F6E74726F6C2E6D6170000000000B636F6E74726F6C2E6D617000000000EAD6A300FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000081020000
@@ -134,7 +134,7 @@
0
16
- 0300000066000000ED000000E0020000
+ 0300000066000000ED00000051020000
16
@@ -154,7 +154,7 @@
0
16
- 0300000066000000ED000000E0020000
+ 0300000066000000ED00000051020000
16
@@ -434,7 +434,7 @@
0
16
- 0300000066000000ED000000E0020000
+ 0300000066000000ED00000051020000
16
@@ -454,7 +454,7 @@
0
16
- 0300000066000000ED000000E0020000
+ 0300000066000000ED00000051020000
16
@@ -474,7 +474,7 @@
0
16
- 000000001103000080070000DE030000
+ 000000008202000080070000DE030000
16
@@ -514,7 +514,7 @@
0
16
- 03000000140300007D070000C5030000
+ 03000000850200007D07000036030000
16
@@ -1134,7 +1134,7 @@
0
16
- 03000000140300007D070000C5030000
+ 03000000850200007D07000036030000
16
@@ -1154,7 +1154,7 @@
0
16
- 03000000140300007D070000C5030000
+ 03000000850200007D07000036030000
16
@@ -1683,7 +1683,7 @@
3119
- 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DD00000090050000E1000000000000000100000004000000010000000000000000000000FFFFFFFF06000000CB00000057010000CC000000F08B00005A01000079070000FFFF02000B004354616262656450616E650020000000000000F40000006600000090050000F4000000F40000004F00000090050000DD0000000000000040280046060000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000025020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A004000066000000900500003C020000A00400004F000000900500002502000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F4000000F9020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000F000000010030000000000004F000000F0000000F90200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000011020000900500001502000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0E0000008F070000930700009407000095070000960700009007000091070000B5010000B8010000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000002C02000090050000CE020000000000001502000090050000B702000000000000404100460E0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000015020000CC020000B702000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000F902000080070000FD0200000100000001000010040000000100000008FDFFFF8C000000FFFFFFFF04000000C5000000C7000000B40100007794000001800080000001000000000000001403000080070000F503000000000000FD02000080070000DE0300000000000040820056040000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000
+ 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DD00000090050000E1000000000000000100000004000000010000000000000000000000FFFFFFFF06000000CB00000057010000CC000000F08B00005A01000079070000FFFF02000B004354616262656450616E650020000000000000F40000006600000090050000F4000000F40000004F00000090050000DD0000000000000040280046060000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000025020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A004000066000000900500003C020000A00400004F000000900500002502000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F40000006A020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000F000000010030000000000004F000000F00000006A0200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000011020000900500001502000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0E0000008F070000930700009407000095070000960700009007000091070000B5010000B8010000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000002C02000090050000CE020000000000001502000090050000B702000000000000404100460E0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000015020000CC020000B702000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000006A020000800700006E020000010000000100001004000000010000005BFDFFFFDF000000FFFFFFFF04000000C5000000C7000000B40100007794000001800080000001000000000000001403000080070000F5030000000000006E02000080070000DE0300000000000040820056040000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000
59392
@@ -1722,7 +1722,7 @@
Debug
2373
- 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000
+ 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000
898
@@ -1746,37 +1746,37 @@
0
100
- 2
+ 0
../myfreertos/myfreertos.c
- 0
+ 25
198
- 221
+ 219
1
0
main.c
- 13
+ 5
1
- 15
+ 16
1
0
../HARDWARE/PID.c
- 17
+ 18
115
- 130
+ 136
1
0
../HARDWARE/PID.h
- 8
+ 12
5
17
1
@@ -1803,9 +1803,9 @@
../HARDWARE/rs485.c
- 20
+ 27
381
- 405
+ 406
1
0
diff --git a/USER/control.uvoptx b/USER/control.uvoptx
index c51f18f..6b68d63 100644
--- a/USER/control.uvoptx
+++ b/USER/control.uvoptx
@@ -118,7 +118,7 @@
0
ST-LINKIII-KEIL_SWO
- -U16004A002933353739303541 -O239 -S0 -C0 -A0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM)
+ -U16004A002933353739303541 -O239 -S0 -C0 -A0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO19 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM)
0
diff --git a/USER/control.uvprojx b/USER/control.uvprojx
index 998e614..543aacc 100644
--- a/USER/control.uvprojx
+++ b/USER/control.uvprojx
@@ -47,7 +47,7 @@
0
1
- .\build\Keil\
+ ..\OBJ\
apk
1
0
diff --git a/myfreertos/myfreertos.c b/myfreertos/myfreertos.c
index e9ce7a8..3813033 100644
--- a/myfreertos/myfreertos.c
+++ b/myfreertos/myfreertos.c
@@ -1,6 +1,8 @@
#include "myfreertos.h"
#define SENSOR_ADDRESS 0x02
+#define INNER_SENSOR_ADDRESS 0x02
+#define OUTER_SENSOR_ADDRESS 0x04
char pubTopic[512] = "/sys/hp8oQhMZJ67/Device1/thing/event/property/post"; // Publish topic
char subTopic[512] = "/sys/hp8oQhMZJ67/Device1/thing/service/property/set"; // Subscribe topic
@@ -8,7 +10,7 @@ char subTopic[512] = "/sys/hp8oQhMZJ67/Device1/thing/service/property/set"; // S
#define MQTT_SOCK 5
// task priority
-#define START_TASK_PRIO 0
+#define START_TASK_PRIO 1
// Task stack size
#define START_STK_SIZE 128
// task handle
@@ -41,15 +43,21 @@ void Host_Computer_Communication(void);
* sensor data request: 02 03
*/
void SensorDataRequestTask(void *pvParameters);
+// task handle
+TaskHandle_t SensorDataRequestTask_Handler;
/**
* sync environment data: EE B5 01
*/
void SyncEnvironmentDataRequestTask(void *pvParameters);
+// task handle
+TaskHandle_t SyncEnvironmentDataRequestTask_Handler;
/**
* 定时制热test
*/
void HotTestRequestTask(void *pvParameters);
+// task handle
+TaskHandle_t HotTestRequestTask_Handler;
@@ -81,7 +89,9 @@ u8 Feed_Dog_Count = 0; // Feeding dog timing
u8 now_stage = 1; // Current operational phase
u16 tem, hum, red, blue, white;
u8 hour, min;
-u8 rs485buf[8] = {SENSOR_ADDRESS, 0x03, 0x00, 0x01, 0x00, 0x09, 0xD4, 0x3F}; // Sensor exchange data
+// u8 rs485buf[8] = {SENSOR_ADDRESS, 0x03, 0x00, 0x01, 0x00, 0x09, 0xD4, 0x3F}; // Sensor exchange data
+u8 INNER_SENSOR_485_REQUEST_COMMAND[8] = {INNER_SENSOR_ADDRESS, 0x03, 0x00, 0x01, 0x00, 0x09, 0xD4, 0x3F}; // Inner sensor exchange data
+u8 OUTER_SENSOR_485_REQUEST_COMMAND[8] = {OUTER_SENSOR_ADDRESS, 0x03, 0x00, 0x00, 0x00, 0x02, 0xC4, 0x5E}; // Outer sensor exchange data
u16 sync_cnt = 0; // 同步环境控制参数的计数器,到0同步
int T = 0, H = 0, C = 0, G = 0, current_T = 0;
extern u8 total[];
@@ -116,13 +126,6 @@ void os_init(void)
(UBaseType_t)START_TASK_PRIO,
(TaskHandle_t *)&StartTask_Handler);
- // 创建传感器数据请求任务
- xTaskCreate(SensorDataRequestTask, "SensorDataRequestTask", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY + 1, NULL);
-
- xTaskCreate(SyncEnvironmentDataRequestTask, "SyncEnvironmentDataRequestTask", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY + 2, NULL);
- xTaskCreate(HotTestRequestTask, "HotTestRequestTask", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY + 3, NULL);
-
-
vTaskStartScheduler();
}
@@ -156,12 +159,13 @@ void start_task(void *pvParameters)
taskENTER_CRITICAL(); // 进入临界区
// 创建与传感器通信任务
- handler = xTaskCreate((TaskFunction_t)Sensor_Communication_task,
- (const char *)"Sensor_Communication_task",
- (uint16_t)Sensor_Communication_STK_SIZE,
- (void *)NULL,
- (UBaseType_t)Sensor_Communication_TASK_PRIO,
- (TaskHandle_t *)&Sensor_CommunicationTask_Handler);
+ xTaskCreate(
+ (TaskFunction_t)Sensor_Communication_task,
+ (const char *)"Sensor_Communication_task",
+ (uint16_t)Sensor_Communication_STK_SIZE,
+ (void *)NULL,
+ (UBaseType_t)Sensor_Communication_TASK_PRIO,
+ (TaskHandle_t *)&Sensor_CommunicationTask_Handler);
// if(handler==pdPASS){printf("与传感器通信任务创建成功\r\n");}
// else{printf("与传感器通信任务创建失败\r\n");}
@@ -175,6 +179,31 @@ void start_task(void *pvParameters)
// if(handler4==pdPASS){printf("控灯任务创建成功\r\n");}
// else{printf("控灯任务创建失败\r\n");}
+ // 创建传感器数据请求任务
+ xTaskCreate(
+ (TaskFunction_t)SensorDataRequestTask,
+ (const char *)"SensorDataRequestTask",
+ (uint16_t)configMINIMAL_STACK_SIZE,
+ (void *)NULL,
+ (UBaseType_t)tskIDLE_PRIORITY + 2,
+ (TaskHandle_t* )&SensorDataRequestTask_Handler);
+
+ xTaskCreate(
+ (TaskFunction_t)SyncEnvironmentDataRequestTask,
+ (const char *)"SyncEnvironmentDataRequestTask",
+ (uint16_t)configMINIMAL_STACK_SIZE,
+ (void *)NULL,
+ (UBaseType_t)tskIDLE_PRIORITY + 3,
+ (TaskHandle_t* )&SyncEnvironmentDataRequestTask_Handler);
+ xTaskCreate(
+ (TaskFunction_t)HotTestRequestTask,
+ (const char *)"HotTestRequestTask",
+ (uint16_t)configMINIMAL_STACK_SIZE,
+ (void *)NULL,
+ (UBaseType_t)tskIDLE_PRIORITY + 4,
+ (TaskHandle_t* )&HotTestRequestTask_Handler);
+
+
vTaskDelete(StartTask_Handler); // 删除开始任务
taskEXIT_CRITICAL(); // 退出临界区
@@ -184,12 +213,14 @@ void start_task(void *pvParameters)
void SensorDataRequestTask(void *pvParameters) {
while (1) {
// 发送传感器数据请求的操作
- RS485_1_Send_Data_1(rs485buf, 8);
- delay_xms(100);
-
- // RS485_1_Send_Data_1(RS485_RX_BUF, 48);
+ RS485_1_Send_Data_1(INNER_SENSOR_485_REQUEST_COMMAND, 8);
+ vTaskDelay(100);
+ RS485_1_Send_Data_1(OUTER_SENSOR_485_REQUEST_COMMAND, 8);
+ vTaskDelay(100);
+
+ // RS485_1_Send_Data_1(RS485_RX_BUF, 48);
- vTaskDelay(SENSOR_DATA_REQUEST_PERIOD);
+ vTaskDelay(SENSOR_DATA_REQUEST_PERIOD - 200);
}
}
@@ -257,9 +288,8 @@ void Sensor_Communication_task(void *pvParameters)
u8 c = 0;
RS485_RX_CNT = 0;
while (isAllZeros(RS485_RX_BUF_COPY, 128) == 0)
- // while (RS485_RX_CNT > 0)
{
- if (RS485_RX_BUF_COPY[0] == 0x02 && RS485_RX_BUF_COPY[1] == 0x03 && CRC16_check(RS485_RX_BUF_COPY, 21) == 1)
+ if (RS485_RX_BUF_COPY[0] == INNER_SENSOR_ADDRESS && RS485_RX_BUF_COPY[1] == 0x03 && CRC16_check(RS485_RX_BUF_COPY, 21) == 1)
{
c++;
// receive message from sensor
@@ -267,11 +297,22 @@ void Sensor_Communication_task(void *pvParameters)
for (int i=0;i<23;i++) {
temp_data[i] = RS485_RX_BUF_COPY[i];
}
- process_sensor_data(temp_data);
+ process_inner_sensor_data(temp_data);
RX_BUF_Transfer(0, 23);
// u8 tmpaaa[] = {c};
// RS485_1_Send_Data_1(tmpaaa, 1);
}
+ else if (RS485_RX_BUF_COPY[0] == OUTER_SENSOR_ADDRESS && RS485_RX_BUF_COPY[1] == 0x03 && CRC16_check(RS485_RX_BUF_COPY, 7) == 1)
+ {
+ // receive message from sensor
+ u8 temp_data[9] = {0};
+ for (int i = 0; i < 9; i++)
+ {
+ temp_data[i] = RS485_RX_BUF_COPY[i];
+ }
+ process_outer_sensor_data(temp_data);
+ RX_BUF_Transfer(0, 9);
+ }
else if (RS485_RX_BUF_COPY[0] == 0xEE && RS485_RX_BUF_COPY[1] == 0xB6 && RS485_RX_BUF_COPY[2] == 0x01 && CRC16_check(RS485_RX_BUF_COPY, 16) == 1)
{
// batch update params in a stage
@@ -317,7 +358,7 @@ void Sensor_Communication_task(void *pvParameters)
bufcut_Init(RS485_DATA_TMP + 8, RS485_SUFFIX, 6, 10);
RS485_1_Send_Data_1(RS485_DATA_TMP, 10);
// delay_ms(10);
- RS485_1_Send_Data_2(); // 上传参数
+ RS485_1_Upload_Params(); // 上传参数
// }
RX_BUF_Transfer(0, 6);
}
@@ -419,7 +460,7 @@ void Sensor_Communication_task(void *pvParameters)
/**
* process sensor data
*/
-void process_sensor_data(u8 *data) {
+void process_inner_sensor_data(u8 *data) {
T = data[3];
T = T << 8 | data[4];
// Negative temperature treatment
@@ -504,10 +545,34 @@ void process_sensor_data(u8 *data) {
// HC595_Send_Byte(gpio_state);
- RS485_1_Send_Data_2(); // 上传参数
+ RS485_1_Upload_Params(); // 上传参数
// delay_xms(200);
}
+/**
+ * process outer sensor data
+ */
+void process_outer_sensor_data(u8 *data)
+{
+ int out_tem = data[3];
+ out_tem = out_tem << 8 | data[4];
+ // Negative temperature treatment
+ if (out_tem & 0x8000)
+ {
+ out_tem = ((~out_tem + 1) & 0xFFFF);
+ }
+ pid.out_tem = (float)out_tem / 10;
+
+ int out_humidity = data[5];
+ out_humidity = out_humidity << 8 | data[6];
+ // Negative temperature treatment
+ if (out_humidity & 0x8000)
+ {
+ out_humidity = ((~out_humidity + 1) & 0xFFFF);
+ }
+ pid.out_humidity = out_humidity;
+}
+
/**
* hmi event process
*/
@@ -522,93 +587,9 @@ void process_hmi_btn_event(u8 page, u8 btn_index, u8 value) {
now_stage = target_stage;
store_stage = target_stage;
Write_Init();
- // delay_ms(10);
- RS485_1_Send_Data_2(); // 上传参数
+ RS485_1_Upload_Params(); // 上传参数
}
break;
}
}
}
-
-// void Host_Computer_Communication(void)
-//{
-// if(RS485_RX_BUF_COPY[0]==0xEE&&RS485_RX_BUF_COPY[1]==0xB6)
-// {
-// if(RS485_RX_BUF_COPY[2]==0x03)//单个同步
-// {
-// Analysis(&n,&i,RS485_RX_BUF_COPY);
-// //printf("B6 03 cmd: batch sync\r\n");
-// Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
-// Write_Init();
-// RX_BUF_Transfer(0,11);
-//
-// }
-// if(RS485_RX_BUF_COPY[2]==0x04)//阶段切换
-// {
-// change_stage_rev1=RS485_RX_BUF_COPY[3];
-// //printf("B6 04 cmd: change stage\r\n");
-// RTC_synchronization_ins(2023,9,1,0,00,00);
-// now_stage=change_stage_rev1;
-// store_stage=change_stage_rev1;
-// Write_Init();
-// RX_BUF_Transfer(0,8);
-// }
-// if(RS485_RX_BUF_COPY[2]==0x01)//批量同步
-// {
-// Batch_synchronization(&n,RS485_RX_BUF_COPY);
-// //printf("B6 01 cmd: get one %d\r\n", n);
-// Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
-// //Write_Init();减少擦写的次数
-// RX_BUF_Transfer(0,20);
-// }
-// }
-// else if(RS485_RX_BUF_COPY[0]==0xEE&&RS485_RX_BUF_COPY[1]==0xB1)
-// {
-// if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[15]==0xFF&&RS485_RX_BUF[16]==0xFF)//单个同步默认带的数据
-// {
-// //printf("cut overdata of B6 03 \r\n");
-// RX_BUF_Transfer(0,17);
-// }
-// if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[14]==0xFF&&RS485_RX_BUF[15]==0xFF)//单个同步默认带的数据
-// {
-// //printf("cut overdata of B6 03 \r\n");
-// //RX_BUF_Printf(128);
-// RX_BUF_Transfer(0,16);
-// //RX_BUF_Printf(128);
-// }
-// if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[12]==0xFF&&RS485_RX_BUF_COPY[13]==0xFF)//阶段切换默认带的数据
-// {
-// //printf("cut overdata of B6 04 \r\n");
-// //RX_BUF_Printf(128);
-// RX_BUF_Transfer(0,14);
-// }
-// if(RS485_RX_BUF_COPY[2]==0x01&&RS485_RX_BUF_COPY[7]==0xFF&&RS485_RX_BUF_COPY[8]==0xFF)//上位机默认带的数据
-// {
-// //printf("cut overdata of Upper computer \r\n");
-// //RX_BUF_Printf(128);
-// RX_BUF_Transfer(0,9);
-// //RX_BUF_Printf(128);
-//
-// }
-// }
-// else
-// {
-// //int ZERO_Count=0;
-// //if()与while()的顺序不能变
-//// if((RS485_RX_BUF_COPY[0]!=0x00))//不为0,处理掉
-//// {
-//// RX_BUF_Transfer(0,1);
-//// //printf("the number is no zero\r\n");
-//// }
-////
-//// while(RS485_RX_BUF_COPY[ZERO_Count]==0x00)
-//// {
-//// ZERO_Count++;
-//// }
-//// RX_BUF_Transfer(0,ZERO_Count);
-//
-// RX_BUF_Transfer(0,1);
-// //printf("previous array cut\r\n");
-
-// }
-//}
diff --git a/myfreertos/myfreertos.h b/myfreertos/myfreertos.h
index 017ce04..333e021 100644
--- a/myfreertos/myfreertos.h
+++ b/myfreertos/myfreertos.h
@@ -24,7 +24,8 @@
#include "mqtt_api.h"
void os_init(void);
-void process_sensor_data(u8 *data);
+void process_inner_sensor_data(u8 *data);
+void process_outer_sensor_data(u8 *data);
void process_hmi_btn_event(u8 page_index, u8 btn_index, u8 value);
#endif