diff --git a/Out/8837_EVB_250106_1941.bin b/Out/8837_EVB_250106_1941.bin deleted file mode 100644 index 8ff419c..0000000 Binary files a/Out/8837_EVB_250106_1941.bin and /dev/null differ diff --git a/Out/8837_EVB_250106_1941.hex b/Out/8837_EVB_250106_1941.hex deleted file mode 100644 index 4142f4e..0000000 --- a/Out/8837_EVB_250106_1941.hex +++ /dev/null @@ -1,816 +0,0 @@ -:030000000227468E -:10274600758E3075D20078FFE4F6D8FD9000007FD4 -:10275600007E01E4F0A3DFFCDEFA7581A80227A162 -:0F2E580053797374656D20496E69742E0D0A00ED -:102DED00122A507BFF7A2E7958120F5CD2AED2BECA -:082DFD00122864122C3E80F440 -:101CC800010D000113000112000111000110004173 -:101CD80000DA00020E00004200D400004200D800E2 -:101CE800004200CD00004200CF00004200D60000B4 -:0F1CF8004200D200004100D1004100DB00C14694 -:102E050075FE0F43FF8075FE2975FFB575A5217504 -:082E1500FE1E43FF01D2BD22A5 -:1021D400AB0720460302230B9000D4E0FEA3E07873 -:1021E40003CEC313CE13D8F9F0EE9000D4F09000D0 -:1021F400D1E024FD603014606514700302229E2433 -:10220400FE70030222D224056003022308780DE63F -:10221400FF3395E0FEC39000D5E09FFF9000D4E02B -:102224009E9000D8806E9000D4E0FEA3E0FF7C096D -:102234007DC412187D780A12181B9000D4EEF0A306 -:10224400EFF07810E6FD3395E0FCC3EF9DFFEE9CC4 -:10225400FE7C007D0512173A9000CDEE803690008A -:10226400D4E0FEA3E0FF7C097DC412187D780A1235 -:10227400181B9000D4EEF0A3EFF07811E6FD33952F -:10228400E0FCC3EF9DFFEE9CFE7C007D0512173A37 -:102294009000CFEEF0A3EFF0806A780DE6FF33955F -:1022A400E0FEC39000D5E09FFF9000D4E09EFE7C4A -:1022B400097DC412187D780A12181BEEF0A3EFF002 -:1022C400E025E0FE9000D4E0339000D68032780D13 -:1022D400E6FF3395E0FEC39000D5E09FFF9000D465 -:1022E400E09EFE7C097DC412187D780A12181BEE4C -:1022F400F0A3EFF0E025E0FE9000D4E0339000D2AC -:10230400F0A3CEF0C246229000D1EBF0C454F044C6 -:0F23140001F5A5E49000D4F0A3F09000DBF022D7 -:03006B000228CD9B -:1028CD00C0E0C0F0C083C082C0D075D000C000C0D1 -:1028DD0006C007E5F330E038AFA1780E760008A604 -:1028ED0007E5A254031846F608E6F69000DBE0C3B0 -:1028FD009408501718E6FE08E6FF9000D4EE8FF00E -:10290D0012178F9000DBE004F08005D24653A5FE30 -:10291D0075F301D007D006D000D0D0D082D083D0AF -:04292D00F0D0E032D4 -:051D0700C123011403DB -:102C700075FE8743FF2075FE7043FF1853B3F14381 -:102C8000B301E47816F67818F67814E67817F67833 -:102C90001976017916E718461846F5B175B2012282 -:10205B00E4FE9000D8E0FCA3E0FDC394D8EC94031D -:10206B0040037F0022EF7003022174D3ED940FEC39 -:10207B0094034003022152ED94CBEC9400500302E5 -:10208B002152D3ED94AAEC94024022D2217814E68B -:10209B00FF137817F6302211D3ED94BFEC94024066 -:1020AB0004C22280047817A607E4FE8070D3ED9457 -:1020BB00AAEC94025043ED9437EC9401403BD222AE -:1020CB007814E6FF7817F6302113D3ED9493EC9444 -:1020DB00025004C2218006EFC3137817F6781976E5 -:1020EB0001301C11D3ED9451EC94015004C21C80AF -:1020FB0004E47819F6E4FE8024D3ED9437EC9401D4 -:10210B00501BD21CE47819F6302210ED9426EC9477 -:10211B00015004C222800478197601E4FE301F11AD -:10212B00C3ED94F3EC94025006C21FE4FE80027ED2 -:10213B000130202FD3ED94DDEC94004006C220E457 -:10214B00FE80207E01801CD3ED940FEC940340069F -:10215B00D21F7E01800DD3ED94CBEC94005004D2B2 -:10216B00207E01C21DC21E8058C21FC220D3ED9417 -:10217B009FEC94035031ED9471EC94004029301D89 -:10218B0010ED9484EC94035006C21DE4FE80027E95 -:10219B0001301E2DD3ED9482EC94004006C21EE458 -:1021AB00FE801E7E01801AD3ED949FEC94034004B5 -:1021BB00D21D800BC3ED9471EC94005002D21E7EA5 -:0821CB00017819E6F5B2AF0638 -:0121D30022E9 -:10252500E5E65480FFE4FCFDFEEF700753B3FE784B -:1025350015F62278157601E5E830E50575E8208081 -:102545000FE5E530E1028008E5F230E50775F22098 -:1025550053B3FE22E5F2540C601353B3FEE5F35476 -:10256500C070030225EF75F20C75F3C02275F3C038 -:102575007F0112205BEF600653B3FED22322C223F4 -:10258500E5F230E4247819E6246AFFE434FFFEC35B -:102595009000D7E09F9000D6E09E500575F2108020 -:1025A5000353B3FE78157603227916E77818461893 -:1025B50046F5B17819E6F5B243B311781BE6FFD3BA -:1025C50094014002C23DEFD394034002C239EFD3D8 -:1025D50094074002C23BEFD3940C4002C23AEFD3BA -:0B25E50094114002C23C7815760222DF -:061D0C00C13EC13FC140D1 -:10000E00303F10EFB4010475B5C02253B5BFED44B7 -:04001E0080F5B52292 -:102E4700E5B55480FFEF6008303F05E4F5B5C23FB4 -:012E57002258 -:1029F400C23FE5E520E154E5E230E703D24022E5B9 -:102A0400E830E00D30254475E8017D3FE4FF020025 -:102A14000EE4FF12205BEF6006122E47D23E22C264 -:102A24003E303D03022E47D23F30401F7815E6B4B6 -:102A34000219C39000D7E094109000D6E0940E40A1 -:0C2A440005D23FC24022122E47C23F22A2 -:081D1200C144C1454100F5FF89 -:102CA000E5E25408FF9000F5E06F6021E5E230E3D3 -:102CB000089000F47401F08005E49000F4F0D24430 -:0D2CC000C210D245D2389000F5EFF0D24896 -:012CCD0022E4 -:101D1A00C132C131C130011C004100EC004100F068 -:0E1D2A00004100EB004200ED00004100EF0020 -:101E9B00E5E25402FFE4FCFDFEEF70319000ED75BE -:101EAB00F00112178F9000EDE0FEA3E0FFC3941733 -:101EBB00EE94024004D230800EC3EF9487EE940070 -:101ECB004005202F02D22FD22CC22D8040302C3631 -:101EDB00D248E4781CF6C22CD22D9000EFF0900083 -:101EEB00EDE0FEA3E0FFD3941EEE94005008D23237 -:101EFB00D22ED238800EC3EF944FEE9401500530A2 -:101F0B002F02D231C22FE49000EDF0A3F0302D66FA -:101F1B00303F6330312720100280287F03122AA71D -:101F2B009000EFE0D394235003022047C231781C7A -:101F3B007602E49000ECF0900071F0A3F0303029C1 -:101F4B0020100A7D3FE4FF12000ED210227F0312F5 -:101F5B002AA79000EFE0D394235003022047C2300E -:101F6B00E49000F0F0781C7603302E06C22E781C1D -:101F7B007601C22DC2109000F4E0640160030220D0 -:101F8B005A781CE66402600302201B9000ECE0C34D -:101F9B00940150107D227F02122323E4900071F0F4 -:101FAB00A3F080549000EBE0D394054003E4803918 -:101FBB00900072E0B4010F7D117F03122323900078 -:101FCB00727402F08032900072E06402702A90000A -:101FDB0071E0601D7D227F03122323E4900071F0DA -:101FEB00A3F09000ECF09000EBF0781CF6D211808F -:101FFB00597D117F021223239000ECE0D3941440FF -:10200B000A9000EBE004F0E4A3F0229000EC802CAB -:10201B00781CE6640370389000F0E0FFC394B45072 -:10202B001FEF540F70047D22800A9000F0E05407DC -:10203B0070077D117F041223239000F0E004F0223F -:0F204B00E4781CF6D2119000F0F07F04122AA75F -:01205A002263 -:101D3800410079004100780041007A0041007700B5 -:102D1D0075FE0675FF3C75FE0E53FF0F75FE0F53C6 -:102D2D00FFF075FE0375FFFFC282C283C285C284A8 -:012D3D002273 -:102DB900EF14600D14600D14600D2403700BD282A2 -:0A2DC90022D28322D28422D2852276 -:052D5E00900000E0FF01 -:102D6300EF14600D14600D14600D2403700BC28208 -:0A2D730022C28322C28422C28522FC -:10299400E4FF747B2FF582E43400F583E4F0747F64 -:1029A4002FF582E43400F583E4F0EF25E02483F589 -:1029B40082E43400F583E4F0A3F0EF25E0248BF502 -:1029C40082E43400F583E4F0A3F0EF25E02493F5EA -:1029D40082E43400F583E4F0A3F0EF25E0249BF5D2 -:0F29E40082E43400F583E4F0A3F00FEFB404A312 -:0129F30022C1 -:10293100AC07747B2CF582E43400F583EDF0EAC337 -:1029410013FEEB13FFEC25E02483F582E43400F55C -:1029510083EEF0A3EFF0AF03EC25E0248BF582E4E6 -:102961003400F583EAF0A3EFF0900005E0FEA3E068 -:10297100FFEC25E02493F582E43400F583EEF0A327 -:10298100EFF0EC25E0249BF582E43400F583E4F0DC -:03299100A3F0228E -:102BD000747B2FF582E43400F583EDF0747F2FF5DC -:102BE00082E43400F583EBF0EF25E02483F582E402 -:102BF0003400F583E4F0A37469F0EF25E0249BF53D -:0B2C000082E43400F583E4F0A3F0222E -:100B8400E4900000F0F0900000E0FFC39404400300 -:100B9400020EC6747B2FF582E43400F583E06022F4 -:100BA40024FE6024147003020C8E147003020D05DD -:100BB40024036003020E62900000E0FF122DB902CC -:100BC4000E62122D5E020E62900000E0FF25E0240A -:100BD40083F582E43400F583E0FCA3E0FDEF25E037 -:100BE400249BF582E43400F583E0FEA3E0C39DEE8C -:100BF4009C5005122DB98003122D5E900000E0FF79 -:100C040025E0248BF582E43400F583E0FCA3E0FDC9 -:100C1400EF25E0249BF582E43400F583E0FEA3E0B5 -:100C2400C39DEE9C5003020E62900000E025E02478 -:100C34009BF582E43400F583E4F0A3F0EF25E0248F -:100C440093F582E43400F583E0FEA3E0D39400EE50 -:100C540094004016900000E025E02493F582E434EB -:100C640000F58374FFF5F012178F900000E0FF2564 -:100C7400E02493F582E43400F583E0FCA3E04C60C7 -:100C840003020E62747B2F020D21900000E0FF2509 -:100C9400E02483F582E43400F583E0FCA3E0FDEF77 -:100CA40025E0249BF582E43400F583E0FEA3E0D341 -:100CB4009DEE9C5005122DB98003122D5E9000000C -:100CC400E0FF25E0248BF582E43400F583E0FCA307 -:100CD400E0FDEF25E0249BF582E43400F583E0FE9B -:100CE400A3E0C39DEE9C5003020E62900000E02539 -:100CF400E0249BF582E43400F583E4F0A3F0020ED3 -:100D040062900000E0FF247FF582E43400F583E084 -:100D14007017122B49C247900000E0247BF582E44F -:100D24003400F583E4F0020E62900000E0FF247FBB -:100D3400F582E43400F583E0FE6402704B2047142E -:100D4400D247EF25E02483F582E43400F583E4F010 -:100D5400A37469F0900000E0FF25E02483F582E4A9 -:100D64003400F583E475F00112178FEF25E0248336 -:100D7400F582E43400F583E0FCA3E0C394FEEC9434 -:100D8400005003020E4C804EEE6401705A20471747 -:100D9400D247900000E025E02483F582E43400F596 -:100DA40083E4F0A374FEF0900000E0FF25E02483C8 -:100DB400F582E43400F58374FFF5F012178FEF2504 -:100DC400E02483F582E43400F583E0FEA3E0D394C9 -:100DD40069EE94005072900000E0247FF582E434C0 -:100DE40000F583E4F08061900000E0FF247FF58249 -:100DF400E43400F583E06403704EEF25E02483F5CA -:100E040082E43400F583E0FEA3E0FFC394FEEE9495 -:100E1400004004D247800BD3EF946AEE9400500252 -:100E2400C247900000E025E0248330470DF582E4BA -:100E34003400F58374FFF5F0800BF582E43400F59B -:100E440083E475F00112178F900000E0FF25E02481 -:100E540083F582E43400F583A3E0FD122AF89000C0 -:100E640000E0FF7011747B2FF582E43400F583E019 -:100E7400900079F08043900000E0B40110247BF5E9 -:100E840082E43400F583E0900078F0802C90000038 -:100E9400E0B40210247BF582E43400F583E0900092 -:100EA4007AF08015900000E0B4030E247BF582E410 -:100EB4003400F583E0900077F0900000E004F00245 -:100EC4000B8AE4900000F0900000E0FFC39404500B -:100ED4001BEF25E0249BF582E43400F583E475F0F0 -:0C0EE4000112178F900000E004F080DB8A -:010EF00022DF -:0B1D48004200F100004100F30FC14811 -:102CCE0075FE1E43FF0275FE2143FF0875D48775FE -:102CDE00FE2143FF0475FE2143FF02300F0775FEF0 -:0C2CEE002453FFC32275FE2443FF3C2248 -:10005600D2AC759A01D2B9D2BDD2A9D2AB75FE295E -:0400660043FFB02282 -:10006E00C2ACE4F59AD2B9C2BDC2A9C2AB75FE2923 -:04007E0053FF4F22BB -:092E9D0012006E43870202005688 -:102E33007815E6D394015006201203304804C248A3 -:042E4300C322D322B1 -:102A500075FE01E4F5FF122DD3122E90122E75E4AF -:102A6000F58675B7C375FE6A75FF0475FE6C43FF86 -:102A70000B122E0575FE8043FF0275FE0E53FFFC00 -:102A800043FF0175FE1775FF3CD2A8D2AF122C7020 -:102A90007D697F03122E1D122D1D122994122CCE3A -:072AA0009000E07401F02238 -:03000300020006F2 -:03000600D24832AB -:03004B00022EAED4 -:062EAE0075EB3CD2483236 -:03005300022EB4C6 -:062EB40075F302D2483262 -:101D530020402A00000000000000000000000000F6 -:101D63000000000000000000000000000000000070 -:101D73000000000000000000000000000000000060 -:101D83000000000000000000000000000000000050 -:0F1D9300000000C143C1424100F6004100F700CB -:0E2E6700900029EFF0122EA6900029E0FF2225 -:082EA6002041FDD2418F992269 -:102DD30075FE0E53FFF343FF04D2DF43878075BABA -:0A2DE3000375AAFD759852D2AC22C8 -:03002300022E8327 -:0D2E8300309904C299C241309802C29832C1 -:0D2E900075BB03759DDC759B92439A012272 -:062C0B0090004312184E78 -:102C1100E4900046F0F0900046E0C39FE49E501C13 -:102C21002042FDD242900043E475F00112183712A0 -:0C2C3100169FF59C900046E004F080DA4D -:012C3D002274 -:0300830002269DB5 -:10269D00C0E0C083C082C0D075D000C000C005C0EE -:1026AD0006C007E59B30E105539BFDC242E59B301B -:1026BD00E076539BFED2489000F6E014601914604A -:1026CD003424027063E59C9000F6B455087401F053 -:1026DD00A3E4F0800E8018E59C9000F6B4AA107467 -:1026ED0002F0A3E0FF04F0742A2FF8A69C8039E4D1 -:1026FD00F0A3F080339000F7E0FF04F0742A2FF878 -:10270D00A69C782EE62406FFE433FEE0FDC39FEE83 -:10271D006480F87480985005ED9440400B9000F75C -:10272D00E4F09000F6F0D243D007D006D005D000EB -:09273D00D0D0D082D083D0E0326C -:102441004177616B6520536F757263653A57505FD1 -:10245100466C6167303A307825782C57505F466C6E -:102461006167313A307825782C57505F466C616747 -:10247100333A307825782E286C696E653A256429BF -:102481000D0A00536C6565702053746174652028D2 -:102491006C696E653A2564290D0A004348475F530C -:1024A10054413A25642C53545F564F583A3078259D -:1024B100782C535441303A307825782C535441319B -:1024C1003A307825782C535441323A307825782C9B -:1024D100535441333A307825782C535441343A30AF -:1024E1007825782E4465635F536C6565703A256481 -:1024F1000D0A004465636E745F536C6565704465D5 -:102501006C61792052656C6F61642E0D0A00456E15 -:10251100746572205374616E646279204D6F6465D5 -:04252100210D0A007E -:101DA2004300E00402024100DD004100DE00C138D0 -:0E1DB200C1374100DF004100E3004100DC00CA -:10002600E4FB7D04FF122BD0E4FB7D047F01122B41 -:10003600D0E4FB7D047F02122BD0E4FB7D047F031A -:03004600022BD0BA -:1007B100303859C238E49000DEF0781AF69000051E -:1007C100F0A3F0FBFAFDFF122931E4900005F0A33C -:1007D100F0FBFAFD7F01122931E4900005F0A3F04E -:1007E100FBFAFD7F02122931E4900005F0A3F0FB32 -:1007F100FAFD7F031229319000797402F09000789C -:10080100F090007AF0900077F0D2482220230F2058 -:100811003E0C200D030208C6300F030208C6203328 -:1008210005D233D23822900079E06402601A900038 -:1008310005E4F0A3740AF07B147A007D02E4FF1250 -:1008410029319000797403F0900078E06402601A15 -:10085100900005E4F0A3740AF07B147A007D027F16 -:10086100011229319000787403F090007AE064025B -:10087100601A900005E4F0A3740AF07B147A007DFD -:10088100027F0212293190007A7403F0900077E020 -:100891006402601A900005E4F0A3740AF07B147AF4 -:1008A100007D027F031229319000777403F0200D3F -:1008B10003020B839000DEE0C394285003020A0177 -:1008C100D20FD2382230330CC233C235C234C245C2 -:1008D100C20ED2377815E6FF70030209DB6403709C -:1008E1005E203507D235C234020026E4900005F0BF -:1008F100A3F0FBFA7D01FF122931E4900005F0A37A -:10090100F0FBFA7D017F01122931E4900005F0A38B -:10091100F0FBFA7D017F02122931E4900005F0A37A -:10092100F0FBFA7D017F031229319000797401F007 -:10093100900078F090007AF0900077F00209D220D0 -:10094100340ED234C235D238E49000E3F00209D239 -:100951009000DEE0C394015057E004F09000E3E022 -:1009610014601A14602714603424037064900079B1 -:10097100E06404605C7B017D04E4FF802E900078DC -:10098100E06404604C7B017D047F01801E90007A4D -:10099100E06404603C7B017D047F02800E9000775F -:1009A100E06404602C7B017D047F03122BD0802145 -:1009B1009000DEE0C3940F5005E004F08013E49052 -:1009C10000DEF09000E3E004F0E0C394044002E4B0 -:1009D100F0C245C20EC232D2362230340AC23412BB -:1009E1000026D238D2372220450C203609200E06A7 -:1009F100203203020B839000DEE0FFC39401500418 -:100A0100E004F022EFC394644003020B2E9000DE59 -:100A1100E004F0303B37900079E064037003020B8F -:100A210083E4900005F0A3F07B64FA7D03FF1229B3 -:100A3100319000797404F0E4900005F0A3F0FBFA22 -:100A4100FD7F011229319000787402802D303A41E6 -:100A5100E4900005F0A3F0FBFA7D01FF122931902B -:100A610000797401F0E4900005F0A3F0FBFA7D0138 -:100A71007F011229319000787401F0E4900005F0B3 -:100A8100A3F0FBFAFD7F0212293190007A740280F3 -:100A910043E4900005303C53F0A3F0FBFA7D01FFE5 -:100AA1001229319000797401F0E4900005F0A3F06F -:100AB100FBFA7D017F011229319000787401F0E485 -:100AC100900005F0A3F0FBFA7D017F02122931901D -:100AD100007A7401F0E4900005F0A3F0FBFAFD7FC9 -:100AE100031229319000777402F022F0A3F0FBFA8F -:100AF1007D01FF122931E4900005F0A3F0FBFA7D9E -:100B0100017F01122931E4900005F0A3F0FBFA7D89 -:100B1100017F02122931E4900005F0A3F0FBFA7D78 -:100B2100017F0312293190007974018048C245C2C6 -:100B310036C20EC232E4900005F0A3F0FBFAFDFFCD -:100B4100122931E4900005F0A3F0FBFAFD7F0112B8 -:100B51002931E4900005F0A3F0FBFAFD7F02122990 -:100B610031E4900005F0A3F0FBFAFD7F0312293177 -:100B71009000797402F0900078F090007AF0900083 -:020B810077F00B -:010B8300224F -:102D3E009000DAE0FF04F01221D49000DAE0B4063D -:102D4E000204F09000DAE0C3940840037402F0220B -:102D7D00122CA0121E9B1227E6302411C2241225FC -:0E2D8D00251229F41225F01207B11212562257 -:1018BC00E4900000F09000E0E0FFA3E0FE6F700306 -:1018CC00021960A3EEF09000E0E0A3F024FE603576 -:1018DC0014606714606B24036003021ADF90000528 -:1018EC00E4F0A37403F07B647A007D02E4FF122918 -:1018FC0031900005E4F0A37403F07B647A007D0260 -:10190C007F01022931300F09D24475E80CC20DC297 -:10191C000F7BFF7A247941AFF6900004E4F0A3EF3B -:10192C00F0AFF8A3E4F0A3EFF0AFFAA3E4F0A3EF69 -:10193C00F0A37402F0A3740680169000F3740FF0F9 -:10194C00227BFF7A2479849000047402F0A3741E25 -:10195C00F0021A669000E1E024FE60351460761403 -:10196C007003021A7924036003021ADF9000DCE092 -:10197C0004F0E0C394085003021ADF9000E07402F4 -:10198C00F0E49000DCF0781BE66003021ADF021A28 -:10199C0072E5F6700CE5F87008E5FA7004E5E160A4 -:1019AC002D9000E07403F0E5F6540FFFE4FCFDFE0F -:1019BC007B08FAF9F8C312180A70069000E0740458 -:1019CC00F075E11F75F60F75F8FC75FABC229000E6 -:1019DC00E07403F022202803021ADFC22875FE6E81 -:1019EC00900000E5FFF07BFF7A24799C7815E6FFE8 -:1019FC00900004E4F0A3EFF0900000E0FF900006EC -:101A0C00E4F0A3EFF0AFE2A3E4F0A3EFF0AFE3A3B5 -:101A1C00E4F0A3EFF0AFE4A3E4F0A3EFF0AFE5A3A1 -:101A2C00E4F0A3EFF0AFE6A3E4F0A3EFF09000F343 -:101A3C00E0FF900012E4F0A3EFF0120F5C9000F3C3 -:101A4C00E0D394004017E014F0204803021ADFC2E0 -:101A5C0048740FF07BFF7A2479F4020F5C7BFF7AD9 -:101A6C0025790F120F5C9000E07404F022122E33D3 -:101A7C00505B122CCE7F04122AA7122E47E4900042 -:101A8C0005F0A3F0FBFAFDFF122931E4900005F0FC -:101A9C00A3F0FBFAFD7F01122931E4900005F0A3BD -:101AAC00F0FBFAFD7F02122931E4900005F0A3F05F -:101ABC00FBFAFD7F031229319000797402F090003B -:101ACC0078F090007AF0900077F0022E9D9000E074 -:031ADC007402F0A1 -:011ADF0022E4 -:102C3E00302726C2279000DDE0FF04F0EF14600C71 -:102C4E0014600E24027012122D3E800D122D7D8006 -:102C5E00081218BCE49000DDF0302905C229120BD1 -:022C6E008422BE -:101AE000426F7820436C6F73652E286C696E653A7F -:101AF0002564290D0A00426F78204F70656E2E28EC -:101B00006C696E653A2564290D0A004F70656E2F69 -:101B1000436C6F736520426F782C45617270686FFB -:101B20006E657320496E20426F78284E756D3A2598 -:101B3000642928566F785374613A30782578292EB5 -:101B40000D0A004F70656E20426F7820434D44208F -:101B50005458204F7665722E0D0A004F70656E2026 -:101B6000426F7820416E642045617270686F6E65C7 -:101B700020476574496E284E756D3A2564292856AC -:101B80006F785374613A30782578292E0D0A004316 -:101B90006C6F736520426F7820416E6420466F72CF -:101BA000636520566F6C746167652055702E0D0A51 -:101BB00000564F5820566F7574203556285354419F -:101BC000313A307825782C6C696E653A2564292E77 -:101BD0000D0A00564F58204348472046756C6C2E1E -:101BE0000D0A00564F582047657420496E746F20C7 -:101BF000536C6565702E0D0A005258315F42756650 -:101C00006665725B305D3A307825782C5258315FCA -:101C10004275666665725B315D3A307825782C5284 -:101C200058315F4275666665725B325D3A30782581 -:101C3000782C5258315F4275666665725B335D3A47 -:101C4000307825782C5258315F4275666665725B34 -:101C5000345D3A307825782C5258315F427566668B -:101C600065725B355D3A307825782C5258315F4289 -:101C700075666665725B365D3A307825782C6C69DE -:101C80006E653A25640D0A000000000000000000A7 -:101C90000000000000000000000000000000000044 -:101CA0000000000000000000000000000000000034 -:101CB0000000000000000000000000000000000024 -:081CC00000000000000000001C -:101DC000C112C10EC110410073FFC10D42004D0090 -:101DD0000042004B000042007100001A6A0000003F -:101DE00000000000000000000000000000000000F3 -:101DF000000000000000002024840000000000001B -:101E000000000000000000000000000000000000D2 -:101E10000000000000000000000000000000410081 -:101E2000700042006E00004200740000C10FC1113A -:031E300001A80006 -:102AA700EF24FE601E14602814602F24FE60352476 -:102AB70005703D43BD8853BDBB75FE6F53FFF243A1 -:102AC700FF092243BDCC75FE6F53FFFE43FF0C2267 -:102AD70053BD7753B7CF43B7302253B7CF43B7036D -:102AE70053BD772253B7CC53BD7775FE6A43FF308A -:012AF70022BC -:10125600203F0302157030447A20100A7D3FE4FFD8 -:1012660012000ED210227F03122AA7E490004AF041 -:10127600900048F0A3F0C200C201D20B9000F4E047 -:10128600702EC20ED202D203C205C208C204C2091F -:10129600C20AD212C23790006CF0A3F0900076F02A -:1012A6007BFF7A1A79E090000404F0A374E38017B8 -:1012B600C202C203D205C2067BFF7A1A79F69000F3 -:1012C600047401F0A374F0F0120F5CC210C20DC2D8 -:1012D6000FC244900048E0C3940550030214FD3049 -:1012E6000B05C20B0214B520004CD200E5E354A056 -:1012F6006021E5E354A0FFE4FCFDFE7BA0FAF9F8CB -:10130600C312180A90007070057402F0800A740106 -:10131600F08005E4900070F07BFF7A1B790B90005B -:1013260070E0FF900004E4F0A3EFF0AFE3A3E4F075 -:10133600A3EFF0120F5C2005030213ED900049E0C5 -:10134600C3940550077F06122AA7802720014490E0 -:10135600004AE0FFD39414501FEF540370047D112C -:10136600800990004AE020E0077D227F01122323B6 -:1013760090004AE004F0806F7F04122AA7E49000F0 -:101386004AF0D201D211C2127BFF7A1B7943120FA7 -:101396005C8054781CE6704F301104C2118040E521 -:1013A600E354A0FBE4FAF9F8900047E0FFE4FCFD03 -:1013B600FEC312180A6030E5E354A06004D20ED2D0 -:1013C600387BFF7A1B795B900070E0FF900004E4A5 -:1013D600F0A3EFF0AFE3A3E4F0A3EFF0120F5CE5A8 -:1013E600E354A0900047F020020302156D30374801 -:1013F6002010237D3FE4FF12000ED210D212E4909B -:10140600006CF0A3F0900076F0900048F0C208D28D -:101416000BC200D204227F03122AA77BFF7A1B7914 -:101426008F120F5CC210D203900048E0D394035091 -:10143600030214FDC237805020044D900049E0FF9E -:10144600D39414501DEF540370047D11800990004D -:1014560049E020E0077D227F0812232390004902FD -:1014660014FD90004AE0FFD39414501CEF5403700F -:10147600047D11800990004AE020E0077D227F026A -:1014860012232390004A806FE5E8540C6026200F53 -:101496001E90004AE004F0E0C3940550030215A82C -:1014A600E4F075E80C7F03122AA7D20DC212227F40 -:1014B60004022AA7C20DC20F3003257F03122AA7F2 -:1014C6007BFF7A1B79B1AFE3900004E4F0A3EFF061 -:1014D600A37403F0A37428F0120F5CC20302156D07 -:1014E600200846E5E354AC64AC600330392A90002A -:1014F60048E0D394285004E004F0227BFF7A1B795D -:10150600D3120F5CD208E490004AF0900048F0C273 -:10151600097F04122AA7804F90006DE070497B0175 -:101526007A00794F120086803E90004AE0FFD394FD -:1015360014501FEF540370047D11800990004AE097 -:1015460020E0077D227F0512232390004AE004F065 -:101556008015200912D2097F04122AA7C2127BFF26 -:101566007A1B79E3120F5CC2072220070BD2077F92 -:1015760004122AA7C2128022E5E354A0FBE4FAF97A -:10158600F8900047E0FFE4FCFDFEC312180A601263 -:10159600E5E354A06004D20ED238E5E354A09000EF -:0215A60047F00C -:0115A8002220 -:0600860090000012184E6C -:10008C00900076E014700302016314700302023DC9 -:10009C001470030202AE14700302041A24046003E9 -:1000AC0002059A90000012182E90001E1216B860CD -:1000BC000302059A78A8E6D3940A50260690001AF3 -:1000CC00743F121718300C0302059A900000121896 -:1000DC002E90001A1216B8FDE4FF12000ED20C027C -:1000EC00059AE478A8F6C20C90000012182E900025 -:1000FC0037E4121718900026E4121718900034E415 -:10010C00121718900023E4121718900032E41217FB -:10011C0018900021E4121718900039E41217189067 -:10012C000028E4121718900050E4F5F01217DD9037 -:10013C00002EE4F5F01217DD900019E41217189058 -:10014C00001B743F1217189000767401F0E49000B5 -:10015C004DF0A3F002059AE5E35408FFE4FCEF60D0 -:10016C001CE5E35404601690000012182E90001E3B -:10017C007401121718E4900076F002059AE5E35426 -:10018C0008FFE4FCEF704A9000CFE0FEA3E0FF9084 -:10019C00000012182E900044EE8FF01217DD7D0532 -:1001AC0012173AEF7802C333CE33CED8F9FF900052 -:1001BC000012182E900048EE8FF01217DD9000D030 -:1001CC00E025E0FF9000CFE03390004C8FF0121749 -:1001DC00DDE5E35404FFE4FCEF704A9000CDE0FE53 -:1001EC00A3E0FF90000012182E900022EE8FF01268 -:1001FC0017DD7D0512173AEF7802C333CE33CED814 -:10020C00F9FF90000012182E900026EE8FF01217B6 -:10021C00DD9000CEE025E0FF9000CDE03390002A89 -:10022C008FF01217DD90000012182E90001D0205A1 -:10023C008FD390004EE0940590004DE09400500256 -:10024C00806FE490004DF0A3F0E5E35408FFEF70ED -:10025C001F9000CFE0FEA3E0FF90000012182E903C -:10026C000050EE8FF01217DD900039740112171840 -:10027C00E5E35404FFE4FCEF701F9000CDE0FEA317 -:10028C00E0FF90000012182E90002EEE8FF0121747 -:10029C00DD90002874011217189000767403F00298 -:1002AC00059AD390004EE0940290004DE0940050DB -:1002BC000AE475F00112178F02059AE490004DF0D4 -:1002CC00A3F090000012182E90004C1217A5FFAE50 -:1002DC00F09000501217A5D39FE5F09E501C900093 -:1002EC000012182E90002A1217A5FFAEF090002EC7 -:1002FC001217A5D39FE5F09E4011E4900076F09084 -:10030C00000012182E90001D0203DC900000121841 -:10031C002E9000391216B86401706D9000501217AF -:10032C00A5FFAEF0D39414EE94005031E5E330E326 -:10033C001F900037740112171890001A1216B8C3C8 -:10034C00943F404490000012182E900039E4803500 -:10035C0090000012182E9000347401802890000038 -:10036C0012182E9000481217A5FDD3EF9DEE95F0B4 -:10037C00900000400812182E900034800612182E9F -:10038C00900037740112171890000012182E90006C -:10039C00281216B86401600302059A90002E1217F9 -:1003AC00A5FFAEF0D39414EE94005034E5E330E2A4 -:1003BC0022900026740112171890001A1216B8C356 -:1003CC00943F500302059A90000012182E900028BA -:1003DC00E4803590000012182E90002374018028C0 -:1003EC0090000012182E9000261217A5FDD3EF9D39 -:1003FC00EE95F0900000400812182E900023800615 -:10040C0012182E900026740112171802059AD39018 -:10041C00004EE0941490004DE094005031E475F0DF -:10042C000112178F9000CFE0FEA3E0FF90000012A6 -:10043C00182E900050EE8FF01217DD9000CDE0FFDB -:10044C00A3E090002ECF8FF01217DD02059AE490F6 -:10045C00004DF0A3F090000012182E9000391216E7 -:10046C00B8640160030204F89000281216B8640105 -:10047C00707A9000481217A5FFAEF090005012173A -:10048C00A5FDACF0C39FEC9E401890000012182EF6 -:10049C0090004C1217A5FFD3ED9FEC95F050030282 -:1004AC00059A90000012182E9000261217A5FFAE88 -:1004BC00F090002E1217A5FDACF0C39FEC9E4018D7 -:1004CC0090000012182E90002A1217A5FFD3ED9F52 -:1004DC00EC95F0500302059A90000012182E900033 -:1004EC0037740112171890002602058F9000001225 -:1004FC00182E9000391216B8640170419000481201 -:10050C0017A5FFAEF09000501217A5FDACF0C39FDD -:10051C00EC9E401590000012182E90004C1217A55E -:10052C00FFD3ED9FEC95F0401490000012182E9024 -:10053C00003774011217189000767402F0900000C6 -:10054C0012182E9000281216B86401704190002ADF -:10055C001217A5FFAEF090002E1217A5FDACF0D32C -:10056C009FEC9E501590000012182E90002612172A -:10057C00A5FFC3ED9FEC95F0501490000012182EBF -:10058C0090002674011217189000767402F09000F7 -:10059C000012182E9000391216B8FF6401600D90ED -:1005AC0000281216B86401600302079790003412F9 -:1005BC0016B8FE6401600D9000231216B864016039 -:1005CC0003020711EFB4011E9000281216B8B401F3 -:1005DC0015EEB401119000341216B8B40108900055 -:1005EC001474011217189000391216B8FFB40118C0 -:1005FC009000281216B870109000341216B86401CE -:10060C00702390001404801AEF701A9000281216B0 -:10061C00B8B401119000231216B8B401089000145C -:10062C007401121718900034E4121718900023E488 -:10063C001217189000141216B8640160030207B068 -:10064C0090000012182E90001A1216B8D394004085 -:10065C000890001A74FE1216E59000191216B8FFD5 -:10066C0090001A1216B8D39F401B9000D7E024C8F4 -:10067C00FF9000D6E03400FEC39000D3E09F9000C2 -:10068C00D2E09E504890000012182E9000191216BD -:10069C00B8FF90001A1216B8D39F90000050131296 -:1006AC00182E90001AEF12171890001CE41217184D -:1006BC00801312182E90001C740112171890001A37 -:1006CC0074021216E59000767404F0801390007694 -:1006DC007402F090000012182E90001CE4121718EF -:1006EC00E490004DF0A3F090000012182E9000142E -:1006FC00E412171890001C1216B8FF90001A12166C -:10070C00B8FD02079490000012182E9000371216B4 -:10071C00B86401600D9000261216B86401600302E3 -:10072C0007B0900037E4121718900026E41217183F -:10073C0090001A1216B8C3943F500E900000121875 -:10074C002E90001A74021216E59000767404F09044 -:10075C00000012182E90001B1216B8FF90001A12EF -:10076C0016B8C39F401390000012182E90001AEF79 -:10077C001217189000767401F090000012182E9049 -:10078C00001A1216B8FDE4FF02000E900076E0D3BA -:10079C0094024010E4F090000012182E90001E7489 -:0407AC000112171807 -:0107B0002226 -:0B2B8D0090004312184E900046EDF03F -:102B9800E4FE900046E0FD14F0ED6029900043E467 -:102BA80075F00112183712169F6EFEE4FFEFC394FA -:102BB8000850DFEE30E007C313648CFE8004EEC3D8 -:072BC80013FE0F80E8AF06C9 -:012BCF0022E3 -:08232300900000EFF0A3EDF0C3 -:10232B00E4A3F078037C007D017BFF7A1C7988FEA7 -:10233B007F401216799000037455F0A374AAF0A392 -:10234B0074FFF0900001E0900008F0900000E09026 -:10235B000006F0121857237D0123B402239903239F -:10236B00B40423B40523B408237D09237D0A00009C -:10237B0023BA9000077403F07815E65402C4333384 -:10238B0054C0781B46900009F0E4A3F08021E4FFD1 -:10239B00742A2FF8E6FE74032FF582E43400F583DC -:1023AB00EEF00FEFB440E980069000077401F09057 -:1023BB000007E02405FF900002F0FD7B017A007915 -:1023CB0003122B8D900002E02403F582E43400F518 -:1023DB0083EFF07F01122AA7900001E0FFB41108F0 -:1023EB0043BD0253BDFE8016EFB4220843BD2053FC -:1023FB00BDEF800AEFB4FF0643BD2253BDEE900044 -:10240B0002E02402FFE433FE7B017A007903122CF5 -:10241B000B900001E0FFB4110753BDFD43BD01223A -:10242B00EFB4220753BDDF43BD1022EFB4FF0653B9 -:05243B00BDDF43BD11EF -:012440002279 -:102D9B00E4900001F0EF24FD60028011782FE6B47F -:0D2DAB00110590007180039000727401F01A -:012DB80022F8 -:1027E600E4900000F0304375C2437BFF7A1B79F911 -:1027F600782AE6FF900004E4F0A3EFF008E6FFA3D2 -:10280600E4F0A3EFF008E6FFA3E4F0A3EFF008E698 -:10281600FFA3E4F0A3EFF008E6FFA3E4F0A3EFF0D4 -:1028260008E6FFA3E4F0A3EFF008E6FFA3E4F0A3B5 -:10283600EFF0A37407F0A37455F0120F5C7B007AD7 -:1028460000792A782EE62405FD122B8D782EE624B3 -:0D2856002FF8E6B50707782DE6FF122D9B41 -:012863002252 -:101E3300011B00C139C13DC13BC13AC13C011A6913 -:101E4300602A00A30BB80BEA0C1C0C800CB20CE448 -:101E53000D160D480D7A0DAC0E100E420E740EA623 -:0E1E63000ED80F0A0F3C0F870FD2101D10680B -:1025F000E4FF7815E6B40225EF25E024A3F582E494 -:102600003400F583E0FCA3E02432FDE43CFCC390FD -:1026100000D7E09D9000D6E09C50208023EF25E07D -:1026200024A3F582E43400F583E0FCA3E0FDC3902D -:1026300000D7E09D9000D6E09C40050FEFB415B2A6 -:10264000781BE6FEEFD39E400418068003781A1626 -:10265000E5E16007E4F5E1781BA607781AE6FED30A -:1026600094C85006EEC3940A5007781BA607187644 -:1026700069781BE6FFD394005002D23DEFD394015A -:102680005002D239EFD394055002D23BEFD3940AD3 -:0C2690005002D23AEFD3940F5002D23C1B -:01269C00221B -:101E71004100E7004100EA004100E6004200E400C1 -:101E8100004100E800C126C127C129C125C124C1E3 -:091E9100284100E900C12AC12B1F -:102864009000E9E06062E4F0D2269000E7E004F032 -:10287400E0C394054004E4F0D2279000EAE004F0B9 -:10288400E0C3940A4004E4F0D2299000E4E475F033 -:102894000112178FC39000E5E094649000E4E09483 -:1028A400004006E4F0A3F0D2249000E6E004F0E057 -:1028B400C394FA4013E4F0D2259000E8E004F0E079 -:0928C40094044004E4F0D228223F -:03000B00022CFACA -:102CFA00C0E0C083C082C0D074FC258CF58C746699 -:102D0A00258AF58A9000E97401F0D0D0D082D08368 -:032D1A00D0E032D4 -:0E2E7500758901758CFC758A66D2A9D28C22F3 -:102B4900EFD39401501675FE0EEF25E02404FE74B0 -:102B590003A806088002C333D8FC801475FE0FEF62 -:102B690024FE25E0FE7403A806088002C333D8FCBE -:102B7900F452FFEFB4040C75FE0F53FFF075FE0E0F -:042B890053FF0F22C5 -:102E1D0075FE54EF5407F5FF75FE56AF058FFF7520 -:062E2D00FE5375FF0122B7 -:102AF800EFD39401501875FE0EEF25E02404FE7400 -:102B080003A806088002C333D8FC42FF801675FE6E -:102B18000FEF24FE25E0FE7403A806088002C333E5 -:102B2800D8FC42FFEF70038DCE22EFB401038DCFA6 -:102B380022EFB402038DDE22EFB40304AF058FDF6A -:012B4800226A -:032FFD00010102CD -:10276600022DEDE493A3F8E493A34003F68001F26F -:1027760008DFF48029E493A3F85407240CC8C33374 -:10278600C4540F4420C8834004F456800146F6DF43 -:10279600E4800B0102040810204080901CC8E47EEF -:1027A600019360BCA3FF543F30E509541FFEE49338 -:1027B600A360010ECF54C025E060A840B8E493A3FF -:1027C600FAE493A3F8E493A3C8C582C8CAC583CA2A -:1027D600F0A3C8C582C8CAC583CADFE9DEE780BEE2 -:011E9A000047 -:1015A900E709F608DFFA8046E709F208DFFA803E24 -:1015B90088828C83E709F0A3DFFA8032E309F60811 -:1015C900DFFA8078E309F208DFFA807088828C8379 -:1015D900E309F0A3DFFA806489828A83E0A3F6082D -:1015E900DFFA805889828A83E0A3F208DFFA804C07 -:1015F90080D280FA80C680D4806980F280338010DE -:1016090080A680EA809A80A880DA80E280CA803346 -:1016190089828A83ECFAE493A3C8C582C8CCC583BE -:10162900CCF0A3C8C582C8CCC583CCDFE9DEE7808E -:101639000D89828A83E493A3F608DFF9ECFAA9F00D -:10164900EDFB2289828A83ECFAE0A3C8C582C8CC63 -:10165900C583CCF0A3C8C582C8CCC583CCDFEADE7C -:10166900E880DB89828A83E493A3F208DFF980CCDE -:1016790088F0EF60010E4E60C388F0ED2402B404D7 -:101689000050B9F582EB2402B4040050AF2323457E -:0616990082239015F97395 -:10169F00BB010689828A83E0225002E722BBFE0249 -:0916AF00E32289828A83E493227C -:1016B800BB010CE58229F582E5833AF583E02250E7 -:1016C80006E92582F8E622BBFE06E92582F8E22231 -:0D16D800E58229F582E5833AF583E493224B -:1016E500BB010FF8E58229F582E5833AF583E02809 -:1016F500F0225009C58229F8E58226F622BBFE09AB -:10170500C58229F8E22582F222F8EA2583F583E9E4 -:03171500932822F4 -:10171800F8BB010DE58229F582E5833AF583E8F007 -:10172800225006E92582C8F622BBFE05E92582C8B3 -:02173800F2229B -:10173A00BC000BBE0029EF8DF084FFADF022E4CC93 -:10174A00F875F008EF2FFFEE33FEEC33FCEE9DEC5C -:10175A00984005FCEE9DFE0FD5F0E9E4CEFD22EDA2 -:10176A00F8F5F0EE8420D21CFEADF075F008EF2FEC -:10177A00FFED33FD4007985006D5F0F222C398FDDD -:05178A000FD5F0EA227A -:10178F00C5F0F8A3E028F0C5F0F8E58215827002E5 -:06179F001583E038F02282 -:1017A500BB0110E58229F582E5833AF583E0F5F082 -:1017B500A3E0225009E92582F886F008E622BBFE5F -:1017C5000AE92582F8E2F5F008E222E5832AF583A5 -:0817D500E993F5F0A3E993226A -:1017DD00F8BB0111E58229F582E5833AF583E8F03E -:1017ED00E5F0A3F0225009E92582C8F608A6F022FB -:0D17FD00BBFE09E92582C8F2E5F008F222E2 -:10180A00EB9FF5F0EA9E42F0E99D42F0E89C45F034 -:01181A0022AB -:10181B00E8600FECC313FCED13FDEE13FEEF13FFAB -:03182B00D8F122CF -:09182E00E0FBA3E0FAA3E0F922BB -:10183700F8E0FBA3A3E0F925F0F0E582158270023A -:071847001583E0FA38F022DE -:09184E00EBF0A3EAF0A3E9F0229B -:10185700D083D082F8E4937012740193700DA3A320 -:1018670093F8740193F5828883E473740293686034 -:06187700EFA3A3A380DF34 -:10187D00EC8EF0A4CCC5F0CCCDF8EFA4CEC5F02DF8 -:10188D00FDE43CFCE8A42EC8C5F03DFDE43CFCEFB6 -:0D189D00A4FFE5F028FEE43DFDE43CFC2244 -:100EF100E5082404F582E43400F583E00508229036 -:100F01000001301A03900004E475F0011218370251 -:100F1100169F2013E97F2ED2138018EF540F2490CF -:100F2100D43440D4FF30170BEF24BFB41A00500360 -:100F31002461FFE50960021509050CE50C70020545 -:100F41000B301A0E900001E475F001121837EF0210 -:100F510018AA022E677403D21A8003E4C21AF50894 -:100F610090000112184EE4F509F50BF50CE5096046 -:100F7100077F20120F3480F5750AFFC214C213C215 -:100F810015C216C218C219C21B120F00FF700D3014 -:100F91001A057F00120F45AF0CAE0B22B4255FC2BC -:100FA100D5C217120F00FF24D0B40A00501A75F0F1 -:100FB1000A780930D50508B6FF0106C6A426F62031 -:100FC100D5047002D21680D924CFB41A00EF500490 -:100FD100C2E5D217021146D21480C6D21380C0D204 -:100FE1001580BCD2D580BAD21880B47F20120F34BC -:100FF1002015077401B5090040F1120EF1FF120F1F -:1010010034020F6ED21BD2198095120EF1FB120E13 -:10101100F1FA120EF1F94A4B700679177A127BFF39 -:1010210020152EE509602A7E008E82758300121636 -:10103100B860060EEE650A70F0C2D5EBC0E0EAC0FA -:10104100E0E9C0E0EE12118DD0E0F9D0E0FAD0E095 -:10105100FB12169FFF60AAEBC0E0EAC0E0E9C0E026 -:10106100120F34D0E02401F9D0E03400FAD0E0FBD3 -:10107100E50A0460DCD50AD980877BFF7A1179897A -:10108100D215809C791080027908C219C21B800890 -:10109100D2D5790A8004790AC2D5E50A047002F52D -:1010A1000AE4FAFDFEFF120EF1FC7B082014131274 -:1010B1000EF1FD7B1030130A120EF1FE120EF1FF3C -:1010C1007B20EC3382D592D55013C3E43013069FB5 -:1010D100FFE49EFEE42014039DFDE49CFCE4CBF8B8 -:1010E100C214EC700CCFCECDCCE824F8F870F380AC -:1010F10017C3EF33FFEE33FEED33FDEC33FCEB337F -:10110100FB994002FB0FD8E9EB301405F8D0E0C49D -:1011110048B214C0E00AEC4D4E4F78207B0070C2FB -:10112100EAB50A0040BCC0E012118FD0F0D0E02037 -:101131001404C4C0E0C4B214C0F0120F1DD0F0D525 -:10114100F0EB020F6E121857100B531085580FDC7D -:101151004C0FD84210894F1091441091490FF1431F -:08116100109755107B46107B2E -:1011690045107B471237500FE02D0FE42E10072B47 -:101179000FE82310052012202A0FA04800000FFFB6 -:101189003F3F3F00790AA2D5201614301809B9103B -:10119900020404B9080104A2D5201902500104204F -:1011A90015689215B509005034C0E07F2030161932 -:1011B9007F30A21572197218500F1211E6C215C2AA -:1011C90019C218C21B7F30800F301803E9C0E01222 -:1011D9000F34301803D0E0F9D0E0B509CC30181736 -:1011E9007F30B9100C120F347F583017077F788081 -:1011F90003B90803120F343015057F2D020F347F10 -:1012090020201BF87F2B2019F322921580CF286EFE -:10121900756C6C2900D214120EF13014F8C21478CE -:101229000930D50108F6020FA02D50434958120E76 -:10123900F12403B405004001E490123293120F2502 -:0D124900743A120F25D216750904021085A3 -:1018AA00BB010689828A83F0225002F722BBFE011D -:0218BA00F32217 -:00000001FF diff --git a/Out/8837_EVB_250106_1941_A0D2_010102.bin b/Out/8837_EVB_250106_1941_A0D2_010102.bin deleted file mode 100644 index b1cacf7..0000000 Binary files a/Out/8837_EVB_250106_1941_A0D2_010102.bin and /dev/null differ diff --git a/Out/8837_EVB_250108_1930.bin b/Out/8837_EVB_250108_1930.bin new file mode 100644 index 0000000..381decd Binary files /dev/null and b/Out/8837_EVB_250108_1930.bin differ diff --git a/Out/8837_EVB_250108_1930.hex b/Out/8837_EVB_250108_1930.hex new file mode 100644 index 0000000..474cf5a --- /dev/null +++ b/Out/8837_EVB_250108_1930.hex @@ -0,0 +1,830 @@ +:03000000022732A2 +:10273200758E3075D20078FFE4F6D8FD9000007FE8 +:10274200007E01E4F0A3DFFCDEFA75818802278DAA +:0F2F210053797374656D20496E69742E0D0A0023 +:102EB600122B377BFF7A2F7921120F61D2AED2BE49 +:082EC60012294B122D2580F4A6 +:10205A00010D000114000113000112000111000119 +:10206A0010004100BC00020E00004200B60000420F +:10207A0000BA00004200AF00004200B10000420076 +:10208A00B800004200B400004100B3004100BD00A6 +:02209A00C1463D +:102ECE0075FE0F43FF8075FE2975FFB575A521753B +:082EDE00FE1E43FF01D2BD22DC +:10238400AB072046030224B19000B6E0FEA3E07838 +:1023940003CEC313CE13D8F9F0EE9000B6F090003C +:1023A400B3E024FD603014606514700302244E24ED +:1023B400FE7003022478240560030224AE780DE63F +:1023C400FF3395E0FEC39000B7E09FFF9000B6E0B6 +:1023D4009E9000BA806E9000B6E0FEA3E0FF7C09F8 +:1023E4007DC412189E780A12183C9000B6EEF0A331 +:1023F400EFF07810E6FD3395E0FCC3EF9DFFEE9C13 +:10240400FE7C007D0512173C9000AFEE80369000F4 +:10241400B6E0FEA3E0FF7C097DC412189E780A1280 +:10242400183C9000B6EEF0A3EFF07811E6FD33957A +:10243400E0FCC3EF9DFFEE9CFE7C007D0512173C83 +:102444009000B1EEF0A3EFF080609000B6E0FEA340 +:10245400E0FF7C097DC412189E780A12183C900093 +:10246400B6EEF0A3EFF0E025E0FE9000B6E0339086 +:1024740000B88032780DE6FF3395E0FEC39000B7D4 +:10248400E09FFF9000B6E09EFE7C097DC412189E7A +:10249400780A12183CEEF0A3EFF0E025E0FE90007D +:1024A400B6E0339000B4F0A3CEF0C246229000B35D +:1024B400EBF0C454F04401F5A5E49000B6F0A3F0A9 +:0524C4009000BDF022B4 +:03006B000229B4B3 +:1029B400C0E0C0F0C083C082C0D075D000C000C0E9 +:1029C40006C007E5F330E038AFA1780E760008A61C +:1029D40007E5A254031846F608E6F69000BDE0C3E6 +:1029E4009408501718E6FE08E6FF9000B6EE8FF044 +:1029F4001217919000BDE004F08005D24653A5FE65 +:102A040075F301D007D006D000D0D0D082D083D0C7 +:042A1400F0D0E032EC +:05209C00C12301150342 +:102D570075FE8743FF2075FE7043FF1853B3F14399 +:102D6700B301E47817F67819F67815E67818F67847 +:102D77001A76017917E718461846F5B175B2012298 +:10220B00E4FE9000BAE0FCA3E0FDC394D8EC940389 +:10221B0040037F0022EF7003022324D3ED940FECD5 +:10222B0094034003022302ED94CBEC940050030281 +:10223B002302D3ED94AAEC94024022D2217815E626 +:10224B00FF137818F6302211D3ED94BFEC940240B3 +:10225B0004C22280047818A607E4FE8070D3ED94A4 +:10226B00AAEC94025043ED9437EC9401403BD222FC +:10227B007815E6FF7818F6302113D3ED9493EC9490 +:10228B00025004C2218006EFC3137818F6781A7631 +:10229B0001301C11D3ED9451EC94015004C21C80FD +:1022AB0004E4781AF6E4FE8024D3ED9437EC940121 +:1022BB00501BD21CE4781AF6302210ED9426EC94C5 +:1022CB00015004C2228004781A7601E4FE301F11FB +:1022DB00C3ED94F3EC94025006C21FE4FE80027E21 +:1022EB000130202FD3ED94DDEC94004006C220E4A6 +:1022FB00FE80207E01801CD3ED940FEC94034006EE +:10230B00D21F7E01800DD3ED94CBEC94005004D200 +:10231B00207E01C21DC21E8058C21FC220D3ED9465 +:10232B009FEC94035031ED9471EC94004029301DD7 +:10233B0010ED9484EC94035006C21DE4FE80027EE3 +:10234B0001301E2DD3ED9482EC94004006C21EE4A6 +:10235B00FE801E7E01801AD3ED949FEC9403400403 +:10236B00D21D800BC3ED9471EC94005002D21E7EF3 +:08237B0001781AE6F5B2AF0685 +:012383002237 +:1025AD00E4FBFAE5E65480FFE4FCFDFEEF70075313 +:1025BD00B3FE7816F62278167601E5E830E5057556 +:1025CD00E820800FE5E530E1028008E5F230E5070F +:1025DD0075F22053B3FE22E5F2540C601353B3FE93 +:1025ED00E5F354C0700302268875F20C75F3C02212 +:1025FD0075F3C07F0112220BEF600653B3FED22399 +:10260D0022C223E5F230E432781AE6B401067A10DC +:10261D007B6880047A0F7BA0EB246AFFEA34FFFE0F +:10262D00C39000B9E09F9000B8E09E500575F21080 +:10263D00800353B3FE78167603227917E77819468F +:10264D001846F5B1781AE6F5B243B311781CE6FFDA +:10265D00D394014002C23DEFD394034002C239EF3F +:10266D00D394074002C23BEFD3940C4002C23AEF21 +:0B267D00D394114002C23C7816760294 +:01268800222F +:0620A100C13EC13FC14039 +:10000E00303F10EFB4010475B5C02253B5BFED44B7 +:04001E0080F5B52292 +:102F1000E5B55480FFEF6008303F05E4F5B5C23FEA +:012F2000228E +:102ADB00C23FE5E520E154E5E230E703D24022E5D1 +:102AEB00E830E00D30254475E8017D3FE4FF02003E +:102AFB000EE4FF12220BEF6006122F10D23E22C201 +:102B0B003E303D03022F10D23F30401F7816E6B403 +:102B1B000219C39000B9E094109000B8E0940E40F5 +:0C2B2B0005D23FC24022122F10C23F22F0 +:0820A700C144C1454100D7FF0F +:102D8700E5E25408FF9000D7E06F6021E5E230E309 +:102D9700089000D67401F08005E49000D6F0D24484 +:0D2DA700C210D245D2389000D7EFF0D248CC +:012DB40022FC +:1020AF00C132C131C130011D004100CE004100D20B +:0E20BF00004100CD004200CF00004100D100E2 +:101E9F00E5E25402FFE4FCFDFEEF70319000CF75D8 +:101EAF00F0011217919000CFE0FEA3E0FFC394174B +:101EBF00EE94024004D230800EC3EF9487EE94006C +:101ECF004005202F02D22FD22CC22D8040302C362D +:101EDF00D248E4781DF6C22CD22D9000D1F090009C +:101EEF00CFE0FEA3E0FFD3941EEE94005008D23251 +:101EFF00D22ED238800EC3EF944FEE94015005309E +:101F0F002F02D231C22FE49000CFF0A3F0302D6218 +:101F1F00303F5F30312720100280287F03122B8E35 +:101F2F009000D1E0D394235003022046C231781D94 +:101F3F007602E49000CEF090002BF0A3F030302921 +:101F4F0020100A7D3FE4FF12000ED210227F0312F1 +:101F5F002B8E9000D1E0D394235003022046C23041 +:101F6F00E49000D2F0781D7603302E02C22EC22DDF +:101F7F00C2109000D6E064016003022059781DE67C +:101F8F006402600302201B9000CEE0C39401501046 +:101F9F007D017F01121B01E490002BF0A3F0805410 +:101FAF009000CDE0D394054003E4803990002CE0FD +:101FBF00B4010FE4FD7F02121B0190002C7402F09C +:101FCF00803290002CE06402702A90002BE0601D9C +:101FDF007D017F02121B01E490002BF0A3F0900013 +:101FEF00CEF09000CDF0781DF6D2118058E4FD7F31 +:101FFF0001121B019000CEE0D39414400A9000CD43 +:10200F00E004F0E4A3F0229000CE802B781DE6646C +:10201F000370379000D2E0FFC394B4501EEF540FFB +:10202F0070047D0180099000D2E054077006FD7F97 +:10203F0003121B019000D2E004F022E4781DF6D2C7 +:0A204F00119000D2F07F04122B8ED6 +:012059002264 +:1020CD0041003100410030004100320041002F003D +:102E040075FE0675FF3C75FE0E53FF0F75FE0F53DE +:102E1400FFF075FE0375FFFFC282C283C285C284C0 +:012E2400228B +:102E8200EF14600D14600D14600D2403700BD282D8 +:0A2E920022D28322D28422D28522AC +:052E4500900085E0FF94 +:102E4A00EF14600D14600D14600D2403700BC28220 +:0A2E5A0022C28322C28422C2852214 +:102A7B00E4FF74332FF582E43400F583E4F074370C +:102A8B002FF582E43400F583E4F0EF25E0243BF5E9 +:102A9B0082E43400F583E4F0A3F0EF25E02443F562 +:102AAB0082E43400F583E4F0A3F0EF25E0244BF54A +:102ABB0082E43400F583E4F0A3F0EF25E02453F532 +:0F2ACB0082E43400F583E4F0A3F00FEFB404A32A +:012ADA0022D9 +:102A1800AC0774332CF582E43400F583EDF0EAC397 +:102A280013FEEB13FFEC25E0243BF582E43400F5BC +:102A380083EEF0A3EFF0AF03EC25E02443F582E446 +:102A48003400F583EAF0A3EFF090008AE0FEA3E0FB +:102A5800FFEC25E0244BF582E43400F583EEF0A387 +:102A6800EFF0EC25E02453F582E43400F583E4F03C +:032A7800A3F022A6 +:102CB70074332FF582E43400F583EDF074372FF584 +:102CC70082E43400F583EBF0EF25E0243BF582E462 +:102CD7003400F583E4F0A37469F0EF25E02453F59D +:0B2CE70082E43400F583E4F0A3F02247 +:100B8900E4900085F0F0900085E0FFC394044003F1 +:100B9900020ECB74332FF582E43400F583E0602232 +:100BA90024FE6024147003020C93147003020D0ACE +:100BB90024036003020E67900085E0FF122E820273 +:100BC9000E67122E45020E67900085E0FF25E0248E +:100BD9003BF582E43400F583E0FCA3E0FDEF25E07A +:100BE9002453F582E43400F583E0FEA3E0C39DEECF +:100BF9009C5005122E828003122E45900085E0FF3D +:100C090025E02443F582E43400F583E0FCA3E0FD0C +:100C1900EF25E02453F582E43400F583E0FEA3E0F8 +:100C2900C39DEE9C5003020E67900085E025E024E9 +:100C390053F582E43400F583E4F0A3F0EF25E024D2 +:100C49004BF582E43400F583E0FEA3E0D39400EE93 +:100C590094004016900085E025E0244BF582E434A9 +:100C690000F58374FFF5F0121791900085E0FF25D8 +:100C7900E0244BF582E43400F583E0FCA3E04C600A +:100C890003020E6774332F020D26900085E0FF25BD +:100C9900E0243BF582E43400F583E0FCA3E0FDEFBA +:100CA90025E02453F582E43400F583E0FEA3E0D384 +:100CB9009DEE9C5005122E828003122E45900085D0 +:100CC900E0FF25E02443F582E43400F583E0FCA34A +:100CD900E0FDEF25E02453F582E43400F583E0FEDE +:100CE900A3E0C39DEE9C5003020E67900085E025AA +:100CF900E02453F582E43400F583E4F0A3F0020E16 +:100D090067900085E0FF2437F582E43400F583E03D +:100D19007017122C30C247900085E02433F582E425 +:100D29003400F583E4F0020E67900085E0FF243774 +:100D3900F582E43400F583E0FE6402704B20471429 +:100D4900D247EF25E0243BF582E43400F583E4F053 +:100D5900A37469F0900085E0FF25E0243BF582E467 +:100D69003400F583E475F001121791EF25E0243B77 +:100D7900F582E43400F583E0FCA3E0C394FEEC942F +:100D8900005003020E51804EEE6401705A2047173D +:100D9900D247900085E025E0243BF582E43400F554 +:100DA90083E4F0A374FEF0900085E0FF25E0243B86 +:100DB900F582E43400F58374FFF5F0121791EF25FD +:100DC900E0243BF582E43400F583E0FEA3E0D3940C +:100DD90069EE94005072900085E02437F582E4347E +:100DE90000F583E4F08061900085E0FF2437F58207 +:100DF900E43400F583E06403704EEF25E0243BF50D +:100E090082E43400F583E0FEA3E0FFC394FEEE9490 +:100E1900004004D247800BD3EF946AEE940050024D +:100E2900C247900085E025E0243B30470DF582E478 +:100E39003400F58374FFF5F0800BF582E43400F596 +:100E490083E475F001121791900085E0FF25E024F5 +:100E59003BF582E43400F583A3E0FD122BDF90001B +:100E690085E0FF701174332FF582E43400F583E0D7 +:100E7900900031F08043900085E0B401102433F5EF +:100E890082E43400F583E0900030F0802C900085F6 +:100E9900E0B402102433F582E43400F583E09000D5 +:100EA90032F08015900085E0B4030E2433F582E416 +:100EB9003400F583E090002FF0900085E004F00203 +:100EC9000B8FE4900085F0900085E0FFC3940450F7 +:100ED9001BEF25E02453F582E43400F583E475F033 +:0C0EE90001121791900085E004F080DBFE +:010EF50022DA +:0B20DD004200D300004100D50FC148B5 +:102DB50075FE1E43FF0275FE2143FF0875D4C275DB +:102DC500FE2143FF0475FE2143FF02300F0775FE08 +:0C2DD5002453FFC32275FE2443FF3C2260 +:10005600D2AC759A01D2B9D2BDD2A9D2AB75FE295E +:0400660043FFB02282 +:10006E00C2ACE4F59AD2B9C2BDC2A9C2AB75FE2923 +:04007E0053FF4F22BB +:092F660012006E438702020056BE +:102EFC007816E6D394015006201203304804C248D9 +:042F0C00C322D322E7 +:102B370075FE01E4F5FF122E9C122F59122F3EE469 +:102B4700F58675B7C375FE6A75FF0475FE6C43FF9E +:102B57000B122ECE75FE8043FF0275FE0E53FFFC4F +:102B670043FF0175FE1775FF3CD2A8D2AF122D5750 +:102B77007D697F03122EE6122E04122A7B122DB5D1 +:072B87009000C27401F0226E +:03000300020006F2 +:03000600D24832AB +:03004B00022F770A +:062F770075EB3CD248326C +:03005300022F7DFC +:062F7D0075F302D2483298 +:1020E800202069000000000000000000000000003F +:1020F80000000000000000000000000000000000D8 +:0F210800000000C143C1424100D8004100D9008E +:0E2F30009000AEEFF0122F6F9000AEE0FF2287 +:082F6F002041FDD2418F99229F +:102E9C0075FE0E53FFF343FF04D2DF43878075BAF0 +:0A2EAC000375AAFD759852D2AC22FE +:03002300022F4C5D +:0D2F4C00309904C299C241309802C29832F7 +:0D2F590075BB03759DDC759B92439A0122A8 +:062CF2009000A912186F0A +:102CF800E49000ACF0F09000ACE0C39FE49E501C60 +:102D08002042FDD2429000A9E475F0011218581231 +:0C2D180016A1F59C9000ACE004F080DAFD +:012D2400228C +:03008300022689C9 +:10268900C0E0C083C082C0D075D000C000C005C002 +:1026990006C007E59B30E105539BFDC242E59B302F +:1026A900E076539BFED2489000D8E014601914607C +:1026B9003424027063E59C9000D8B455087401F085 +:1026C900A3E4F0800E8018E59C9000D8B4AA107499 +:1026D90002F0A3E0FF04F074692FF8A69C8039E4A6 +:1026E900F0A3F080339000D9E0FF04F074692FF86B +:1026F900A69C786BE62404FFE433FEE0FDC39FEE5D +:102709006480F87480985005ED9420400B9000D9AE +:10271900E4F09000D8F0D243D007D006D005D0001D +:09272900D0D0D082D083D0E03280 +:1024C9004177616B6520536F757263653A57505F49 +:1024D900466C6167303A307825782C57505F466CE6 +:1024E9006167313A307825782C57505F466C6167BF +:1024F900333A307825782E286C696E653A25642937 +:102509000D0A00536C656570205374617465202849 +:102519006C696E653A2564290D0A004348475F5383 +:1025290054413A25642C53545F564F583A30782514 +:10253900782C535441303A307825782C5354413112 +:102549003A307825782C535441323A307825782C12 +:10255900535441333A307825782C535441343A3026 +:102569007825782E4465635F536C6565703A2564F8 +:102579000D0A004465636E745F536C65657044654C +:102589006C61792052656C6F61642E0D0A00456E8D +:10259900746572205374616E646279204D6F64654D +:0425A900210D0A00F6 +:102117004300C20402024100BF004100C000C138B1 +:0E212700C1374100C1004100C5004100BE00AB +:10002600E4FB7D04FF122CB7E4FB7D047F01122C58 +:10003600B7E4FB7D047F02122CB7E4FB7D047F034B +:03004600022CB7D2 +:1007B600303859C238E49000C0F0781BF690008AB1 +:1007C600F0A3F0FBFAFDFF122A18E490008AF0A3CA +:1007D600F0FBFAFD7F01122A18E490008AF0A3F0DC +:1007E600FBFAFD7F02122A18E490008AF0A3F0FBC0 +:1007F600FAFD7F03122A189000317402F09000303F +:10080600F0900032F090002FF0D2482220230F20E3 +:100816003E0C200D030208CB300F030208CB203319 +:1008260005D233D23822900031E06402601A90007B +:100836008AE4F0A3740AF07B147A007D02E4FF12C6 +:100846002A189000317403F0900030E06402601AB8 +:1008560090008AE4F0A3740AF07B147A007D027F8C +:1008660001122A189000307403F0900032E06402FE +:10087600601A90008AE4F0A3740AF07B147A007D73 +:10088600027F02122A189000327403F090002FE0C3 +:100896006402601A90008AE4F0A3740AF07B147A6A +:1008A600007D027F03122A1890002F7403F0200D9A +:1008B60003020B889000C0E0C394285003020A0686 +:1008C600D20FD2382230330CC233C235C234C245BD +:1008D600C20ED2377816E6FF70030209E064037091 +:1008E6005E203507D235C234020026E490008AF035 +:1008F600A3F0FBFA7D01FF122A18E490008AF0A308 +:10090600F0FBFA7D017F01122A18E490008AF0A319 +:10091600F0FBFA7D017F02122A18E490008AF0A308 +:10092600F0FBFA7D017F03122A189000317401F062 +:10093600900030F0900032F090002FF00209D7209E +:10094600340ED234C235D238E49000C5F00209D74D +:100956009000C0E0C394015057E004F09000C5E059 +:1009660014601A14602714603424037064900031F4 +:10097600E06404605C7B017D04E4FF802E9000301F +:10098600E06404604C7B017D047F01801E90003290 +:10099600E06404603C7B017D047F02800E90002FA2 +:1009A600E06404602C7B017D047F03122CB7802158 +:1009B6009000C0E0C3940F5005E004F08013E4906B +:1009C60000C0F09000C5E004F0E0C394044002E4E7 +:1009D600F0C245C20EC232D2362230340AC23412B6 +:1009E6000026D238D2372220450C203609200E06A2 +:1009F600203203020B889000C0E0FFC3940150042C +:100A0600E004F022EFC394644003020B339000C06D +:100A1600E004F0303B37900031E064037003020BD2 +:100A260088E490008AF0A3F07B64FA7D03FF122A23 +:100A3600189000317404F0E490008AF0A3F0FBFAF9 +:100A4600FD7F01122A189000307402802D303A4141 +:100A5600E490008AF0A3F0FBFA7D01FF122A1890B9 +:100A660000317401F0E490008AF0A3F0FBFA7D01F6 +:100A76007F01122A189000307401F0E490008AF089 +:100A8600A3F0FBFAFD7F02122A189000327402804E +:100A960043E490008A303C53F0A3F0FBFA7D01FF5B +:100AA600122A189000317401F0E490008AF0A3F045 +:100AB600FBFA7D017F01122A189000307401F0E4E0 +:100AC60090008AF0A3F0FBFA7D017F02122A1890AB +:100AD60000327401F0E490008AF0A3F0FBFAFD7F87 +:100AE60003122A1890002F7402F022F0A3F0FBFAEA +:100AF6007D01FF122A18E490008AF0A3F0FBFA7D2C +:100B0600017F01122A18E490008AF0A3F0FBFA7D17 +:100B1600017F02122A18E490008AF0A3F0FBFA7D06 +:100B2600017F03122A1890003174018048C245C221 +:100B360036C20EC232E490008AF0A3F0FBFAFDFF43 +:100B4600122A18E490008AF0A3F0FBFAFD7F011246 +:100B56002A18E490008AF0A3F0FBFAFD7F02122A1D +:100B660018E490008AF0A3F0FBFAFD7F03122A181E +:100B76009000317402F0900030F0900032F0900056 +:020B86002FF04E +:010B8800224A +:102E25009000BCE0FF04F01223849000BCE0B406DF +:102E35000204F09000BCE0C3940840037402F02241 +:102E6400122D87121E9F122854302411C2241225B9 +:0E2E7400AD122ADB1227D21207B612125B2211 +:1018DD00E4900085F09000C2E0FFA3E0FE6F70037E +:1018ED00021981A3EEF09000C2E0A3F024FE603552 +:1018FD0014606714606B24036003021B0090008A60 +:10190D00E4F0A37403F07B647A007D02E4FF122AF5 +:10191D001890008AE4F0A37403F07B647A007D02D2 +:10192D007F01022A18300F09D24475E80CC20DC28E +:10193D000F7BFF7A2479C9AFF6900089E4F0A3EF0D +:10194D00F0AFF8A3E4F0A3EFF0AFFAA3E4F0A3EF48 +:10195D00F0A37402F0A3740680169000D5740FF0F6 +:10196D00227BFF7A25790C9000897402F0A3741EF6 +:10197D00F0021A879000C3E024FE603514607614DF +:10198D007003021A9A24036003021B009000BEE04C +:10199D0004F0E0C394085003021B009000C27402CF +:1019AD00F0E49000BEF0781CE66003021B00021A02 +:1019BD0093E5F6700CE5F87008E5FA7004E5E16062 +:1019CD002D9000C27403F0E5F6540FFFE4FCFDFE0C +:1019DD007B08FAF9F8C312182B70069000C2740434 +:1019ED00F075E11F75F60F75F8FC75FABC229000C5 +:1019FD00C27403F022202803021B00C22875FE6E5C +:101A0D00900085E5FFF07BFF7A2579247816E6FFB7 +:101A1D00900089E4F0A3EFF0900085E0FF90008B3B +:101A2D00E4F0A3EFF0AFE2A3E4F0A3EFF0AFE3A394 +:101A3D00E4F0A3EFF0AFE4A3E4F0A3EFF0AFE5A380 +:101A4D00E4F0A3EFF0AFE6A3E4F0A3EFF09000D540 +:101A5D00E0FF900097E4F0A3EFF0120F619000D536 +:101A6D00E0D394004017E014F0204803021B00C29D +:101A7D0048740FF07BFF7A25797C020F617BFF7A2A +:101A8D00257997120F619000C27404F022122EFC7A +:101A9D00505B122DB57F04122B8E122F10E4900087 +:101AAD008AF0A3F0FBFAFDFF122A18E490008AF0E9 +:101ABD00A3F0FBFAFD7F01122A18E490008AF0A32F +:101ACD00F0FBFAFD7F02122A18E490008AF0A3F0D1 +:101ADD00FBFAFD7F03122A189000317402F090007A +:101AED0030F0900032F090002FF0022F669000C27F +:031AFD007402F080 +:011B000022C2 +:102D2500302726C2279000BFE0FF04F0EF14600CA7 +:102D350014600E24027012122E25800D122E64804E +:102D4500081218DDE49000BFF0302905C229120BE6 +:022D55008922D1 +:101CD700426F7820436C6F73652E286C696E653A86 +:101CE7002564290D0A00426F78204F70656E2E28F3 +:101CF7006C696E653A2564290D0A004F70656E2F71 +:101D0700436C6F736520426F782C45617270686F02 +:101D17006E657320496E20426F78284E756D3A259F +:101D2700642928566F785374613A30782578292EBC +:101D37000D0A004F70656E20426F7820434D442096 +:101D47005458204F7665722E0D0A004F70656E202D +:101D5700426F7820416E642045617270686F6E65CE +:101D670020476574496E284E756D3A2564292856B3 +:101D77006F785374613A30782578292E0D0A00431D +:101D87006C6F736520426F7820416E6420466F72D6 +:101D9700636520566F6C746167652055702E0D0A58 +:101DA70000564F5820566F757420355628535441A6 +:101DB700313A307825782C6C696E653A2564292E7E +:101DC7000D0A00564F58204348472046756C6C2E25 +:101DD7000D0A00564F582047657420496E746F20CE +:101DE700536C6565702E0D0A005258315F42756657 +:101DF7006665725B305D3A307825782C5258315FD2 +:101E07004275666665725B315D3A307825782C528B +:101E170058315F4275666665725B325D3A30782588 +:101E2700782C5258315F4275666665725B335D3A4E +:101E3700307825782C5258315F4275666665725B3B +:101E4700345D3A307825782C5258315F4275666692 +:101E570065725B355D3A307825782C5258315F4290 +:101E670075666665725B365D3A307825782C6C69E5 +:101E77006E653A25640D0A000000000000000000AE +:101E8700000000000000000000000000000000004B +:081E9700000000000000000043 +:10213500C112C10EC11041002DFFC10D42000700A3 +:1021450000420005000042002B000041002A00C1AA +:102155000FC1111A2A000000000000000000000055 +:10216500000000000000000000000000000000204A +:1021750024440000000000000000000000000000F2 +:10218500000000000000000000000000000000004A +:0E219500000000000000420028000001680069 +:102B8E00EF24FE601E14602814602F24FE6035248E +:102B9E0005703D43BD8853BDBB75FE6F53FFF243B9 +:102BAE00FF092243BDCC75FE6F53FFFE43FF0C227F +:102BBE0053BD7753B7CF43B7302253B7CF43B70385 +:102BCE0053BD772253B7CC53BD7775FE6A43FF30A2 +:012BDE0022D4 +:10125B00203F0302157230447B20100A7D3FE4FFD0 +:10126B0012000ED210227F03122B8EE4900003F09B +:10127B00900001F0A3F0C200C201D20B9000D6E0A7 +:10128B00702FC20ED202D203C205C208C204C20919 +:10129B00C20AD212C237900026F0A3F090002EF0B3 +:1012AB007BFF7A1C79D79000897402F0A3740880B5 +:1012BB0017C202C203D205C2067BFF7A1C79ED90DE +:1012CB0000897402F0A37415F0120F61C210C20DE5 +:1012DB00C20FC244900001E0C394055003021500F5 +:1012EB00300B05C20B0214B820004CD200E5E354BE +:1012FB00A06021E5E354A0FFE4FCFDFE7BA0FAF91E +:10130B00F8C312182B90002A70057402F0800A742F +:10131B0001F08005E490002AF07BFF7A1D790290A2 +:10132B00002AE0FF900089E4F0A3EFF0AFE3A3E421 +:10133B00F0A3EFF0120F612005030213F2900002ED +:10134B00E0C3940550077F06122B8E8026200143A5 +:10135B00900003E0FFD39414501EEF54037003FD71 +:10136B008009900003E020E0077D017F06121B013E +:10137B00900003E004F0806F7F04122B8EE490004A +:10138B0003F0D201D211C2127BFF7A1D793A120FF0 +:10139B00618054781DE6704F301104C2118040E516 +:1013AB00E354A0FBE4FAF9F8900000E0FFE4FCFD45 +:1013BB00FEC312182B6030E5E354A06004D20ED2AA +:1013CB00387BFF7A1D795290002AE0FF900089E468 +:1013DB00F0A3EFF0AFE3A3E4F0A3EFF0120F61E59E +:1013EB00E354A0900000F020020302156F30374841 +:1013FB002010237D3FE4FF12000ED210D212E49096 +:10140B000026F0A3F090002EF0900001F0C208D25D +:10141B000BC200D204227F03122B8E7BFF7A1D7925 +:10142B0086120F61C210D203900001E0D3940350D7 +:10143B0003021500C237804E20044B900002E0FFE0 +:10144B00D39414501CEF54037003FD8009900002D9 +:10145B00E020E0077D017F81121B01900002021545 +:10146B0000900003E0FFD39414501BEF5403700360 +:10147B00FD8009900003E020E0077D017F07121B30 +:10148B0001900003806FE5E8540C6026200F1E903E +:10149B000003E004F0E0C3940550030215AAE4F046 +:1014AB0075E80C7F03122B8ED20DC212227F040221 +:1014BB002B8EC20DC20F3003257F03122B8E7BFFA9 +:1014CB007A1D79A8AFE3900089E4F0A3EFF0A37441 +:1014DB0003F0A37475F0120F61C20302156F20089D +:1014EB0046E5E354AC64AC600330392A900001E06C +:1014FB00D394285004E004F0227BFF7A1D79CA12A2 +:10150B000F61D208E4900004F0900001F0C2097F53 +:10151B0004122B8E804E900027E070487B017A00DE +:10152B007909120086803D900004E0FFD39414509B +:10153B001EEF54037003FD8009900004E020E007C8 +:10154B007D017F80121B01900004E004F0801520C8 +:10155B000912D2097F04122B8EC2127BFF7A1D79DE +:10156B00DA120F61C2072220070BD2077F04122B5E +:10157B008EC2128022E5E354A0FBE4FAF9F8900046 +:10158B0000E0FFE4FCFDFEC312182B6012E5E354F0 +:0F159B00A06004D20ED238E5E354A0900000F017 +:0115AA00221E +:0600860090008512186FC6 +:10008C0090002EE01470030201631470030202420C +:10009C001470030202B314700302041F24046003DF +:1000AC0002059F90008512184F90001E1216BA6020 +:1000BC000302059F7868E6D3940A50260690001A2E +:1000CC00743F12171A300C0302059F90008512180A +:1000DC004F90001A1216BAFDE4FF12000ED20C0259 +:1000EC00059FE47868F6C20C90008512184F9000BA +:1000FC0016E412171A900015E412171A900013E464 +:10010C0012171A900012E412171A900011E4121729 +:10011C001A900010E412171A900018E412171A9093 +:10012C000017E412171A90000EE4F5F01217FE9067 +:10013C00000CE4F5F01217FE900019E412171A9057 +:10014C00001B743F12171A90002E7401F0E49000FB +:10015C0007F0A3F002059FE5E35408FFE4FCEF6011 +:10016C001CE5E35404601690008512184F90001E95 +:10017C00740112171AE490002EF002059FE5E35467 +:10018C0008FFE4FCEF704A9000B1E0FEA3E0FF90A2 +:10019C00008512184F900002EE8FF01217FE7D05AD +:1001AC0012173CEF7802C333CE33CED8F9FF900050 +:1001BC008512184F900006EE8FF01217FE9000B2C9 +:1001CC00E025E0FF9000B1E03390000A8FF01217A9 +:1001DC00FEE5E35404FFE4FCEF704F9000AFE0FE4B +:1001EC00A3E0FF90008512184FEE8FF01217DF90EE +:1001FC0000AFE0FEA3E0FF7D0512173CEF7802C3D1 +:10020C0033CE33CED8F9FF90008512184F900004EE +:10021C00EE8FF01217FE9000B0E025E0FF9000AFDB +:10022C00E0339000088FF01217FE90008512184FE3 +:10023C0090001D020594D3900008E09405900007EF +:10024C00E094005002806FE4900007F0A3F0E5E327 +:10025C005408FFEF701F9000B1E0FEA3E0FF900088 +:10026C008512184F90000EEE8FF01217FE900018AA +:10027C00740112171AE5E35404FFE4FCEF701F90AD +:10028C0000AFE0FEA3E0FF90008512184F90000C29 +:10029C00EE8FF01217FE900017740112171A9000CF +:1002AC002E7403F002059FD3900008E09402900096 +:1002BC0007E09400500AE475F00112179102059FB3 +:1002CC00E4900007F0A3F090008512184F90000AFC +:1002DC001217A7FFAEF090000E1217A7D39FE5F0F0 +:1002EC009E501C90008512184F9000081217A7FF03 +:1002FC00AEF090000C1217A7D39FE5F09E4011E4CE +:10030C0090002EF090008512184F90001D0203E112 +:10031C0090008512184F9000181216BA6401706D77 +:10032C0090000E1217A7FFAEF0D39414EE94005069 +:10033C0031E5E330E31F900016740112171A900098 +:10034C001A1216BAC3943F404490008512184F906D +:10035C000018E4803590008512184F90001374013A +:10036C00802890008512184F9000061217A7FDD315 +:10037C00EF9DEE95F0900085400812184F900013F9 +:10038C00800612184F900016740112171A900085EF +:10039C0012184F9000171216BA6401600302059FE1 +:1003AC0090000C1217A7FFAEF0D39414EE940050EB +:1003BC0034E5E330E222900015740112171A900014 +:1003CC001A1216BAC3943F500302059F900085126F +:1003DC00184F900017E4803590008512184F90004C +:1003EC00127401802890008512184F900004121787 +:1003FC00A7FDD3EF9DEE95F0900085400812184FA5 +:10040C00900012800612184F900015740112171AE2 +:10041C0002059FD3900008E09414900007E094002C +:10042C005031E475F0011217919000B1E0FEA3E099 +:10043C00FF90008512184F90000EEE8FF01217FEF1 +:10044C009000AFE0FFA3E090000CCF8FF01217FEEE +:10045C0002059FE4900007F0A3F090008512184F5E +:10046C009000181216BA640160030204FD90001784 +:10047C001216BA6401707A9000061217A7FFAEF03C +:10048C0090000E1217A7FDACF0C39FEC9E40189085 +:10049C00008512184F90000A1217A7FFD3ED9FEC9E +:1004AC0095F0500302059F90008512184F900004A0 +:1004BC001217A7FFAEF090000C1217A7FDACF0C3FB +:1004CC009FEC9E401890008512184F900008121750 +:1004DC00A7FFD3ED9FEC95F0500302059F9000858C +:1004EC0012184F900016740112171A90001502057D +:1004FC009490008512184F9000181216BA6401706F +:10050C00419000061217A7FFAEF090000E1217A72D +:10051C00FDACF0C39FEC9E401590008512184F90D7 +:10052C00000A1217A7FFD3ED9FEC95F04014900032 +:10053C008512184F900016740112171A90002E7421 +:10054C0002F090008512184F9000171216BA640131 +:10055C0070419000081217A7FFAEF090000C121714 +:10056C00A7FDACF0D39FEC9E501590008512184F50 +:10057C009000041217A7FFC3ED9FEC95F050149058 +:10058C00008512184F900015740112171A90002E46 +:10059C007402F090008512184F9000181216BAFFD2 +:1005AC006401600D9000171216BA64016003020713 +:1005BC009C9000131216BAFE6401600D900012128A +:1005CC0016BA64016003020716EFB4011E900017FF +:1005DC001216BAB40115EEB401119000131216BA2A +:1005EC00B40108900014740112171A900018121616 +:1005FC00BAFFB401189000171216BA7010900013BD +:10060C001216BA6401702390001404801AEF701A49 +:10061C009000171216BAB401119000121216BAB447 +:10062C000108900014740112171A900013E41217A9 +:10063C001A900012E412171A9000141216BA6401E0 +:10064C0060030207B590008512184F90001A12161D +:10065C00BAD39400400890001A74FE1216E790006A +:10066C00191216BAFF90001A1216BAD39F401B909B +:10067C0000B9E024C8FF9000B8E03400FEC390003D +:10068C00B5E09F9000B4E09E504890008512184F42 +:10069C009000191216BAFF90001A1216BAD39F9036 +:1006AC000085501312184F90001AEF12171A900071 +:1006BC001CE412171A801312184F90001C740112AC +:1006CC00171A90001A74021216E790002E7404F098 +:1006DC00801390002E7402F090008512184F900039 +:1006EC001CE412171AE4900007F0A3F09000851296 +:1006FC00184F900014E412171A90001C1216BAFF2F +:10070C0090001A1216BAFD02079990008512184F24 +:10071C009000161216BA6401600D9000151216BAEC +:10072C00640160030207B5900016E412171A9000DA +:10073C0015E412171A90001A1216BAC3943F500EF1 +:10074C0090008512184F90001A74021216E7900050 +:10075C002E7404F090008512184F90001B1216BADC +:10076C00FF90001A1216BAC39F40139000851218FE +:10077C004F90001AEF12171A90002E7401F090008F +:10078C008512184F90001A1216BAFDE4FF02000EE3 +:10079C0090002EE0D394024010E4F09000851218E3 +:0907AC004F90001E740112171A8F +:0107B5002221 +:0B2C74009000A912186F9000ACEDF06A +:102C7F00E4FE9000ACE0FD14F0ED60299000A9E4B3 +:102C8F0075F0011218581216A16EFEE4FFEFC394EF +:102C9F000850DFEE30E007C313648CFE8004EEC3F0 +:072CAF0013FE0F80E8AF06E1 +:012CB60022FB +:081B0100900085EFF0A3EDF068 +:101B0900E4A3F0A3F078897C007D017BFF7A1E793C +:101B19007FFE7F2012167BE4900089F0A37455F0B4 +:101B2900A374AAF0900085E0FE90008DF0900086E5 +:101B3900E0FD90002DF0EE1218781B5C011B8B0262 +:101B49001BDA031BE7061BE7071C30801C388100E2 +:101B5900001C4690008C7402F0ED700E90008E749B +:101B690002F0E490002BF0021C46900086E064012C +:101B79006003021C4690008E04F0E490002CF002F1 +:101B89001C4690008C7420F07F05900086E075F06B +:101B990012A424442FF8E6FE74892FF582E4340058 +:101BA900F583EEF00FEFB412E17F17EFC3940D4008 +:101BB90003021C46900086E075F00DA4242A2FF834 +:101BC900E6FE74892FF582E43400F583EEF00F8088 +:101BD900DA90008C7402F090008E04F0805F90001F +:101BE9008C7405F090008E7401F0781CE675F00590 +:101BF900A4A3F0A37420F0900086E0FF700D90007C +:101C090028E07002800F9000298015EFB4012E9012 +:101C19000029E0700890009174FFF080209000285E +:101C2900E0900091F0801690008C7401F0800E9085 +:101C3900008C7402F090002AE090008EF090008CE5 +:101C4900E02404FFE433900087F0A3EFF07B017AEE +:101C5900007989FD122C74900087E0FCA3E02489A7 +:101C6900F58274003CF583EFF07F01122B8E900012 +:101C790086E0FF700843BD0253BDFE8016EFB40134 +:101C89000843BD2053BDEF800AEFB4FF0643BD22D0 +:101C990053BDEE900088E02402FF900087E03400F5 +:101CA900FE7B017A007989122CF2900086E0FF70A0 +:101CB9000753BDFD43BD0122EFB4010753BDDF4307 +:0D1CC900BD1022EFB4FF0653BDDF43BD1177 +:011CD60022EB +:1028D500EF24FA605014604D24067069E4FE746DAF +:1028E5002EF8E6FF90002DE075F012A424442EF892 +:1028F500A6070EEEB412E7E4FE747F2EF8E6FF900D +:10290500002DE075F00DA4242A2EF8A6070EEEB4CE +:1029150008E790002DE0700690002B04F02290004F +:102925002C7401F022786DE6B4E30D900005740176 +:10293500F008E6900028F0229000067401F0786E09 +:05294500E6900029F0FE +:01294A00226A +:10285400E4FE900085F0304377C2437BFF7A1D7914 +:10286400F07869E6FF900089EEF0A3EFF008E6FF48 +:10287400A3EEF0A3EFF008E6FFA3EEF0A3EFF00859 +:10288400E6FFA3EEF0A3EFF008E6FFA3EEF0A3EF5C +:10289400F008E6FFA3EEF0A3EFF008E6FFA3EEF0E6 +:1028A400A3EFF0A37409F0A3740EF0120F617B0080 +:1028B4007A007969786BE62403FD122C747E007823 +:1028C4006BE6246CF8E6B50707786CE6FF1228D5AA +:0128D40022E1 +:1021A300011C00C139C13DC13BC13AC13C011B699E +:1021B300602A005B0BB80BEA0C1C0C800CB20CE41D +:1021C3000D160D480D7A0DAC0E100E420E740EA6B0 +:0E21D3000ED80F0A0F3C0F870FD2101D106898 +:1027D200E4FFEF25E0245BF582E43400F583E0FCBE +:1027E200A3E0FDC39000B9E09D9000B8E09C4005D5 +:1027F2000FEFB415DD781CE6FEEFD39E40041806F9 +:102802008003781B16E5E16007E4F5E1781CA60772 +:10281200781BE6FED394C85006EEC3940A5007789C +:102822001CA607187669781CE6FFD394005002D2E2 +:102832003DEFD394015002D239EFD394055002D226 +:102842003BEFD3940A5002D23AEFD3940F5002D204 +:012852003C49 +:012853002262 +:1021E1004100C9004100CC004100C8004200C600C6 +:1021F100004100CA00C126C127C129C125C124C18E +:09220100284100CB00C12AC12BC9 +:10294B009000CBE06062E4F0D2269000C9E004F086 +:10295B00E0C394054004E4F0D2279000CCE004F0EF +:10296B00E0C3940A4004E4F0D2299000C6E475F069 +:10297B0001121791C39000C7E094649000C6E094D5 +:10298B00004006E4F0A3F0D2249000C8E004F0E08D +:10299B00C394FA4013E4F0D2259000CAE004F0E0AF +:0929AB0094044004E4F0D2282257 +:03000B00022DE1E2 +:102DE100C0E0C083C082C0D074FC258CF58C7466B1 +:102DF100258AF58A9000CB7401F0D0D0D082D0839F +:032E0100D0E032EC +:0E2F3E00758901758CFC758A66D2A9D28C2229 +:102C3000EFD39401501675FE0EEF25E02404FE74C8 +:102C400003A806088002C333D8FC801475FE0FEF7A +:102C500024FE25E0FE7403A806088002C333D8FCD6 +:102C6000F452FFEFB4040C75FE0F53FFF075FE0E27 +:042C700053FF0F22DD +:102EE60075FE54EF5407F5FF75FE56AF058FFF7557 +:062EF600FE5375FF0122EE +:102BDF00EFD39401501875FE0EEF25E02404FE7418 +:102BEF0003A806088002C333D8FC42FF801675FE87 +:102BFF000FEF24FE25E0FE7403A806088002C333FE +:102C0F00D8FC42FFEF70038DCE22EFB401038DCFBE +:102C1F0022EFB402038DDE22EFB40304AF058FDF82 +:012C2F002282 +:032FFD00010102CD +:10275200022EB6E493A3F8E493A34003F68001F2B9 +:1027620008DFF48029E493A3F85407240CC8C33388 +:10277200C4540F4420C8834004F456800146F6DF57 +:10278200E4800B010204081020408090205AE47E6D +:10279200019360BCA3FF543F30E509541FFEE4934C +:1027A200A360010ECF54C025E060A840B8E493A313 +:1027B200FAE493A3F8E493A3C8C582C8CAC583CA3E +:1027C200F0A3C8C582C8CAC583CADFE9DEE780BEF6 +:01220A0000D3 +:1015AB00E709F608DFFA8046E709F208DFFA803E22 +:1015BB0088828C83E709F0A3DFFA8032E309F6080F +:1015CB00DFFA8078E309F208DFFA807088828C8377 +:1015DB00E309F0A3DFFA806489828A83E0A3F6082B +:1015EB00DFFA805889828A83E0A3F208DFFA804C05 +:1015FB0080D280FA80C680D4806980F280338010DC +:10160B0080A680EA809A80A880DA80E280CA803344 +:10161B0089828A83ECFAE493A3C8C582C8CCC583BC +:10162B00CCF0A3C8C582C8CCC583CCDFE9DEE7808C +:10163B000D89828A83E493A3F608DFF9ECFAA9F00B +:10164B00EDFB2289828A83ECFAE0A3C8C582C8CC61 +:10165B00C583CCF0A3C8C582C8CCC583CCDFEADE7A +:10166B00E880DB89828A83E493A3F208DFF980CCDC +:10167B0088F0EF60010E4E60C388F0ED2402B404D5 +:10168B000050B9F582EB2402B4040050AF2323457C +:06169B0082239015FB7391 +:1016A100BB010689828A83E0225002E722BBFE0247 +:0916B100E32289828A83E493227A +:1016BA00BB010CE58229F582E5833AF583E02250E5 +:1016CA0006E92582F8E622BBFE06E92582F8E2222F +:0D16DA00E58229F582E5833AF583E4932249 +:1016E700BB010FF8E58229F582E5833AF583E02807 +:1016F700F0225009C58229F8E58226F622BBFE09A9 +:10170700C58229F8E22582F222F8EA2583F583E9E2 +:03171700932822F2 +:10171A00F8BB010DE58229F582E5833AF583E8F005 +:10172A00225006E92582C8F622BBFE05E92582C8B1 +:02173A00F22299 +:10173C00BC000BBE0029EF8DF084FFADF022E4CC91 +:10174C00F875F008EF2FFFEE33FEEC33FCEE9DEC5A +:10175C00984005FCEE9DFE0FD5F0E9E4CEFD22EDA0 +:10176C00F8F5F0EE8420D21CFEADF075F008EF2FEA +:10177C00FFED33FD4007985006D5F0F222C398FDDB +:05178C000FD5F0EA2278 +:10179100C5F0F8A3E028F0C5F0F8E58215827002E3 +:0617A1001583E038F02280 +:1017A700BB0110E58229F582E5833AF583E0F5F080 +:1017B700A3E0225009E92582F886F008E622BBFE5D +:1017C7000AE92582F8E2F5F008E222E5832AF583A3 +:0817D700E993F5F0A3E9932268 +:1017DF00BB010A89828A83F0E5F0A3F0225006F755 +:0F17EF0009A7F01922BBFE06F3E5F009F3192252 +:1017FE00F8BB0111E58229F582E5833AF583E8F01D +:10180E00E5F0A3F0225009E92582C8F608A6F022D9 +:0D181E00BBFE09E92582C8F2E5F008F222C0 +:10182B00EB9FF5F0EA9E42F0E99D42F0E89C45F013 +:01183B00228A +:10183C00E8600FECC313FCED13FDEE13FEEF13FF8A +:03184C00D8F122AE +:09184F00E0FBA3E0FAA3E0F9229A +:10185800F8E0FBA3A3E0F925F0F0E5821582700219 +:071868001583E0FA38F022BD +:09186F00EBF0A3EAF0A3E9F0227A +:10187800D083D082F8E4937012740193700DA3A3FF +:1018880093F8740193F5828883E473740293686013 +:06189800EFA3A3A380DF13 +:10189E00EC8EF0A4CCC5F0CCCDF8EFA4CEC5F02DD7 +:1018AE00FDE43CFCE8A42EC8C5F03DFDE43CFCEF95 +:0D18BE00A4FFE5F028FEE43DFDE43CFC2223 +:100EF600E5082489F582E43400F583E005082290AC +:100F06000086301A03900089E475F0011218580221 +:100F160016A12013E97F2ED2138018EF540F2490C8 +:100F2600D43440D4FF30170BEF24BFB41A0050035B +:100F36002461FFE50960021509050CE50C70020540 +:100F46000B301A0E900086E475F001121858EF0265 +:100F560018CB022F307403D21A8003E4C21AF508A4 +:100F660090008612186FE4F509F50BF50CE509609B +:100F7600077F20120F3980F5750AFFC214C213C20B +:100F860015C216C218C219C21B120F05FF700D300A +:100F96001A057F00120F4AAF0CAE0B22B4255FC2B2 +:100FA600D5C217120F05FF24D0B40A00501A75F0E7 +:100FB6000A780930D50508B6FF0106C6A426F6202C +:100FC600D5047002D21680D924CFB41A00EF50048B +:100FD600C2E5D21702114BD21480C6D21380C0D2FA +:100FE6001580BCD2D580BAD21880B47F20120F39B2 +:100FF6002015077401B5090040F1120EF6FF120F15 +:1010060039020F73D21BD2198095120EF6FB120EFF +:10101600F6FA120EF6F94A4B7006791C7A127BFF25 +:1010260020152EE509602A7E008E82758300121631 +:10103600BA60060EEE650A70F0C2D5EBC0E0EAC0F3 +:10104600E0E9C0E0EE121192D0E0F9D0E0FAD0E08B +:10105600FB1216A1FF60AAEBC0E0EAC0E0E9C0E01F +:10106600120F39D0E02401F9D0E03400FAD0E0FBC9 +:10107600E50A0460DCD50AD980877BFF7A11798E70 +:10108600D215809C791080027908C219C21B80088B +:10109600D2D5790A8004790AC2D5E50A047002F528 +:1010A6000AE4FAFDFEFF120EF6FC7B08201413126A +:1010B6000EF6FD7B1030130A120EF6FE120EF6FF28 +:1010C6007B20EC3382D592D55013C3E43013069FB0 +:1010D600FFE49EFEE42014039DFDE49CFCE4CBF8B3 +:1010E600C214EC700CCFCECDCCE824F8F870F380A7 +:1010F60017C3EF33FFEE33FEED33FDEC33FCEB337A +:10110600FB994002FB0FD8E9EB301405F8D0E0C498 +:1011160048B214C0E00AEC4D4E4F78207B0070C2F6 +:10112600EAB50A0040BCC0E0121194D0F0D0E0202D +:101136001404C4C0E0C4B214C0F0120F22D0F0D51B +:10114600F0EB020F73121878101053108A580FE143 +:101156004C0FDD42108E4F1096441096490FF64301 +:08116600109C5510804610801A +:10116E0045108047123C500FE52D0FE92E100C2B29 +:10117E000FED23100A2012252A0FA5480000100497 +:10118E003F3F3F00790AA2D5201614301809B91036 +:10119E00020404B9080104A2D5201902500104204A +:1011AE0015689215B509005034C0E07F203016192D +:1011BE007F30A21572197218500F1211EBC215C2A0 +:1011CE0019C218C21B7F30800F301803E9C0E0121D +:1011DE000F39301803D0E0F9D0E0B509CC3018172C +:1011EE007F30B9100C120F397F583017077F788077 +:1011FE0003B90803120F393015057F2D020F397F01 +:10120E0020201BF87F2B2019F322921580CF286EF9 +:10121E00756C6C2900D214120EF63014F8C21478C4 +:10122E000930D50108F6020FA52D50434958120E6C +:10123E00F62403B405004001E490123793120F2AEE +:0D124E00743A120F2AD21675090402108A94 +:1018CB00BB010689828A83F0225002F722BBFE01FC +:0218DB00F322F6 +:00000001FF diff --git a/Out/8837_EVB_250108_1930_E201_010102.bin b/Out/8837_EVB_250108_1930_E201_010102.bin new file mode 100644 index 0000000..1591706 Binary files /dev/null and b/Out/8837_EVB_250108_1930_E201_010102.bin differ diff --git a/Project/SY8837_Demo.uvgui.GH b/Project/SY8837_Demo.uvgui.GH index a598303..4fe02a4 100644 --- a/Project/SY8837_Demo.uvgui.GH +++ b/Project/SY8837_Demo.uvgui.GH @@ -93,8 +93,8 @@ 2 3 - -32000 - -32000 + -1 + -1 -1 @@ -102,16 +102,16 @@ 66 - 1872 - 3792 + -8 + 1912 1028 0 - 996 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000009000000070000000100000036453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF40453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C766F785C766F785F6D6F64756C652E63000000000C766F785F6D6F64756C652E6300000000FFDC7800FFFFFFFF4C453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C6469736368617267655C6469736368617267655F6D6F64756C652E6300000000126469736368617267655F6D6F64756C652E6300000000BECEA100FFFFFFFF41453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C757365726170705C757365726170702E630000000009757365726170702E6300000000F0A0A100FFFFFFFF40453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5372635C737461727475705C535441525455502E413531000000000B535441525455502E41353100000000BCA8E100FFFFFFFF3B453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C757365725C757365722E680000000006757365722E68000000009CC1B600FFFFFFFF39453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C6B65795C6B65792E6300000000056B65792E6300000000F7B88600FFFFFFFF3C453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C696E635C636F6E6669672E680000000008636F6E6669672E6800000000D9ADC200FFFFFFFF48453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C636861726765725C636861726765725F6D6F64756C652E680000000010636861726765725F6D6F64756C652E6800000000A5C2D700FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000007408000066000000000F0000CF020000 + 1090 + 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000A000000010000000100000036453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF40453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C766F785C766F785F6D6F64756C652E63000000000C766F785F6D6F64756C652E6300000000FFDC7800FFFFFFFF4C453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C6469736368617267655C6469736368617267655F6D6F64756C652E6300000000126469736368617267655F6D6F64756C652E6300000000BECEA100FFFFFFFF41453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C757365726170705C757365726170702E630000000009757365726170702E6300000000F0A0A100FFFFFFFF40453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5372635C737461727475705C535441525455502E413531000000000B535441525455502E41353100000000BCA8E100FFFFFFFF3B453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C757365725C757365722E680000000006757365722E68000000009CC1B600FFFFFFFF39453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C5573725372635C6B65795C6B65792E6300000000056B65792E6300000000F7B88600FFFFFFFF3C453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C696E635C636F6E6669672E680000000008636F6E6669672E6800000000D9ADC200FFFFFFFF48453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C636861726765725C636861726765725F6D6F64756C652E680000000010636861726765725F6D6F64756C652E6800000000A5C2D700FFFFFFFF40453A5C746F646179776F726B5C32303234313230325F7470333431305C5359383833375F44656D6F5C557372496E635C766F785C766F785F6D6F64756C652E68000000000C766F785F6D6F64756C652E6800000000B3A6BE00FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F40000006600000080070000CF020000 @@ -1806,7 +1806,7 @@ File 2558 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000832303234313031359600000000000000010008323032343130313500000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000832303234313031359600000000000000010008323032343130313500000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1822,7 +1822,7 @@ Build 976 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -3603,7 +3603,7 @@ 0 100 - 7 + 1 ..\UsrSrc\main.c 0 @@ -3615,9 +3615,9 @@ ..\UsrSrc\vox\vox_module.c - 0 - 1323 - 1356 + 2 + 531 + 560 1 0 @@ -3660,18 +3660,18 @@ ..\UsrSrc\key\key.c - 0 - 169 - 194 + 1 + 253 + 275 1 0 \todaywork\20241202_tp3410\SY8837_Demo\UsrInc\inc\config.h - 0 - 203 - 231 + 16 + 183 + 205 1 0 @@ -3685,6 +3685,15 @@ 0 + + ..\UsrInc\vox\vox_module.h + 18 + 459 + 490 + 1 + + 0 + diff --git a/SY8837_Demo.si4project/SY8837_Demo.SearchResults b/SY8837_Demo.si4project/SY8837_Demo.SearchResults index 4844565..fe983b7 100644 --- a/SY8837_Demo.si4project/SY8837_Demo.SearchResults +++ b/SY8837_Demo.si4project/SY8837_Demo.SearchResults @@ -1,7 +1,2 @@ ----- BOOST_VOUT_MAX Matches (6 in 4 files) ---- -config.h (UsrInc\inc) line 169 : #define BOOST_VOUT_MAX Boost_Vout_5_225V //Boost 输出最高电压阈值。 -DisCharge_Handler in discharge_module.c (UsrSrc\discharge) : DisCharge_Boost_Open(OFF, BOOST_VOUT_MAX); //250ms定时开一次Boost,这个VOUT输出电压是直接输出固定值?还是输出跟随充当前电压值? -Key_Handler in key.c (UsrSrc\key) : DisCharge_Boost_Open(OFF,BOOST_VOUT_MAX); -Key_Handler in key.c (UsrSrc\key) : DisCharge_Boost_Open(OFF,BOOST_VOUT_MAX); -Vox_Det_Machine in vox_module.c (UsrSrc\vox) : DisCharge_Boost_Open(OFF,BOOST_VOUT_MAX); //开关盖Boost输出5.2V,保证耳机一定能被唤醒。Boost Enable;异常时由硬件主动关闭。开启Boost,开启Vox 5v会在开启Boost之后(100ms延时)。 -Vox_Det_Machine in vox_module.c (UsrSrc\vox) : DisCharge_Boost_Open(OFF, BOOST_VOUT_MAX); //Boost Enable;异常时由硬件主动关闭。开启Boost,开启Vox 5v会在开启Boost之后(100ms延时)。 +---- JEITA_NTC_CHG_COLD_LOW_TMP Matches (1 in 1 files) ---- +config.h (UsrInc\inc) line 191 : #define JEITA_NTC_CHG_COLD_LOW_TMP T_0C //配置充电NTC冷状态温度下限值。 diff --git a/SY8837_Demo.si4project/SY8837_Demo.sip_sym b/SY8837_Demo.si4project/SY8837_Demo.sip_sym index 400e98a..31b3488 100644 Binary files a/SY8837_Demo.si4project/SY8837_Demo.sip_sym and b/SY8837_Demo.si4project/SY8837_Demo.sip_sym differ diff --git a/SY8837_Demo.si4project/cache/parse/UsrInc_charger_charger_module.h.sisc b/SY8837_Demo.si4project/cache/parse/UsrInc_charger_charger_module.h.sisc deleted file mode 100644 index afb5586..0000000 Binary files a/SY8837_Demo.si4project/cache/parse/UsrInc_charger_charger_module.h.sisc and /dev/null differ diff --git a/SY8837_Demo.si4project/cache/parse/UsrSrc_charger_charger_module.c.sisc b/SY8837_Demo.si4project/cache/parse/UsrSrc_charger_charger_module.c.sisc deleted file mode 100644 index 9a4e309..0000000 Binary files a/SY8837_Demo.si4project/cache/parse/UsrSrc_charger_charger_module.c.sisc and /dev/null differ diff --git a/SY8837_Demo.si4project/cache/parse/UsrSrc_userapp_userapp.c.sisc b/SY8837_Demo.si4project/cache/parse/UsrSrc_userapp_userapp.c.sisc deleted file mode 100644 index 1f6380f..0000000 Binary files a/SY8837_Demo.si4project/cache/parse/UsrSrc_userapp_userapp.c.sisc and /dev/null differ diff --git a/UsrInc/charger/charger_module.h b/UsrInc/charger/charger_module.h index 0d06e87..e289879 100644 --- a/UsrInc/charger/charger_module.h +++ b/UsrInc/charger/charger_module.h @@ -76,7 +76,8 @@ typedef struct { #define PRECHG_TMR_EN_Pos (3U) #define PRECHG_TMR_EN_Pos_Msk (0x1UL << PRECHG_TMR_EN_Pos) -#define PRECHG_TMR_EN PRECHG_TMR_EN_Pos_Msk +#define PRECHG_TMR_EN_2H PRECHG_TMR_EN_Pos_Msk +#define PRECHG_TMR_EN_1H 0x00 #define FASTCHG_TMR_SET_3H 0x00 #define FASTCHG_TMR_SET_5H 0x01 diff --git a/UsrInc/inc/config.h b/UsrInc/inc/config.h index 74adf43..b28c2fc 100644 --- a/UsrInc/inc/config.h +++ b/UsrInc/inc/config.h @@ -160,6 +160,87 @@ #define T_80C 113 //80 NTC:12.4K #endif +/* NTC׼ѡJEITA or IEC.*/ +#define NTC_JEITA 1 + +#define NTC_IEC 0 + +/* NTC¶ȷΧ */ +#if NTC_IEC + +#define IEC_NTC_CHG_PRO_LOW_TMP T_0C //óNTC¶ֵ + +#define IEC_NTC_CHG_HYST_LOW_TMP T_3C //óNTCָ¶޳ֵ + +#define IEC_NTC_CHG_PRO_HIGH_TMP T_45C //óNTC¶ֵ + +#define IEC_NTC_CHG_HYST_HIGH_TMP T_42C //óNTCָ¶޳ֵ + +#elif NTC_JEITA + +/* JEITAģʽNTC¶ȱֵͳ¶ȡ */ +#define JEITA_NTC_CHG_PRO_LOW_TMP T_0C //óNTC¶ֵ + +#define JEITA_NTC_CHG_PRO_HYST_LOW_TMP T_3C //óNTCָ¶޳ֵ + +#define JEITA_NTC_CHG_PRO_HIGH_TMP T_60C //óNTC¶ֵ + +#define JEITA_NTC_CHG_PRO_HYST_HIGH_TMP T_57C //óNTCָ¶޳ֵ + +/* JEITAģʽNTC¶״ֵ̬ͳ¶ȡ */ +#define JEITA_NTC_CHG_COLD_HIGH_TMP T_10C //óNT C״̬¶ֵ + +#define JEITA_NTC_CHG_COLD_HYST_HIGH_TMP T_8C //óNTC״ָ̬¶޳ֵ + +/* JEITAģʽNTC¶ů״ֵ̬ͳ¶ȡ */ +#define JEITA_NTC_CHG_WARM_LOW_TMP T_10C //óNTCů״̬¶ֵ + +#define JEITA_NTC_CHG_WARM_HYST_LOW_TMP T_12C //óNTCů״ָ̬¶޳ֵ + +#define JEITA_NTC_CHG_WARM_HIGH_TMP T_45C //óNT Ců״̬¶ֵ + +#define JEITA_NTC_CHG_WARM_HYST_HIGH_TMP T_42C //óNTCů״ָ̬¶޳ֵ + +/* JEITAģʽNTC¶״ֵ̬ͳ¶ȡ */ +#define JEITA_NTC_CHG_HOT_LOW_TMP T_45C //óNTC״̬¶ֵ + +#define JEITA_NTC_CHG_HOT_HYST_LOW_TMP T_47C //óNTC״ָ̬¶޳ֵ + +#endif + +/* NTCŵ¶ȷΧ */ +#define NTC_DISCHG_PRO_LOW_TMP T_N20C //÷ŵNTC¶ֵ + +#define NTC_DISCHG_HYST_LOW_TMP T_N15C //÷ŵNTCָ¶޳ֵ + +#define NTC_DISCHG_PRO_HIGH_TMP T_80C //÷ŵNTC¶ֵ + +#define NTC_DISCHG_HYST_HIGH_TMP T_75C //÷ŵNTCָ¶޳ֵ + +/* Bat Level Set. 5% Each Gear */ +#define C_batLevel_SetMax 21 //Ƶλ + +#define Bat_Lev_0 3000 //0% +#define Bat_Lev_5 3050 //5% +#define Bat_Lev_10 3100 //10% +#define Bat_Lev_15 3200 //15% +#define Bat_Lev_20 3250 //20% +#define Bat_Lev_25 3300 //25% +#define Bat_Lev_30 3350 //30% +#define Bat_Lev_35 3400 //35% +#define Bat_Lev_40 3450 //40% +#define Bat_Lev_45 3500 //45% +#define Bat_Lev_50 3600 //50% +#define Bat_Lev_55 3650 //55% +#define Bat_Lev_60 3700 //60% +#define Bat_Lev_65 3750 //65% +#define Bat_Lev_70 3800 //70% +#define Bat_Lev_75 3850 //75% +#define Bat_Lev_80 3900 //80% +#define Bat_Lev_85 3975 //85% +#define Bat_Lev_90 4050 //90% +#define Bat_Lev_95 4125 //95% +#define Bat_Lev_100 4200 //100% /* Boost Module Config Para Setting. */ @@ -169,6 +250,10 @@ #define BOOST_VOUT_MAX Boost_Vout_5_225V //Boost ߵѹֵ +/* LED á */ + +#define LED_DRV_LIMIT_SET P0_DRV_400 //P02-P05λ400800 + /* KEY And Hall Module Setting. */ #define HALL_OPEN_LEV_SET 1 //ǸߵƽΪǻǵ͵ƽΪǡ1:ߵƽΪǣ0:͵ƽΪǡ @@ -183,7 +268,9 @@ #define VFLOAT_SET CHG_VFLOAT_4_200V //øѹ -#define FASTCHG_TMR_SET FASTCHG_TMR_SET_5H //úͺѹʱ䡣 +#define PRECHG_TIM_SET PRECHG_TMR_EN_1H //䳬ʱʱ䡣 + +#define FASTCHG_TMR_SET FASTCHG_TMR_SET_5H //úͺѹʱʱ䡣 #define VFLOAT_JEITA_HOT CHG_VFLOAT_4_000V //JEITA׼NTCȳ縡ѹ @@ -213,6 +300,14 @@ #define VOX_CLOSE_5V_HOLD_CNT 3 //ùظǶVOX 5Vʱ䣨100ms * 3λms + /* ˫ͨѶЭѡ */ + +#define JIELI 1 //оƬ + +#define ZHONGKE 0 //пѶоƬ + +#define XUANHENG 0 //оƬ + /* Voxá(100ms) */ #define VOX_CV_TC_CURRENT 20 //紦CV/TC׶εĵֵλmA @@ -233,7 +328,9 @@ /*Sleep Module Setting*/ /*Enter Sleep Time Debounce*/ -#define ENTER_STANDBYMODE_CNT 15 //Standby Mode ӳʱ䣬λ +#define ENTER_STANDBYMODE_CNT 15 //Standby Mode ӳʱ䣬λ + +#define STANDBY_TIM_SET STB_TMR_SET_8S //Standbyʱʱ䣺2s4s8s16sλ //#define ENTER_STANDBYMODE_CNT 10 //Standby Mode ӳʱ䣬λ diff --git a/UsrInc/inc/define.h b/UsrInc/inc/define.h index fb0f135..22f0324 100644 --- a/UsrInc/inc/define.h +++ b/UsrInc/inc/define.h @@ -61,12 +61,6 @@ #define VOX_RX //739Bytes - /* ˫ͨѶЭѡ */ - -#define JIELI 0 - -#define ZHONGKE 1 - #endif #define CHARGER_ENABLE 1 //94Bytes @@ -81,10 +75,6 @@ #if ADC_ENABLE -#define NTC_JEITA 1 - -#define NTC_IEC 0 - #define NTC_ENABLE //513Bytes JEITA #endif diff --git a/UsrInc/led/led.h b/UsrInc/led/led.h index 5979640..3f4bf71 100644 --- a/UsrInc/led/led.h +++ b/UsrInc/led/led.h @@ -60,6 +60,13 @@ sbit pin_LED_4 = P0^5; #define LEDB_OFF() pin_LED_4 = 0 //LED_4_OFF() #define LEDB_TOG() pin_LED_4 = !pin_LED_4 //LED_4_RUN() +/* P02-P05<03h> --P0_DRV */ +#define P0_DRV_NONE 0x00 + +#define P0_DRV_400 0xAA + +#define P0_DRV_800 0xFF + /******************************************************************************\ Typedef definitions \******************************************************************************/ diff --git a/UsrInc/system/system.h b/UsrInc/system/system.h index 816cbf8..3f5729e 100644 --- a/UsrInc/system/system.h +++ b/UsrInc/system/system.h @@ -161,6 +161,20 @@ #define VIN_PRESENT_WK_FLAG_Pos_Msk (0x1UL << VIN_PRESENT_WK_FLAG_Pos) #define VIN_PRESENT_WK_FLAG VIN_PRESENT_WK_FLAG_Pos_Msk +/* Standby ʱѿƼĴ--STB_TIM_CTL */ +#define EN_FORCE_LOSC_Pos (7U) +#define EN_FORCE_LOSC_Pos_Msk (0x1UL << EN_FORCE_LOSC_Pos) +#define EN_FORCE_LOSC EN_FORCE_LOSC_Pos_Msk + +#define STB_TMR_EN_Pos (6U) +#define STB_TMR_EN_Pos_Msk (0x1UL << STB_TMR_EN_Pos) +#define STB_TMR_EN STB_TMR_EN_Pos_Msk + +#define STB_TMR_SET_2S (0U) +#define STB_TMR_SET_4S (1U) +#define STB_TMR_SET_8S (2U) +#define STB_TMR_SET_16S (3U) + /*жϺż㷽ʽж = жϺ * 8 + 3*/ #define Interrupt_Vector_IE0 0 //0x03,SY8836 IE0 use for wakeup diff --git a/UsrInc/uart/uart.h b/UsrInc/uart/uart.h index 46c7e3c..e85d75e 100644 --- a/UsrInc/uart/uart.h +++ b/UsrInc/uart/uart.h @@ -44,7 +44,7 @@ extern char putchar (char ch); #endif -#define COM0_Data_Lenth 64 +#define COM0_Data_Lenth 32 #ifdef VOX_RX diff --git a/UsrInc/vox/vox_module.h b/UsrInc/vox/vox_module.h index 177ba7e..83bc535 100644 --- a/UsrInc/vox/vox_module.h +++ b/UsrInc/vox/vox_module.h @@ -260,6 +260,11 @@ SFRDATA |= (VOX_LIGHT_TO_HAVEY_128 << 2) | VOX_HAVEY_TO_LIGHT_8; #define Vox_Pull_Up_50k_Pos (0U) #define Vox_Pull_Up_50k_Pos_Msk (0x1UL << Vox_Pull_Up_50k_Pos) #define Vox_Pull_Up_50k Vox_Pull_Up_50k_Pos_Msk +#if XUANHENG + +#define BOXHEADER 0xAA //VOXͨѶݰͷ + +#else #define BOXHEADER 0x55AA //VOXͨѶݰͷ @@ -268,6 +273,8 @@ SFRDATA |= (VOX_LIGHT_TO_HAVEY_128 << 2) | VOX_HAVEY_TO_LIGHT_8; #define BOXIDCODE 0xFF //VOXͨѶ->ݰͷ +#endif + #define Vox_TX_Interval 2 //Voxʱָʱ #define Vox_TX_Interval_2 4 @@ -374,6 +381,49 @@ typedef enum _VOX_BES_COMMAND_E }VOX_BES_COMMAND_E; +#elif XUANHENG + + /*ͨѡ*/ + +#define TWS_VOL 0x04 +#define TWS_VOR 0x05 +#define TWS_BOX 0x02 +#define TWS_PC 0x03 + +typedef enum { + + VOL_CHAN = 0x24, + + VOR_CHAN = 0x25, + + VOX_BOTH = 0x21, + + VOX_MAX_CHAN = 0x02, + +}e_Vox_Chan; + + /*ͳֽ˫ͨѶЭID*/ +typedef enum _VOX_BES_COMMAND_E +{ + CMD_SHUT_DOWN = 0x0005, //ػ + + CMD_TWS_GET_BTADDR = 0x0037, //ȡԶMACַ + + CMD_TWS_SET_BTADDR = 0x000A, //дԶMACַ + + CMD_CLEAR_PAIR = 0x000B, //Լ¼ + + CMD_HEARTBEAT = 0x000D, // + + CMD_SN = 0x000E, //дSN뵽 + + CMD_GET_INTO_PAIR = 0x000F, //״̬ + + CMD_PAIRING_IMD = 0x0011, //ִTWS + + BES_RESET, //λPattern + +}VOX_BES_COMMAND_E; #endif diff --git a/UsrSrc/adc/adc.c b/UsrSrc/adc/adc.c index 4ea1a31..32a4079 100644 --- a/UsrSrc/adc/adc.c +++ b/UsrSrc/adc/adc.c @@ -36,6 +36,8 @@ idata int8_t ADC_Offset_Error = 0; //ADC Offset Error У׼ֵĴ +idata int8_t Bat_ADC_Offset_Error = 0; + idata int8_t Vor_Isense_Gain_Error = 0; idata int8_t Vol_Isense_Gain_Error = 0; @@ -106,7 +108,10 @@ void Adc_Init(void) SFRDATA |= 0x01; #if 0 - ADC_Offset_Error = ADC_OFFSET; //ȡADC Offset ErrorУ׼ֵ + + ADC_Offset_Error = (int8_t)( ADC_OFFSET - 8 ); //ȡADC Offset ErrorУ׼ֵ + + Bat_ADC_Offset_Error = (int8_t)( ADC_OFFSET >> 4 ); /* ȡIvoxӦOffset Error Gain Error */ Vol_Isense_Offset_Error = (int8_t)( IVOX_OFFSET - 8 ) * 10; //VOX offset ޵ÿһλΪ 10mV1000 Ӧ offset Ϊ 0mV1001 Ӧ offsetΪ 10mV0111 Ӧ offset Ϊ-10mV @@ -116,6 +121,7 @@ void Adc_Init(void) Vor_Isense_Offset_Error = (int8_t)( ( IVOX_OFFSET >> 4 ) - 8 ) * 10; Vor_Isense_Gain_Error = IVOR_GAIN; + #endif EX6 = 1; //ADC IRQ Enable @@ -155,7 +161,7 @@ void PMU_ADC_Chn_Data( PMU_ADC_CHANNELS_E pmu_Adc_Chn ) g_Value_Adc_Avg = ((uint32_t)g_Value_Adc_Avg * 2500) >> 10 ; //ADCLSB = 2500mV / 1024 = 2.44mV - //g_pmu_Adc_Ivol = ( g_Value_Adc_Avg - Vol_Isense_Offset_Error ) / ( (uint32_t)( 5000 + 3 * Vol_Isense_Gain_Error ) / 1000 ); //IVOLѹλVOLĵŴ5͸ADC磺100mAADCѹΪ500mV + //g_pmu_Adc_Ivol = ( g_Value_Adc_Avg - Vol_Isense_Offset_Error ) / ( (uint16_t)( 500 + 2 * Vol_Isense_Gain_Error ) / 100 ); //IVOLѹλVOLĵŴ5͸ADC磺100mAADCѹΪ500mV g_pmu_Adc_Ivol = ( g_Value_Adc_Avg - Vol_Isense_Offset_Error ) / 5 ; break; @@ -163,15 +169,17 @@ void PMU_ADC_Chn_Data( PMU_ADC_CHANNELS_E pmu_Adc_Chn ) g_Value_Adc_Avg = ((uint32_t)g_Value_Adc_Avg * 2500) >> 10 ; //ADCLSB = 2500mV / 1024 = 2.44mV - //g_pmu_Adc_Ivor = ( g_Value_Adc_Avg - Vor_Isense_Offset_Error ) / ( (uint32_t)( 5000 + 3 * Vor_Isense_Gain_Error ) / 1000 ); //IVORѹλVORĵŴ5͸ADC磺100mAADCѹΪ500mV + // g_pmu_Adc_Ivor = ( g_Value_Adc_Avg - Vor_Isense_Offset_Error ) / ( (uint16_t)( 500 + 2 * Vor_Isense_Gain_Error ) / 100 ); //IVORѹλVORĵŴ5͸ADC磺100mAADCѹΪ500mV g_pmu_Adc_Ivor = ( g_Value_Adc_Avg - Vor_Isense_Offset_Error ) / 5; break; case ADC_BAT: - g_Value_Adc_Avg = ((uint32_t)( g_Value_Adc_Avg - ADC_Offset_Error ) * 2500) >> 10 ; //ADCLSB = 2500mV / 1024 = 2.44mV + g_Value_Adc_Avg = ((uint32_t)( g_Value_Adc_Avg ) * 2500) >> 10 ; //ADCLSB = 2500mV / 1024 = 2.44mV g_Vbat_Adc = g_Value_Adc_Avg << 1; //VBAT2ѹ + + //g_Vbat_Adc += (int32)( ( g_Vbat_Adc * 4 * ( Bat_ADC_Offset_Error - 8 ) ) / 1000 ); break; diff --git a/UsrSrc/bat/bat.c b/UsrSrc/bat/bat.c index 67d54e6..3e7feef 100644 --- a/UsrSrc/bat/bat.c +++ b/UsrSrc/bat/bat.c @@ -473,7 +473,6 @@ void Bat_Gauge_Handle(void) #define C_offset_bat_level_MAX 200 #define C_offset_bat_level_MIN 10 - bit F_batlevel_protect = 0; //͵籣 bit F_batlevel_25p = 0; @@ -484,32 +483,30 @@ bit F_batlevel_75p = 0; idata uint8_t offset_bat_level = ( C_offset_bat_level_MAX + C_offset_bat_level_MIN ) / 2; -#define C_batLevel_SetMax 21 - /*صѹḡ,ѹҪԡ*/ const uint16_t Boost_batlevel_Threshold[C_batLevel_SetMax] = { - 3000, //0% - 3050, //5% - 3100, //10% - 3200, //15% - 3250, //20% - 3300, //25% - 3350, //30% - 3400, //40% - 3450, //45% - 3500, //50% - 3600, //55% - 3650, //60% - 3700, //65% - 3750, //70% - 3800, //75% - 3850, //80% - 3900, //85% - 3975, //90% - 4050, //95% - 4125, //100% - 4200 //10 + Bat_Lev_0, //0% + Bat_Lev_5, //5% + Bat_Lev_10, //10% + Bat_Lev_15, //15% + Bat_Lev_20, //20% + Bat_Lev_25, //25% + Bat_Lev_30, //30% + Bat_Lev_35, //35% + Bat_Lev_40, //40% + Bat_Lev_45, //45% + Bat_Lev_50, //50% + Bat_Lev_55, //55% + Bat_Lev_60, //60% + Bat_Lev_65, //65% + Bat_Lev_70, //70% + Bat_Lev_75, //75% + Bat_Lev_80, //80% + Bat_Lev_85, //85% + Bat_Lev_90, //90% + Bat_Lev_95, //95% + Bat_Lev_100 //100% }; #if 0 @@ -534,7 +531,7 @@ void check_bat_level(void) #if ADC_ENABLE for(i=0; i < C_batLevel_SetMax; i++) { - #if 0 + #if 1 if( g_Vbat_Adc < Boost_batlevel_Threshold[i] ) { diff --git a/UsrSrc/charger/charger_module.c b/UsrSrc/charger/charger_module.c index 3a1796b..8bd3d1d 100644 --- a/UsrSrc/charger/charger_module.c +++ b/UsrSrc/charger/charger_module.c @@ -89,7 +89,7 @@ void Charger_Init(void) SFRDATA |= R_Set0 | R_Set1; //Charger · RC ã00-11 λֵ CHG_CTL &=~ 0x0E; - CHG_CTL |= FASTCHG_TMR_SET; + CHG_CTL |= FASTCHG_TMR_SET | PRECHG_TIM_SET ; gCharge_Cfg.nTrickle_Cur = TRICKLE_CUR_SET; @@ -156,9 +156,9 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( Charge_sta ) //VBUS plugin status ģʽ { - if( ( NTC_Adc <= T_0C ) && ( NTC_Adc > T_60C ) ) + if( ( NTC_Adc <= JEITA_NTC_CHG_PRO_LOW_TMP ) && ( NTC_Adc > JEITA_NTC_CHG_PRO_HIGH_TMP ) ) { - if( NTC_Adc > T_10C ) //0.5*ICC + if( NTC_Adc > JEITA_NTC_CHG_COLD_HIGH_TMP ) //0.5*ICC { NTC_250mA_Chg_Flag = 1; @@ -166,7 +166,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( NTC_500mA_Chg_Flag ) { - if( NTC_Adc > T_8C ) + if( NTC_Adc > JEITA_NTC_CHG_COLD_HYST_HIGH_TMP ) { NTC_500mA_Chg_Flag = 0; @@ -181,7 +181,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) NTC_Flag = FALSE; } else - if( NTC_Adc <= T_10C && NTC_Adc > T_45C ) //1*ICC + if( NTC_Adc <= JEITA_NTC_CHG_WARM_LOW_TMP && NTC_Adc > JEITA_NTC_CHG_WARM_HIGH_TMP ) //1*ICC { NTC_500mA_Chg_Flag = 1; @@ -189,7 +189,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( NTC_250mA_Chg_Flag ) { - if( NTC_Adc <= T_12C ) + if( NTC_Adc <= JEITA_NTC_CHG_WARM_HYST_LOW_TMP ) { NTC_250mA_Chg_Flag = 0; @@ -205,7 +205,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( NTC_Change_CV_Chg_Flag ) { - if( NTC_Adc <= T_42C ) + if( NTC_Adc <= JEITA_NTC_CHG_WARM_HYST_HIGH_TMP ) { NTC_Change_CV_Chg_Flag = 0; @@ -220,7 +220,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) NTC_Flag = FALSE; } else - if( NTC_Adc <= T_45C ) //ѹ4.05V + if( NTC_Adc <= JEITA_NTC_CHG_HOT_LOW_TMP ) //ѹ4.05V { NTC_Change_CV_Chg_Flag = 1; @@ -228,7 +228,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( NTC_500mA_Chg_Flag ) { - if(NTC_Adc <= T_47C) + if(NTC_Adc <= JEITA_NTC_CHG_HOT_HYST_LOW_TMP) { NTC_500mA_Chg_Flag = 0; @@ -245,7 +245,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( CHG_NTC_Low_Pro_Flag ) { - if( NTC_Adc < T_3C) + if( NTC_Adc < JEITA_NTC_CHG_PRO_HYST_LOW_TMP) { CHG_NTC_Low_Pro_Flag = 0; NTC_Flag = FALSE; @@ -258,7 +258,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( CHG_NTC_High_Pro_Flag ) { - if( NTC_Adc > T_57C ) + if( NTC_Adc > JEITA_NTC_CHG_PRO_HYST_HIGH_TMP ) { CHG_NTC_High_Pro_Flag = 0; NTC_Flag = FALSE; @@ -271,7 +271,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) } else { - if( NTC_Adc > T_0C ) // + if( NTC_Adc > JEITA_NTC_CHG_PRO_LOW_TMP ) // { CHG_NTC_Low_Pro_Flag = 1; @@ -281,7 +281,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) NTC_Flag = TRUE; } else - if( NTC_Adc <= T_60C ) // + if( NTC_Adc <= JEITA_NTC_CHG_PRO_HIGH_TMP ) // { CHG_NTC_High_Pro_Flag = 1; @@ -302,11 +302,11 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) CHG_NTC_Low_Pro_Flag = 0; CHG_NTC_High_Pro_Flag = 0; - if( NTC_Adc <= T_N20C && NTC_Adc > T_80C ) //ŵ + if( NTC_Adc <= NTC_DISCHG_PRO_LOW_TMP && NTC_Adc > NTC_DISCHG_PRO_HIGH_TMP ) //ŵ { if( DisChg_NTC_Low_Pro_Flag ) { - if( NTC_Adc < T_N15C ) + if( NTC_Adc < NTC_DISCHG_HYST_LOW_TMP ) { DisChg_NTC_Low_Pro_Flag = 0; NTC_Flag = FALSE; @@ -319,7 +319,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( DisChg_NTC_High_Pro_Flag ) { - if( NTC_Adc > T_75C ) + if( NTC_Adc > NTC_DISCHG_HYST_HIGH_TMP ) { DisChg_NTC_High_Pro_Flag = 0; NTC_Flag = FALSE; @@ -332,12 +332,12 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) } else //쳣ŵ { - if( NTC_Adc > T_N20C ) + if( NTC_Adc > NTC_DISCHG_PRO_LOW_TMP ) { DisChg_NTC_Low_Pro_Flag = 1; } else - if( NTC_Adc < T_80C ) + if( NTC_Adc < NTC_DISCHG_PRO_HIGH_TMP ) { DisChg_NTC_High_Pro_Flag = 1; } @@ -350,11 +350,11 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if(Charge_sta) //VBUS plugin status ģʽ { - if(NTC_Adc <= T_0C && NTC_Adc > T_45C) // + if(NTC_Adc <= IEC_NTC_CHG_PRO_LOW_TMP && NTC_Adc > IEC_NTC_CHG_PRO_HIGH_TMP) // { if(CHG_NTC_Low_Pro_Flag) { - if( NTC_Adc < T_3C ) + if( NTC_Adc < IEC_NTC_CHG_HYST_LOW_TMP ) { CHG_NTC_Low_Pro_Flag = 0; @@ -368,7 +368,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if(CHG_NTC_High_Pro_Flag) { - if( NTC_Adc > T_42C ) + if( NTC_Adc > IEC_NTC_CHG_HYST_HIGH_TMP ) { CHG_NTC_High_Pro_Flag = 0; @@ -382,12 +382,12 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) } else //쳣 { - if(NTC_Adc > T_0C) + if(NTC_Adc > IEC_NTC_CHG_PRO_LOW_TMP) { CHG_NTC_Low_Pro_Flag = 1; } else - if(NTC_Adc <= T_45C) + if(NTC_Adc <= IEC_NTC_CHG_PRO_HIGH_TMP) { CHG_NTC_High_Pro_Flag = 1; } @@ -406,11 +406,11 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) CHG_NTC_Low_Pro_Flag = 0; CHG_NTC_High_Pro_Flag = 0; - if( (NTC_Adc <= T_N20C) && (NTC_Adc > T_80C) ) //ŵ + if( (NTC_Adc <= NTC_DISCHG_PRO_LOW_TMP) && (NTC_Adc > NTC_DISCHG_PRO_HIGH_TMP) ) //ŵ { if( DisChg_NTC_Low_Pro_Flag ) { - if( NTC_Adc < T_N15C ) + if( NTC_Adc < NTC_DISCHG_HYST_LOW_TMP ) { DisChg_NTC_Low_Pro_Flag = 0; @@ -424,7 +424,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if(DisChg_NTC_High_Pro_Flag) { - if( NTC_Adc > T_75C ) + if( NTC_Adc > NTC_DISCHG_HYST_HIGH_TMP ) { DisChg_NTC_High_Pro_Flag = 0; @@ -438,12 +438,12 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) } else //쳣ŵ { - if(NTC_Adc > T_N20C) + if(NTC_Adc > NTC_DISCHG_PRO_LOW_TMP) { DisChg_NTC_Low_Pro_Flag = 1; } else - if(NTC_Adc <= T_80C) + if(NTC_Adc <= NTC_DISCHG_PRO_HIGH_TMP) { DisChg_NTC_High_Pro_Flag = 1; } @@ -489,6 +489,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) */ void Charger_Handler(void) { + uint16_t nCVFloat = 0; if( !(CHIP_STA4 & VIN_PG) ) //δ⵽Power good,رChargerʹܺ󷵻ء { CHG_CTL &= ~CHG_EN; //Disable Charger @@ -568,8 +569,16 @@ void Charger_Handler(void) if( IRQ_FLAG9 & CHG_Complete ) //Charg complete interrupt { #if ADC_ENABLE - - if( g_Vbat_Adc < ( gCharge_Cfg.nVFloat - BAT_RECHARG_THD ) ) //ָ + if( gCharge_Cfg.nVFloat == CHG_VFLOAT_4_200V ) + { + nCVFloat = 4200; + } + else + { + nCVFloat = 4000; + } + + if( g_Vbat_Adc < ( nCVFloat - BAT_RECHARG_THD ) ) //ָ { IRQ_FLAG9 = CHG_Complete; } diff --git a/UsrSrc/key/key.c b/UsrSrc/key/key.c index 0a36d8a..9900f71 100644 --- a/UsrSrc/key/key.c +++ b/UsrSrc/key/key.c @@ -253,7 +253,7 @@ uint8_t Key_Lift_Debounce = 0; nKey_Press_short_irq = 0; /*todo*/ - Event_key = KEY_EVENT_SHORT; + // Event_key = KEY_EVENT_SHORT; #ifdef _DEBUG_KEY printf("short press\r\n"); @@ -273,7 +273,13 @@ uint8_t Key_Lift_Debounce = 0; if( Key_TWS_Pair_Tim < 1 ) { #ifdef VOX_TX + +#if XUANHENG + HandleTxCommand(CMD_TWS_GET_BTADDR,VOR_CHAN); +#else HandleTxCommand(VHOUSE_CMD_PAIR,VOR_CHAN); //Ҷָֶͨ +#endif + #endif Vox_Get_BES_Addr_Flag[VOL_TYPE] = 0x00; @@ -305,11 +311,15 @@ uint8_t Key_Lift_Debounce = 0; if( Vox_Get_BES_Addr_Flag[VOR_TYPE] == 0x01 ) /*յҶظCMD3ָ*/ { #ifdef VOX_TX + #if JIELI HandleTxCommand(VHOUSE_CMD_EXCH_TWS_BTADDR,VOL_CHAN); /*ȡҶظCMD3ָת*/ #elif ZHONGKE HandleTxCommand( VHOUSE_CMD_GET_TWS_BTADDR, VOL_CHAN ); /*ȡҶظCMD3ָת*/ +#elif XUANHENG + HandleTxCommand( CMD_TWS_SET_BTADDR, VOL_CHAN ); #endif + #endif Vox_Get_BES_Addr_Flag[VOR_TYPE] = 0x02; #ifdef _DEBUG_KEY @@ -323,11 +333,15 @@ uint8_t Key_Lift_Debounce = 0; if( Vox_Get_BES_Addr_Flag[VOL_TYPE] != 0x00 ) { #ifdef VOX_TX + #if JIELI HandleTxCommand(VHOUSE_CMD_EXCH_TWS_BTADDR,VOR_CHAN); /*ȡҶظCMD3ָת*/ #elif ZHONGKE HandleTxCommand( VHOUSE_CMD_GET_TWS_BTADDR, VOR_CHAN ); /*ȡҶظCMD3ָת*/ +#elif XUANHENG + HandleTxCommand( CMD_TWS_SET_BTADDR, VOR_CHAN ); #endif + #endif Vox_Get_BES_Addr_Flag[VOL_TYPE] = 0x00; Vox_Get_BES_Addr_Flag[VOR_TYPE] = 0x00; @@ -349,7 +363,13 @@ uint8_t Key_Lift_Debounce = 0; else { #ifdef VOX_TX - HandleTxCommand(VHOUSE_CMD_PAIR,VOL_CHAN); + +#if XUANHENG + HandleTxCommand(CMD_TWS_GET_BTADDR,VOL_CHAN); +#else + HandleTxCommand(VHOUSE_CMD_PAIR,VOL_CHAN); //Ҷָֶͨ +#endif + #endif #ifdef _DEBUG_KEY printf("Key Pair TX VOL(line:%d).\r\n",(uint16_t)__LINE__); @@ -380,15 +400,27 @@ uint8_t Key_Lift_Debounce = 0; { if( !( Key_TWS_Clear_Pair_Tim % KEY_LL_TX_Interval_2 ) ) { -#ifdef VOX_TX +#ifdef VOX_TX + +#if XUANHENG + HandleTxCommand(CMD_CLEAR_PAIR,VOR_CHAN); +#else HandleTxCommand(VHOUSE_CMD_CLEAR_PAIR,VOR_CHAN); +#endif + #endif } else if( !( Key_TWS_Clear_Pair_Tim % KEY_LL_TX_Interval ) ) { -#ifdef VOX_TX +#ifdef VOX_TX + +#if XUANHENG + HandleTxCommand(CMD_CLEAR_PAIR,VOL_CHAN); +#else HandleTxCommand(VHOUSE_CMD_CLEAR_PAIR,VOL_CHAN); +#endif + #endif } diff --git a/UsrSrc/sleep/sleep.c b/UsrSrc/sleep/sleep.c index 97046f3..d55f55a 100644 --- a/UsrSrc/sleep/sleep.c +++ b/UsrSrc/sleep/sleep.c @@ -69,7 +69,7 @@ void WakeUp_Init_Set(void) SFRADDR = WKUP_EN0; SFRDATA |= 0x08; - STBTIM_CTL = 0x87; //Force LOSC In Standby;Enable Wakeup Time Control In Standby Mode;Set The Wakeup Time In Standby Mode:12s. + STBTIM_CTL = EN_FORCE_LOSC | STB_TMR_EN | STANDBY_TIM_SET;; //Force LOSC In Standby;Enable Wakeup Time Control In Standby Mode;Set The Wakeup Time In Standby Mode:12s. #endif diff --git a/UsrSrc/uart/uart.c b/UsrSrc/uart/uart.c index 7b06aa0..4977811 100644 --- a/UsrSrc/uart/uart.c +++ b/UsrSrc/uart/uart.c @@ -284,10 +284,18 @@ uint8_t Rx1Status = 0; uint8_t RX1_Cnt = 0; +#if XUANHENG + +uint16_t RX1DataLen = 0; + +#endif + #define Vox_Comm_JL_HEADER_DATA_LEN 4 #define Vox_Comm_ZK_HEADER_DATA_LEN 6 +#define Vox_Comm_XH_HEADER_DATA_LEN 7 + /*uart1жϴ*/ void uart1_Interrupt(void) interrupt Interrupt_Vector_RI1_TI1 { @@ -311,6 +319,49 @@ void uart1_Interrupt(void) interrupt Interrupt_Vector_RI1_TI1 #ifdef VOX_RX +#if XUANHENG + + switch(Rx1Status) + { + case 0: + + if( S1BUF == BOXHEADER ) + { + Rx1Status = 1; + + RX1_Cnt = 0; + + RX1_Buffer[RX1_Cnt++] = S1BUF; + } + else + { + Rx1Status = 0; + + RX1_Cnt = 0; + } + break; + + case 1: + + RX1_Buffer[RX1_Cnt++] = S1BUF; + + if( RX1_Cnt == Vox_Comm_XH_HEADER_DATA_LEN ) + { + RX1DataLen = RX1_Buffer[5] | (RX1_Buffer[6] << 8) + 9; //ȡݳȣHeadr(1Byte) + Trandsmit Dir(1Byte) + CMD(2Bytes) + datalen(2Bytes) + CRC16(2Bytes) + } + + if( (RX1DataLen == RX1_Cnt) || (RX1_Cnt > COM0_Data_Lenth) ) //յdataRX0DataLenδ䡣 + { + RX1_Cnt = 0; + + Rx1Status = 0; + + Uart1_RX_Finish_Flag = 1; + } + } + +#else + switch(Rx1Status) { case 0: @@ -367,6 +418,8 @@ void uart1_Interrupt(void) interrupt Interrupt_Vector_RI1_TI1 default: break; } +#endif + #endif } diff --git a/UsrSrc/vox/vox_module.c b/UsrSrc/vox/vox_module.c index 57fd8b2..9f213f5 100644 --- a/UsrSrc/vox/vox_module.c +++ b/UsrSrc/vox/vox_module.c @@ -80,19 +80,8 @@ xdata uint8_t Vox_Get_BES_Addr_Flag[2] = {0}; #endif -#ifdef VOX_TX - -idata uint8_t Net_Info[2][13] = {0}; - -idata uint8_t MAC_Addr[2][18] = {0}; - uint8_t EarPhone_Num = 0; -#endif - -xdata uint8_t Earphone_Vbat[2] = 0; //Զ -xdata uint8_t Vox_Online_State[2] = {0}; //߱־λ - bit Vox_Ocp_Flag = 0; bit OpenCover_TX_Cmd_Flag = 0; @@ -103,6 +92,51 @@ bit OpenCover_TX_Cmd_Flag = 0; #define KEY_TWS_PAIR_CLEAR_CNT 30 +#if XUANHENG + +idata uint8_t Vox_Pairing_State[2] = {0}; //״̬0Ч1ԣ2Գɹ3ֵǰ״̬ + +idata uint8_t Vox_Set_BES_Addr_Flag[2] = {0}; + +idata uint8_t BES_Addr[6] = {0}; //ַVox_Bes_Addr[0][6]VOLVox_Bes_Addr[1][6]VOR + +idata uint8_t Random_Data[8] = {0}; + +idata uint8_t Bes_Bet_Level[2] = {0}; //ԶصϢBes_Bet_Level[0]Bes_Bet_Level[1]Ҷ + +idata uint8_t Bes_Chg_Full[2] = {0}; //ԶӲǷ磺0磻1硣 + +idata uint8_t Tws_Paired_Record[2] = {0}; //TWSԼ¼0TWSԼ¼1ûTWSԼ¼ + +idata uint8_t Phone_Paired_Record[2] = {0}; //ֻԼ¼0ֻԼ¼1ûкֻԼ¼ + +idata uint8_t Bes_OTA_State[2] = {0}; //Ĭ״̬1У0û + +idata uint8_t Bes_Set_SN_State[2] = {0}; //ӦдSNǷɹ1ɹ0ʧ + +idata uint8_t Bes_In_Pair_State[2] = {0}; //״̬־λ + +idata uint8_t Vox_Clear_Pair_Flag[2] = {0}; + +bit Vol_Bes_Addr_Flag = 0; +bit Vor_Bes_Addr_Flag = 0; + +idata uint8_t SN_Num[22] = {0}; //SN룬ҪOTPĹ̶λûȡ + +idata uint8_t SN_Num_Start = 0; //SN뷢ʼλãпǶʱ㡣 + +bit gShip_Mode_Flag = 0; //ģʽ־λ0ػ1ģʽ + +#else + +idata uint8_t Net_Info[2][13] = {0}; + +idata uint8_t MAC_Addr[2][18] = {0}; + +xdata uint8_t Earphone_Vbat[2] = 0; //Զ + +#endif + /******************************************************************************\ Functions definitions \******************************************************************************/ @@ -420,6 +454,9 @@ void Vox_Det_Machine(void) static bit Vox_Chn_Select; static uint8_t Vox_Output_Debounce; + + static uint8_t Vox_Output_Cnt; + static bit CoverEvent_Flg1; if( gBoost_Prepared_Flag ) @@ -577,7 +614,8 @@ void Vox_Det_Machine(void) #elif ZHONGKE HandleTxCommand(VHOUSE_CMD_GET_VBAT,VOL_CHAN); //ָֶͨ - +#elif XUANHENG + HandleTxCommand(CMD_HEARTBEAT,VOL_CHAN); #endif #endif } @@ -592,7 +630,10 @@ void Vox_Det_Machine(void) #elif ZHONGKE HandleTxCommand(VHOUSE_CMD_GET_VBAT,VOR_CHAN); //Ҷָֶͨ - +#elif XUANHENG + + HandleTxCommand(CMD_HEARTBEAT,VOR_CHAN); + #endif #endif @@ -710,24 +751,43 @@ void Vox_Det_Machine(void) if( (Vox_TX_Timer % Vox_TX_Interval_2) == 0 ) //200msһ { #ifdef VOX_TX + #if JIELI + HandleTxCommand(VHOUSE_CMD_CLOSE_BOX,VOL_CHAN); //ָֶͨ + #elif ZHONGKE + HandleTxCommand(VHOUSE_CMD_CLOSE_WINDOW,VOL_CHAN); //ָֶͨ + +#elif XUANHENG + + HandleTxCommand(CMD_HEARTBEAT,VOL_CHAN); + #endif + #endif } else if( (Vox_TX_Timer % Vox_TX_Interval) == 0 ) //200msһ { #ifdef VOX_TX + #if JIELI + HandleTxCommand(VHOUSE_CMD_CLOSE_BOX,VOR_CHAN); //Ҷָֶͨ -#elif ZHONGKE - HandleTxCommand(VHOUSE_CMD_CLOSE_WINDOW,VOR_CHAN); //Ҷָֶͨ -#endif +#elif ZHONGKE + + HandleTxCommand(VHOUSE_CMD_CLOSE_WINDOW,VOR_CHAN); //Ҷָֶͨ + +#elif XUANHENG + + HandleTxCommand(CMD_HEARTBEAT,VOR_CHAN); + #endif + +#endif } Vox_TX_Timer++; @@ -742,24 +802,41 @@ void Vox_Det_Machine(void) #ifdef VOX_TX #if JIELI + HandleTxCommand(VHOUSE_CMD_CLOSE_WIN_GET_VBAT,VOL_CHAN); //ָֶͨ + #elif ZHONGKE - HandleTxCommand(VHOUSE_CMD_PAIR,VOL_CHAN); //ָֶͨ + + HandleTxCommand(VHOUSE_CMD_GET_TWS_BTADDR,VOL_CHAN); //ָֶͨ + +#elif XUANHENG + + HandleTxCommand(CMD_TWS_GET_BTADDR,VOL_CHAN); + #endif -#endif +#endif } else if( (Vox_Output_Debounce % Vox_TX_Interval) == 0 ) //200msһ { #ifdef VOX_TX + #if JIELI HandleTxCommand(VHOUSE_CMD_CLOSE_WIN_GET_VBAT,VOR_CHAN); //Ҷָֶͨ + #elif ZHONGKE - HandleTxCommand(VHOUSE_CMD_PAIR,VOR_CHAN); //Ҷָֶͨ + + HandleTxCommand(VHOUSE_CMD_GET_TWS_BTADDR,VOR_CHAN); //Ҷָֶͨ + +#elif XUANHENG + + HandleTxCommand(CMD_TWS_GET_BTADDR,VOR_CHAN); + +#endif + #endif -#endif } Vox_Output_Debounce++; @@ -827,7 +904,7 @@ void Vox_Det_Machine(void) #endif Vox_Chg_Full_Flag = 1; - Vox_Output_Debounce = 0; + Vox_Output_Cnt = 0; Vox_Voltage_Hold_Timer = 0; @@ -847,23 +924,43 @@ void Vox_Det_Machine(void) } else { - if( Vox_Output_Debounce <= Vox_COM_MSG_Tim ) + if( Vox_Output_Cnt <= Vox_COM_MSG_Tim ) { - if( (Vox_Output_Debounce % Vox_TX_Interval_2) == 0 ) //200msһ + if( (Vox_Output_Cnt % Vox_TX_Interval_2) == 0 ) //200msһ { #ifdef VOX_TX - HandleTxCommand(VHOUSE_CMD_PWROFF,VOL_CHAN); //ָֶͨ + +#if XUANHENG + + HandleTxCommand(CMD_SHUT_DOWN,VOL_CHAN); //ػָֶͨ + +#else + + HandleTxCommand(VHOUSE_CMD_PWROFF,VOL_CHAN); //ػָֶͨ + +#endif + #endif } else - if( (Vox_Output_Debounce % Vox_TX_Interval) == 0 ) //200msһ + if( (Vox_Output_Cnt % Vox_TX_Interval) == 0 ) //200msһ { #ifdef VOX_TX - HandleTxCommand(VHOUSE_CMD_PWROFF,VOR_CHAN); //Ҷָֶͨ + +#if XUANHENG + + HandleTxCommand(CMD_SHUT_DOWN,VOR_CHAN); //Ҷػָֶͨ + +#else + + HandleTxCommand(VHOUSE_CMD_PWROFF,VOR_CHAN); //Ҷػָֶͨ + +#endif + #endif } - Vox_Output_Debounce++; + Vox_Output_Cnt++; } else { @@ -1413,6 +1510,57 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #endif +#if XUANHENG + + /* + ******************************************************************************* + * u16 CalCheckCrc16(u8 * pucFrame, u16 usLen) + * + * Description : У͵ļ + * + * + * Arguments : u8 *pucFrame: ݴŵַ + u16 usLen: ݳ, byteΪλ + + * Returns : + * + * Notes : + * + ******************************************************************************* + */ + + uint16_t CalCheckCrc16(uint8_t *pucFrame, unsigned int usLen) +{ + uint16_t wCRCin = 0x0000; + uint16_t wCPoly = 0x1021; + uint8_t wChar = 0; + unsigned int i; + + while (usLen--) + { + + wChar = *(pucFrame++); + + wCRCin ^= (wChar << 8); + + for(i = 0;i < 8;i++) + { + if(wCRCin & 0x8000) + { + wCRCin = (wCRCin << 1) ^ wCPoly; + } + else + { + wCRCin = wCRCin << 1; + } + } + } + + return (wCRCin); +} + +#else + /* ******************************************************************************* * uint8_t Crc8Maxim(u8 *buf, u8 length) @@ -1450,6 +1598,8 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) } return crc; } + +#endif #ifdef VOX_TX /* @@ -1472,7 +1622,7 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) */ void HandleTxCommand(VOX_BES_COMMAND_E TxCommand, e_Vox_Chan nVox_Chn_Select) { - uint8_t dataLen = 0; + uint16_t dataLen = 0; uint8_t tx_pData[COM0_Data_Lenth] = 0; uint8_t i = 0; @@ -1667,7 +1817,165 @@ void HandleTxCommand(VOX_BES_COMMAND_E TxCommand, e_Vox_Chan nVox_Chn_Select) tx_pData[dataLen] = Crc8Maxim(tx_pData,dataLen); +#elif XUANHENG + + uint16_t Checksum = 0; + + /*ݰͷ*/ + tx_pData[0] = BOXHEADER; + /*ͨ*/ + + tx_pData[1] = nVox_Chn_Select; /*䷽Bit0-3նˣBit4-7Ͷ + 1˫ + 2 + 3PC/װ + 4 + 5Ҷ + */ + /*ָ*/ + tx_pData[2] = TxCommand; + tx_pData[3] = TxCommand >> 8; /*Сģʽֽǰ + Bit0-7 + Bit8-14Ԥ + Bit15: + 0:REQ + 1:ACK + */ + tx_pData[4] = CoverStatus; //غ״̬ + + switch(TxCommand) + { + case CMD_TWS_GET_BTADDR: //ȡMACַ + /*Data Length*/ + tx_pData[5] = 0x00; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; +#ifdef VOX_RX + for(i=0;i<6;i++) + { + BES_Addr[i] = 0; //屾ضַ + } +#endif + break; + + case CMD_TWS_SET_BTADDR: + /*Data Length*/ + tx_pData[5] = 0x0E; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; +#ifdef VOX_RX + for(i=0;i<6;i++) + { + tx_pData[7+i] = BES_Addr[i]; //Ͷַ + } +#endif + for(i=0;i<8;i++) + { + tx_pData[13+i] = Random_Data[i]; // + } + + break; + + case CMD_SHUT_DOWN: + /*Data Length*/ + tx_pData[5] = 0x01; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; + + tx_pData[7] = gShip_Mode_Flag; //ģʽ0ػ1ģʽ + + break; + + case CMD_PAIRING_IMD: //ִTWS + /*Data Length*/ + tx_pData[5] = 0x00; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; + + break; + + case CMD_CLEAR_PAIR: + /*Data Length*/ + tx_pData[5] = 0x00; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; + break; + + case CMD_HEARTBEAT: + /*Data Length*/ + tx_pData[5] = 0x05; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; + /* + data壺 + 1D0D12Bytesɳеİ汾ϢD0ĸ4bitΪӲPCBA汾ţD04bitD1ɳ汾š + 2D21Byteɳеͳ״̬D2bit7ΪǷPG룻D2ĵ7λʾеϢΧ0-100; + 3D31ByteɶԶϢЭеSideϢҶϢ + 4D41ByteĬĬϷ0x00 + */ + tx_pData[7] = HW_VER << 4; + tx_pData[7] = FW_VER >> 8; + tx_pData[8] = FW_VER; + + tx_pData[9] = ( ( ChgStatus & CHG_STA_ING ) << 6 ) | bat_level; + + if(nVox_Chn_Select == VOL_CHAN) + { + tx_pData[10] = Bes_Bet_Level[0]; + } + else + if(nVox_Chn_Select == VOR_CHAN) + { + tx_pData[10] = Bes_Bet_Level[1]; + } + + tx_pData[11] = 0x00; + + break; + + case CMD_SN: //SNϳֶηͣD0ʾڼλʼͣһι̶9BytesһSNݲ9BytesIJ00xff + /*Data Length*/ + tx_pData[5] = 0x0A; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; + + tx_pData[7] = SN_Num_Start; + + for(i=0;i<9;i++) + { + if( (SN_Num_Start + i) > 22 ) + { + tx_pData[8+i] = 0xFF; + } + else + { + tx_pData[8+i] = SN_Num[ SN_Num_Start + i ]; // + } + } + + SN_Num_Start += 9; + + break; + + case CMD_GET_INTO_PAIR: + /*Data Length*/ + tx_pData[5] = 0x01; //Сģʽλǰ2Bytes + tx_pData[6] = 0x00; + + tx_pData[7] = 0x01; //01״̬ + break; + + case BES_RESET: //λpatten + + return; + + default: + break; + } + + dataLen = (uint16_t)( tx_pData[5] | ( tx_pData[6] << 8 ) ) + 7; + + Checksum = CalCheckCrc16( tx_pData, dataLen ); // + + tx_pData[ dataLen ] = Checksum; + + tx_pData[ ++dataLen ] = Checksum >> 8; + #endif + /* vorvolʹuart1зʱͨѶTXģʽ*/ VOX_EN_Type( VOX_COMM_Mode_Uart ); @@ -1844,6 +2152,137 @@ void HandleRxMsg(VOX_BES_COMMAND_E RxCommand) break; } +#elif XUANHENG + + uint8_t CMD_Type = 0; + + CMD_Type = RX1_Buffer[1] >> 4; + if( CMD_Type & TWS_PC ) //PC/װ-> + { + + } + else //-> + { + switch(RxCommand) + { + case CMD_TWS_GET_BTADDR: + + for(i=0;i> 7; //ȡǷ + + Vox_Pairing_State[VOL_TYPE] = RX1_Buffer[10]; //ȡ״̬ + + Tws_Paired_Record[VOL_TYPE] = RX1_Buffer[11] & 0x01; //bit0:0TWSԼ¼1ûTWSԼ¼bit1:0ֻԼ¼1ûкֻԼ¼ + + Phone_Paired_Record[VOL_TYPE] = ( RX1_Buffer[11] >> 1 ) & 0x01; + + Bes_OTA_State[VOL_TYPE] = RX1_Buffer[12]; + } + else + { + Bes_Bet_Level[VOR_TYPE] = RX1_Buffer[9] & 0x7F; + + Bes_Chg_Full[VOR_TYPE] = RX1_Buffer[9] >> 7; + + Vox_Pairing_State[VOR_TYPE] = RX1_Buffer[10]; + + Tws_Paired_Record[VOR_TYPE] = RX1_Buffer[11] & 0x01; + + Phone_Paired_Record[VOR_TYPE] = (RX1_Buffer[11] >> 1) & 0x01; + + Bes_OTA_State[VOR_TYPE] = RX1_Buffer[12]; + } + + break; + + case CMD_SN: + + if( CMD_Type == TWS_VOL ) //ݶSide + { + Bes_Set_SN_State[VOL_TYPE] = RX1_Buffer[7]; //SNдǷɹ״̬־ + } + else + { + Bes_Set_SN_State[VOR_TYPE] = RX1_Buffer[7]; //ҶSNдǷɹ״̬־ + } + + break; + + case CMD_GET_INTO_PAIR: + if( CMD_Type == TWS_VOL ) //ݶSide + { + Bes_In_Pair_State[VOL_TYPE] = RX1_Buffer[7]; //Ƿ״̬ɹ״̬־ + } + else + { + Bes_In_Pair_State[VOR_TYPE] = RX1_Buffer[7]; //ҶǷ״̬ɹ״̬־ + } + + break; + case CMD_PAIRING_IMD: + if( CMD_Type == TWS_VOL ) //ݶSide + { + Bes_In_Pair_State[VOL_TYPE] = 1; //Ƿ״̬ɹ״̬־ + } + else + { + Bes_In_Pair_State[VOR_TYPE] = 1; //ҶǷ״̬ɹ״̬־ + } + + break; + default: + break; + } + } + + #endif } @@ -1865,9 +2304,11 @@ void HandleRxMsg(VOX_BES_COMMAND_E RxCommand) void HandleVoxCommMsg(void) { - uint8_t CrcCheckSum = 0; + uint16_t CrcCheckSum = 0; uint8_t i = 0; - +#if XUANHENG + uint16_t Data_Len = 0; +#endif /*RXݴ*/ if( Uart1_RX_Finish_Flag ) { @@ -1888,10 +2329,26 @@ void HandleVoxCommMsg(void) CrcCheckSum = Crc8Maxim( RX1_Buffer, RX1_Buffer[4] + 5 ); if( CrcCheckSum == RX1_Buffer[ RX1_Buffer[4] + 5 ] ) - + +#elif XUANHENG + + Data_Len = RX1_Buffer[5] | ( RX1_Buffer[6] << 8 ) + 7; + + CrcCheckSum = CalCheckCrc16( RX1_Buffer, Data_Len); // + + if( CrcCheckSum == (uint16_t)(RX1_Buffer[ Data_Len + 1 ] | RX1_Buffer[ Data_Len + 2 ] << 8) ) //УСģʽλǰ + #endif { - HandleRxMsg((VOX_BES_COMMAND_E)RX1_Buffer[3]); +#if XUANHENG + + HandleRxMsg((VOX_BES_COMMAND_E)RX1_Buffer[2]); + +#else + + HandleRxMsg((VOX_BES_COMMAND_E)RX1_Buffer[3]); + +#endif } else {