From c8b47e57abb1a02952ac1cea90e2c7f48dac6576 Mon Sep 17 00:00:00 2001 From: liumin Date: Sun, 19 Apr 2026 14:07:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8E=A5=E6=94=B6=E4=B8=BAkg?= =?UTF-8?q?f1=E5=92=8Ckgf2=E9=83=BD=E6=8E=A5=E6=94=B6=E8=BD=AC=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CAN.C | 15 ++- CL2.0.uvgui.liuminVir | 82 ++++++++-------- CL2.0.uvopt | 4 +- MAIN.C | 39 +++----- User.c | 223 +++++++++++++++++++++++++----------------- user.H | 48 +++++++++ 6 files changed, 240 insertions(+), 171 deletions(-) diff --git a/CAN.C b/CAN.C index d86b756..5f551f4 100644 --- a/CAN.C +++ b/CAN.C @@ -777,8 +777,6 @@ void CAN_vInit(void) /// - message object is used as receive object /// - this message object is assigned to list 1 (node 0) - //--------------MOCTR11 = 0x00A00000--------------------------------------- - CAN_vWriteCANAddress(CAN_MOCTR11); // Addressing MO11 control register CAN_vWriteAMData(0x00A00000); // load MO11 control register @@ -789,11 +787,11 @@ void CAN_vInit(void) /// - priority class 3; transmit acceptance filtering is based on the list /// order (like class 1) /// - extended 29-bit identifier - /// - identifier 29-bit: 0x15000004 + /// - identifier 29-bit: 0x15000006 - //--------------MOAR11 = 0xF5000004--------------------------------------- + //--------------MOAR11 = 0xF5000006--------------------------------------- - CAN_vWriteAMData(0xF5000004); // load MO11 arbitration register + CAN_vWriteAMData(0xF5000006); // load MO11 arbitration register // CAN Address pointing to the CAN_MODATAH11 CAN_ADCON = ADR_DEC; // Auto Decrement the current address(-1) @@ -1009,6 +1007,7 @@ void CAN_vInit(void) /// - message object is used as receive object /// - this message object is assigned to list 1 (node 0) + //--------------MOCTR14 = 0x00A00000--------------------------------------- CAN_vWriteCANAddress(CAN_MOCTR14); // Addressing MO14 control register @@ -1021,11 +1020,11 @@ void CAN_vInit(void) /// - priority class 3; transmit acceptance filtering is based on the list /// order (like class 1) /// - extended 29-bit identifier - /// - identifier 29-bit: 0x11000003 + /// - identifier 29-bit: 0x15000004 - //--------------MOAR14 = 0xF1000003--------------------------------------- + //--------------MOAR14 = 0xF5000004--------------------------------------- - CAN_vWriteAMData(0xF1000003); // load MO14 arbitration register + CAN_vWriteAMData(0xF5000004); // load MO14 arbitration register // CAN Address pointing to the CAN_MODATAH14 CAN_ADCON = ADR_DEC; // Auto Decrement the current address(-1) diff --git a/CL2.0.uvgui.liuminVir b/CL2.0.uvgui.liuminVir index 4fbf29f..069377c 100644 --- a/CL2.0.uvgui.liuminVir +++ b/CL2.0.uvgui.liuminVir @@ -91,7 +91,7 @@ 44 2 - 3 + 2 -32000 -32000 @@ -101,17 +101,17 @@ -1 - 9 - 228 - 1185 - 947 + 4 + 419 + 1376 + 886 0 - 544 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000400000002000000010000003E433A5C55736572735C6C69756D696E5669725C4465736B746F705C3230323530383034B2C9BCAFC4A3BFE9D0DEB8C4D7B4CCACBDD3CAD55C557365722E630000000006557365722E6300000000C5D4F200FFFFFFFF3E433A5C55736572735C6C69756D696E5669725C4465736B746F705C3230323530383034B2C9BCAFC4A3BFE9D0DEB8C4D7B4CCACBDD3CAD55C4D41494E2E4300000000064D41494E2E4300000000FFDC7800FFFFFFFF45433A5C55736572735C6C69756D696E5669725C4465736B746F705C3230323530383034B2C9BCAFC4A3BFE9D0DEB8C4D7B4CCACBDD3CAD55C74656D70657261747572652E43000000000D74656D70657261747572652E4300000000BECEA100FFFFFFFF45433A5C55736572735C6C69756D696E5669725C4465736B746F705C3230323530383034B2C9BCAFC4A3BFE9D0DEB8C4D7B4CCACBDD3CAD55C74656D70657261747572652E48000000000D74656D70657261747572652E4800000000F0A0A100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000001F010000650000007A07000049030000 + 550 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000004000000030000000100000047433A5C55736572735C6C69756D696E5669725C4465736B746F705C6163717569736974696F6E5F6D6F64756C655C6163717569736974696F6E5F6D6F64756C655C757365722E480000000006757365722E4800000000C5D4F200FFFFFFFF47433A5C55736572735C6C69756D696E5669725C4465736B746F705C6163717569736974696F6E5F6D6F64756C655C6163717569736974696F6E5F6D6F64756C655C557365722E630000000006557365722E6300000000FFDC7800FFFFFFFF47433A5C55736572735C6C69756D696E5669725C4465736B746F705C6163717569736974696F6E5F6D6F64756C655C6163717569736974696F6E5F6D6F64756C655C4D41494E2E4300000000064D41494E2E4300000000BECEA100FFFFFFFF46433A5C55736572735C6C69756D696E5669725C4465736B746F705C6163717569736974696F6E5F6D6F64756C655C6163717569736974696F6E5F6D6F64756C655C43414E2E43000000000543414E2E4300000000F0A0A100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000001F84FFFF4F83FFFF7E8AFFFF3786FFFF @@ -150,7 +150,7 @@ 0 16 - 0300000066000000180100001A030000 + 0300000066000000180100001E030000 16 @@ -170,7 +170,7 @@ 0 16 - 0300000066000000180100001A030000 + 0300000066000000180100001E030000 16 @@ -450,7 +450,7 @@ 0 16 - 0300000066000000180100001A030000 + 0300000066000000180100001E030000 16 @@ -470,7 +470,7 @@ 0 16 - 0300000066000000180100001A030000 + 0300000066000000180100001E030000 16 @@ -490,7 +490,7 @@ 0 16 - 00000000330300007A0700000E040000 + 00000000460300007E07000021040000 16 @@ -530,7 +530,7 @@ 0 16 - 00000000330300007A0700000E040000 + 00000000460300007E07000021040000 16 @@ -1170,7 +1170,7 @@ 0 16 - 00000000330300007A0700000E040000 + 00000000460300007E07000021040000 16 @@ -1730,7 +1730,7 @@ 0 16 - 00000000490300007A0700005C030000 + 000000004D0300007E07000060030000 16 @@ -1799,14 +1799,14 @@ 3325 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFDA000000C7000000F7040000CB000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000DA00000065000000F7040000DD000000DA0000004F000000F7040000C70000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF1D0400004F00000021040000CC010000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C30000018000400000000000002104000065000000F7040000E2010000210400004F000000F7040000CC01000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF1B0100004F0000001F0100003303000001000000020000100400000001000000D6FEFFFF45060000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000000000000650000001B01000049030000000000004F0000001B010000330300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000B8010000F7040000BC01000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB0900000180008000000000000000000000D2010000F70400005E02000000000000BC010000F70400004802000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFF7C020000BC010000800200004802000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF00000000400200007A070000440200000000000001000000040000000100000089FDFFFF76000000FFFFFFFF03000000B4010000D2010000CF01000001800080000000000000000000005A0200007A0700004903000000000000440200007A070000330300000000000040820046030000000A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFB401000001000000FFFFFFFFB40100000000000003000000C7000000008000000100000000000000490300007A07000024040000010000000100000001000000C5000000008000000100000000000000490300007A0700002404000001000000010000000100000077940000008000000100000000000000490300007A0700002404000001000000010000000100000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFDA000000C7000000F7040000CB000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000DA00000065000000F7040000DD000000DA0000004F000000F7040000C70000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF1D0400004F00000021040000CC010000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C30000018000400000000000002104000065000000F7040000E2010000210400004F000000F7040000CC01000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF1B0100004F0000001F0100003703000001000000020000100400000001000000D6FEFFFF45060000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000000000000650000001B01000049030000000000004F0000001B010000370300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000B8010000F7040000BC01000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB0900000180008000000000000000000000D2010000F70400005E02000000000000BC010000F70400004802000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFF7C020000BC010000800200004802000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF00000000400200007A070000440200000000000001000000040000000100000089FDFFFF76000000FFFFFFFF03000000B4010000D2010000CF01000001800080000000000000000000005A0200007A0700004903000000000000440200007A070000330300000000000040820046030000000A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFB401000001000000FFFFFFFFB40100000000000003000000C700000000800000010000000083FFFF4686FFFF7E8AFFFF2187FFFF010000000100000001000000C500000000800000010000000083FFFF4686FFFF7E8AFFFF2187FFFF0100000001000000010000007794000000800000010000000083FFFF4686FFFF7E8AFFFF2187FFFF01000000010000000100000000000000 59392 File - 2892 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000B44465F537754784B4746319600000000000000140006526F6D4E756D0B44465F537754784B4746310831313030303030310D63616E5F6572726F725F636E740A556E496E6643616E5F311C556E496E6643616E5F312E417272446174612E4172725B305D5B335D0C556E537753616D706C655F3102CEDE06504D434F4E300D626D3835363347657454696D650E626D38353633536574416C61726D0231320B44465F5377547854656D7016756E5F696E665F63616E5F6B67665F6F7574707574311C556E496E6643616E5F312E417272446174612E4172725B305D5B345D1C556E496E6643616E5F312E417272446174612E4172725B305D5B355D0743616E52585458056954656D70064D41584E554D0C4F575F5265616432426974730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 2889 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000D43414E5F765472616E736D6974960000000000000014000831353030303030340A43414E5F50414E43545216756E5F696E665F63616E5F6B67665F6F7574707574320D43414E5F765472616E736D69740963616E53656E64546F083134303030303032115348494E545F766958494E5452384973720B44465F537754784B4746310831313030303030310D63616E5F6572726F725F636E740A556E496E6643616E5F311C556E496E6643616E5F312E417272446174612E4172725B305D5B335D0C556E537753616D706C655F3102CEDE06504D434F4E300D626D3835363347657454696D650E626D38353633536574416C61726D0231320B44465F5377547854656D7016756E5F696E665F63616E5F6B67665F6F7574707574310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1822,7 +1822,7 @@ Build 976 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000002001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000004005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000004005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -1838,7 +1838,7 @@ Debug 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -1851,8 +1851,8 @@ 0 - 1914 - 922 + 1918 + 926 @@ -1862,39 +1862,39 @@ 0 100 - 2 + 3 + + user.H + 0 + 113 + 127 + 1 + + 0 + .\User.c - 23 - 225 - 392 + 8 + 363 + 403 1 0 .\MAIN.C - 2 - 220 - 235 + 3 + 101 + 258 1 0 - .\temperature.C - 2 - 454 - 434 - 1 - - 0 - - - temperature.H + .\CAN.C 0 - 40 - 16 + 487 + 504 1 0 diff --git a/CL2.0.uvopt b/CL2.0.uvopt index acd3a82..2c8564a 100644 --- a/CL2.0.uvopt +++ b/CL2.0.uvopt @@ -17,8 +17,8 @@ - 187610842 - 31157159 + -1575929917 + 31246864 diff --git a/MAIN.C b/MAIN.C index 09a1cd7..1f502ae 100644 --- a/MAIN.C +++ b/MAIN.C @@ -243,43 +243,26 @@ void main(void) // } //E3初始化 20251117 - un_inf_can_kgf_output1.bit_data.KGF01 = 0x01; // E3 - un_inf_can_kgf_output1.bit_data.KGF02 = 0x01; // 导航仪 - un_inf_can_kgf_output1.bit_data.KGF03 = 0x01; // 导航仪 - un_inf_can_kgf_output1.bit_data.KGF05 = 0x01; // 交换机、路由器 - un_inf_can_kgf_output1.bit_data.KGF06 = 0x01; // 交换机、路由器 - un_inf_can_kgf_output1.bit_data.KGF07 = 0x01; // 计算机 - un_inf_can_kgf_output1.bit_data.KGF08 = 0x01; // 计算机 - un_inf_can_kgf_output1.bit_data.KGF09 = 0 ; // 风扇 - un_inf_can_kgf_output1.bit_data.KGF11 = 0x01; // 上装 - un_inf_can_kgf_output1.bit_data.KGF12 = 0x01; // 上装 - un_inf_can_kgf_output1.bit_data.KGF14 = 0 ; // 灯 - un_inf_can_kgf_output1.bit_data.KGF15 = 0x01; // 网络摄像头 - un_inf_can_kgf_output1.bit_data.KGF16 = 0x01; // 遥控器 - + un_inf_can_kgf_output1.bit_data.KGF13 = 0x01; // 低压充电 + un_inf_can_kgf_output2.bit_data.KGF01 = 0x01; // 计算机电源1 + un_inf_can_kgf_output2.bit_data.KGF02 = 0x01; // 计算机电源2 + un_inf_can_kgf_output2.bit_data.KGF03 = 0x01; // 遥控器电源 + un_inf_can_kgf_output2.bit_data.KGF04 = 0x01; // E3电源 + un_inf_can_kgf_output2.bit_data.KGF05 = 0x01; // 交换机电源1 + un_inf_can_kgf_output2.bit_data.KGF06 = 0x01; // 交换机电源2 + un_inf_can_kgf_output2.bit_data.KGF15 = 0x01; // 计算机电源3 + un_inf_can_kgf_output2.bit_data.KGF16 = 0x01; // 计算机电源4 + + while(1) { - // USER CODE BEGIN (MAIN_Main,4) -// for(j=0;j<200;j++){for(i=0;i<133;i++)WDT_vRefresh();} -// tmp[3] = (ubyte)CntCan_1; -// tmp[2] = (ubyte)(CntCan_1>>8); - // SwSample(); CanRXTX(); CanErrorProcess(); WDT_vRefresh(); // LedDr(); BootMain(); - - -// tmp[1] = (ubyte)CntCan_1; -// tmp[0] = (ubyte)(CntCan_1>>8); -// CAN_vLoadData(0x2, (ulong *)(tmp)); // Add this Line -// CAN_vTransmit(2); -// for(j=0;j<200;j++){for(i=0;i<133;i++)WDT_vRefresh();} - // USER CODE END - } } // End of function main diff --git a/User.c b/User.c index c7f1848..e18d17a 100644 --- a/User.c +++ b/User.c @@ -2,14 +2,14 @@ #include "RTC.H" #include "temperature.H" #include -//can信息 +//can淇℃伅 UnInfCan UnInfCan_1 = {0}; UnSwOut UnSwOut_1 = {0}; -//CAN发送周期 +//CAN鍙戦佸懆鏈 uword CntCan_1 = 0; bit FlgCan_1 = 0; -//第一次采集到有效数据指示 +//绗竴娆¢噰闆嗗埌鏈夋晥鏁版嵁鎸囩ず bit FlgOneTime = 0; uword RgCanPerid = 1000; @@ -17,41 +17,45 @@ uword RgCanPerid = 1000; UnTimeOutput sleeptime = {0}; UnTimeOutput waketime = {0}; UnTimeOutput currenttime = {0}; -UnTimeOutput inittime = {00,1,1,0,0,0,0,0};// 默认设置 2000年,1月1日 周日,0:0:00 -UnTimeOutput un_time_output1 = {0};//接收设定时间 -UnInfCanKGFOutput un_inf_can_kgf_output2 = {0};//kgf输出 -UnInfCanKGFOutput un_inf_can_kgf_output1 = {0};//kgf输出 +UnTimeOutput inittime = {00,1,1,0,0,0,0,0};// 榛樿璁剧疆 2000骞达紝1鏈1鏃 鍛ㄦ棩锛0锛0锛00 +UnTimeOutput un_time_output1 = {0};//鎺ユ敹璁惧畾鏃堕棿 +UnInfCanKGFOutput un_inf_can_kgf_output2 = {0};//kgf杈撳嚭 +UnInfCanKGFOutput un_inf_can_kgf_output1 = {0};//kgf杈撳嚭 +UnInfCanKGFOutput un_inf_can_kgf_output3 = {0};//kgf鎴栫粨鏋 +UnInfCanKGFOutput un_inf_can_kgf_output4 = {0};//kgf鎴栫粨鏋 + +UnSampleKgfCommand un_sample_kgf_command = {0};//kgf杞彂 UnTimeOutput waketimelast = {0}; UnTimeOutput wake_time_10min = {0}; SystemState sleepstate = STATE_INIT; //PWM 20181227 ubyte PwmH[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; -ubyte powerstate = 0;//电源状态 +ubyte powerstate = 0;//鐢垫簮鐘舵 -ubyte vcu_can_cnt = 0; // 帧累加器 -ubyte vcu_can_last = 0; // 帧累加器过去值 -bool flg_wake_ecu = 0; //控制器唤醒标志 -bool flg_KGF = 0;//KGF唤醒标志 +ubyte vcu_can_cnt = 0; // 甯х疮鍔犲櫒 +ubyte vcu_can_last = 0; // 甯х疮鍔犲櫒杩囧幓鍊 +bool flg_wake_ecu = 0; //鎺у埗鍣ㄥ敜閱掓爣蹇 +bool flg_KGF = 0;//KGF鍞ら啋鏍囧織 ubyte can_error_cnt = 0; ubyte can_error_flg = 0; //----------------------------------------------------------------------- -//RTC定时器 +//RTC瀹氭椂鍣 //----------------------------------------------------------------------- void RTCProcess(void) { //************************************************************************ -//////CAN发送周期 +//////CAN鍙戦佸懆鏈 if(FlgCan_1){CntCan_1++;if(CntCan_1 >= RgCanPerid){FlgCan_1=0; CntCan_1=0;}}else{CntCan_1=0;} //************************************************************************ } -//can错误处理 +//can閿欒澶勭悊 void CanErrorProcess(void) { ubyte ubNSRL; @@ -91,10 +95,10 @@ void CanErrorProcess(void) void CanTransmit(void) { //----------------- -------- -// 装载数据 - if(1 == flg_KGF)//等待KGF唤醒后再发送数据 +// 瑁呰浇鏁版嵁 + if(1 == flg_KGF)//绛夊緟KGF鍞ら啋鍚庡啀鍙戦佹暟鎹 { - CAN_waitTransmit(DF_SwTx);//发送前等待上一帧发送完毕,这样不会丢帧 + CAN_waitTransmit(DF_SwTx);//鍙戦佸墠绛夊緟涓婁竴甯у彂閫佸畬姣曪紝杩欐牱涓嶄細涓㈠抚 CAN_vLoadData(DF_SwTx, (ulong *)(&UnInfCan_1.ArrData.Arr[0][0])); CAN_vTransmit(DF_SwTx); } @@ -112,12 +116,12 @@ void canSendTo(ubyte index,ubyte *buf) CanTransmitbuf[4] = buf[6]; CanTransmitbuf[5] = buf[7]; - CAN_waitTransmit(index);//发送前等待上一帧发送完毕,这样不会丢帧 - CAN_vLoadData(index, (ulong *)CanTransmitbuf);// 装载数据 + CAN_waitTransmit(index);//鍙戦佸墠绛夊緟涓婁竴甯у彂閫佸畬姣曪紝杩欐牱涓嶄細涓㈠抚 + CAN_vLoadData(index, (ulong *)CanTransmitbuf);// 瑁呰浇鏁版嵁 CAN_vTransmit(index); } -//CAN发送一帧 +//CAN鍙戦佷竴甯 void CanTX(void) { //----------------------------------- @@ -133,7 +137,7 @@ void CanTX(void) CanTransmit(); } -//休眠处理函数 +//浼戠湢澶勭悊鍑芥暟 //------------------------------------------------------------------ void SystemStateMachine(SystemState *RgSTT) { @@ -142,9 +146,9 @@ void SystemStateMachine(SystemState *RgSTT) { //------------------------------------------- case STATE_INIT: - if(NORMAL == flg_wake_ecu)//控制器唤醒 + if(NORMAL == flg_wake_ecu)//鎺у埗鍣ㄥ敜閱 { - bm8563SetAlarm(&waketime); //设置唤醒时间 + bm8563SetAlarm(&waketime); //璁剧疆鍞ら啋鏃堕棿 memcpy(&waketimelast,&waketime,sizeof(UnTimeOutput)); *RgSTT = STATE_ON; } @@ -155,52 +159,52 @@ void SystemStateMachine(SystemState *RgSTT) break; case STATE_ON: - if(bm8563CheckAlarmFlag())//唤醒时间到以及高压开关关闭 + if(bm8563CheckAlarmFlag())//鍞ら啋鏃堕棿鍒颁互鍙婇珮鍘嬪紑鍏冲叧闂 { - bm8563SetTime(&inittime);//20250802 初始化时间 解决因为时间不对导致无法休眠问题 - bm8563SetAlarm(&sleeptime);//设置休眠时间 - KGF_PIN = 0; //KGF休眠 - CAN_PIN = 1; //can芯片休眠 - BATTERY_PIN = 0;//电池休眠 - *RgSTT = STATE_INIT; // 初始化状态 - PS_vSetPowerDown();//休眠 + bm8563SetTime(&inittime);//20250802 鍒濆鍖栨椂闂 瑙e喅鍥犱负鏃堕棿涓嶅瀵艰嚧鏃犳硶浼戠湢闂 + bm8563SetAlarm(&sleeptime);//璁剧疆浼戠湢鏃堕棿 + KGF_PIN = 0; //KGF浼戠湢 + CAN_PIN = 1; //can鑺墖浼戠湢 + BATTERY_PIN = 0;//鐢垫睜浼戠湢 + *RgSTT = STATE_INIT; // 鍒濆鍖栫姸鎬 + PS_vSetPowerDown();//浼戠湢 } - else if(0 != memcmp(&waketimelast,&waketime,sizeof(UnTimeOutput)))//比较值是否一样,不一样的话立马更新 + else if(0 != memcmp(&waketimelast,&waketime,sizeof(UnTimeOutput)))//姣旇緝鍊兼槸鍚︿竴鏍凤紝涓嶄竴鏍风殑璇濈珛椹洿鏂 { memcpy(&waketimelast,&waketime,sizeof(UnTimeOutput)); bm8563SetAlarm(&waketime); - *RgSTT = STATE_ON; // 保持状态(唤醒后由中断处理) + *RgSTT = STATE_ON; // 淇濇寔鐘舵侊紙鍞ら啋鍚庣敱涓柇澶勭悊锛 } - else if( (POWER_WORKING == powerstate) || (POWER_EMERGENCY == powerstate) )//等于工作状态 + else if( (POWER_WORKING == powerstate) || (POWER_EMERGENCY == powerstate) )//绛変簬宸ヤ綔鐘舵 { - *RgSTT = STATE_ON2; // 进入STATE_ON2 + *RgSTT = STATE_ON2; // 杩涘叆STATE_ON2 } else { - *RgSTT = STATE_ON; // 保持 + *RgSTT = STATE_ON; // 淇濇寔 } break; case STATE_ON2: - if( POWER_STANDBY == powerstate )//总开关关闭或者进入standy + if( POWER_STANDBY == powerstate )//鎬诲紑鍏冲叧闂垨鑰呰繘鍏tandy { - bm8563SetTime(&inittime);//20250802 初始化时间 解决因为时间不对导致无法休眠问题 + bm8563SetTime(&inittime);//20250802 鍒濆鍖栨椂闂 瑙e喅鍥犱负鏃堕棿涓嶅瀵艰嚧鏃犳硶浼戠湢闂 bm8563SetAlarm(&sleeptime); - KGF_PIN = 0; //KGF休眠 - CAN_PIN = 1; //can芯片休眠 - BATTERY_PIN = 0;//电池休眠 - *RgSTT = STATE_INIT; // 保持状态(唤醒后由中断处理) - PS_vSetPowerDown();//休眠 + KGF_PIN = 0; //KGF浼戠湢 + CAN_PIN = 1; //can鑺墖浼戠湢 + BATTERY_PIN = 0;//鐢垫睜浼戠湢 + *RgSTT = STATE_INIT; // 淇濇寔鐘舵侊紙鍞ら啋鍚庣敱涓柇澶勭悊锛 + PS_vSetPowerDown();//浼戠湢 } else { - *RgSTT = STATE_ON2; // 保持 + *RgSTT = STATE_ON2; // 淇濇寔 } break; default:; } } -//CAN发送接收 +//CAN鍙戦佹帴鏀 void CanRXTX(void) { stCAN_SWObj StrCanRx = {0}; @@ -230,7 +234,7 @@ void CanRXTX(void) } - if(CAN_ubNewData(DF_SwRxKGF2))//等待KGF唤醒 + if(CAN_ubNewData(DF_SwRxKGF2))//绛夊緟KGF鍞ら啋 { CAN_vGetMsgObj(DF_SwRxKGF2, &StrCanRx); @@ -241,18 +245,18 @@ void CanRXTX(void) } - if(CAN_ubNewData(DF_SwZFKGF1))//接受E3的转发控制 + if(CAN_ubNewData(DF_SwZFKGF1))//鎺ュ彈E3鐨勮浆鍙戞帶鍒 { CAN_vGetMsgObj(DF_SwZFKGF1, &StrCanRx); - un_inf_can_kgf_output1.arr[2] = StrCanRx.ulDATAL.ubDB[0]; - un_inf_can_kgf_output1.arr[3] = StrCanRx.ulDATAL.ubDB[1]; - un_inf_can_kgf_output1.arr[0] = StrCanRx.ulDATAL.ubDB[2]; - un_inf_can_kgf_output1.arr[1] = StrCanRx.ulDATAL.ubDB[3]; - un_inf_can_kgf_output1.arr[6] = StrCanRx.ulDATAH.ubDB[0]; - un_inf_can_kgf_output1.arr[7] = StrCanRx.ulDATAH.ubDB[1]; - un_inf_can_kgf_output1.arr[4] = StrCanRx.ulDATAH.ubDB[2]; - un_inf_can_kgf_output1.arr[5] = StrCanRx.ulDATAH.ubDB[3]; + un_sample_kgf_command.arr[2] = StrCanRx.ulDATAL.ubDB[0]; + un_sample_kgf_command.arr[3] = StrCanRx.ulDATAL.ubDB[1]; + un_sample_kgf_command.arr[0] = StrCanRx.ulDATAL.ubDB[2]; + un_sample_kgf_command.arr[1] = StrCanRx.ulDATAL.ubDB[3]; + un_sample_kgf_command.arr[6] = StrCanRx.ulDATAH.ubDB[0]; + un_sample_kgf_command.arr[7] = StrCanRx.ulDATAH.ubDB[1]; + un_sample_kgf_command.arr[4] = StrCanRx.ulDATAH.ubDB[2]; + un_sample_kgf_command.arr[5] = StrCanRx.ulDATAH.ubDB[3]; CAN_vReleaseObj(DF_SwZFKGF1); } @@ -278,25 +282,25 @@ void CanRXTX(void) CAN_vReleaseObj(DF_SwRx); - vcu_can_cnt ++;//节点在线检测累加 + vcu_can_cnt ++;//鑺傜偣鍦ㄧ嚎妫娴嬬疮鍔 - powerstate = UnInfCan_1.ArrData.ArrRX[0][4];//整车电源状态 + powerstate = UnInfCan_1.ArrData.ArrRX[0][4];//鏁磋溅鐢垫簮鐘舵 - //设定休眠时间 - TimeTemp = UnInfCan_1.ArrData.ArrRX[0][0] + ((ulong)UnInfCan_1.ArrData.ArrRX[0][1] << 8) ;//唤醒时间 - if(TimeTemp >= MAX_TIME)//最大限制值,30天 + //璁惧畾浼戠湢鏃堕棿 + TimeTemp = UnInfCan_1.ArrData.ArrRX[0][0] + ((ulong)UnInfCan_1.ArrData.ArrRX[0][1] << 8) ;//鍞ら啋鏃堕棿 + if(TimeTemp >= MAX_TIME)//鏈澶ч檺鍒跺硷紝30澶 { TimeTemp = MAX_TIME; } - // 分钟 → 小时 + // 鍒嗛挓 鈫 灏忔椂 HoursTemp = TimeTemp / 60; sleeptime.bit_data.minute = TimeTemp % 60; - // 小时 → 天 + // 灏忔椂 鈫 澶 DaysTemp = HoursTemp / 24; sleeptime.bit_data.hour = HoursTemp % 24; - if(DaysTemp >= 30)//日超过范围 + if(DaysTemp >= 30)//鏃ヨ秴杩囪寖鍥 { sleeptime.bit_data.day = 30; } @@ -305,21 +309,21 @@ void CanRXTX(void) sleeptime.bit_data.day = DaysTemp; } - //设定唤醒时间 - TimeTemp = UnInfCan_1.ArrData.ArrRX[0][2] + ((ulong)UnInfCan_1.ArrData.ArrRX[0][3] << 8);//唤醒时间 - if(TimeTemp > MAX_TIME)//最大限制值,30天 + //璁惧畾鍞ら啋鏃堕棿 + TimeTemp = UnInfCan_1.ArrData.ArrRX[0][2] + ((ulong)UnInfCan_1.ArrData.ArrRX[0][3] << 8);//鍞ら啋鏃堕棿 + if(TimeTemp > MAX_TIME)//鏈澶ч檺鍒跺硷紝30澶 { TimeTemp = MAX_TIME; } - // 分钟 → 小时 + // 鍒嗛挓 鈫 灏忔椂 HoursTemp = TimeTemp / 60; waketime.bit_data.minute = TimeTemp % 60; - // 小时 → 天 + // 灏忔椂 鈫 澶 DaysTemp = HoursTemp / 24; waketime.bit_data.hour = HoursTemp % 24; - if(DaysTemp >= 30)//日超过范围 + if(DaysTemp >= 30)//鏃ヨ秴杩囪寖鍥 { waketime.bit_data.day = 30; } @@ -329,63 +333,98 @@ void CanRXTX(void) } } - //休眠处理 -// SystemStateMachine(&sleepstate); 不需要休眠处理,上电直接都上电。 + //浼戠湢澶勭悊 + SystemStateMachine(&sleepstate); // -//1000ms发送一帧 +//1000ms鍙戦佷竴甯 if(!FlgCan_1) { FlgCan_1 = 1; - bm8563GetTime(¤ttime);//1s更新一次时钟 + bm8563GetTime(¤ttime);//1s鏇存柊涓娆℃椂閽 - // 读取分钟(地址0x03) + // 璇诲彇鍒嗛挓锛堝湴鍧0x03锛 UnSwSample_1.arr[4] = (BM8563_ReadReg(BM8563_ALARM_MIN)); - // 读取小时(地址0x04) - UnSwSample_1.arr[2] = (BM8563_ReadReg(BM8563_ALARM_HOUR)); // 24小时制需屏蔽Bit6-7 + // 璇诲彇灏忔椂锛堝湴鍧0x04锛 + UnSwSample_1.arr[2] = (BM8563_ReadReg(BM8563_ALARM_HOUR)); // 24灏忔椂鍒堕渶灞忚斀Bit6-7 - // 读取日(地址0x05) - UnSwSample_1.arr[1] = (BM8563_ReadReg(BM8563_ALARM_DAY)); // 屏蔽控制位 + // 璇诲彇鏃ワ紙鍦板潃0x05锛 + UnSwSample_1.arr[1] = (BM8563_ReadReg(BM8563_ALARM_DAY)); // 灞忚斀鎺у埗浣 - // 读取日(地址0x05) - UnSwSample_1.arr[5] = (BM8563_ReadReg(BM8563_ALARM_DAY)); // 屏蔽控制位 + // 璇诲彇鏃ワ紙鍦板潃0x05锛 + UnSwSample_1.arr[5] = (BM8563_ReadReg(BM8563_ALARM_DAY)); // 灞忚斀鎺у埗浣 - // 读取周(地址0x06,BM8563周值为0x01-0x07,无需BCD转换) - UnSwSample_1.arr[3] = BM8563_ReadReg(BM8563_ALARM_WEEK); // 仅保留低3位 + // 璇诲彇鍛紙鍦板潃0x06锛孊M8563鍛ㄥ间负0x01-0x07锛屾棤闇BCD杞崲锛 + UnSwSample_1.arr[3] = BM8563_ReadReg(BM8563_ALARM_WEEK); // 浠呬繚鐣欎綆3浣 CanTX(); - if(vcu_can_cnt == vcu_can_last)//数据一样表示故障 + if(vcu_can_cnt == vcu_can_last)//鏁版嵁涓鏍疯〃绀烘晠闅 { flg_wake_ecu = FAULT; - if(1 == flg_KGF)//等待KGF唤醒后再发送数据 + if(1 == flg_KGF)//绛夊緟KGF鍞ら啋鍚庡啀鍙戦佹暟鎹 { -// canSendTo(DF_SwTxKGF2,(ubyte *)&un_inf_can_kgf_output2.arr[0]); - canSendTo(DF_SwTxKGF1,(ubyte *)&un_inf_can_kgf_output1.arr[0]); + un_inf_can_kgf_output3.bit_data.KGF01 = un_sample_kgf_command.bit_data.KGF01_CH01_Reserve | un_inf_can_kgf_output1.bit_data.KGF01; + un_inf_can_kgf_output3.bit_data.KGF02 = un_sample_kgf_command.bit_data.KGF01_CH02_Reserve | un_inf_can_kgf_output1.bit_data.KGF02; + un_inf_can_kgf_output3.bit_data.KGF03 = un_sample_kgf_command.bit_data.KGF01_CH03_Reserve | un_inf_can_kgf_output1.bit_data.KGF03; + un_inf_can_kgf_output3.bit_data.KGF04 = un_sample_kgf_command.bit_data.KGF01_PrechargeRelay | un_inf_can_kgf_output1.bit_data.KGF04; + un_inf_can_kgf_output3.bit_data.KGF05 = un_sample_kgf_command.bit_data.KGF01_CH05_Reserve | un_inf_can_kgf_output1.bit_data.KGF05; + un_inf_can_kgf_output3.bit_data.KGF06 = un_sample_kgf_command.bit_data.KGF01_CH06_Reserve | un_inf_can_kgf_output1.bit_data.KGF06; + un_inf_can_kgf_output3.bit_data.KGF07 = un_sample_kgf_command.bit_data.KGF01_HighVoltageRelayA | un_inf_can_kgf_output1.bit_data.KGF07; + un_inf_can_kgf_output3.bit_data.KGF08 = un_sample_kgf_command.bit_data.KGF01_HighVoltageRelayB | un_inf_can_kgf_output1.bit_data.KGF08; + un_inf_can_kgf_output3.bit_data.KGF09 = un_sample_kgf_command.bit_data.KGF01_CH09_Reserve | un_inf_can_kgf_output1.bit_data.KGF09; + un_inf_can_kgf_output3.bit_data.KGF10 = un_sample_kgf_command.bit_data.KGF01_CH10_Reserve | un_inf_can_kgf_output1.bit_data.KGF10; + un_inf_can_kgf_output3.bit_data.KGF11 = un_sample_kgf_command.bit_data.KGF01_LowVoltageRelayA | un_inf_can_kgf_output1.bit_data.KGF11; + un_inf_can_kgf_output3.bit_data.KGF12 = un_sample_kgf_command.bit_data.KGF01_LowVoltageRelayB | un_inf_can_kgf_output1.bit_data.KGF12; + un_inf_can_kgf_output3.bit_data.KGF13 = un_sample_kgf_command.bit_data.KGF01_LowVoltageCharge | un_inf_can_kgf_output1.bit_data.KGF13; + un_inf_can_kgf_output3.bit_data.KGF14 = un_sample_kgf_command.bit_data.KGF01_CH14_Reserve | un_inf_can_kgf_output1.bit_data.KGF14; + un_inf_can_kgf_output3.bit_data.KGF15 = un_sample_kgf_command.bit_data.KGF01_CH15_Reserve | un_inf_can_kgf_output1.bit_data.KGF15; + un_inf_can_kgf_output3.bit_data.KGF16 = un_sample_kgf_command.bit_data.KGF01_CH16_Reserve | un_inf_can_kgf_output1.bit_data.KGF16; + + un_inf_can_kgf_output4.bit_data.KGF01 = un_sample_kgf_command.bit_data.KGF02_ComputerPowerA | un_inf_can_kgf_output2.bit_data.KGF01; + un_inf_can_kgf_output4.bit_data.KGF02 = un_sample_kgf_command.bit_data.KGF02_ComputerPowerB | un_inf_can_kgf_output2.bit_data.KGF02; + un_inf_can_kgf_output4.bit_data.KGF03 = un_sample_kgf_command.bit_data.KGF02_RemotePower | un_inf_can_kgf_output2.bit_data.KGF03; + un_inf_can_kgf_output4.bit_data.KGF04 = un_sample_kgf_command.bit_data.KGF02_VcuE3Power | un_inf_can_kgf_output2.bit_data.KGF04; + un_inf_can_kgf_output4.bit_data.KGF05 = un_sample_kgf_command.bit_data.KGF02_NetworkSwitchPowerA | un_inf_can_kgf_output2.bit_data.KGF05; + un_inf_can_kgf_output4.bit_data.KGF06 = un_sample_kgf_command.bit_data.KGF02_NetworkSwitchPowerB | un_inf_can_kgf_output2.bit_data.KGF06; + un_inf_can_kgf_output4.bit_data.KGF07 = un_sample_kgf_command.bit_data.KGF02_LeftHeadlightA | un_inf_can_kgf_output2.bit_data.KGF07; + un_inf_can_kgf_output4.bit_data.KGF08 = un_sample_kgf_command.bit_data.KGF02_LeftHeadlightB | un_inf_can_kgf_output2.bit_data.KGF08; + un_inf_can_kgf_output4.bit_data.KGF09 = un_sample_kgf_command.bit_data.KGF02_RightHeadlightA | un_inf_can_kgf_output2.bit_data.KGF09; + un_inf_can_kgf_output4.bit_data.KGF10 = un_sample_kgf_command.bit_data.KGF02_RightHeadlightB | un_inf_can_kgf_output2.bit_data.KGF10; + un_inf_can_kgf_output4.bit_data.KGF11 = un_sample_kgf_command.bit_data.KGF02_LeftTaillightA | un_inf_can_kgf_output2.bit_data.KGF11; + un_inf_can_kgf_output4.bit_data.KGF12 = un_sample_kgf_command.bit_data.KGF02_LeftTaillightB | un_inf_can_kgf_output2.bit_data.KGF12; + un_inf_can_kgf_output4.bit_data.KGF13 = un_sample_kgf_command.bit_data.KGF02_RightTaillightA | un_inf_can_kgf_output2.bit_data.KGF13; + un_inf_can_kgf_output4.bit_data.KGF14 = un_sample_kgf_command.bit_data.KGF02_RightTaillightB | un_inf_can_kgf_output2.bit_data.KGF14; + un_inf_can_kgf_output4.bit_data.KGF15 = un_sample_kgf_command.bit_data.KGF02_ComputerPowerC | un_inf_can_kgf_output2.bit_data.KGF15; + un_inf_can_kgf_output4.bit_data.KGF16 = un_sample_kgf_command.bit_data.KGF02_ComputerPowerD | un_inf_can_kgf_output2.bit_data.KGF16; + + canSendTo(DF_SwTxKGF1,(ubyte *)&un_inf_can_kgf_output3.arr[0]); + canSendTo(DF_SwTxKGF2,(ubyte *)&un_inf_can_kgf_output4.arr[0]); + } } else { flg_wake_ecu = NORMAL; - vcu_can_last = vcu_can_cnt;//数据更新 + vcu_can_last = vcu_can_cnt;//鏁版嵁鏇存柊 } - GetTemp();//1s采集一次温度 + GetTemp();//1s閲囬泦涓娆℃俯搴 UnSwSample_1.bit_data.emergency_stop_switch = 0; UnSwSample_1.bit_data.High_voltage_switch = 1; UnSwSample_1.bit_data.CH03 = flg_wake_ecu; - if(1 == flg_KGF)//等待KGF唤醒后再发送数据 + if(1 == flg_KGF)//绛夊緟KGF鍞ら啋鍚庡啀鍙戦佹暟鎹 { - canSendTo(DF_SwTxTemp,(ubyte *)&UnSwSample_1.arr[0]); //不需要发送 小车不需要采集 + canSendTo(DF_SwTxTemp,(ubyte *)&UnSwSample_1.arr[0]); //涓嶉渶瑕佸彂閫 灏忚溅涓嶉渶瑕侀噰闆 } } - if( (0x40 == can_error_cnt) || (0x80 == can_error_cnt) )//20250625判断是否出现总线错误 + if( (0x40 == can_error_cnt) || (0x80 == can_error_cnt) )//20250625鍒ゆ柇鏄惁鍑虹幇鎬荤嚎閿欒 { can_error_flg = can_error_cnt; CAN_vInit(); diff --git a/user.H b/user.H index f2ff7a4..463fc23 100644 --- a/user.H +++ b/user.H @@ -94,8 +94,55 @@ typedef union _UnInfCanKGFOutput } UnInfCanKGFOutput; +// VCU -> 采集模块 开关阀命令 0x15000004 +typedef struct _StrSampleKgfCommand +{ + //-----KGF01 目标位图 byte0..1----------------------------------------- + unsigned int KGF01_CH01_Reserve : 1; // bit0 通道1 + unsigned int KGF01_CH02_Reserve : 1; // bit1 通道2 + unsigned int KGF01_CH03_Reserve : 1; // bit2 通道3 + unsigned int KGF01_PrechargeRelay : 1; // bit3 通道4 预充继电器 + unsigned int KGF01_CH05_Reserve : 1; // bit4 通道5 + unsigned int KGF01_CH06_Reserve : 1; // bit5 通道6 + unsigned int KGF01_HighVoltageRelayA : 1; // bit6 通道7 高压继电器A + unsigned int KGF01_HighVoltageRelayB : 1; // bit7 通道8 高压继电器B + unsigned int KGF01_CH09_Reserve : 1; // bit8 通道9 + unsigned int KGF01_CH10_Reserve : 1; // bit9 通道10 + unsigned int KGF01_LowVoltageRelayA : 1; // bit10 通道11 低压继电器A + unsigned int KGF01_LowVoltageRelayB : 1; // bit11 通道12 低压继电器B + unsigned int KGF01_LowVoltageCharge : 1; // bit12 通道13 低压充电 + unsigned int KGF01_CH14_Reserve : 1; // bit13 通道14 + unsigned int KGF01_CH15_Reserve : 1; // bit14 通道15 + unsigned int KGF01_CH16_Reserve : 1; // bit15 通道16 + //-----KGF02 目标位图 byte2..3----------------------------------------- + unsigned int KGF02_ComputerPowerA : 1; // bit16 通道1 计算机电源A + unsigned int KGF02_ComputerPowerB : 1; // bit17 通道2 计算机电源B + unsigned int KGF02_RemotePower : 1; // bit18 通道3 遥控器电源 + unsigned int KGF02_VcuE3Power : 1; // bit19 通道4 VCU(E3)电源 + unsigned int KGF02_NetworkSwitchPowerA : 1; // bit20 通道5 交换机电源A + unsigned int KGF02_NetworkSwitchPowerB : 1; // bit21 通道6 交换机电源B + unsigned int KGF02_LeftHeadlightA : 1; // bit22 通道7 左前灯A + unsigned int KGF02_LeftHeadlightB : 1; // bit23 通道8 左前灯B + unsigned int KGF02_RightHeadlightA : 1; // bit24 通道9 右前灯A + unsigned int KGF02_RightHeadlightB : 1; // bit25 通道10 右前灯B + unsigned int KGF02_LeftTaillightA : 1; // bit26 通道11 左后灯A + unsigned int KGF02_LeftTaillightB : 1; // bit27 通道12 左后灯B + unsigned int KGF02_RightTaillightA : 1; // bit28 通道13 右后灯A + unsigned int KGF02_RightTaillightB : 1; // bit29 通道14 右后灯B + unsigned int KGF02_ComputerPowerC : 1; // bit30 通道15 计算机电源C + unsigned int KGF02_ComputerPowerD : 1; // bit31 通道16 计算机电源D + //-----保留 byte4..7-------------------------------------------------- + ulong Reserve ; // bit32..63 + +} StrSampleKgfCommand; + +typedef union _UnSampleKgfCommand +{ + StrSampleKgfCommand bit_data; // 使用定义的结构体变量名 + ubyte arr[sizeof(StrSampleKgfCommand)]; // 通过结构体类型确定大小 +} UnSampleKgfCommand; //---外部要使用变量声明--------------------------------------------------------------------- @@ -108,6 +155,7 @@ extern ubyte can_error_cnt; extern ubyte can_error_flg; extern UnInfCanKGFOutput un_inf_can_kgf_output1;//kgf输出 +extern UnInfCanKGFOutput un_inf_can_kgf_output2;//kgf输出 void CanRXTX(void); void SwSample(void);