diff --git a/Out/8835_EVB_250121_1743.bin b/Out/8835_EVB_250121_1743.bin deleted file mode 100644 index 08c6e63..0000000 Binary files a/Out/8835_EVB_250121_1743.bin and /dev/null differ diff --git a/Out/8835_EVB_250121_1743.hex b/Out/8835_EVB_250121_1743.hex deleted file mode 100644 index 0ccbd6a..0000000 --- a/Out/8835_EVB_250121_1743.hex +++ /dev/null @@ -1,921 +0,0 @@ -:03000000022924AE -:1029240075FE7275FF00758E009000007F007E03B7 -:0D293400E4F0A3DFFCDEFA75815C02297C73 -:1033090053797374656D20496E69742E5665723AE6 -:0C3319002532782532782532780D0A0024 -:10308400122F407BFF7A33790990009FE4F0A30468 -:10309400F0A3E4F0A304F0A3E4F0A37402F0120F8D -:0D30A40058D2AED2BE122C4D122EBF80F4B9 -:10000E007857E6FE08E6780222F608EFF6C3EE64AD -:04001E008094802228 -:1032EC0075FE3175FF8175FE0E43FF107DAC7F308E -:0D32FC001234E475FE5990010CE5FFF0223C -:10281500900099EFF0E5A420E00302291875A401C2 -:102825007F351234EB7857760008A6077F361234C9 -:10283500EBEF5403785746F608E6F6900099E04426 -:1028450008FD7F3112310A90010CE0FF3395E0FE5F -:10285500C37858E69FFF18E69EFE3395E0FDFCE43D -:102865007BC47A09F9F81214C5780A121525785728 -:10287500EE1200175005E418F608F690010EE01266 -:10288500156228A30028B20128BB0228CE0328DC44 -:102895000428EA0528F80629070700002918120068 -:1028A5000ECEA2E713CE13D8F8794A80627858E69F -:1028B50025E0795C80447857E6FE08E67803C33363 -:1028C500CE33CED8F97950804612000EC333CE33BD -:1028D500CED8F9795A803812000EC333CE33CED80C -:1028E500F97954802A12000EC333CE33CED8F97944 -:1028F50052801C7858E625E0794CF718E63319F72D -:10290500801112000ECEA2E713CE13D8F8794EF738 -:0F291500EE19F7900099E090010EF075A3812262 -:102DA800E5A430E14075A4027F371234EB785576FC -:102DB8000008A6077F381234EBEF5403785546FE17 -:102DC80008E6FF18EEF608EFF6FF90010CE0FD3379 -:102DD80095E0FCC3EF9DFFEE9CFE1812001750050E -:092DE800E418F608F675A3822236 -:10343000780D7603E4780FF67811F6187603781293 -:03344000760422ED -:10233700E4FE7855E6FC08E6FDC394E8EC94034018 -:10234700037F0022EF700302244FD3ED940FEC9428 -:1023570003400302242DED94CBEC94005003022498 -:102367002DD3ED94AAEC94024022D21F780DE6FFFC -:10237700137810F6302011D3ED94BFEC940240048B -:10238700C22080047810A607E4FE8070D3ED94AADB -:10239700EC94025043ED9437EC9401403BD2207803 -:1023A7000DE6FF7810F6301F13D3ED9493EC9402EB -:1023B7005004C21F8006EFC3137810F67812760414 -:1023C700301A11D3ED9451EC94015004C21A8004D1 -:1023D70078127601E4FE8024D3ED9437EC94015013 -:1023E7001BD21A78127601302010ED9426EC940156 -:1023F7005004C220800478127604E4FE301D11C315 -:10240700ED94F3EC94025006C21DE4FE80027E01B7 -:10241700301E2FD3ED94DDEC94004006C21EE4FE7F -:1024270080207E01801CD3ED940FEC94034006D2EC -:102437001D7E01800DD3ED94CBEC94005004D21E89 -:102447007E01C21BC21C8058C21DC21ED3ED949FC1 -:10245700EC94035031ED9471EC94004029301B103B -:10246700ED9484EC94035006C21BE4FE80027E01C7 -:10247700301C2DD3ED9482EC94004006C21CE4FE80 -:10248700801E7E01801AD3ED949FEC94034004D202 -:102497001B800BC3ED9471EC94005002D21C7E019B -:0224A700AF067E -:0124A9002210 -:102A5600900109E05463600AE4FF1231EDE4780E58 -:102A6600F6227F01122337EF600CE4FF1231EDD21C -:102A760021780E760122C22190010AE05407FFBF99 -:102A86000605780E7603227810E6FD7F2212310ABB -:102A96007812E6FD7F2112310A780FE6C454F078E9 -:102AA6001146FD7F2312310A7F011231ED7814E6BB -:102AB600FFD394014002C23CEFD394034002C238D4 -:102AC600EFD394074002C23AEFD3940C4002C239C6 -:0D2AD600EFD394114002C23B780E7602222D -:102CB600C23E900109E020E65130E203D23F2230C5 -:102CC6003C04E4FF8011900109E030E50D30233A21 -:102CD6007F3C12338F7F0102320FE4FF122337EF5E -:102CE6006008E4FF12320FD23D22C23DD23E303F91 -:102CF60019780EE6B40213C3785CE6941018E694CD -:0B2D06000E4005D23EC23F22C23E221A -:1033A900426F78204F70656E2E0D0A00426F7820AB -:0933B900436C6F73652E0D0A00D0 -:102D5D00E4900099F090010AE0FF5420FE90009954 -:102D6D00F0900110E06E6032EF30E50E90010F74BF -:102D7D0001F07BFF7A3379A9800BE490010FF07B92 -:102D8D00FF7A3379B5120F58D245C20ED22ED230FA -:0A2D9D00900099E0900110F0D2437D -:012DA7002209 -:1026FB00737570706572206C6F6E67203873207005 -:10270B00726573732E286C696E653A2564290D0A00 -:10271B00004B6579206C696674286C696E653A2587 -:10272B0064292E0D0A00426F6F7374204F70656E13 -:10273B00204B65792E286C696E653A2564290D0A44 -:10274B00006C6F6E672032732070726573730D0AA5 -:10275B000073686F72742070726573730D0A004B8F -:10276B006579205061697220545820564F52286C5D -:10277B00696E653A2564292E0D0A004B6579205048 -:10278B006169722054696D654F7574286C696E654B -:10279B003A2564292E0D0A004B6579205061697228 -:1027AB002047657420564F52286C696E653A256434 -:1027BB00292E0D0A004B65792050616972204765FF -:1027CB007420564F4C286C696E653A2564292E0D82 -:1027DB000A004B6579205061697220545820564F7E -:1027EB004C286C696E653A2564292E0D0A004B65E1 -:1027FB0079205061697220436E743A25642E286CDF -:0A280B00696E653A2564290D0A0084 -:103443007BFF90009FE4F0A3227BFF90009F740119 -:03345300F0A322C1 -:101B570090010AE030E4449000F8E475F0011214B3 -:101B67004AC39000F9E094409000F8E094014011D6 -:101B7700D2367A2679FB1234437470F0120F5880EC -:101B870014C39000F9E094509000F8E094004005E9 -:101B9700203502D235D232C233804D303243D24360 -:101BA700E47817F6C232D2339000FAF09000F8E0EA -:101BB700FEA3E0FFD39414EE94005008D231D23440 -:101BC700D230800EC3EF94C8EE9400500530350232 -:101BD700D237C2357A27791C12344374A6F0120F14 -:101BE70058E49000F8F0A3F0303377303E74303784 -:101BF7002D200E08121D8874B9021D3F121DAE500C -:101C070003021D74C23778177602E49000F7F0904C -:101C17000068F0A3F07BFF7A27794C120F58303613 -:101C27002F200E08121D8874E2021D3F121DAE50B0 -:101C370003021D74C236E49000FBF0781776037B2D -:101C4700FF7A2679FB90009FF0A374F7F0120F58E4 -:101C570030340BC2347BFF7A27795C120F58C233BA -:101C6700C20E90010FE064016003021D877817E63A -:101C770064026003021D489000F7E0C39401501608 -:101C87007F02121DA17BFF7A27796A90009F04F0DB -:101C9700A37421021D129000F6E0D394054010E4CE -:101CA700121DBB7A27798612344C7437021D3F9078 -:101CB7000068E0B4011D7D227F031225DA900068D9 -:101CC7007402F07BFF7A2779A390009F14F0A37426 -:101CD7004D8038900068E064027034A3E0601A7F9A -:101CE70003121DA19000F7F09000F6121DBB7A2792 -:101CF70079C012344C746E803F7D227F021225DA40 -:101D07007BFF7A2779DD12344E747EF0120F5890DC -:101D170000F7E0D3941440249000F6E004F0E4A325 -:101D2700F07BFF7A2779F99000F6E0FF123445EF50 -:101D3700F0A37401F0A3748CF0020F589000F780A1 -:101D47002C7817E6640370389000FBE0FFC39464B7 -:101D5700501FEF540770047D22800A9000FBE05467 -:101D67000370077D117F041225DA9000FBE004F071 -:101D770022E47817F6D20F9000FBF07F04122B6055 -:101D8700227F3C12338F7F0112320FD20E7BFF7AF4 -:101D970027793190009FE4F0A3227D111225DAE420 -:101DA700900068F0A3F0227F03122B609000FAE006 -:101DB700D3941422F07817F6D20F7F04122B6022E7 -:102BDA00900099E0FF25E02479F582E43400F5833A -:102BEA0022900099E0FF25E02481F582E43400F583 -:102BFA0083E0FCA3E0FDEF25E02491F582E43400B4 -:102C0A00F5832274712FF582E43400F58322E4F00F -:102C1A00A3F0EF25E02489F582E43400F5832290BD -:102C2A000099E0FF2475F582E43400F58322E0FE82 -:102C3A00A3E0C39DEE9C2225E02481F582E43400C2 -:032C4A00F58322ED -:1030DE0075FE0B75FF0F75FE1375FF0F75FE0C75E4 -:1030EE00FF55E490006FF090006EF0900070F0903D -:0C30FE00006DF0C290C291C293C29222F9 -:10335B00EF14600D14600D14600D2403700BD290EC -:0A336B0022D29122D29222D29322A4 -:05325300900099E0FF6E -:10325800EF14600D14600D14600D2403700BC29000 -:0A32680022C29122C29222C29322D8 -:10302700E4FF122C0DE4F074752F122C30E4F0EF4E -:10303700122BDFE4F0A3F0EF122C41122C18E4F06E -:0E304700A3F0122C00E4F0A3F00FEFB404D4B9 -:013055002258 -:102F0100AC0774712C122C10EDF0EAC313FEEB1315 -:102F1100FFEC122BDFEEF0A3EFF0AF03EC122C412C -:102F2100EAF0A3EFF090009EE0FEA3E0FFEC122C8C -:0F2F31001DEEF0A3EFF0EC122C01E4F0A3F02260 -:10327200122C0DEDF074752F122C30EBF0EF122B97 -:0F328200DFE4F0A37469F0122C00E4F0A3F02253 -:101DC700E4900099F0F0900099E0FFC39404400379 -:101DD700021FBC122C0DE0601F24FE6021146078E6 -:101DE700147003021E9024036003021F6B90009976 -:101DF700E0FF12335B021F6B123253021F6B122B71 -:101E0700DA122BFB122C38500512335B8003123287 -:101E170053122BEB122C385003021F6B900099E0E2 -:101E2700122C01122C18E0FEA3E0D39400EE9400CC -:101E3700400E900099E0122C1D74FFF5F012144A21 -:101E4700900099E0FF122C1DE0FCA3E04C60030218 -:101E57001F6B74712F021EA1122BDA122BFBE0FEEF -:101E6700A3E0D39DEE9C500512335B8003123253DF -:101E7700122BEB122C385003021F6B900099E012C3 -:101E87002C01E4F0A3F0021F6B122C29E07013124F -:101E970033D9C246900099E02471122C10E4F00265 -:101EA7001F6B122C29E0FE6402702E20460CD246CE -:101EB700EF122BDFE4F0A37469F0122BDAE475F06C -:101EC7000112144AEF122BDFE0FCA3E0C394FEECEF -:101ED70094005003021F628031EE64017037204680 -:101EE7000FD246900099E0122BDFE4F0A374FEF0C6 -:101EF700122BDA74FFF5F012144AEF122BDFE0FE13 -:101F0700A3E0D39469EE94005051900099E0122C0D -:101F17002EE4F08046122C29E06403703EEF122B6A -:101F2700DFE0FEA3E0FFC394FEEE94004004D24638 -:101F3700800BD3EF946AEE94005002C2469000994A -:101F4700E025E02479304609122BE374FFF5F08091 -:101F570007122BE3E475F00112144A122BDAA3E0FF -:101F6700FD122DF1900099E0FF700A122C0DE09000 -:101F7700006FF08037900099E0B4010C2471122CA7 -:101F870010E090006EF08024900099E0B4020C24D9 -:101F970071122C10E0900070F08011900099E0B45D -:101FA700030A2471122C10E090006DF0900099E064 -:101FB70004F0021DCDE4900099F0900099E0FFC372 -:101FC70094045012122C00E475F00112144A900088 -:061FD70099E004F080E433 -:011FDD0022E1 -:10337500D2AC759A03D2BCD2BDD2A9D2AB75FE31FF -:0A33850075FF8175FE3043FF8022C2 -:10329100C2ACE4F59AC2BCC2BDC2A9C2AB75FE31D3 -:0F32A10053FF7E75FE3053FF7FFD7F3102310AF0 -:10305600304421302627C226900102E004F0E0C366 -:1030660094054019E4A3F07DAA7F4F12310AE4903B -:0E3076000102F02212329143870212337522BA -:10341C00780EE6D394015006201003304304C243C7 -:04342C00C322D322C2 -:102F4000123325123468123495E4F5861230B1122A -:102F500032EC7D087F761234E4D2A8D2AF1234303E -:102F60007D697F031234061230DE1230271234A33B -:0D2F7000900106740FF09000FF7401F02234 -:030003000234F2D2 -:0634F200D24375E20F3227 -:0B34BE00E0FF04F074292FF8A699220B -:1033250075FE0443FF0CD2DF43878075BA0375AA87 -:0B333500DC759852D299D298D2AC22DD -:062E37009000BD121559C8 -:102E3D00E49000C0F075FE0443FF0C75FE0353FFD4 -:102E4D00F3F09000C0E0C39FE49E501C2040FDD2E3 -:102E5D00409000BDE475F001121542121348F5992A -:0E2E6D009000C0E004F080DA75FE0453FFF31D -:012E7B002234 -:030023000229C1EE -:1029C100C0E0C083C082C0D075D000C000C005C0C7 -:1029D10006C007309904C299C240309867C298D2A4 -:1029E10043900111E014601914602D24027055E523 -:1029F10099900111B455087401F0A3E4F0800E80A0 -:102A010011E599900111B4AA097402F0A31234BE20 -:102A11008032E4F0A3F0802C9001121234BE782DA4 -:102A2100E62406FFE433FEE0FDC39FEE6480F87404 -:102A310080985005ED9420400B900112E4F0900134 -:102A410011F0D242D007D006D005D000D0D0D0822C -:052A5100D083D0E0324B -:0E3487009000C4EFF01234D49000C4E0FF2295 -:1034680075F10A759F03759EFD759692759A0222ED -:0834D4002041FDD2418F972237 -:03008B000233C27B -:1033C200C0E0E59630E1055396FDC241E59630E056 -:0733D200035396FED0E03228 -:1024AA00506F776572204F6E2053746174652148AE -:1024BA00616C6C28307825782920286C696E653A19 -:1024CA002564290D0A004177616B65205374617494 -:1024DA006520286C696E653A2564290D0A004E6FDD -:1024EA00726D616C20537461746520286C696E6525 -:1024FA003A2564290D0A00536C656570205374618E -:10250A00746520286C696E653A2564290D0A0053A2 -:10251A005441303A307825782C535441313A307846 -:10252A0025782C535441323A307825782C436869FF -:10253A00705F5354413A307825782C564F585F5380 -:10254A0054413A307825782E4465635F536C65654B -:10255A00703A25640D0A00566E74633A25642C4954 -:10256A00766F6C3A25642C566261743A25642C564F -:10257A00696E3A25642C56706D69643A25642C5646 -:10258A006F723A25642C566F6C3A25642C56646433 -:10259A003A25642C49766F723A25642E0D0A004456 -:1025AA0065636E745F536C65657044656C61792010 -:1025BA0052656C6F61642E0D0A00456E7465722057 -:1025CA005374616E646279204D6F6465210D0A004F -:062FF2004300FF0402028F -:102FBA00E6FF08A3E6CFF0A3EFF0227BFFE0900044 -:102FCA009FFFE4F0A3EFF02290009EE4F0A37403C5 -:102FDA00F07B647A007D02227BFF90009FE4F0A3DD -:082FEA0022FFE4F0A3EFF02246 -:1033F00090010DE0FF04F012281590010DE0C39438 -:06340000084002E4F02286 -:1032B000122D5D121B57122D11302211C222122A1B -:0E32C00056122CB6122AE31218861215882216 -:090082007B017A017907020026D6 -:10219A00E4900099F09000FFE0FFA3E0FE6F606C0E -:1021AA00A3EEF09000FFE0A3F024FE602F14603C41 -:1021BA0014604A24036003022336122FD2E4FF126A -:1021CA002F01122FD27F01122F017A2479AA9001AE -:1021DA000F122FC5A3E4F0A374BB802C7F01123227 -:1021EA00317A2479D0122FE274C7801C90010674C8 -:1021FA000FF07A2479E8122FE274D4800B7BFF7AED -:10220A00257901122FE474DFF0022301900100E026 -:10221A0024FE603914603D147003022319240360FC -:10222A00030223369000FCE004F0E0C39408500354 -:10223A000223369000FF7402F0E49000FCF0781458 -:10224A00E660030223369000FF7404F0229000FF38 -:10225A007403F022202603022336C2267A2579192E -:10226A00900107122FC5900108E09000A1122FCB10 -:10227A00900109E09000A3122FEB90010AE0900070 -:10228A00A5122FEB90010BE0FF9000A7E4F0A3EF5B -:10229A00F0900106E0FF9000A9E4F0A3EFF0120F1E -:1022AA00587BFF7A2579617855E6FF0890009F12DE -:1022BA002FBE7849122FBA785B122FBA784F122F95 -:1022CA00BA7859122FBA7853122FBA7851122FBAF4 -:1022DA00784B122FBA784D122FBA120F5890010666 -:1022EA00E0D394004014E014F0304340C243740F2A -:1022FA00F07BFF7A2579A9020F587BFF7A2579C4EA -:10230A00120F589000FF7404F0E4900102F02212B8 -:10231A00341C50127F04122B60E4FF12320FE4FFC8 -:0C232A001232310230569000FF7402F0B5 -:012336002284 -:102EBF00302536C2259000FDE0FF04F0EF146012BC -:102ECF001460141460161460182404701C1233F06C -:102EDF0080171200828012122DA8800D1232B0803E -:102EEF000812219AE49000FDF0302705C227121D29 -:022EFF00C722E8 -:10008E00426F6F7374204F70656E2E286C696E65AB -:10009E003A2564290D0A00426F7820436C6F736510 -:1000AE002E286C696E653A2564290D0A00426F7818 -:1000BE00204F70656E2E286C696E653A2564290D89 -:1000CE000A004F70656E2F436C6F736520426F7818 -:1000DE002C45617270686F6E657320496E20426F99 -:1000EE0078284E756D3A25642928566F78537461B9 -:1000FE003A30782578292E0D0A004F70656E204211 -:10010E006F7820434D44205458204F7665722E0D43 -:10011E000A004F70656E20426F7820416E64204554 -:10012E00617270686F6E6520476574496E284E75F2 -:10013E006D3A25642928566F785374613A307825C4 -:10014E0078292E0D0A00436C6F736520426F78205C -:10015E00416E6420466F72636520566F6C746167E2 -:10016E00652055702E0D0A2000564F5820566F757B -:10017E007420355628564F585F5354413A307825DF -:10018E00782C6C696E653A2564292E0D0A00564F3F -:10019E0058204348472046756C6C2E0D0A00564F6A -:1001AE00582047657420496E746F20536C656570D6 -:1001BE002E0D0A00466F6C6C6F772043484720491E -:1001CE006E697453746120536574204D61782056A6 -:1001DE00706D69642E28566F785F7374613A30784B -:1001EE00257829286C696E653A2564290D0A004622 -:1001FE006F6C6C6F772043484720496E6974537457 -:10020E00612E28566F785F7374613A30782578299D -:10021E00286C696E653A2564290D0A00466F6C6C70 -:10022E006F772043484720537461312C4E6F204521 -:10023E00617250686F6E6520496E20426F782E286D -:10024E006C696E653A2564290D0A00466F6C6C6FF9 -:10025E00772043484720537461312C564F52204328 -:10026E006867696E672849766F723A25646D412911 -:10027E002E286C696E653A2564290D0A00466F6C4E -:10028E006C6F772043484720537461312C564F4C86 -:10029E0020436867696E672849766F6C3A25646DEE -:1002AE0041292E286C696E653A2564290D0A00468F -:1002BE006F6C6C6F772043484720537461322C4724 -:1002CE0065742049564F523A25646D412E286C694B -:1002DE006E653A2564290D0A00466F6C6C6F7720A7 -:1002EE0043484720537461322C4765742049564F5A -:1002FE004C3A25646D412E286C696E653A25642949 -:10030E000D0A00466F6C6C6F77204348472053747C -:10031E0061332C564F5820436867205265496E69E9 -:10032E00742E286C696E653A2564290D0A00466F95 -:10033E006C6C6F77204348472053746133284356C3 -:10034E00292C564F522056706D69642041646453B7 -:10035E0074612849766F723A25646D41292E286C96 -:10036E00696E653A2564290D0A00466F6C6C6F77CD -:10037E00204348472053746133284356292C564F47 -:10038E00522056706D69642053756253746128490A -:10039E00766F723A25646D41292E286C696E653A26 -:1003AE002564290D0A00466F6C6C6F772043484711 -:1003BE002053746133284343292C564F52205670D4 -:1003CE006D6964205375625374612849766F723A71 -:1003DE0025646D41292E286C696E653A2564290DB8 -:1003EE000A00466F6C6C6F77204348472053746148 -:1003FE0033284343292C564F522056706D69642082 -:10040E004164645374612849766F723A25646D4174 -:10041E00292E286C696E653A2564290D0A00466FEF -:10042E006C6C6F77204348472053746133284356D2 -:10043E00292C564F4C2056706D69642041646453CC -:10044E0074612849766F6C3A25646D41292E286CAB -:10045E00696E653A2564290D0A00466F6C6C6F77DC -:10046E00204348472053746133284356292C564F56 -:10047E004C2056706D69642053756253746128491F -:10048E00766F6C3A25646D41292E286C696E653A3B -:10049E002564290D0A00466F6C6C6F772043484720 -:1004AE002053746133284343292C564F4C205670E9 -:1004BE006D6964205375625374612849766F6C3A86 -:1004CE0025646D41292E286C696E653A2564290DC7 -:1004DE000A00466F6C6C6F77204348472053746157 -:1004EE0033284343292C564F4C2056706D69642097 -:1004FE004164645374612849766F6C3A25646D418A -:10050E00292E286C696E653A2564290D0A00466FFE -:10051E006C6C6F772043484720537461342C564FD0 -:10052E00782056706D696420416464537461285656 -:10053E006F75743A307825782C49766F6C3A25644D -:10054E006D412C49766F723A25646D4129286C698C -:10055E006E653A2564292E0D0A00466F6C6C6F7716 -:10056E002043484720537461342C564F78204368FB -:10057E00696E6728566F75743A307825782C4976EF -:10058E006F6C3A25646D412C49766F723A25646D15 -:10059E004129286C696E653A2564292E0D0A00469C -:1005AE006F6C6C6F772043484720537461342C5620 -:1005BE004F522056706D69642041646453746128F3 -:1005CE00566F75743A307825782C49766F723A25C5 -:1005DE00646D4129286C696E653A2564292E0D0AD1 -:1005EE0000466F6C6C6F772043484720537461341C -:1005FE002C564F52204368696E6728566F75743AB1 -:10060E00307825782C49766F723A25646D41292809 -:10061E006C696E653A2564292E0D0A00466F6C6C66 -:10062E006F772043484720537461342C564F4C202B -:10063E0056706D69642041646453746128566F75F9 -:10064E00743A307825782C49766F6C3A25646D4172 -:10065E0029286C696E653A2564292E0D0A00466FAD -:10066E006C6C6F772043484720537461342C564F7F -:10067E004C204368696E6728566F75743A3078253A -:10068E00782C49766F6C3A25646D4129286C696E19 -:10069E00653A2564292E0D0A00466F6C6C6F772023 -:1006AE00434847205375625374612C564F4C2F5656 -:1006BE004F52286C696E653A2564292E0D0A004644 -:1006CE006F6C6C6F7720434847205375625374618B -:1006DE002C564F52286C696E653A2564292E0D0AE8 -:1006EE0000466F6C6C6F77204348472053756253FA -:1006FE0074612C564F4C286C696E653A2564292E10 -:10070E000D0A00466F6C6C6F772043484720537577 -:10071E00625374612C285354413A307825782C5604 -:10072E00706D69643A3078257829286C696E653A5F -:10073E002564290D0A00466F6C6C6F77204348477D -:10074E00204164645374612C285354413A30782507 -:10075E00782C56706D69643A3078257829286C6942 -:10076E006E653A2564290D0A005258305F4275664F -:10077E006665725B305D3A307825782C5258305F62 -:10078E004275666665725B315D3A307825782C521B -:10079E0058305F4275666665725B325D3A30782519 -:1007AE00782C5258305F4275666665725B335D3ADF -:1007BE00307825782C5258305F4275666665725BCC -:1007CE00345D3A307825782C5258305F4275666623 -:1007DE0065725B355D3A307825782C5258305F4221 -:1007EE0075666665725B365D3A307825782C5258A0 -:1007FE00305F4275666665725B375D3A3078257894 -:10080E002C6C696E653A25640D0A0000000000002C -:10081E0000000000000000000000000000000000CA -:0B082E000000000000000000000000BF -:101FDE0090002674011213D3740290006BF09000DF -:101FEE0099021539900050121460FFE5F090009F91 -:101FFE00F0EFA3F0A37404F0A322E6FFEEF0A3EF3C -:10200E00F008E6FFA3EEF0A3EFF008E6FFA3EEF074 -:10201E00A3EFF008E6FFA3EEF0A3EFF02290001A74 -:10202E0012136190009FFFE4F0A3EFF0229000489E -:10203E00121460900050FFAEF00214607849E6FF73 -:10204E0008E6A3CFF0A3EFF0784DE6FF08E6A3CFA6 -:10205E00229000261213D390001A0213617BFF9078 -:10206E00009F7405F0A32290002E8FF0021498901A -:10207E000026121460FFAEF090002E021460FF9046 -:10208E0000A1E4F0A3EFF0A37405F0A3227BFF9070 -:10209E00009F7402F0A32290010BE0540CFBE4FAB3 -:1020AE00F9F8900000E0FFE4FCFDFEC3021514EE0B -:1020BE008FF090005002149890004C121460D3FFD1 -:1020CE00ED9FEC95F022900028021361900034E40D -:1020DE001213D3E49000230213D390001AEF1213BD -:1020EE00D390006B229000390213617BFF90009F0A -:1020FE007404F022E6FC08E6FD25E0FFEC338FF0D9 -:10210E001214987BFF2290010BE0540C22E49000F5 -:10211E0007F0A322EE8FF01214987D051213F5EF3F -:10212E0078022274019000370213D3C3FDACF09FE6 -:10213E00EC9E22E4FCFDFEFAF9F8C3021514784D6C -:10214E00E6FE08E6FF2290010BE05410FFE4FCFDD2 -:10215E00EF2274011213D37BFF22E0FF90009FE465 -:10216E00F0A32290003FF0A3F090006BF0227BFFD3 -:10217E0090010BE02290010BE05420FFE4FC229032 -:0C218E000007E09400229000340213616E -:052B60009000BDEFF044 -:102B6500E4A3F0A3F07F27122F7D9000BEEFF07F46 -:102B750037122F7D9000BFEFF09000BDE024FD607F -:102B85001B14602424FE6028240570359000BFE0E6 -:102B95004494F09000BEE04498F080259000BEE09B -:102BA5004406F054E7F080199000BFE054FD800919 -:102BB5009000BFE04402F054FEF09000BEE054E106 -:102BC500F09000BEE0FD7F2712310A9000BFE0FDC6 -:052BD5007F3702310A08 -:10158800900109E054186003D20D22C20D203E03D9 -:1015980002185030456F200E1A1218797BFF7A0016 -:1015A800798E90009F7401F0A374D7F0120F587FC2 -:1015B800038065E4900003F0900001F0A3F0C200FE -:1015C800C201D20B90010FE07022C22FD202D203C7 -:1015D800C205C208C204C209C20AD210C2471221F7 -:1015E800717A0079A512209B74088011C202C20387 -:1015F800D205C2067A0079BB12209B7415F0120F2F -:1016080058C20EC245900001E0C39405500302176A -:10161800DD300B07C20B7F04022B6020003BD20099 -:10162800122114FF60147B0C1221419000437005B5 -:101638007402F0800A7401F08005E4900043F07BA6 -:10164800FF7A0079D0900043E012203190010BE03E -:101658009000A1122034120F582005030216FF90A3 -:101668000002E0C39405500A7F06122B6090000226 -:101678008027200144900003E0FFD39414501FEF0B -:10168800540370047D118009900003E020E0077D79 -:10169800227F091225DA900003E004F080597F04C4 -:1016A800122B60E4900003F0D201D20FC2107BFF2E -:1016B8007A017908120F58803E7817E67039300F92 -:1016C80004C20F802B1220A5602D90010BE0FF545F -:1016D8000C6004D22FD2307BFF7A0179209000432E -:1016E800E0FD12216AEDF0A3E4F0A3EFF0120F5829 -:1016F800122114900000F020020302184D30473BDD -:10170800200E16121879D210E4122171900001F0FF -:10171800C208D20BC200D204227F03122B607BFFC7 -:101728007A017954120F58C20ED203900001E0D307 -:10173800940350030217DDC247805020044D9000E7 -:1017480002E0FFD39414501DEF540370047D118000 -:1017580009900002E020E0077D227F081225DA9038 -:1017680000020217DD900003E0FFD39414501CEF31 -:10177800540370047D118009900003E020E0077D88 -:10178800227F0A1225DA900003804A30031F7F0364 -:10179800122B607A01797712217C122031A374030D -:1017A800F0A37438F0120F58C20302184D200857DE -:1017B80090010BE05430FF7B30122141600E122162 -:1017C80014FFE4FCFDFEEF600330382A900001E0CE -:1017D800D394285004E004F0227BFF7A01799C120C -:1017E8000F58D208E4900004F0900001F0C2097F7D -:1017F80004122B60804F900040E070497B017A0012 -:101808007923120839803E900004E0FFD3941450E5 -:101818001FEF540370047D118009900004E020E05C -:10182800077D227F051225DA900004E004F0801578 -:10183800200912D2097F04122B60C2107BFF7A01A3 -:1018480079AC120F58C20722200711D2077F041261 -:101858002B60C210122114900000F0221220A56003 -:101868000F122114FF6004D22FD230900000EFF045 -:0E187800227F3C12338F7F0112320FD20E22DC -:0608390090009912155910 -:10083F0090006BE014700302091E1470030209E7A5 -:10084F00147003020A51147003020C0C2404600389 -:10085F00020D52121FEC90001D1213616003020D66 -:10086F005290006CE0D3940A5035E004F090001AD7 -:10087F00743C1213D3300C03020D52121FEC1220D2 -:10088F0065FF12338F7A0179C212217C122031A3B6 -:10089F007403F0A374D8F0120F58D20C020D52E467 -:1008AF0090006CF0C20C121FECE412213390002662 -:1008BF00E41213D31220DA900032E41213D3900013 -:1008CF0021E41213D3900039E41213D3900028E4DB -:1008DF001213D3E4F5F01220C090002EE4F5F012BD -:1008EF001498900019E41213D390001B743C12203B -:1008FF00EC7401F012211BF07BFF7A0179FD90015E -:10090F000BE0122031A37403F0A374FF020AA59029 -:10091F00010BE0FB5420FFE4FCFDFEEF6023EB54E2 -:10092F0010FF601D121FEC90001D74011213D3E411 -:10093F0090006BF07A02792A1220F9A3740E020A42 -:10094F00A5122183EF703B12214C121FEC90004433 -:10095F00122122C333CE33CED8F9FF121FEC9000F1 -:10096F0048EE8FF0121498784D90004C1221027AB5 -:10097F0002795990009FECF0ED122000741CF012D8 -:10098F000F5812215470407849E6FE08E6FF121FF7 -:10099F00EC900022122122C333CE33CED8F9FF12AE -:1009AF001FEC900026EE8FF0121498784990002AD1 -:1009BF001221027A02798B90009FECF0A3ED1220A6 -:1009CF00017429F0120F58121FEC90001C740112C1 -:1009DF0020EC7402F0020D52D3900008E09405123F -:1009EF00218D5003020A5D12211BF0122183FDEFAE -:1009FF00701D12214C121FEC1220BD9000391221D4 -:100A0F00607A0279BDEE121FFB7445F0120F581277 -:100A1F00215470257849E6FE08E6FF121FECEE120E -:100A2F0020759000281221607A0279E790009FEEDE -:100A3F00121FFE744FF0120F5890006B7403F002E8 -:100A4F000D52D3900008E0940212218D500AE475E4 -:100A5F00F00112144A020D5212211B121FEB9000CB -:100A6F004C12203ED39FE5F09E5016121FEC9000C3 -:100A7F002A12146090002E122044D39FE5F09E405E -:100A8F0019E4121FE890001CE41213D37A037911B2 -:100A9F001220F9A37469F0020D4F121FEC1220F30C -:100AAF0064016003020B56900050121460D394142B -:100ABF00E5F09400504D90010BE030E529900037A0 -:100ACF007401122062C3943C400A121FEC9000394B -:100ADF00E41213D3121FEC121FF2747BF07BFF7A18 -:100AEF0003793C020B53121FEC9000347401121364 -:100AFF00D3121FEC121FF27482F07BFF7A03797806 -:100B0F00020B53121FEC12203BD39FE5F09E900077 -:100B1F0099401C12153990003474011213D3121F0F -:100B2F00EC121FF2748CF07BFF7A0379B4801512EC -:100B3F001539122131121FEC121FF27493F07BFF43 -:100B4F007A0379F0120F58121FEC1220D46401604F -:100B5F0003020D52122086D39414E5F09400504DE9 -:100B6F0090010BE030E429740112205FC3943C40E4 -:100B7F000A121FEC900028E41213D3121FEC9000FE -:100B8F002E121FF574A6F07BFF7A04792C020D4FFD -:100B9F00121FEC74011220E2121FEC90002E121F94 -:100BAF00F574ADF07BFF7A047968020D4F121FECDC -:100BBF0012207DD39FE5F09E9000994020121539A9 -:100BCF0090002374011213D3121FEC90002E121FEA -:100BDF00F574B7F07BFF7A0479A4020D4F12153923 -:100BEF0090002674011213D3121FEC90002E121FC7 -:100BFF00F574BEF07BFF7A0479E0020D4FD39000BD -:100C0F0008E0941412218D501DE475F00112144A5E -:100C1F0012214C121FEC1220BD7849E6FF08E6CFD7 -:100C2F00122075020D5212211B121FEB1220F364BA -:100C3F000170631220D46401705C12203B122139C1 -:100C4F004008121FEC1220C64034121FEC12207DF8 -:100C5F00122139400B121FEC90002A1220C9401E9E -:100C6F00121FEC122131121FDE12202B12204A12FA -:100C7F001FFE74E5F07BFF7A05791C020D4F121FE2 -:100C8F00EC12202B12204A121FFE74ECF07BFF7A1D -:100C9F00057968020D4F121FEC1220F364017048A2 -:100CAF0012203B1221394008121FEC1220C6401CA3 -:100CBF00121FEC900037121FE112202B1220561238 -:100CCF001FFE74FFF0FB7A0579AD8019121FEC122D -:100CDF00202B122056F0A3EFF07405A3F0A3F07BA6 -:100CEF00FF7A0579EF120F58121FEC1220D464010E -:100CFF00705190002A122080D312213A500F121FE8 -:100D0F00EC900026121460C31220CD501C121FEC61 -:100D1F00121FDE12202B78491220581220917413C3 -:100D2F00F07BFF7A06792A8017121FEC12202B789E -:100D3F00491220581220917419F07BFF7A06796CB2 -:100D4F00120F58121FEC1220F3FF6401600A1220D9 -:100D5F00D464016003020ED7122194FE6401600D6A -:100D6F0090002312136164016003020E63EF6401AC -:100D7F0070251220D4B4011FEEB4011B122194B4BC -:100D8F00011590001474011213D37A0679A712205B -:100D9F006B7431F0120F58121FEC1220F3640170B4 -:100DAF001E1220D470191221946401703C9000140B -:100DBF00041213D37A0679CD12206B743B8026125E -:100DCF001FEC1220F370221220D4B4011C900023C8 -:100DDF00121361B401139000141221607A0679EF97 -:100DEF0012206D7446F0120F58121FEC1220DA9079 -:100DFF00001412136164016003020EEC121FEC1257 -:100E0F002065D39400400890001A74FE12138E9040 -:100E1F000019121361FF122065D39F500B121FECA4 -:100E2F001220E87404F0800690006B7402F0122117 -:100E3F001B121FEB900014E41220EC122168EF122A -:100E4F001FEB12206512208C7465F07BFF7A0779F7 -:100E5F0011020ECA121FEC90003712136164016069 -:100E6F000A90002612136164017072900037E41229 -:100E7F0013D3E412205FC3943C500B121FEC90006D -:100E8F001A740212138E7404121FE890001B1213AF -:100E9F0061FF122065C39F4009121FEC1220E874F6 -:100EAF0001F090006B122168EF121FEB12206512F8 -:100EBF00208C7482F07BFF7A077944120F58121F2F -:100ECF00EC122065FF02338F90006BE0D394024049 -:0D0EDF000CE4121FEB90001D74011213D3E0 -:010EEC0022E3 -:0B2E7C009000BD1215599000C0EDF051 -:102E8700E4FE9000C0E0FD14F0ED60299000BDE481 -:102E970075F0011215421213486EFEE4FFEFC3945A -:102EA7000850DFEE30E007C313648CFE8004EEC3E6 -:072EB70013FE0F80E8AF06D7 -:012EBE0022F1 -:0825DA00900099EFF0A3EDF071 -:1025E200E4A3F0A3F0789D7C007D017BFF7A08795B -:1025F20019FE7F2012132290009D7455F0A374AA35 -:10260200F0A374FFF090009AE09000A2F09000997D -:10261200E09000A0F0121562263601266D022652C5 -:1026220003266D04266D05266D0826360926360A10 -:10263200000026739000A17403F0780EE65402C4E1 -:10264200333354C07814469000A3F0E4A3F0802101 -:10265200E4FF74292FF8E6FE749D2FF582E434001E -:10266200F583EEF00FEFB420E980069000A174012B -:10267200F09000A1E02405FFE43390009BF0A3EF6B -:10268200F07B017A00799DFD122E7C90009BE0FC8C -:10269200A3E0249DF58274003CF583EFF07F0112E4 -:1026A2002B6090009AE0FFB4220B75FE0E53FFF0F0 -:1026B20043FF08800DEFB4110975FE0E53FFF0437E -:1026C200FF0190009CE02402FF90009BE03400FE9A -:1026D2007B017A00799D122E3790009AE0FFB42296 -:1026E2000A75FE0353FFF343FF0822EFB411097585 -:0826F200FE0353FFF343FF0454 -:0126FA0022BD -:1032CE00E490009AF0EF24FD60028011782EE6B4AF -:0D32DE00110590006880039000697401F0F4 -:0132EB0022C0 -:102D1100E4FE900099F0304242C2427BFF7A07798B -:102D210077782990009F12200808A3122008A37425 -:102D310008F0A374B1F0120F587B007A007929785A -:102D41002DE62405FD122E7C7E00782DE6242EF83A -:0B2D5100E6B50707782CE6FF1232CE33 -:012D5C002254 -:102FF800602A00C50BB80BEA0C1C0C800CB20CE460 -:103008000D160D480D7A0DAC0E100E420E740EA65C -:0E3018000ED80F0A0F3C0F870FD2101D106844 -:102AE300E4FFEF25E024C5F582E43400F583E0FC40 -:102AF300A3E0D3785C96EC189650050FEFB415E27B -:102B03007814E6FEEFD39E4004180680037813166C -:102B130090010AE030E3047814A6077813E6FED3A5 -:102B230094C85006EEC3940A50077814A607187683 -:102B3300697814E6FFD394005002D23CEFD394019A -:102B43005002D238EFD394055002D23AEFD3940A0D -:0C2B53005002D239EFD3940F5002D23B55 -:012B5F002253 -:102C4D009000F4E06062E4F0D2249000F2E004F031 -:102C5D00E0C394054004E4F0D2259000F5E004F0C3 -:102C6D00E0C3940A4004E4F0D2279000EFE475F03D -:102C7D000112144AC39000F0E094649000EFE094C8 -:102C8D00004006E4F0A3F0D2229000F1E004F0E061 -:102C9D00C394FA4013E4F0D2239000F3E004F0E083 -:092CAD0094044004E4F0D2262254 -:03000B000231625D -:10316200C0E0C083C082C0D074FC258CF58C74662C -:10317200258AF58A9000F47401F0D0D0D082D083F1 -:03318200D0E03268 -:0E349500758901758CFC758A66D2A9D28C22CD -:0D34B10075FE0FEF25E0FE7403A80608224B -:1033D9001234B18002C333D8FCF452FFEFB40406AF -:0733E90075FE0FE4F5FF2261 -:1034060075FE11EF5407F5FF75FE12AF058FFF75B8 -:06341600FE1075FF01220B -:102DF1001234B18002C333D8FCF452FF7401A80627 -:102E0100088002C333D8FC42FF75FE0B7401A8078A -:102E1100088002C333D8FC42FFEF70038DCE22EF4E -:102E2100B401038DCF22EFB402038DDE22EFB40390 -:062E310004AF058FDF2253 -:033FFD00010102BD -:1030B100D28075FE0443FF0175FE0343FF0175FED7 -:1030C1000243FF01D28175FE0443FF0275FE0343F3 -:0D30D100FF0275FE0243FF02781576012212 -:0C345600C280123462D281123462D28033 -:05346200E4FF0FDFFE96 -:013467002242 -:10334000D281D2801234622081037F0022C2811296 -:0B33500034623081037F00227F0122E5 -:0F347800C280C28112345DD2811234620234628A -:0834DC00123456C28002346272 -:0B34C900123456123462C280023462DA -:0231CB00AE074D -:1031CD007D08AF051DEF6015C280EE30E704D2819A -:0F31DD008002C281EE25E0FE12345D80E5C280E3 -:0131EC0022C0 -:103185007E08E4FDD281AF061EEF6012ED25E0FD5D -:10319500C28012345D3081EEED4401FD80E8C280CD -:0231A500AF0574 -:0131A7002205 -:0E34A3007D087F3512310A7D0A7F760234E4FF -:100026009000991215597F1012006EEF1213C17FBE -:100036001112006E900001EF1213D37F1212007896 -:10004600900002EF1213D37F13120078900003EF93 -:100056001213D37F14122F7D900099121539900038 -:1000660004EF1213D37F0022122F7D9000991215F0 -:0C0076003922122F7D90009912153922BA -:0531ED00900099EFF0D5 -:1031F200E47F20122F7D900099E06006EF4401FFEA -:0D3202008004EF54FEFFAD077F2002310A6B -:05320F0090009AEFF0B1 -:10321400E47F27122F7D90009AE06006EF4401FFBF -:0D3224008004EF54FEFFAD077F2702310A42 -:05338F0090009CEFF02E -:10339400E47F25122F7DEF54C0FF90009CE04FFD89 -:0533A4007F2502310A43 -:0532310090009AEFF08F -:10323600E47F20122F7D90009AE06006EF54FBFF9A -:0D3246008004EF4404FFAD077F2002310A31 -:0734E4008FFEAF058FFF22F0 -:0634EB008FFEAEFFAF06EC -:0134F10022B8 -:10310A009000C0EFF0A3EDF01233407F0C1231CBE8 -:10311A001234C99000C0E0FF1231CB1234C99000BA -:0C312A00C1E0FF1231CB1234C90234782E -:052F7D009000C0EFF020 -:102F8200E4A3F01233407F0C1231CB1234C990000B -:102F9200C0E0FF1231CB1234C91233407F0D12311F -:102FA200CB1234C91231859000C1EFF01234DC1219 -:072FB20034789000C1E0FF3C -:012FB90022F5 -:1031360090009EE4F0A3740AF07B147A007D0222CC -:1031460090006FF090006EF0900070F090006DF0BF -:0C31560022F0E490009EF0A3F0FBFA22AF -:1031A800E4FB7D04FF123272E4FB7D047F011232DE -:1031B80072E4FB7D047F02123272E4FB7D047F031C -:0331C8000232725E -:1018860030301BC230E4900113F07813F6121AF3CD -:10189600FD7F03122F017402123146D2432220210A -:1018A60006203D03300D64202A05D22AD23022902C -:1018B600006FE06402600E123136E4FF122F0190D1 -:1018C600006F7403F090006EE06402600E12313611 -:1018D6007F01122F0190006E7403F0900070E06497 -:1018E60002600E1231367F02122F019000707403CF -:1018F600F090006DE064027003021ABD1231367F6B -:1019060003122F0190006D7403F022302A0CC22AB4 -:10191600C22CC22BC22EC22FD247780EE6FF70030E -:101926000219E364037020202C07D22CC22B02314B -:10193600A8E490009E121ABE7D017F03122F017447 -:10194600011231460219DA202B0DD22BC22CD230CD -:10195600E4900114F0807D900113E0C3940150558A -:10196600E004F0A3E014601A146027146034240322 -:10197600706290006FE06404605A7B017D04E4FFAE -:10198600802E90006EE06404604A7B017D047F0136 -:10199600801E900070E06404603A7B017D047F0243 -:1019A600800E90006DE06404602A7B017D047F0355 -:1019B600123272801F900113E0C3940F5005E004A9 -:1019C600F08011E4900113F0A3E004F0E0C3940466 -:1019D6004002E4F0C22EC22FC231D22D22302B0A91 -:1019E600C22B1231A8D230D24722202E0C202D092C -:1019F600202F06203103021ABD900113E0FFC39485 -:101A0600015004E004F022EFC394644003021AA8D4 -:101A1600900113E004F0303A3090006FE0640370F8 -:101A260003021ABDE490009EF0A3F07B64FA7D03E6 -:101A3600FF122F0190006F7404123157FD7F0112BF -:101A46002F0190006E7402800F30391CE490009EC6 -:101A5600121B28121B437401123157FD7F02122FED -:101A6600019000707402801EE490009E303B2712A5 -:101A76001B28121B4374011231577D017F02122F5E -:101A8600019000707401123157FD7F03122F0190EF -:101A9600006D7402F022121ABE7D01121B4E7401F3 -:101AA6008012C22EC22DC22FC231E4121AF3FD12C9 -:071AB6001B4E7402123149BE -:101ABD0022F0A3F0FBFA7D01FF122F01E490009EAE -:101ACD00F0A3F0FBFA7D017F01122F01E490009E3F -:101ADD00F0A3F0FBFA7D017F02122F01E490009E2E -:101AED00F0A3F0FBFA2290009EF0A3F0FBFAFDFFAD -:101AFD00122F01E490009EF0A3F0FBFAFD7F01127E -:101B0D002F01E490009EF0A3F0FBFAFD7F02122F4F -:101B1D0001E490009EF0A3F0FBFA22F0A3F0FBFA93 -:101B2D007D01FF122F0190006F7401F0E490009E73 -:101B3D00F0A3F0FBFA227D017F01122F0190006EC0 -:0A1B4D00227F03122F0190006F2287 -:10294100023084E493A3F8E493A34003F68001F2F8 -:1029510008DFF48029E493A3F85407240CC8C33397 -:10296100C4540F4420C8834004F456800146F6DF66 -:10297100E4800B0102040810204080902FF2E47ED5 -:10298100019360BCA3FF543F30E509541FFEE4935B -:10299100A360010ECF54C025E060A840B8E493A322 -:1029A100FAE493A3F8E493A3C8C582C8CAC583CA4D -:1029B100F0A3C8C582C8CAC583CADFE9DEE780BE05 -:0130260000A9 -:10125200E709F608DFFA8046E709F208DFFA803E7E -:1012620088828C83E709F0A3DFFA8032E309F6086B -:10127200DFFA8078E309F208DFFA807088828C83D3 -:10128200E309F0A3DFFA806489828A83E0A3F60887 -:10129200DFFA805889828A83E0A3F208DFFA804C61 -:1012A20080D280FA80C680D4806980F28033801038 -:1012B20080A680EA809A80A880DA80E280CA8033A1 -:1012C20089828A83ECFAE493A3C8C582C8CCC58319 -:1012D200CCF0A3C8C582C8CCC583CCDFE9DEE780E9 -:1012E2000D89828A83E493A3F608DFF9ECFAA9F068 -:1012F200EDFB2289828A83ECFAE0A3C8C582C8CCBE -:10130200C583CCF0A3C8C582C8CCC583CCDFEADED6 -:10131200E880DB89828A83E493A3F208DFF980CC38 -:1013220088F0EF60010E4E60C388F0ED2402B40431 -:101332000050B9F582EB2402B4040050AF232345D8 -:0613420082239012A27349 -:10134800BB010689828A83E0225002E722BBFE02A3 -:09135800E32289828A83E49322D6 -:10136100BB010CE58229F582E5833AF583E0225041 -:1013710006E92582F8E622BBFE06E92582F8E2228B -:0D138100E58229F582E5833AF583E49322A5 -:10138E00BB010FF8E58229F582E5833AF583E02863 -:10139E00F0225009C58229F8E58226F622BBFE0905 -:1013AE00C58229F8E22582F222F8EA2583F583E93F -:0313BE009328224F -:1013C100BB010689828A83F0225002F722BBFE010B -:0213D100F32205 -:1013D300F8BB010DE58229F582E5833AF583E8F050 -:1013E300225006E92582C8F622BBFE05E92582C8FC -:0213F300F222E4 -:1013F500BC000BBE0029EF8DF084FFADF022E4CCDC -:10140500F875F008EF2FFFEE33FEEC33FCEE9DECA4 -:10141500984005FCEE9DFE0FD5F0E9E4CEFD22EDEA -:10142500F8F5F0EE8420D21CFEADF075F008EF2F34 -:10143500FFED33FD4007985006D5F0F222C398FD25 -:051445000FD5F0EA22C2 -:10144A00C5F0F8A3E028F0C5F0F8E582158270022D -:06145A001583E038F022CA -:10146000BB0110E58229F582E5833AF583E0F5F0CA -:10147000A3E0225009E92582F886F008E622BBFEA7 -:101480000AE92582F8E2F5F008E222E5832AF583ED -:08149000E993F5F0A3E99322B2 -:10149800F8BB0111E58229F582E5833AF583E8F086 -:1014A800E5F0A3F0225009E92582C8F608A6F02243 -:0D14B800BBFE09E92582C8F2E5F008F2222A -:1014C500E88FF0A4CC8BF0A42CFCE98EF0A42CFCC6 -:1014D5008AF0EDA42CFCEA8EF0A4CDA8F08BF0A444 -:1014E5002DCC3825F0FDE98FF0A42CCD35F0FCEBA3 -:1014F5008EF0A4FEA9F0EB8FF0A4CFC5F02ECD3968 -:0F150500FEE43CFCEAA42DCE35F0FDE43CFC22D4 -:10151400EB9FF5F0EA9E42F0E99D42F0E89C45F02D -:0115240022A4 -:10152500E86010ECA2E713FCED13FDEE13FEEF13DC -:04153500FFD8F022C9 -:09153900E0FBA3E0FAA3E0F922B3 -:10154200F8E0FBA3A3E0F925F0F0E5821582700232 -:071552001583E0FA38F022D6 -:09155900EBF0A3EAF0A3E9F02293 -:10156200D083D082F8E4937012740193700DA3A318 -:1015720093F8740193F5828883E47374029368602C -:06158200EFA3A3A380DF2C -:100EED00E508249FF582E43400F583E0050822909F -:100EFD00009C30180390009FE475F001121542021A -:100F0D0013482011E97F2ED2118018EF540F249031 -:100F1D00D43440D4FF30150BEF24BFB41A00500366 -:100F2D002461FFE50960021509050CE50C70020549 -:100F3D000B30180E90009CE475F001121542EF0273 -:100F4D0013C10234877403D2188003E4C218F50864 -:100F5D0090009C121559E4F509F50BF50CE50960A7 -:100F6D00077F20120F3080F5750AFFC212C211C221 -:100F7D0013C214C216C217C219120EFCFF700D3027 -:100F8D0018057F00120F41AF0CAE0B22B4255FC2C6 -:100F9D00D5C215120EFCFF24D0B40A00501A75F0FC -:100FAD000A780930D50508B6FF0106C6A426F62035 -:100FBD00D5047002D21480D924CFB41A00EF500496 -:100FCD00C2E5D215021142D21280C6D21180C0D212 -:100FDD001380BCD2D580BAD21680B47F20120F30C8 -:100FED002013077401B5090040F1120EEDFF120F29 -:100FFD0030020F6AD219D2178095120EEDFB120E28 -:10100D00EDFA120EEDF94A4B700679137A127BFF49 -:10101D0020132EE509602A7E008E8275830012133F -:10102D006160060EEE650A70F0C2D5EBC0E0EAC055 -:10103D00E0E9C0E0EE121189D0E0F9D0E0FAD0E09D -:10104D00FB121348FF60AAEBC0E0EAC0E0E9C0E084 -:10105D00120F30D0E02401F9D0E03400FAD0E0FBDB -:10106D00E50A0460DCD50AD980877BFF7A11798582 -:10107D00D213809C791080027908C217C21980089A -:10108D00D2D5790A8004790AC2D5E50A047002F531 -:10109D000AE4FAFDFEFF120EEDFC7B08201213127E -:1010AD000EEDFD7B1030110A120EEDFE120EEDFF4E -:1010BD007B20EC3382D592D55013C3E43011069FBB -:1010CD00FFE49EFEE42012039DFDE49CFCE4CBF8BE -:1010DD00C212EC700CCFCECDCCE824F8F870F380B2 -:1010ED0017C3EF33FFEE33FEED33FDEC33FCEB3383 -:1010FD00FB994002FB0FD8E9EB301205F8D0E0C4A4 -:10110D0048B212C0E00AEC4D4E4F78207B0070C201 -:10111D00EAB50A0040BCC0E012118BD0F0D0E0203F -:10112D001204C4C0E0C4B212C0F0120F19D0F0D531 -:10113D00F0EB020F6A1215621007531081580FD889 -:10114D004C0FD44210854F108D44108D490FED4337 -:08115D0010935510774610773E -:10116500451077471233500FDC2D0FE02E10032B5F -:101175000FE423100120121C2A0F9C4800000FFBCE -:101185003F3F3F00790AA2D5201414301609B91043 -:10119500020404B9080104A2D52017025001042055 -:1011A50013689213B509005034C0E07F203014193C -:1011B5007F30A21372177216500F1211E2C213C2BA -:1011C50017C216C2197F30800F301603E9C0E0122E -:1011D5000F30301603D0E0F9D0E0B509CC30161742 -:1011E5007F30B9100C120F307F583015077F78808B -:1011F50003B90803120F303013057F2D020F307F1E -:10120500202019F87F2B2017F322921380CF286E08 -:10121500756C6C2900D212120EED3012F8C21278DC -:101225000930D50108F6020F9C2D50434958120E7E -:10123500ED2403B405004001E490122E93120F2112 -:0D124500743A120F21D214750904021081B1 -:00000001FF diff --git a/Out/8835_EVB_250121_1743_349D_010102.bin b/Out/8835_EVB_250121_1743_349D_010102.bin deleted file mode 100644 index 31a8d71..0000000 Binary files a/Out/8835_EVB_250121_1743_349D_010102.bin and /dev/null differ diff --git a/Out/8835_EVB_250213_1145.bin b/Out/8835_EVB_250213_1145.bin new file mode 100644 index 0000000..cb60fbe Binary files /dev/null and b/Out/8835_EVB_250213_1145.bin differ diff --git a/Out/8835_EVB_250213_1145.hex b/Out/8835_EVB_250213_1145.hex new file mode 100644 index 0000000..bec5f43 --- /dev/null +++ b/Out/8835_EVB_250213_1145.hex @@ -0,0 +1,920 @@ +:030000000229389A +:1029380075FE7275FF00758E009000007F007E03A3 +:0D294800E4F0A3DFFCDEFA75814602299061 +:0F343600122F2FD2AED2BE122C7D122EAE80F4EA +:10317F009001B6E0FEA3E07802229001B7E025E0CF +:10318F00FE9001B6E03322F0A3EFF0C3EE6480941B +:02319F0080228C +:1032C30075FE3175FF8175FE0E43FF107DAC7F30B7 +:0D32D3001234AF75FE599001A6E5FFF02200 +:10259900900158EFF0E5A420E0030226B175A401EB +:1025A9007F351234B69001B6E4F0A3EFF07F36120E +:1025B90034B6EF5403FE9001B6E04EF0A3E0F0907C +:1025C9000158E04408FD7F311230989001A6E0FFE0 +:1025D9003395E0FEC39001B7E09FFF9001B6E09EFE +:1025E900FE3395E0FDFCE47BC47A09F9F81216255F +:1025F900780A1216859001B6EE1231965007E490CA +:1026090001B6F0A3F09001B8E01216C226310026F7 +:102619004301264B02266103267104268105269172 +:1026290006269D07000026B112317FCEA2E713CE00 +:1026390013D8F8FF9001A70226AC1231899001BB8B +:10264900804C9001B6E0FEA3E07803C333CE33CECD +:10265900D8F9FF9001AD804B12317FC333CE33CE11 +:10266900D8F9FF9001B9803B12317FC333CE33CE05 +:10267900D8F9FF9001B1802B12317FC333CE33CE0D +:10268900D8F9FF9001AF801B1231899001A9F0A3FD +:10269900CEF0801412317FCEA2E713CE13D8F8FF03 +:1026A9009001ABEEF0A3EFF0900158E09001B8F083 +:0426B90075A3812262 +:102D4200E5A430E14A75A4027F371234B69001B38C +:102D5200E4F0A3EFF07F381234B6EF5403FE900193 +:102D6200B3E04EFEA3E0FF9001B3EEF0A3EFF0FF5D +:102D72009001A6E0FD3395E0FCC3EF9DFFEE9CFEC3 +:102D82009001B31231965007E49001B3F0A3F075AD +:032D9200A38222F7 +:1032E0009001D97403F0E49001DBF09001DDF090DF +:0B32F00001DC7403F09001DE04F0220A +:1022EC00E4FE9001B3E0FCA3E0FDC394E8EC94039E +:1022FC0040037F0022EF7003022413D3ED940FEC04 +:10230C00940340030223F1ED94CBEC9400500302B0 +:10231C0023F1D3ED94AAEC94024025D21F9001D95D +:10232C00E0FF139001DCF0302012D3ED94BFEC945D +:10233C00024004C22080059001DCEFF0E4FE807BBB +:10234C00D3ED94AAEC9402504AED9437EC940140EE +:10235C0042D2209001D9E0FF9001DCF0301F14D361 +:10236C00ED9493EC94025004C21F8007EFC31390BA +:10237C0001DCF09001DE7404F0301A13D3ED9451AB +:10238C00EC94015004C21A80069001DE7401F0E452 +:10239C00FE8028D3ED9437EC9401501FD21A900193 +:1023AC00DE7401F0302012ED9426EC94015004C23E +:1023BC002080069001DE7404F0E4FE301D11C3EDA4 +:1023CC0094F3EC94025006C21DE4FE80027E0130B0 +:1023DC001E2FD3ED94DDEC94004006C21EE4FE806B +:1023EC00207E01801CD3ED940FEC94034006D21D8B +:1023FC007E01800DD3ED94CBEC94005004D21E7E64 +:10240C0001C21BC21C8058C21DC21ED3ED949FEC8E +:10241C0094035031ED9471EC94004029301B10ED75 +:10242C009484EC94035006C21BE4FE80027E0130BF +:10243C001C2DD3ED9482EC94004006C21CE4FE806B +:10244C001E7E01801AD3ED949FEC94034004D21BA2 +:10245C00800BC3ED9471EC94005002D21C7E01AF42 +:01246C000669 +:01246D00224C +:1029D5009001ECE05463600BE4FF1231C3E4900115 +:1029E500DAF0227F011222ECEF600EE4FF1231C310 +:1029F500D2219001DA7401F022C2219001EDE05458 +:102A050007FFBF06079001DA7403F0229001DCE0AE +:102A1500FD7F221230989001DEE0FD7F2112309873 +:102A25009001DBE0C454F0FF9001DDE04FFD7F2312 +:102A35001230987F011231C390012DE0FFD394012C +:102A45004002C23CEFD394034002C238EFD394074F +:102A55004002C23AEFD3940C4002C239EFD394112D +:0B2A65004002C23B9001DA7402F02234 +:10002600C23E9001ECE020E65530E203D23F22309A +:100036003C04E4FF80119001ECE030E50D30233EF6 +:100046007F3C1233657F010231E5E4FF1222ECEFBB +:100056006008E4FF1231E5D23D22C23DD23E303F78 +:100066001D9001DAE0B40216C39001BCE094109032 +:0F00760001BBE0940E4005D23EC23F22C23E22A3 +:10337F00426F78204F70656E2E0D0A00426F7820D5 +:09338F00436C6F73652E0D0A00FA +:102D9500E4900158F09001EDE0FF5420FE900158B9 +:102DA500F09001F0E06E6032EF30E50E9001EF74C7 +:102DB50001F07BFF7A33797F800BE49001EFF07BA4 +:102DC500FF7A33798B121099D245C20ED22ED230AA +:0A2DD500900158E09001F0F0D243A5 +:012DDF0022D1 +:1026BD00737570706572206C6F6E67203873207043 +:1026CD00726573732E286C696E653A2564290D0A3F +:1026DD00004B6579206C696674286C696E653A25C6 +:1026ED0064292E0D0A00426F6F7374204F70656E52 +:1026FD00204B65792E286C696E653A2564290D0A83 +:10270D00006C6F6E672032732070726573730D0AE3 +:10271D000073686F72742070726573730D0A004BCD +:10272D006579205061697220545820564F52286C9B +:10273D00696E653A2564292E0D0A004B6579205086 +:10274D006169722054696D654F7574286C696E6589 +:10275D003A2564292E0D0A004B6579205061697266 +:10276D002047657420564F52286C696E653A256472 +:10277D00292E0D0A004B657920506169722047653D +:10278D007420564F4C286C696E653A2564292E0DC0 +:10279D000A004B6579205061697220545820564FBC +:1027AD004C286C696E653A2564292E0D0A004B651F +:1027BD0079205061697220436E743A25642E286C1D +:0A27CD00696E653A2564290D0A00C3 +:1030F0007BFF7A2679BD90015EF0A3227BFF9001D1 +:103100005E7401F0A3227BFF90015EF0A322F09099 +:0631100001D0F0D20F22F5 +:101CB3009001EDE030E4419001CDE475F00112159F +:101CC3008BC39001CEE094409001CDE09401400E8F +:101CD300D236E41230F07470F01210998014C3906D +:101CE30001CEE094509001CDE094004005203502F0 +:101CF300D235D232C233804F303245D243E49001E1 +:101D0300D0F0C232D2339001CFF09001CDE0FEA3E8 +:101D1300E0FFD39414EE94005008D231D234D23081 +:101D2300800EC3EF94C8EE94005005303502D237CD +:101D3300C2357A2679DEE412310674A6F0121099C0 +:101D4300E49001CDF0A3F0303375303E7230372F7D +:101D5300200E08121EE674B9021EA2121F0C5003B5 +:101D6300021ED6C2379001D07402F0E49001CCF089 +:101D73009001C7F0A3F07BFF7A27790E12109930F8 +:101D8300362B200E08121EE674EC021EA2121F0C44 +:101D93005003021ED6C236E49001D1F09001D074F4 +:101DA30003F074011230F0740CF012109930340BFC +:101DB300C2347BFF7A27791E121099C233C20E9068 +:101DC30001EFE064016003021EE59001D0E06402CC +:101DD3006003021EAB9001CCE0C3940150127F025A +:101DE300121EFF7A27792C041231067436021E72F2 +:101DF3009001CBE0D394054015E412310E7F03121A +:101E03002B907A2779481230FC7456021EA2900157 +:101E1300C7E0B4011D7D227F0312246E9001C774B5 +:101E230002F07BFF7A27796590015E14F0A3746C4E +:101E3300803D9001C7E064027039A3E0601F7F0317 +:101E4300121EFF9001CCF09001CB12310E7F0412D1 +:101E53002B907A2779821230FC749880427D227FFE +:101E63000212246E7BFF7A27799F1230FE74A8F04A +:101E73001210999001CCE0D3941440279001CBE049 +:101E830004F0E4A3F07BFF7A2779BB9001CBE0FF5A +:101E930090015EE4F0A3EFF0A37401F0A374B6F035 +:101EA3000210999001CC802B9001D0E06403703232 +:101EB300A3E0FFC39464501FEF540770047D228096 +:101EC3000A9001D1E0540370077D117F0412246E40 +:101ED3009001D1E004F022E412310FA3F07F041249 +:021EE3002B9042 +:101EE500227F3C1233657F011231E5D20E7BFF7AEA +:101EF5002679F390015EE4F0A3227D1112246EE4AD +:101F05009001C7F0A3F0227F03122B909001CFE040 +:041F1500D39414222B +:102C0A00900158E0FF25E0240CF582E43401F583B5 +:102C1A0022900158E0FF25E02414F582E43401F5FE +:102C2A0083E0FCA3E0FDEF25E02424F582E43401EF +:102C3A00F5832274042FF582E43401F58322E4F04B +:102C4A00A3F0EF25E0241CF582E43401F5832290F9 +:102C5A000158E0FF2408F582E43401F58322E0FEFE +:102C6A00A3E0C39DEE9C2225E02414F582E43401FE +:032C7A00F58322BD +:10306C0075FE0B75FF0F75FE1375FF0F75FE0C7556 +:10307C00FF55E4900102F0900101F0900103F090F3 +:0C308C000100F0C290C291C293C29222D7 +:10333100EF14600D14600D14600D2403700BD29016 +:0A33410022D29122D29222D29322CE +:05322900900158E0FFD8 +:10322E00EF14600D14600D14600D2403700BC2902A +:0A323E0022C29122C29222C2932202 +:102FE000E4FF122C3DE4F074082F122C60E4F0EFA3 +:102FF000122C0FE4F0A3F0EF122C71122C48E4F025 +:0E300000A3F0122C30E4F0A3F00FEFB404D4D0 +:01300E00229F +:102EF000AC0774042C122C40EDF0EAC313FEEB1364 +:102F0000FFEC122C0FEEF0A3EFF0AF03EC122C71DC +:102F1000EAF0A3EFF090015DE0FEA3E0FFEC122CDD +:0F2F20004DEEF0A3EFF0EC122C31E4F0A3F02211 +:10324800122C3DEDF074082F122C60EBF0EF122CCD +:0F3258000FE4F0A37469F0122C30E4F0A3F0221D +:101F1900E4900158F0F0900158E0FFC394044003A5 +:101F290002210E122C3DE0601F24FE60211460780E +:101F3900147003021FE2240360030220BD900158BC +:101F4900E0FF1233310220BD1232290220BD122CCA +:101F59000A122C2B122C68500512333180031232CD +:101F690029122C1B122C6850030220BD900158E045 +:101F7900122C31122C48E0FEA3E0D39400EE940019 +:101F8900400E900158E0122C4D74FFF5F012158B9C +:101F9900900158E0FF122C4DE0FCA3E04C600302D5 +:101FA90020BD74042F021FF3122C0A122C2BE0FE01 +:101FB900A3E0D39DEE9C50051233318003123229E0 +:101FC900122C1B122C6850030220BD900158E012FC +:101FD9002C31E4F0A3F00220BD122C59E070131249 +:101FE90033AFC246900158E02404122C40E4F002B9 +:101FF90020BD122C59E0FE6402702E20460CD246F8 +:10200900EF122C0FE4F0A37469F0122C0AE475F0B6 +:102019000112158BEF122C0FE0FCA3E0C394FEEC28 +:10202900940050030220B48031EE640170372046D9 +:102039000FD246900158E0122C0FE4F0A374FEF081 +:10204900122C0A74FFF5F012158BEF122C0FE0FE1B +:10205900A3E0D39469EE94005051900158E0122CFA +:102069005EE4F08046122C59E06403703EEF122CB6 +:102079000FE0FEA3E0FFC394FEEE94004004D246B5 +:10208900800BD3EF946AEE94005002C24690015837 +:10209900E025E0240C304609122C1374FFF5F0807A +:1020A90007122C13E475F00112158B122C0AA3E008 +:1020B900FD122DE0900158E0FF700A122C3DE090CE +:1020C9000102F08037900158E0B4010C2404122C6D +:1020D90040E0900101F08024900158E0B4020C2402 +:1020E90004122C40E0900103F08011900158E0B4F3 +:1020F900030A2404122C40E0900100F0900158E0FA +:1021090004F0021F1FE4900158F0900158E0FFC34A +:1021190094045012122C30E475F00112158B9001C1 +:0621290058E004F080E420 +:01212F00228D +:10334B00D2AC759A03D2BCD2BDD2A9D2AB75FE3129 +:0A335B0075FF8175FE3043FF8022EC +:10326700C2ACE4F59AC2BCC2BDC2A9C2AB75FE31FD +:0F32770053FF7E75FE3053FF7FFD7F310230988D +:10303E00304421302627C2269001E5E004F0E0C39B +:10304E0094054019E4A3F07DAA7F4F123098E490C6 +:0E305E0001E5F02212326743870212334B2243 +:10000E009001DAE0D394015006201003304304C26D +:05001E0043C322D322C0 +:102F2F001232FB123416123462E4F58612300F128D +:102F3F0032C37D087F761234AFD2A8D2AF1232E0FF +:102F4F007D697F031233DC12306C122FE012347064 +:0F2F5F009001E9740FF09001E27401F0C20E22AC +:0300030002008573 +:06008500D24375E20F32C8 +:1033F200E0FF04F074852FF582E43401F583E5994A +:02340200F022B6 +:1032FB0075FE0443FF0CD2DF43878075BA0375AAB2 +:0B330B00DC759852D299D298D2AC2207 +:062E260090017C1216B9B8 +:102E2C00E490017FF075FE0443FF0C75FE0353FF25 +:102E3C00F3F090017FE0C39FE49E501C2040FDD234 +:102E4C004090017CE475F0011216A2121489F599D8 +:0E2E5C0090017FE004F080DA75FE0453FFF36E +:012E6A002245 +:0300230002289917 +:10289900C0E0C083C082C0D075D000C000C005C0F0 +:1028A90006C007309904C299C240309871C298D2C3 +:1028B90043900184E014601B1460332402705FE5C7 +:1028C90099900184B4550A7401F09001A5E4F0804F +:1028D900108013E599900184B4AA0B7402F0900159 +:1028E900A51233F28038E4F09001A5F08030900110 +:1028F900A51233F2900189E02406FFE433FE90012A +:10290900A5E0FDC39FEE6480F87480985005ED94AE +:1029190020400B9001A5E4F0900184F0D242D00749 +:0F292900D006D005D000D0D0D082D083D0E032FD +:0E345400900183EFF012349F900183E0FF227D +:1034160075F10A759F03759EFD759692759A02223F +:08349F002041FDD2418F97226C +:03008B00023398A5 +:10339800C0E0E59630E1055396FDC241E59630E080 +:0733A800035396FED0E03252 +:062FAB004301E2040202F2 +:1034260090015DE4F0A37403F07B647A007D0222D0 +:1033C6009001B5E0FF04F01225999001B5E0C39491 +:0633D600084002E4F022B1 +:1032A500122D95121CB3122A70302211C222122936 +:0E32B500D5120026122B031219E01216E82281 +:093496007B017A0179EA022CE6BF +:1027D700E4900158F09001E2E0FFA3E0FE6F603162 +:1027E700A3EEF09001E2E0A3F024FE601A14601C4F +:1027F70024026003022898123426E4FF122EF012F6 +:1028070034267F01022EF07F010232079001E98012 +:10281700539001E3E024FE602E14603214605524C7 +:1028270003706E9001DFE004F0E0C394084062900B +:1028370001E27402F0E49001DFF090012DE07051A5 +:102847009001E27404F0229001E27403F022302632 +:1028570040C2269001E9E0D39400400CE014F03028 +:10286700432FC243740FF0229001E27404F0E49006 +:1028770001E5F02212000E50127F04122B90E4FFA4 +:102887001231E5E4FF12320702303E9001E2740292 +:01289700F050 +:01289800221D +:102EAE00302536C2259001E0E0FF04F0EF146012E9 +:102EBE001460141460161460182404701C1233C6A7 +:102ECE0080171234968012122D42800D1232A58078 +:102EDE00081227D7E49001E0F0302705C227121F11 +:022EEE001922A7 +:10008E00426F6F7374204F70656E2E286C696E65AB +:10009E003A2564290D0A00426F7820436C6F736510 +:1000AE002E286C696E653A2564290D0A00426F7818 +:1000BE00204F70656E2E286C696E653A2564290D89 +:1000CE000A004F70656E2F436C6F736520426F7818 +:1000DE002C45617270686F6E657320496E20426F99 +:1000EE0078284E756D3A25642928566F78537461B9 +:1000FE003A30782578292E0D0A004F70656E204211 +:10010E006F7820434D44205458204F7665722E0D43 +:10011E000A004F70656E20426F7820416E64204554 +:10012E00617270686F6E6520476574496E284E75F2 +:10013E006D3A25642928566F785374613A307825C4 +:10014E0078292E0D0A00436C6F736520426F78205C +:10015E00416E6420466F72636520566F6C746167E2 +:10016E00652055702E0D0A2000564F5820566F757B +:10017E007420355628564F585F5354413A307825DF +:10018E00782C6C696E653A2564292E0D0A00564F3F +:10019E0058204348472046756C6C2E0D0A00564F6A +:1001AE00582047657420496E746F20536C656570D6 +:1001BE002E0D0A00466F6C6C6F772043484720491E +:1001CE006E697453746120536574204D61782056A6 +:1001DE00706D69642E28566F785F7374613A30784B +:1001EE00257829286C696E653A2564290D0A004622 +:1001FE006F6C6C6F772043484720496E6974537457 +:10020E00612E28566F785F7374613A30782578299D +:10021E00286C696E653A2564290D0A00466F6C6C70 +:10022E006F772043484720537461312C4E6F204521 +:10023E00617250686F6E6520496E20426F782E286D +:10024E006C696E653A2564290D0A00466F6C6C6FF9 +:10025E00772043484720537461312C564F52204328 +:10026E006867696E672849766F723A25646D412C0E +:10027E0049766F725F4E65673A25646D412C4976FB +:10028E006F725F506F733A25646D41292E286C6929 +:10029E006E653A2564290D0A00466F6C6C6F7720E7 +:1002AE0043484720537461312C564F4C20436867A6 +:1002BE00696E672849766F6C3A25646D412C4976D4 +:1002CE006F6C5F4E65673A25646D412C49766F6C95 +:1002DE005F506F733A25646D41292E286C696E65E7 +:1002EE003A2564290D0A00466F6C6C6F77204348DF +:1002FE004720537461322C4765742049564F523A49 +:10030E0025646D412C41745072652049766F723AA6 +:10031E0025646D412E286C696E653A2564290D0A97 +:10032E0000466F6C6C6F77204348472053746132E0 +:10033E002C4765742049564F4C3A25646D412C412B +:10034E00745072652049766F6C3A25646D412E2883 +:10035E006C696E653A2564290D0A00466F6C6C6FE8 +:10036E00772043484720537461332C564F5820430F +:10037E006867205265496E69742E28417450726503 +:10038E002049766F723A25646D412C49766F6C3A2E +:10039E0025646D413B506F732049766F723A256428 +:1003AE006D412C49766F6C3A25646D4129286C6934 +:1003BE006E653A2564290D0A00466F6C6C6F7720C6 +:1003CE004348472053746133284356292C564F52C5 +:1003DE002056706D696420416464537461284174C1 +:1003EE005072652049766F723A25646D41292E2828 +:1003FE006C696E653A2564290D0A00466F6C6C6F48 +:10040E0077204348472053746133284356292C568E +:10041E004F522056706D6964205375625374612873 +:10042E0041745072652049766F723A25646D412988 +:10043E002E286C696E653A2564290D0A00466F6C8C +:10044E006C6F772043484720537461332843432908 +:10045E002C564F522056706D69642053756253743A +:10046E00612841745072652049766F723A25646D29 +:10047E0041292E286C696E653A2564290D0A0046BD +:10048E006F6C6C6F77204348472053746133284359 +:10049E0043292C564F522056706D69642041646476 +:1004AE005374612841745072652049766F723A25F3 +:1004BE00646D41292E286C696E653A2564290D0AF2 +:1004CE0000466F6C6C6F772043484720537461333E +:1004DE00284356292C564F4C2056706D6964204186 +:1004EE0064645374612849766F6C3A25646D4129B2 +:1004FE002E286C696E653A2564290D0A00466F6CCC +:10050E006C6F772043484720537461332843562934 +:10051E002C564F4C2056706D69642053756253747F +:10052E00612849766F6C3A25646D41292E286C69D5 +:10053E006E653A2564290D0A00466F6C6C6F772044 +:10054E004348472053746133284343292C564F4C5C +:10055E002056706D6964205375625374612841741E +:10056E005072652049766F6C3A25646D41292E28AC +:10057E006C696E653A2564290D0A00466F6C6C6FC6 +:10058E0077204348472053746133284343292C5620 +:10059E004F4C2056706D6964204164645374612819 +:1005AE0041745072652049766F6C3A25646D41290D +:1005BE002E286C696E653A2564290D0A00466F6C0B +:1005CE006C6F772043484720537461342C564F7814 +:1005DE002056706D69642041646453746128566FAF +:1005EE0075743A307825782C49766F6C3A25646D9F +:1005FE00412C49766F723A25646D4129286C696EDB +:10060E00653A2564292E0D0A00466F6C6C6F7720B3 +:10061E0043484720537461342C564F782043686901 +:10062E006E6728566F75743A307825782C49766F38 +:10063E006C3A25646D412C49766F723A25646D4192 +:10064E0029286C696E653A2564292E0D0A00466FBD +:10065E006C6C6F772043484720537461342C564F8F +:10066E00522056706D69642041646453746128563B +:10067E006F75743A307825782C49766F723A256406 +:10068E006D4129286C696E653A2564292E0D0A0084 +:10069E00466F6C6C6F772043484720537461342C3F +:1006AE00564F52204368696E6728566F75743A30FC +:1006BE007825782C49766F723A25646D4129286C1D +:1006CE00696E653A2564292E0D0A00466F6C6C6FB3 +:1006DE00772043484720537461342C564F4C205694 +:1006EE00706D69642041646453746128566F75742B +:1006FE003A307825782C49766F6C3A25646D41290D +:10070E00286C696E653A2564292E0D0A00466F6CB9 +:10071E006C6F772043484720537461342C564F4CEE +:10072E00204368696E6728566F75743A307825785D +:10073E002C49766F6C3A25646D4129286C696E657B +:10074E003A2564292E0D0A00466F6C6C6F77204394 +:10075E004847205375625374612C564F4C2F564F99 +:10076E0052286C696E653A2564292E0D0A00466F73 +:10077E006C6C6F7720434847205375625374612C1D +:10078E00564F52286C696E653A2564292E0D0A0063 +:10079E00466F6C6C6F7720434847205375625374D5 +:1007AE00612C564F4C286C696E653A2564292E0DC6 +:1007BE000A00466F6C6C6F77204348472053756272 +:1007CE005374612C285354413A307825782C567046 +:1007DE006D69643A3078257829286C696E653A25FA +:1007EE0064290D0A00466F6C6C6F772043484720D2 +:1007FE004164645374612C285354413A30782578FF +:10080E002C56706D69643A3078257829286C696E9B +:10081E00653A2564290D0A005258305F42756666A6 +:10082E0065725B305D3A307825782C5258305F42D5 +:10083E0075666665725B315D3A307825782C525854 +:10084E00305F4275666665725B325D3A3078257848 +:10085E002C5258305F4275666665725B335D3A3076 +:10086E007825782C5258305F4275666665725B3417 +:10087E005D3A307825782C5258305F427566666541 +:10088E00725B355D3A307825782C5258305F427560 +:10089E00666665725B365D3A307825782C52583034 +:1008AE005F4275666665725B375D3A307825782CE7 +:1008BE006C696E653A25640D0A00000000000000A8 +:1008CE00000000000000000000000000000000001A +:0A08DE000000000000000000000010 +:102130007401121514EE90015EF0EFA3F0900158B7 +:1021400002169990000E1215A1FFE5F090015EF0C5 +:10215000A3EFF0A37406F0A32290001A1214A2FFBA +:1021600090015EE4F0A3EFF09001A7E0FFA3E0CFC1 +:10217000900160F0A3EFF02290001A1214A2FFE485 +:10218000900160F0A3EFF0229000061215A1FFAEBF +:10219000F090000E0215A17BFFE0FFE490015EF0DD +:1021A000A3EFF0229000081215A1FFAEF090000CF2 +:1021B0000215A190001512151490001A0214A29095 +:1021C000001574011215149001C9227BFF90015E65 +:1021D0007404F0A322900162F0A3EFF02290000CAF +:1021E0008FF00215F89001EEE0540CFBE4FAF9F8D8 +:1021F0009001BDE0FFE4FCFDFEC302167490000AEE +:102200001215A1D3FFED9FEC95F022EE8FF0900018 +:102210000E0215F89000170214A2900013E4121594 +:1022200014E49000120215149001ABE0FFA3E090BB +:102230000162CFF0A3EFF0A37407F0A3227BFF901D +:10224000015E7407F0A3229000180214A2FD25E09D +:10225000FFEC338FF01215F890015EECF022900144 +:10226000EEE0540C22FFE4F0A3EFF02274019000A2 +:1022700016021514C3FDACF09FEC9E229001ABE05A +:10228000FEA3E0FF229001A7E0FEA3E0FF22FF9063 +:102290000160E5F022E4FCFDFEFAF9F8C3021674D1 +:1022A0009001EEE05410FFE4FCFDEF227401900079 +:1022B000140215147845F608F69001C9F022900131 +:1022C000EEE05420FFE4FC22EE8FF00215F8121528 +:1022D000A1FF900162E5F0229001C4E094002290F9 +:0C22E00000130214A2FFE4F0A3EFF022B0 +:052B900090017CEFF054 +:102B9500E4A3F0A3F07F27122F6E90017DEFF07F65 +:102BA50037122F6E90017EEFF090017CE024FD60DE +:102BB5001B14602424FE60282405703590017EE0F6 +:102BC5004494F090017DE04498F0802590017DE0EB +:102BD5004406F054E7F0801990017EE054FD800929 +:102BE50090017EE04402F054FEF090017DE054E156 +:102BF500F090017DE0FD7F2712309890017EE0FD89 +:052C05007F370230984A +:1016E8009001ECE054186003D20D22C20D203E0395 +:1016F8000219AA30456B200E141219D37A00798E7C +:101708001221CB7410F01210997F038067E49001C6 +:10171800C0F09001BEF0A3F0C200C201D20B90014C +:10172800EFE07022C22FD202D203C205C208C2045F +:10173800C209C20AD210C2471222B47A0079A5128D +:1017480021CB74418013C202C203D205C2067BFFBB +:101758007A0079BB1221CD744EF0121099C20EC2D4 +:10176800459001BEE0C394055003021939300B07B8 +:10177800C20B7F04022B90200037D20012225EFF9A +:1017880060147B0C1222959001C670057402F080DB +:101798000A7401F08005E49001C6F07A0079D090CF +:1017A80001C61221979001EEE0FFE4122170121099 +:1017B8009920050302185B9001BFE0C39405500A05 +:1017C8007F06122B909001BF80272001449001C012 +:1017D800E0FFD39414501FEF540370047D11800967 +:1017E8009001C0E020E0077D227F0912246E90015D +:1017F800C0E004F0805D7F04122B90E49001C0F0FB +:10180800D201D20FC2107BFF7A0179081210998099 +:10181800429001D0E0703C300F04C20F802E12219C +:10182800E560309001EEE0FF540C6004D22FD23016 +:101838007BFF7A0179209001C6E0FD90015EE4F01B +:10184800A3EDF0A3E4F0A3EFF012109912225E903A +:1018580001BDF02002030219A730473B200E1612E3 +:1018680019D3D210E41222B49001BEF0C208D20BF0 +:10187800C200D204227F03122B907BFF7A01795495 +:10188800121099C20ED2039001BEE0D39403500304 +:10189800021939C247805020044D9001BFE0FFD3A0 +:1018A8009414501DEF540370047D1180099001BFFA +:1018B800E020E0077D227F0812246E9001BF021904 +:1018C800399001C0E0FFD39414501CEF5403700406 +:1018D8007D1180099001C0E020E0077D227F0A1277 +:1018E800246E9001C0804A30031F7F03122B907A28 +:1018F8000179779001EE122197A37405F0A3747112 +:10190800F0121099C2030219A72008559001EEE0C1 +:101918005430FF7B30122295600E12225EFFE4FCE9 +:10192800FDFEEF600330382A9001BEE0D3942850C2 +:1019380004E004F0227BFF7A01799C121099D20806 +:10194800E49001C1F09001BEF0C2097F04122B900F +:10195800804D7846E67048FB7A0079291208E880BD +:101968003E9001C1E0FFD39414501FEF540370045C +:101978007D1180099001C1E020E0077D227F0512DA +:10198800246E9001C1E004F08015200912D2097F6D +:1019980004122B90C2107BFF7A0179AC121099C205 +:1019A8000722200711D2077F04122B90C21012229F +:1019B8005E9001BDF0221221E5600F12225EFF60E9 +:0A19C80004D22FD2309001BDEFF0E1 +:0E19D200227F3C1233657F011231E5D20E22D6 +:0608E8009001581216B940 +:1008EE009001C9E01470030209CF147003020AD4F8 +:1008FE00147003020B48147003020D2E24046003BF +:10090E00020E8712213D90001D1214A26003020EEA +:10091E00879001CAE0D3940A5035E004F090001A93 +:10092E00743C121514300C03020E8712213D122155 +:10093E00B9FF1233657BFF7A0179C29001EEE0FFB9 +:10094E00E412214C7413F0121099D20C020E87E4AB +:10095E009001CAF0C20C12213DE412226E900015D5 +:10096E00E412151412221A900011E41215149000BC +:10097E0010E4121514900018E4121514900017E4E8 +:10098E00121514E4F5F012220E90000CE4F5F0129C +:10099E0015F8900019E412151490001B743C1221E6 +:1009AE00C47401F0E49001C4F0A3F07BFF7A0179E6 +:1009BE00FD9001EEE0FF90015EE412214F743A804B +:1009CE00349001EEE0FB5420FFE4FCFDFEEF6029C5 +:1009DE00EB5410FF602312213D90001D740112157F +:1009EE0014E49001C9F07BFF7A02792A90015E74BB +:1009FE0006F0A37449F0020E841222BEEF70571255 +:100A0E00227C12213D9000021222C87D051215365D +:100A1E00EF7802C333CE33CED8F9FF12213D9000CA +:100A2E00061222C89001ABE0FCA3E090000A12224D +:100A3E004DED12213B9000061215A1FFE5F012219B +:100A4E008090000A1222CE12214F7457F07BFF7A4B +:100A5E000279591210991222A0705C12228512216D +:100A6E003DEE8FF01215D91222857D05121536EF47 +:100A7E007802C333CE33CED8F9FF12213D90000455 +:100A8E001222C89001A7E0FCA3E090000812224DAC +:100A9E00A3ED12213C9000041215A112228EF0A398 +:100AAE00EFF09000081222CE12214F7464F07BFFFB +:100ABE007A0279A712109912213D90001C1221C2C0 +:100ACE007402F0020E87D39001C5E094051222D86D +:100ADE005003020B54E49001C4F0A3F01222BEFDA9 +:100AEE00EF702412227C12213D12220B900018125C +:100AFE00213012219112228E12214F7480F07BFF31 +:100B0E007A0279F51210991222A0702512228512FE +:100B1E00213DEE1221DD9000171221301221AD126F +:100B2E00228E12214F748AF07BFF7A03792F1210D6 +:100B3E00999001C97403F0020E87D39001C5E09419 +:100B4E00021222D8500AE475F00112158B020E879C +:100B5E00E49001C4F012213B90000A12218BD39F26 +:100B6E00E5F09E500D12213D1221A4D39FE5F09E7B +:100B7E00404BE49001C912213C90001CE412151464 +:100B8E0012213D122191FFE5F012219C1221AD128E +:100B9E00228EF0A3EFF090000A1215A1FFE5F012DD +:100BAE0021D59000081215A1FF900164E5F01221E5 +:100BBE004F74A4F07BFF7A037969020E8412213DF3 +:100BCE0012224764016003020C75122191D3941412 +:100BDE00E5F09400504D9001EEE030E529900016BE +:100BEE0074011221B6C3943C400A12213D900018A4 +:100BFE00E412151412213D12214374B6F07BFF7AD4 +:100C0E000379C7020C7212213D9000137401121564 +:100C1E001412213D12214374BDF07BFF7A04790931 +:100C2E00020C7212213D122188D39FE5F09E900195 +:100C3E0058401C12169990001374011215141221AB +:100C4E003D12214374C7F07BFF7A04794B80151255 +:100C5E00169912226C12213D12214374CEF07BFFA5 +:100C6E007A04798D12109912213D122214640160BA +:100C7E0003020E871221ADD39414E5F09400504D6B +:100C8E009001EEE030E42974011221B3C3943C408C +:100C9E000A12213D900017E412151412213D900006 +:100CAE000C12214674E1F07BFF7A0479CF020E8498 +:100CBE0012213D740112222212213D90000C1221AC +:100CCE004674E8F07BFF7A05790B020E8412213D03 +:100CDE009000041221A7D39FE5F09E90015840206A +:100CEE00121699900012740112151412213D9000E3 +:100CFE000C12214674F2F07BFF7A057947020E84BE +:100D0E00121699900015740112151412213D9000BF +:100D1E000C12214674F9F07BFF7A057989020E8454 +:100D2E00D39001C5E094141222D8501EE475F00140 +:100D3E0012158B12227C12213D12220B9001A7E07C +:100D4E00FFA3E0CF1221DD020E87E49001C4F01262 +:100D5E00213B122247640170651222146401705EF9 +:100D6E00122188122274400812213D1221FD4039B1 +:100D7E0012213D9000041221A7122274400B122161 +:100D8E003D900008122200402012213D12226C12CA +:100D9E0021BF740212213C1221591222287420F014 +:100DAE007BFF7A0579CB020E8412213D1221591256 +:100DBE0022287427F07BFF7A067917020E841221FF +:100DCE003D1222476401705A122188122274400883 +:100DDE0012213D1221FD402A12213D9000161221B2 +:100DEE00C2740212213C1221B912219A9001AB1247 +:100DFE00216BA37407F0A3743AF07BFF7A06795C3B +:100E0E00801D12213D1221B912219A9001AB12219F +:100E1E006BA37407F0A37440F07BFF7A06799E12E1 +:100E2E00109912213D1222146401704D1221A4D387 +:100E3E00122275500F12213D9000041215A1C312FB +:100E4E002204501E12213D1221BF740212213C12A7 +:100E5E002159A37407F0A3744EF07BFF7A0679D95B +:100E6E00801412213D122159A37407F0A37454F07B +:100E7E007BFF7A07791B12109912213D122247FF30 +:100E8E006401600A12221464016003021018122217 +:100E9E00DFFE6401600D9000121214A26401600363 +:100EAE00020F96EF64017020122214B4011AEEB4F0 +:100EBE0001161222DFB401101222AC7A07795612F3 +:100ECE00223D746CF012109912213D1222476401DA +:100EDE00701B12221470161222DF64017038041275 +:100EEE0022AE7A07797C12223D7476802512213D3E +:100EFE001222477021122214B4011B9000121214F8 +:100F0E00A2B401121222AC7BFF7A07799E12223F05 +:100F1E007481F012109912213D12221A90001412AF +:100F2E0014A26401600302102D12213D1221B9D3C7 +:100F3E009400400890001A74FE1214CF90001912FB +:100F4E0014A2FF1221B9D39F500F12213D90001A07 +:100F5E00EF1221C47404F080069001C97402F0E40B +:100F6E009001C4F012213B900014E41221C4E0FF62 +:100F7E00E4122136122178A37407F0A374A0F07B3B +:100F8E00FF7A0779C002100B12213D900016121441 +:100F9E00A26401600D9000151214A2640160030298 +:100FAE00102D900016E4121514E41221B3C3943CD4 +:100FBE00500B12213D90001A74021214CF9001C9E9 +:100FCE00740412213C90001B1214A2FF1221B9C30B +:100FDE009F400D12213D90001AEF1221C47401F0B2 +:100FEE009001C9E0FF90015EE4122139122178A32D +:100FFE007407F0A374BDF07BFF7A0779F312109992 +:10100E0012213D1221B9FF0233659001C9E0D3943C +:0F101E0002400CE412213C90001D7401121514C5 +:01102D0022A0 +:0B2E6B0090017C1216B990017FEDF081 +:102E7600E4FE90017FE0FD14F0ED602990017CE412 +:102E860075F0011216A21214896EFEE4FFEFC394C8 +:102E96000850DFEE30E007C313648CFE8004EEC3F7 +:072EA60013FE0F80E8AF06E8 +:012EAD002202 +:08246E00900158EFF0A3EDF01E +:10247600E4A3F0A3F0785C7C017D017BFF7A087908 +:10248600C8FE7F2012146390015C7455F0A374AAF1 +:10249600F0A374FFF0900159E0900161F0900158AB +:1024A600E090015FF01216C224CA01250B0224EA4D +:1024B60003250B04250B05250B0824CA0924CA0A83 +:1024C600000025119001607403F09001DAE05402D7 +:1024D600C4333354C0FF90012DE04F900162F0E405 +:1024E600A3F08027E4FF74852FF582E43401F58399 +:1024F600E0FE745C2FF582E43401F583EEF00FEF15 +:10250600B420E380069001607401F0900160E0243D +:1025160005FFE43390015AF0A3EFF07B017A0179CD +:102526005CFD122E6B90015AE0FCA3E0245CF58260 +:1025360074013CF583EFF07F01122B90900159E076 +:10254600FFB4220B75FE0E53FFF043FF08800DEF1C +:10255600B4110975FE0E53FFF043FF0190015BE0D5 +:102566002402FF90015AE03400FE7B017A01795C77 +:10257600122E26900159E0FFB4220A75FE0353FF7E +:10258600F343FF0822EFB4110975FE0353FFF3432B +:02259600FF0440 +:012598002220 +:10328600E4900159F0EF24FD6002801290018AE07B +:0E329600B411059001C780039001C87401F0C7 +:0132A4002207 +:102A7000E4900158F0204203022B02C2427BFF7A0D +:102A8000087926900185122199900186E012217E15 +:102A9000900187E0FFE41221D5900188E090016465 +:102AA000122265900189E090016612226590018AE8 +:102AB000E09001681222E590018BE090016A1222F9 +:102AC000E590018CE0FF90016CE4F0A3EFF0A374BB +:102AD0000BF0A37405F01210997B017A01798590AF +:102AE0000189E02405FD122E6B900189E0248AF50E +:102AF00082E43401F583E0B50708900188E0FF1215 +:022B000032861B +:012B020022B0 +:102FB100602A012E0BB80BEA0C1C0C800CB20CE43D +:102FC1000D160D480D7A0DAC0E100E420E740EA6A4 +:0E2FD1000ED80F0A0F3C0F870FD2101D10688C +:102B0300E4FFEF25E0242EF582E43401F583E0FCB5 +:102B1300A3E0FDC39001BCE09D9001BBE09C400598 +:102B23000FEFB415DD90012DE0FEEFD39E90012C45 +:102B3300E0400404F0800214F09001EDE030E3057E +:102B430090012DEFF090012CE0FED394C85006EED7 +:102B5300C3940A500B90012DEFF090012C7469F08F +:102B630090012DE0FFD394005002D23CEFD39401A7 +:102B73005002D238EFD394055002D23AEFD3940ADD +:0C2B83005002D239EFD3940F5002D23B25 +:012B8F002223 +:102C7D009001D7E06062E4F0D2249001D5E004F039 +:102C8D00E0C394054004E4F0D2259001D8E004F0AF +:102C9D00E0C3940A4004E4F0D2279001D2E475F029 +:102CAD000112158BC39001D3E094649001D2E0948E +:102CBD00004006E4F0A3F0D2229001D4E004F0E04D +:102CCD00C394FA4013E4F0D2239001D6E004F0E06F +:092CDD0094044004E4F0D2262224 +:03000B00023116A9 +:10311600C0E0C083C082C0D074FC258CF58C746678 +:10312600258AF58A9001D77401F0D0D0D082D08359 +:03313600D0E032B4 +:0E346200758901758CFC758A66D2A9D28C2200 +:0D347E0075FE0FEF25E0FE7403A80608227E +:1033AF0012347E8002C333D8FCF452FFEFB404060C +:0733BF0075FE0FE4F5FF228B +:1033DC0075FE11EF5407F5FF75FE12AF058FFF75E3 +:0633EC00FE1075FF012236 +:102DE00012347E8002C333D8FCF452FF7401A8066B +:102DF000088002C333D8FC42FF75FE0B7401A8079C +:102E0000088002C333D8FC42FFEF70038DCE22EF5F +:102E1000B401038DCF22EFB402038DDE22EFB403A1 +:062E200004AF058FDF2264 +:033FFD00010102BD +:10300F00D28075FE0443FF0175FE0343FF0175FE79 +:10301F000243FF01D28175FE0443FF0275FE034395 +:0F302F00FF0275FE0243FF029001F17401F022CF +:0C340400C280123410D281123410D28029 +:05341000E4FF0FDFFEE8 +:013415002294 +:10331600D281D2801234102081037F0022C2811212 +:0B33260034103081037F00227F012261 +:0F344500C280C28112340BD281123410023410B3 +:0834A700123404C2800234104B +:0B348B00123404123410C2800234100E +:0231A100AE0777 +:1031A3007D08AF051DEF6015C280EE30E704D281C4 +:0F31B3008002C281EE25E0FE12340B80E5C2805F +:0131C20022EA +:103139007E08E4FDD281AF061EEF6012ED25E0FDA9 +:10314900C28012340B3081EEED4401FD80E8C2806B +:02315900AF05C0 +:01315B002251 +:0E3470007D087F351230987D0A7F760234AFDA +:102CE6009001581216B97F10122D2EEF1215027F81 +:102CF60011122D2E900001EF1215147F12122D388D +:102D0600900002EF1215147F13122D38900003EF76 +:102D16001215147F14122F6E9001581216999000F6 +:102D260004EF1215147F0022122F6E90015812160E +:0C2D36009922122F6E900158121699225B +:0531C300900158EFF03F +:1031C800E47F20122F6E900158E06006EF4401FF63 +:0D31D8008004EF54FEFFAD077F2002309809 +:0531E500900159EFF01C +:1031EA00E47F27122F6E900159E06006EF4401FF39 +:0D31FA008004EF54FEFFAD077F27023098E0 +:0533650090015BEFF098 +:10336A00E47F25122F6EEF54C0FF90015BE04FFD02 +:05337A007F25023098E0 +:05320700900159EFF0F9 +:10320C00E47F20122F6E900159E06006EF54FBFF13 +:0D321C008004EF4404FFAD077F20023098CE +:0734AF008FFEAF058FFF2225 +:0634B6008FFEAEFFAF0621 +:0134BC0022ED +:1030980090017FEFF0A3EDF01233167F0C1231A1EF +:1030A80012348B90017FE0FF1231A112348B900112 +:0C30B80080E0FF1231A112348B0234457D +:052F6E0090017FEFF06F +:102F7300E4A3F01233167F0C1231A112348B9001AB +:102F83007FE0FF1231A112348B1233167F0D123101 +:102F9300A112348B123139900180EFF01234A71251 +:072FA3003445900180E0FFBE +:012FAA002204 +:1030C40090015DE4F0A3740AF07B147A007D02227F +:1030D400900102F0900101F0900103F0900100F0E2 +:0C30E40022F0E490015DF0A3F0FBFA2262 +:10315C00E4FB7D04FF123248E4FB7D047F01123254 +:10316C0048E4FB7D047F02123248E4FB7D047F03BC +:03317C00023248D4 +:1019E00030301CC230E49001F3F090012CF0121C56 +:1019F0004FFD7F03122EF074021230D4D243222006 +:101A00002106203D03300D64202A05D22AD230223F +:101A1000900102E06402600E1230C4E4FF122EF066 +:101A20009001027403F0900101E06402600E123034 +:101A3000C47F01122EF09001017403F0900103E0C5 +:101A40006402600E1230C47F02122EF09001037403 +:101A500003F0900100E064027003021C191230C40C +:101A60007F03122EF09001007403F022302A0CC282 +:101A70002AC22CC22BC22EC22FD2479001DAE0FF1D +:101A80007003021B3F64037020202C07D22CC22B52 +:101A900002315CE490015D121C1A7D017F03122E5D +:101AA000F074011230D4021B36202B0DD22BC22C25 +:101AB000D230E49001F4F0807D9001F3E0C3940112 +:101AC0005055E004F0A3E014601A14602714603449 +:101AD00024037062900102E06404605A7B017D047B +:101AE000E4FF802E900101E06404604A7B017D04E4 +:101AF0007F01801E900103E06404603A7B017D0455 +:101B00007F02800E900100E06404602A7B017D0466 +:101B10007F03123248801F9001F3E0C3940F5005F9 +:101B2000E004F08011E49001F3F0A3E004F0E0C3DE +:101B300094044002E4F0C22EC22FC231D22D2230D2 +:101B40002B0AC22B12315CD230D24722202E0C201D +:101B50002D09202F06203103021C199001F3E0FF0C +:101B6000C394015004E004F022EFC39464400302E4 +:101B70001C049001F3E004F0303A30900102E0647C +:101B8000037003021C19E490015DF0A3F07B64FA7A +:101B90007D03FF122EF090010274041230E5FD7FE8 +:101BA00001122EF09001017402800F30391CE49074 +:101BB000015D121C84121C9F74011230E5FD7F022E +:101BC000122EF09001037402801EE490015D303B00 +:101BD00027121C84121C9F74011230E57D017F02C4 +:101BE000122EF090010374011230E5FD7F03122ED6 +:101BF000F09001007402F022121C1A7D01121CAA3E +:101C000074018012C22EC22DC22FC231E4121C4FA9 +:091C1000FD121CAA74021230D767 +:101C190022F0A3F0FBFA7D01FF122EF0E490015DA2 +:101C2900F0A3F0FBFA7D017F01122EF0E490015D33 +:101C3900F0A3F0FBFA7D017F02122EF0E490015D22 +:101C4900F0A3F0FBFA2290015DF0A3F0FBFAFDFF8F +:101C5900122EF0E490015DF0A3F0FBFAFD7F011272 +:101C69002EF0E490015DF0A3F0FBFAFD7F02122E45 +:101C7900F0E490015DF0A3F0FBFA22F0A3F0FBFA87 +:101C89007D01FF122EF09001027401F0E490015DD4 +:101C9900F0A3F0FBFA227D017F01122EF0900101E1 +:0A1CA900227F03122EF090010222A8 +:10295500023436E493A3F8E493A34003F68001F22E +:1029650008DFF48029E493A3F85407240CC8C33383 +:10297500C4540F4420C8834004F456800146F6DF52 +:10298500E4800B0102040810204080902FABE47E08 +:10299500019360BCA3FF543F30E509541FFEE49347 +:1029A500A360010ECF54C025E060A840B8E493A30E +:1029B500FAE493A3F8E493A3C8C582C8CAC583CA39 +:1029C500F0A3C8C582C8CAC583CADFE9DEE780BEF1 +:012FDF0000F1 +:10139300E709F608DFFA8046E709F208DFFA803E3C +:1013A30088828C83E709F0A3DFFA8032E309F60829 +:1013B300DFFA8078E309F208DFFA807088828C8391 +:1013C300E309F0A3DFFA806489828A83E0A3F60845 +:1013D300DFFA805889828A83E0A3F208DFFA804C1F +:1013E30080D280FA80C680D4806980F280338010F6 +:1013F30080A680EA809A80A880DA80E280CA80335F +:1014030089828A83ECFAE493A3C8C582C8CCC583D6 +:10141300CCF0A3C8C582C8CCC583CCDFE9DEE780A6 +:101423000D89828A83E493A3F608DFF9ECFAA9F025 +:10143300EDFB2289828A83ECFAE0A3C8C582C8CC7B +:10144300C583CCF0A3C8C582C8CCC583CCDFEADE94 +:10145300E880DB89828A83E493A3F208DFF980CCF6 +:1014630088F0EF60010E4E60C388F0ED2402B404EF +:101473000050B9F582EB2402B4040050AF23234596 +:0614830082239013E373C5 +:10148900BB010689828A83E0225002E722BBFE0261 +:09149900E32289828A83E4932294 +:1014A200BB010CE58229F582E5833AF583E02250FF +:1014B20006E92582F8E622BBFE06E92582F8E22249 +:0D14C200E58229F582E5833AF583E4932263 +:1014CF00BB010FF8E58229F582E5833AF583E02821 +:1014DF00F0225009C58229F8E58226F622BBFE09C3 +:1014EF00C58229F8E22582F222F8EA2583F583E9FD +:0314FF009328220D +:10150200BB010689828A83F0225002F722BBFE01C8 +:02151200F322C2 +:10151400F8BB010DE58229F582E5833AF583E8F00D +:10152400225006E92582C8F622BBFE05E92582C8B9 +:02153400F222A1 +:10153600BC000BBE0029EF8DF084FFADF022E4CC99 +:10154600F875F008EF2FFFEE33FEEC33FCEE9DEC62 +:10155600984005FCEE9DFE0FD5F0E9E4CEFD22EDA8 +:10156600F8F5F0EE8420D21CFEADF075F008EF2FF2 +:10157600FFED33FD4007985006D5F0F222C398FDE3 +:051586000FD5F0EA2280 +:10158B00C5F0F8A3E028F0C5F0F8E58215827002EB +:06159B001583E038F02288 +:1015A100BB0110E58229F582E5833AF583E0F5F088 +:1015B100A3E0225009E92582F886F008E622BBFE65 +:1015C1000AE92582F8E2F5F008E222E5832AF583AB +:0815D100E993F5F0A3E9932270 +:1015D900BB010A89828A83F0E5F0A3F0225006F75D +:0F15E90009A7F01922BBFE06F3E5F009F319225A +:1015F800F8BB0111E58229F582E5833AF583E8F025 +:10160800E5F0A3F0225009E92582C8F608A6F022E1 +:0D161800BBFE09E92582C8F2E5F008F222C8 +:10162500E88FF0A4CC8BF0A42CFCE98EF0A42CFC64 +:101635008AF0EDA42CFCEA8EF0A4CDA8F08BF0A4E2 +:101645002DCC3825F0FDE98FF0A42CCD35F0FCEB41 +:101655008EF0A4FEA9F0EB8FF0A4CFC5F02ECD3906 +:0F166500FEE43CFCEAA42DCE35F0FDE43CFC2273 +:10167400EB9FF5F0EA9E42F0E99D42F0E89C45F0CC +:011684002243 +:10168500E86010ECA2E713FCED13FDEE13FEEF137B +:04169500FFD8F02268 +:09169900E0FBA3E0FAA3E0F92252 +:1016A200F8E0FBA3A3E0F925F0F0E58215827002D1 +:0716B2001583E0FA38F02275 +:0916B900EBF0A3EAF0A3E9F02232 +:1016C200D083D082F8E4937012740193700DA3A3B7 +:1016D20093F8740193F5828883E4737402936860CB +:0616E200EFA3A3A380DFCB +:10102E00E508245EF582E43401F583E0050822909C +:10103E00015B30180390015EE475F0011216A202F6 +:10104E0014892011E97F2ED2118018EF540F2490AD +:10105E00D43440D4FF30150BEF24BFB41A00500324 +:10106E002461FFE50960021509050CE50C70020507 +:10107E000B30180E90015BE475F0011216A2EF0210 +:10108E0015020234547403D2188003E4C218F50812 +:10109E0090015B1216B9E4F509F50BF50CE5096044 +:1010AE00077F2012107180F5750AFFC212C211C29D +:1010BE0013C214C216C217C21912103DFF700D30A2 +:1010CE0018057F00121082AF0CAE0B22B4255FC242 +:1010DE00D5C21512103DFF24D0B40A00501A75F077 +:1010EE000A780930D50508B6FF0106C6A426F620F3 +:1010FE00D5047002D21480D924CFB41A00EF500454 +:10110E00C2E5D215021283D21280C6D21180C0D28D +:10111E001380BCD2D580BAD21680B47F2012107143 +:10112E002013077401B5090040F112102EFF1210A2 +:10113E00710210ABD219D217809512102EFB12101D +:10114E002EFA12102EF94A4B700679547A137BFF41 +:10115E0020132EE509602A7E008E827583001214FC +:10116E00A260060EEE650A70F0C2D5EBC0E0EAC0D2 +:10117E00E0E9C0E0EE1212CAD0E0F9D0E0FAD0E019 +:10118E00FB121489FF60AAEBC0E0EAC0E0E9C0E000 +:10119E00121071D0E02401F9D0E03400FAD0E0FB57 +:1011AE00E50A0460DCD50AD980877BFF7A1279C6FE +:1011BE00D213809C791080027908C217C219800858 +:1011CE00D2D5790A8004790AC2D5E50A047002F5EF +:1011DE000AE4FAFDFEFF12102EFC7B0820121312F9 +:1011EE00102EFD7B1030110A12102EFE12102EFF43 +:1011FE007B20EC3382D592D55013C3E43011069F79 +:10120E00FFE49EFEE42012039DFDE49CFCE4CBF87B +:10121E00C212EC700CCFCECDCCE824F8F870F3806F +:10122E0017C3EF33FFEE33FEED33FDEC33FCEB3340 +:10123E00FB994002FB0FD8E9EB301205F8D0E0C461 +:10124E0048B212C0E00AEC4D4E4F78207B0070C2BF +:10125E00EAB50A0040BCC0E01212CCD0F0D0E020BB +:10126E001204C4C0E0C4B212C0F012105AD0F0D5AD +:10127E00F0EB0210AB1216C211485311C2581119DD +:10128E004C11154211C64F11CE4411CE49112E43A9 +:08129E0011D45511B84611B836 +:1012A6004511B847137450111D2D11212E11442BD1 +:1012B600112523114220135D2A10DD480000113C40 +:1012C6003F3F3F00790AA2D5201414301609B91001 +:1012D600020404B9080104A2D52017025001042013 +:1012E60013689213B509005034C0E07F20301419FA +:1012F6007F30A21372177216500F121323C213C235 +:1013060017C216C2197F30800F301603E9C0E012EB +:101316001071301603D0E0F9D0E0B509CC301617BD +:101326007F30B9100C1210717F583015077F788006 +:1013360003B908031210713013057F2D0210717F57 +:10134600202019F87F2B2017F322921380CF286EC6 +:10135600756C6C2900D21212102E3012F8C2127857 +:101366000930D50108F60210DD2D504349581210F8 +:101376002E2403B405004001E490136F931210620B +:0D138600743A121062D2147509040211C2EB +:00000001FF diff --git a/Out/8835_EVB_250213_1145_5A16_010102.bin b/Out/8835_EVB_250213_1145_5A16_010102.bin new file mode 100644 index 0000000..2c45126 Binary files /dev/null and b/Out/8835_EVB_250213_1145_5A16_010102.bin differ diff --git a/Project/SY8835_Demo.uvgui.GH b/Project/SY8835_Demo.uvgui.GH index 05f8316..dd13d8a 100644 --- a/Project/SY8835_Demo.uvgui.GH +++ b/Project/SY8835_Demo.uvgui.GH @@ -101,17 +101,17 @@ -1 - 167 - 2141 - 4061 - 1129 + 164 + -392 + 1528 + 1126 0 - 1058 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000A000000010000000100000036453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF41453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C757365726170705C757365726170702E630000000009757365726170702E6300000000FFDC7800FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C766F785C766F785F6D6F64756C652E63000000000C766F785F6D6F64756C652E6300000000BECEA100FFFFFFFF4C453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6469736368617267655C6469736368617267655F6D6F64756C652E6300000000126469736368617267655F6D6F64756C652E6300000000F0A0A100FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6164635C6164632E6300000000056164632E6300000000BCA8E100FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5372635C737461727475705C535441525455502E413531000000000B535441525455502E413531000000009CC1B600FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C766F785C766F785F6D6F64756C652E68000000000C766F785F6D6F64756C652E6800000000F7B88600FFFFFFFF3B453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C756172745C756172742E630000000006756172742E6300000000D9ADC200FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6B65795C6B65792E6300000000056B65792E6300000000A5C2D700FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6261745C6261742E6300000000056261742E6300000000B3A6BE00FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000007408000066000000000F000094020000 + 1603 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000010000000060000000100000036453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF41453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C757365726170705C757365726170702E630000000009757365726170702E6300000000FFDC7800FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C766F785C766F785F6D6F64756C652E63000000000C766F785F6D6F64756C652E6300000000BECEA100FFFFFFFF4C453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6469736368617267655C6469736368617267655F6D6F64756C652E6300000000126469736368617267655F6D6F64756C652E6300000000F0A0A100FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6164635C6164632E6300000000056164632E6300000000BCA8E100FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5372635C737461727475705C535441525455502E413531000000000B535441525455502E413531000000009CC1B600FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C766F785C766F785F6D6F64756C652E68000000000C766F785F6D6F64756C652E6800000000F7B88600FFFFFFFF3B453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C756172745C756172742E630000000006756172742E6300000000D9ADC200FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6B65795C6B65792E6300000000056B65792E6300000000A5C2D700FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6261745C6261742E6300000000056261742E6300000000B3A6BE00FFFFFFFF3F453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C73797374656D5C73797374656D2E63000000000873797374656D2E6300000000EAD6A300FFFFFFFF44453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C646973706C61795C646973706C61795F75692E63000000000C646973706C61795F75692E6300000000F6FA7D00FFFFFFFF48453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C636861726765725C636861726765725F6D6F64756C652E630000000010636861726765725F6D6F64756C652E6300000000B5E99D00FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6C65645C6C65642E6300000000056C65642E63000000005FC3CF00FFFFFFFF3C453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C696E635C646566696E652E680000000008646566696E652E6800000000C1838300FFFFFFFF3C453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C696E635C636F6E6669672E680000000008636F6E6669672E6800000000CACAD500FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000094020000 @@ -134,7 +134,7 @@ 16 - 70000000870000003803000017010000 + F40000006600000090050000F6000000 @@ -190,7 +190,7 @@ 0 16 - 000000002D02000090050000BD020000 + 03000000300200008D050000A4020000 16 @@ -210,7 +210,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -230,7 +230,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -250,7 +250,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -270,7 +270,7 @@ 0 16 - A3040000660000008D05000001010000 + A3040000660000008D05000010020000 16 @@ -330,7 +330,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -350,7 +350,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -370,7 +370,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -390,7 +390,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -410,7 +410,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -430,7 +430,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -526,11 +526,11 @@ 0 32767 0 - 4096 + 32768 0 16 - 03000000980200008D050000F8020000 + 03000000980200007D070000CD030000 16 @@ -550,7 +550,7 @@ 0 16 - F40000006300000090050000DF000000 + F7000000660000008D050000C6000000 16 @@ -610,7 +610,7 @@ 0 16 - A0040000630000009005000029020000 + A3040000660000008D05000010020000 16 @@ -630,7 +630,7 @@ 0 16 - 000000002D02000090050000A9020000 + 03000000300200008D050000A4020000 16 @@ -690,7 +690,7 @@ 0 16 - F40000006300000090050000DF000000 + F7000000660000008D050000C6000000 16 @@ -730,7 +730,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -750,7 +750,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -770,7 +770,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -790,7 +790,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -810,7 +810,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -830,7 +830,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -850,7 +850,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -870,7 +870,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -890,7 +890,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -910,7 +910,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -930,7 +930,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -950,7 +950,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -970,7 +970,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -990,7 +990,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1010,7 +1010,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1030,7 +1030,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1050,7 +1050,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1070,7 +1070,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1090,7 +1090,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1110,7 +1110,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1130,7 +1130,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1150,7 +1150,7 @@ 0 16 - 0300000066000000ED000000A4020000 + 0300000066000000ED00000064020000 16 @@ -1166,11 +1166,11 @@ 0 32767 0 - 4096 + 32768 0 16 - 00000000950200009005000011030000 + 03000000980200007D070000CD030000 16 @@ -1186,11 +1186,11 @@ 0 32767 0 - 4096 + 32768 0 16 - 03000000980200008D050000F8020000 + 03000000980200007D070000CD030000 16 @@ -1210,7 +1210,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -1230,7 +1230,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -1246,11 +1246,11 @@ 0 32767 0 - 4096 + 32768 0 16 - 03000000980200008D050000F8020000 + 03000000980200007D070000CD030000 16 @@ -1266,11 +1266,11 @@ 0 32767 0 - 4096 + 32768 0 16 - 03000000980200008D050000F8020000 + 03000000980200007D070000CD030000 16 @@ -1310,7 +1310,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1330,7 +1330,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1350,7 +1350,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1370,7 +1370,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1390,7 +1390,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1410,7 +1410,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1430,7 +1430,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1450,7 +1450,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1470,7 +1470,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1490,7 +1490,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1510,7 +1510,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1530,7 +1530,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1550,7 +1550,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1570,7 +1570,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1590,7 +1590,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1610,7 +1610,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1630,7 +1630,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1650,7 +1650,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1670,7 +1670,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1690,7 +1690,7 @@ 0 16 - A3040000660000008D0500007C010000 + A3040000660000008D05000010020000 16 @@ -1704,7 +1704,7 @@ 0 0 0 - 32767 + 966 0 8192 0 @@ -1744,7 +1744,7 @@ 0 0 0 - 32767 + 476 0 8192 1 @@ -1764,7 +1764,7 @@ 0 0 0 - 32767 + 612 0 8192 2 @@ -1790,7 +1790,7 @@ 0 16 - 03000000300200008D05000090020000 + 03000000300200008D050000A4020000 16 @@ -1799,14 +1799,14 @@ 3312 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100001004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E65002000000000000070000000870000003803000017010000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200001004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000070000000870000006001000052010000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F40000007D020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000070000000870000006001000052010000000000004F000000F00000007D0200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000015020000900500001902000000000000010000100400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB0900000180008000000000000070000000870000006001000052010000000000001902000090050000BD02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000019020000CC020000BD02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000007D02000080070000810200000100000001000010040000000100000002FDFFFF8E000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF010000779400000180008000000100000070000000870000003803000017010000000000008102000080070000E60300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000F40000006600000090050000F6000000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A0040000660000009005000040020000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F40000007D020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000F000000094020000000000004F000000F00000007D0200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000015020000900500001902000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000003002000090050000D4020000000000001902000090050000BD02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000019020000CC020000BD02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000007D02000080070000810200000100000001000010040000000100000002FDFFFF8E000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000000000009802000080070000FD030000000000008102000080070000E60300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File - 2914 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000036162739600000000000000140003616273083230323431303135084144435F43544C310F636872675F69635F64697361626C6508636872675F69635F04343235300E496E697469616C5F5354373733350564656275671C4932435F57726974655F4F6E654279746528305844342C307830312C1C4932435F57726974655F4F6E654279746528305844342C307831302C0B536C6565705F64656C61791B4932435F57726974655F4F6E654279746528305844342C307830371B4932435F57726974655F4F6E654279746528305844342C3078313010636872675F63757272656E745F736574174932435F57726974655F4F6E654279746528305844342C1B4932435F57726974655F4F6E654279746528305844342C30783033023033084C444F5F43544C30043437303008766F6C5F766261740000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000000000000010000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65FF7F0000 + 2929 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000D45617270686F6E655F56626174960000000000000014000D45617270686F6E655F5662617403616273083230323431303135084144435F43544C310F636872675F69635F64697361626C6508636872675F69635F04343235300E496E697469616C5F5354373733350564656275671C4932435F57726974655F4F6E654279746528305844342C307830312C1C4932435F57726974655F4F6E654279746528305844342C307831302C0B536C6565705F64656C61791B4932435F57726974655F4F6E654279746528305844342C307830371B4932435F57726974655F4F6E654279746528305844342C3078313010636872675F63757272656E745F736574174932435F57726974655F4F6E654279746528305844342C1B4932435F57726974655F4F6E654279746528305844342C30783033023033084C444F5F43544C3004343730300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1822,7 +1822,7 @@ Build 976 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64FF7F0000 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -1838,7 +1838,7 @@ Debug 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000000000000100000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000000000001000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000000000000100000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000000000000100000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000000000000100000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F720100000000000000000000000100000001000000000000000000000001000000000000000000054465627567FF7F0000 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -1871,11 +1871,11 @@ 0 16 - F40000004F00000080070000DF000000 + F40000004F0000008007000039010000 16 - 7408000066000000000F0000F6000000 + F40000006600000080070000F6000000 @@ -2291,7 +2291,7 @@ 0 16 - F40000006300000080070000DF000000 + F4000000630000008007000039010000 16 @@ -3540,14 +3540,14 @@ 3311 - 000000000B000000000000000020000001000000FFFFFFFFFFFFFFFFF4000000DF00000080070000E3000000010000000100001004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E6500200000010000007408000066000000000F0000F6000000F40000004F00000080070000DF0000000000000040280056080000000B446973617373656D626C7901000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000200C000066000000100D000040020000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F40000003E030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000080070000660000007008000055030000000000004F000000F00000003E0300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73000000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7300000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657300000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273010000007394000001000000FFFFFFFFFFFFFFFF04000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000001000000FFFFFFFFFFFFFFFF000000003E030000800700004203000001000000010000100400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000001000000440B000059030000000F0000FD030000C40300004203000080070000E603000000000000404100560F0000001343616C6C20537461636B202B204C6F63616C73010000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203101000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFF000000000000000001000000000000000100000001000000FFFFFFFFC003000042030000C4030000E603000001000000020000100400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF0000000029020000900500002D020000000000000100000004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000000000008007000044020000100D0000D4020000000000002D02000090050000BD0200000000000040820046060000000C4275696C64204F757470757400000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0642726F777365000000007794000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000001000000FFFFFFFFFFFFFFFFF400000039010000800700003D0100000100000001000010040000000100000072FFFFFF56020000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000001000000F40000006600000080070000F6000000F40000004F00000080070000390100000000000040280056080000000B446973617373656D626C7901000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A0040000660000009005000040020000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F40000003E030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000F000000055030000000000004F000000F00000003E0300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73000000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7300000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657300000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273010000007394000001000000FFFFFFFFFFFFFFFF04000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000001000000FFFFFFFFFFFFFFFF000000003E030000800700004203000001000000010000100400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000001000000C40300005903000080070000FD030000C40300004203000080070000E603000000000000404100560F0000001343616C6C20537461636B202B204C6F63616C73010000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203101000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFF000000000000000001000000000000000100000001000000FFFFFFFFC003000042030000C4030000E603000001000000020000100400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF0000000029020000900500002D020000000000000100000004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000000000000000000004402000090050000D4020000000000002D02000090050000BD0200000000000040820046060000000C4275696C64204F757470757400000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0642726F777365000000007794000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File - 2763 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000001D48414C5F534D4255535F536C617665527843706C7443616C6C6261636B960000000000000008001D48414C5F534D4255535F536C617665527843706C7443616C6C6261636B197379363230785F6972715F68616E646C65725F746872656164044E4F4E4511677379363230785F6465766963655F7379144932435F4745545F4F574E5F4144445245535331144932435F4745545F4F574E5F41444452455353320C4932435F4F4152325F4F41321E48414C5F534D4255535F4D6173746572527843706C7443616C6C6261636B0000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000100150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 2929 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000D45617270686F6E655F56626174960000000000000014000D45617270686F6E655F5662617403616273083230323431303135084144435F43544C310F636872675F69635F64697361626C6508636872675F69635F04343235300E496E697469616C5F5354373733350564656275671C4932435F57726974655F4F6E654279746528305844342C307830312C1C4932435F57726974655F4F6E654279746528305844342C307831302C0B536C6565705F64656C61791B4932435F57726974655F4F6E654279746528305844342C307830371B4932435F57726974655F4F6E654279746528305844342C3078313010636872675F63757272656E745F736574174932435F57726974655F4F6E654279746528305844342C1B4932435F57726974655F4F6E654279746528305844342C30783033023033084C444F5F43544C3004343730300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000300150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -3563,7 +3563,7 @@ Build 955 - 00200000000000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000010000000000000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000000002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050FFFFFFFF00960000000000000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000000240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + 00200000000000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0000000000000000010000000000000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000000002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050FFFFFFFF00960000000000000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000000240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -3579,7 +3579,7 @@ Debug 2362 - 00200000010000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000004002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000020001002D0000000000000000000000000000000001000000010000000180F07F0000020001002E0000000000000000000000000000000001000000010000000180E8880000020000003700000000000000000000000000000000010000000100000001803B010000020001002F0000000000000000000000000000000001000000010000000180BB8A00000200010030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000002000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F0100000200010032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000002000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000002000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000010000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000004002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000020001002D0000000000000000000000000000000001000000010000000180F07F0000020001002E0000000000000000000000000000000001000000010000000180E8880000020000003700000000000000000000000000000000010000000100000001803B010000020001002F0000000000000000000000000000000001000000010000000180BB8A00000200010030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000002000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F0100000200010032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000002000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000002000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -3603,38 +3603,38 @@ 0 100 - 1 + 6 ..\UsrSrc\main.c - 20 - 1 - 22 + 0 + 18 + 47 1 0 ..\UsrSrc\userapp\userapp.c - 14 - 107 - 135 + 0 + 147 + 170 1 0 ..\UsrSrc\vox\vox_module.c - 0 - 1 - 1 + 89 + 1931 + 1959 1 0 ..\UsrSrc\discharge\discharge_module.c - 2 - 176 + 9 + 169 198 1 @@ -3651,18 +3651,18 @@ ..\Src\startup\STARTUP.A51 - 1 - 16 - 31 + 0 + 122 + 130 1 0 ..\UsrInc\vox\vox_module.h - 20 - 277 - 297 + 16 + 202 + 215 1 0 @@ -3670,17 +3670,17 @@ ..\UsrSrc\uart\uart.c 0 - 193 - 206 + 510 + 529 1 0 ..\UsrSrc\key\key.c - 0 - 281 - 306 + 2 + 220 + 237 1 0 @@ -3694,6 +3694,60 @@ 0 + + ..\UsrSrc\system\system.c + 13 + 108 + 129 + 1 + + 0 + + + ..\UsrSrc\display\display_ui.c + 8 + 120 + 149 + 1 + + 0 + + + ..\UsrSrc\charger\charger_module.c + 8 + 6 + 31 + 1 + + 0 + + + ..\UsrSrc\led\led.c + 0 + 205 + 234 + 1 + + 0 + + + ..\UsrInc\inc\define.h + 24 + 26 + 51 + 1 + + 0 + + + \todaywork\20241030_sy8835\SY8835_Demo\UsrInc\inc\config.h + 0 + 281 + 303 + 1 + + 0 + diff --git a/Project/SY8835_Demo.uvopt b/Project/SY8835_Demo.uvopt index 5010072..159f6da 100644 --- a/Project/SY8835_Demo.uvopt +++ b/Project/SY8835_Demo.uvopt @@ -58,7 +58,7 @@ 1 1 0 - 0 + 1 0 @@ -145,7 +145,24 @@ -S14 -B921600 -O1799 - + + + 0 + 0 + 170 + 1 +
-16762681
+ 0 + 0 + 0 + 0 + 0 + 1 + E:\todaywork\20241030_sy8835\SY8835_Demo\Project\UsrSrc\userapp\USERAPP.C + + +
+
0 @@ -256,7 +273,7 @@ 2 2 1 - 0 + 1 0 0 ..\UsrSrc\main.c @@ -508,7 +525,7 @@ 2 23 1 - 1 + 0 0 0 ..\UsrSrc\display\display_ui.c diff --git a/Project/SY8835_Demo.uvproj b/Project/SY8835_Demo.uvproj index f77f5a0..d18c28c 100644 --- a/Project/SY8835_Demo.uvproj +++ b/Project/SY8835_Demo.uvproj @@ -257,8 +257,8 @@ 0 - 0x0 - 0x400 + 0x100 + 0x300 0 @@ -357,7 +357,7 @@ - 0X0000-0X03FF + 0X0100-0X03FF diff --git a/UsrInc/adc/adc.h b/UsrInc/adc/adc.h index 1e7b8df..7c3811f 100644 --- a/UsrInc/adc/adc.h +++ b/UsrInc/adc/adc.h @@ -36,33 +36,27 @@ \******************************************************************************/ extern uint8_t ADC_Chn_Num; -extern idata uint16_t Vbat_Adc; +extern uint16_t Vbat_Adc; -extern idata int16 g_Vpmu_Adc; +extern int16 g_Vpmu_Adc; -extern idata int16 g_Vntc_Adc; -#if 0 -extern idata uint16_t g_Vbjt_Adc; +extern int16 g_Vntc_Adc; -extern idata uint16_t g_Vp13_Adc; - -extern idata uint16_t g_Vref_Adc; -#endif extern uint8_t g_PMU_ADC_Chn; -extern idata uint16_t g_pmu_Adc_Ivol; +extern uint16_t g_pmu_Adc_Ivol; -extern idata uint16_t g_pmu_Adc_Vin; +extern uint16_t g_pmu_Adc_Vin; -extern idata uint16_t g_pmu_Adc_Vpmid; +extern uint16_t g_pmu_Adc_Vpmid; -extern idata uint16_t g_pmu_Adc_Vor; +extern uint16_t g_pmu_Adc_Vor; -extern idata uint16_t g_pmu_Adc_Vol; +extern uint16_t g_pmu_Adc_Vol; -extern idata uint16_t g_pmu_Adc_Vdd; +extern uint16_t g_pmu_Adc_Vdd; -extern idata uint16_t g_pmu_Adc_Ivor; +extern uint16_t g_pmu_Adc_Ivor; typedef enum { diff --git a/UsrInc/bat/bat.h b/UsrInc/bat/bat.h index 9f29e93..45c5faa 100644 --- a/UsrInc/bat/bat.h +++ b/UsrInc/bat/bat.h @@ -40,10 +40,10 @@ Variables definitions \******************************************************************************/ -extern idata uint8_t bat_level; +extern uint8_t bat_level; -extern idata uint8_t offset_bat_level; +extern uint8_t offset_bat_level; extern bit F_batlevel_low; //电池低压 diff --git a/UsrInc/i2c_simu/i2c_simu.h b/UsrInc/i2c_simu/i2c_simu.h index b9d94d1..756df6f 100644 --- a/UsrInc/i2c_simu/i2c_simu.h +++ b/UsrInc/i2c_simu/i2c_simu.h @@ -66,9 +66,9 @@ sbit pin_i2c_sda = P0^1; #endif #define __I2C_SPEED_FAST__ -extern idata bool F_I2C_SIMU_INIT; +extern bool F_I2C_SIMU_INIT; -extern idata bool F_I2C_SIMU_ERROR; +extern bool F_I2C_SIMU_ERROR; /******************************************************************************\ Functions definitions diff --git a/UsrInc/inc/config.h b/UsrInc/inc/config.h index d252038..dceff4b 100644 --- a/UsrInc/inc/config.h +++ b/UsrInc/inc/config.h @@ -369,7 +369,7 @@ typedef enum } TE_CHG_STA; -extern idata TE_CHG_STA ChgStatus; // Charger状态定义 +extern TE_CHG_STA ChgStatus; // Charger状态定义 /* Boost相关标志位 */ extern bit gBoost_Prepared_Flag; //Boost满足开启条件,TRUE:Boost无保护,可以开启;FAULSE:Boost有保护,无法正常开启。 diff --git a/UsrInc/inc/define.h b/UsrInc/inc/define.h index c2a4282..e2c1049 100644 --- a/UsrInc/inc/define.h +++ b/UsrInc/inc/define.h @@ -44,12 +44,14 @@ #define GPIO_I2C_SIMULATE 1 //GPIO 模拟 I2C接口 -#define HALL_ENABLE 1 //Hall功能。(Hall 46Bytes) - #define KEY_ENABLE 1 //Key功能(111Bytes) #define VOX_ENABLE 1 //1080Bytes +#define VOX_COVER_ENABLE //带HALL,关盖应用 + +//#define VOX_ADT_ENABLE //无HALL,耳机入盒充电应用 + #define VOX_FOLLOW_CHG 1 //1701Bytes #if VOX_ENABLE @@ -60,6 +62,16 @@ #endif +#ifdef VOX_ADT_ENABLE + +#define HALL_ENABLE 0 + +#else + +#define HALL_ENABLE 1 //Hall功能。(Hall 103Bytes) + +#endif + #define CHARGER_ENABLE 1 //94Bytes #define DISCHARGE_ENABLE 1 //75Bytes @@ -82,7 +94,7 @@ #ifdef _DEBUG_ALL - #define _DEBUG_MAIN +// #define _DEBUG_MAIN #define _DEBUG_PMU #define _DEBUG_KEY #define _DEBUG_VOX diff --git a/UsrInc/key/key.h b/UsrInc/key/key.h index a5c6e24..8eafc40 100644 --- a/UsrInc/key/key.h +++ b/UsrInc/key/key.h @@ -47,7 +47,7 @@ typedef enum { KEY_EVENT_LL_8S, //Key super long press for 8s interrupt flag }KEY_EVENT_E; -extern idata KEY_EVENT_E Event_key; +extern KEY_EVENT_E Event_key; /******************************************************************************\ Functions definitions diff --git a/UsrInc/pmu/pmu.h b/UsrInc/pmu/pmu.h index 0d275b7..d2a8803 100644 --- a/UsrInc/pmu/pmu.h +++ b/UsrInc/pmu/pmu.h @@ -449,7 +449,7 @@ typedef enum }g_chg_type; -extern g_PMU_Info xdata pmu_Info; //pmu状态信息 +extern g_PMU_Info pmu_Info; //pmu状态信息 extern g_PMU_Sys_Cfg pmu_Sys_Cfg; diff --git a/UsrInc/uart/uart.h b/UsrInc/uart/uart.h index c3f4f20..37e5910 100644 --- a/UsrInc/uart/uart.h +++ b/UsrInc/uart/uart.h @@ -63,7 +63,7 @@ extern char putchar (char ch); Variables definitions \******************************************************************************/ -extern idata uint8_t RX0_Buffer[COM0_Data_Lenth]; //接收缓冲 +extern uint8_t RX0_Buffer[COM0_Data_Lenth]; //接收缓冲 extern bit Uart0_RX_Finish_Flag; #endif diff --git a/UsrInc/userapp/userapp.h b/UsrInc/userapp/userapp.h index ca8012b..c0eca75 100644 --- a/UsrInc/userapp/userapp.h +++ b/UsrInc/userapp/userapp.h @@ -52,7 +52,7 @@ typedef struct { }s_sys_state; -extern xdata s_sys_state Systerm_State; +extern s_sys_state Systerm_State; extern bit Wkup_Earphone_Flag; //保护消失后,需要升压唤醒耳机标志位 diff --git a/UsrInc/vox/vox_module.h b/UsrInc/vox/vox_module.h index 96a5942..c2c6ebe 100644 --- a/UsrInc/vox/vox_module.h +++ b/UsrInc/vox/vox_module.h @@ -34,18 +34,27 @@ /*软件版本信息*/ #define FW_VER 0x001 //程序版本 -extern bit Vox_Vout_Enable; - extern bit Vox_Output_Short_Flag; #define IVOX_THN 20 //耳机跟随充电流下降阈值 #define IVOX_THP 200 //耳机跟随充电流上升阈值 +#define VOL_TYPE 0x00 -#define VOL_TYPE 0x00 +#define VOR_TYPE 0x01 -#define VOR_TYPE 0x01 +#define VOX_MAX_CHAN 0x02 + + typedef enum { + + VOX_NONE_IN_BOX = 0, //空仓 + + VOX_GET_INTO_BOX, //耳机入仓 + + VOX_STAY_IN_BOX, //耳机在仓 + + }Vox_State_e; /*耳机配对状态*/ typedef enum { @@ -59,6 +68,7 @@ extern bit Vox_Output_Short_Flag; VOX_PAIR_KEEP, //不处理,保持当前状态 }e_Vox_Pairing_State; + /*耳机配对记录*/ typedef enum { @@ -69,6 +79,26 @@ extern bit Vox_Output_Short_Flag; }e_Vox_Paired_State; +#ifdef VOX_COVER_ENABLE + + extern bit Vox_Vout_Enable; //Vox功率输出标志位 + +#else + + extern bit Vor_Vout_Enable; //Vor功率输出标志位 + + extern bit Vol_Vout_Enable; //Vol功率输出标志位 + + extern bit Vor_GetOut_Box_Flag; + + extern bit Vol_GetOut_Box_Flag; + + extern Vox_State_e Vor_State; + + extern Vox_State_e Vol_State; + +#endif + #if VOX_ENABLE /******************************************************************************\ @@ -150,8 +180,6 @@ typedef enum { VOL_CHAN = 0x00, VOR_CHAN = 0x01, - - VOX_MAX_CHAN = 0x02, VOX_BOTH = 0xFF, @@ -189,8 +217,6 @@ typedef enum { VOL_CHAN = 0x11, VOR_CHAN = 0x22, - - VOX_MAX_CHAN = 0x02, VOX_BOTH = 0xff, @@ -230,6 +256,7 @@ typedef enum _VOX_BES_COMMAND_E VHOUSE_CMD_SYS_RST = 0xFF, //系统复位指令 }VOX_BES_COMMAND_E; + #elif XUANHENG @@ -240,8 +267,6 @@ typedef enum { VOR_CHAN = 0x25, VOX_BOTH = 0x21, - - VOX_MAX_CHAN = 0x02, }e_Vox_Chan; @@ -268,6 +293,19 @@ typedef enum _VOX_BES_COMMAND_E }VOX_BES_COMMAND_E; +#else + +/*耳机通道选择*/ +typedef enum { + + VOL_CHAN = 0x00, + + VOR_CHAN = 0x01, + + VOX_BOTH = 0xFF, + +}e_Vox_Chan; + #endif /* Vox Channel Select. */ @@ -299,19 +337,19 @@ typedef enum { /* VOX Enable Type */ typedef enum { - VOX_TRANS_Mode = 0x00, //VOx UART 透传功能使能 - - VOX_COMM_Mode_Uart, //VOx 通讯 UART Mode - - VOX_COMM_Mode_Reg, //VOx 通讯 Register Mode - - VOX_VOUT_Mode, //VOx 5V 输出使能 - - VOX_ADT_Mode, //VOx 负载接入、存在识别功能使能,负载自动识别 + VOX_TRANS_Mode = 0x00, //VOx UART 透传功能使能 - VOX_PUnK_Mode, //Vox上拉电阻配置,上拉到VOX_Vup。 - - VOX_PD1K_Mode, // VOX 1K 电阻下拉使能 1: VOR 通过 1K 电阻下拉至 gnd + VOX_COMM_Mode_Uart, //VOx 通讯 UART Mode + + VOX_COMM_Mode_Reg, //VOx 通讯 Register Mode + + VOX_VOUT_Mode, //VOx 5V 输出使能 + + VOX_ADT_Mode, //VOx 负载接入、存在识别功能使能,负载自动识别 + + VOX_PUnK_Mode, //Vox上拉电阻配置,上拉到VOX_Vup。 + + VOX_PD1K_Mode, // VOX 1K 电阻下拉使能 1: VOR 通过 1K 电阻下拉至 gnd } VOX_Enable_Mode_e; @@ -323,9 +361,9 @@ extern bit OpenCover_TX_Cmd_Flag; #ifdef VOX_RX -extern xdata uint8_t Vox_Get_Vbat_Flag[2]; //耳机配对状态,VOL:低4bit;VOR:高4bit。0是无效,1是正在配对,2是配对成功,3不处理,保持当前状态。 +extern uint8_t Vox_Get_Vbat_Flag[2]; //耳机配对状态,VOL:低4bit;VOR:高4bit。0是无效,1是正在配对,2是配对成功,3不处理,保持当前状态。 -extern xdata uint8_t Vox_Get_BES_Addr_Flag[2] ; +extern uint8_t Vox_Get_BES_Addr_Flag[2] ; #endif @@ -363,7 +401,7 @@ typedef struct { } g_Vox_Fllow_Chg_Cfg; -extern g_Vox_Fllow_Chg_Cfg xdata Vox_Fllow_Chg; +extern g_Vox_Fllow_Chg_Cfg idata Vox_Fllow_Chg; #endif @@ -372,17 +410,43 @@ extern g_Vox_Fllow_Chg_Cfg xdata Vox_Fllow_Chg; /******************************************************************************\ UserCfg.Functions definitions \******************************************************************************/ +#ifdef VOX_TX extern void HandleTxCommand(VOX_BES_COMMAND_E TxCommand, e_Vox_Chan nVox_Chn_Select); +#endif + +#ifdef VOX_ADT_ENABLE + +extern void Vol_Det_Machine(void); +extern void Vor_Det_Machine(void); + +#else + extern void Vox_Det_Machine(void); + +#endif + #if VOX_FOLLOW_CHG extern void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ); #endif + +#ifdef VOX_ADT_ENABLE + +extern void VOL_EN_Type(VOX_Enable_Mode_e VOX_Enable_Mode); + +extern void VOR_EN_Type(VOX_Enable_Mode_e VOX_Enable_Mode); + +#else + extern void VOX_EN_Type(VOX_Enable_Mode_e VOX_Enable_Mode); +#endif + #ifdef VOX_RX + extern void HandleVoxCommMsg(void); + #endif #endif diff --git a/UsrSrc/adc/adc.c b/UsrSrc/adc/adc.c index 86b2929..12dda83 100644 --- a/UsrSrc/adc/adc.c +++ b/UsrSrc/adc/adc.c @@ -32,30 +32,30 @@ Variables definitions \******************************************************************************/ int8_t ADC_Offset_Error; //ADC Offset Error 校准值寄存器 - + uint8_t ADC_Chn_Num; -idata uint16_t Vbat_Adc; +uint16_t Vbat_Adc; -idata int16 g_Vpmu_Adc; +int16 g_Vpmu_Adc; -idata int16 g_Vntc_Adc; +int16 g_Vntc_Adc; uint8_t g_PMU_ADC_Chn; -idata uint16_t g_pmu_Adc_Ivol; +uint16_t g_pmu_Adc_Ivol; -idata uint16_t g_pmu_Adc_Vin; +uint16_t g_pmu_Adc_Vin; -idata uint16_t g_pmu_Adc_Vpmid; +uint16_t g_pmu_Adc_Vpmid; -idata uint16_t g_pmu_Adc_Vor; +uint16_t g_pmu_Adc_Vor; -idata uint16_t g_pmu_Adc_Vol; +uint16_t g_pmu_Adc_Vol; -idata uint16_t g_pmu_Adc_Vdd; +uint16_t g_pmu_Adc_Vdd; -idata uint16_t g_pmu_Adc_Ivor; +uint16_t g_pmu_Adc_Ivor; /******************************************************************************\ Functions definitions diff --git a/UsrSrc/bat/bat.c b/UsrSrc/bat/bat.c index 797a789..4816e75 100644 --- a/UsrSrc/bat/bat.c +++ b/UsrSrc/bat/bat.c @@ -21,7 +21,7 @@ #include "adc.h" #include "pmu.h" -idata uint8_t bat_level; +uint8_t bat_level; bit F_batlevel_low; //电池低压 @@ -482,7 +482,7 @@ bit F_batlevel_50p; bit F_batlevel_75p; -idata uint8_t offset_bat_level; +uint8_t offset_bat_level; /*充电电池电压会浮高,具体电压需要测试。*/ const uint16_t Boost_batlevel_Threshold[C_batLevel_SetMax] = @@ -580,27 +580,27 @@ void check_bat_level(void) if( bat_level <= C_bat_level_protect ) { - F_batlevel_protect = 1; + F_batlevel_protect = TRUE; } if( bat_level <= C_bat_level_lowpower ) { - F_batlevel_low = 1; + F_batlevel_low = TRUE; } if( bat_level <= C_bat_level_25p_power ) { - F_batlevel_25p = 1; + F_batlevel_25p = TRUE; } if( bat_level <= C_bat_level_50p_power ) { - F_batlevel_50p = 1; + F_batlevel_50p = TRUE; } if( bat_level <= C_bat_level_75p_power ) { - F_batlevel_75p = 1; + F_batlevel_75p = TRUE; } } diff --git a/UsrSrc/charger/charger_module.c b/UsrSrc/charger/charger_module.c index dcf0020..4e181e4 100644 --- a/UsrSrc/charger/charger_module.c +++ b/UsrSrc/charger/charger_module.c @@ -32,7 +32,7 @@ bit CHG_NTC_Pro_Flag; #endif -idata TE_CHG_STA ChgStatus; // CHG状态定义 +TE_CHG_STA ChgStatus; // CHG状态定义 #if CHARGER_ENABLE /******************************************************************************\ @@ -44,11 +44,9 @@ idata TE_CHG_STA ChgStatus; // CHG状态 Variables definitions \******************************************************************************/ +uint8_t gConstant_Cur_Max_Setting; //Charge最大充电电流。 - -idata uint8_t gConstant_Cur_Max_Setting; //Charge最大充电电流。 - -idata s_gCharger_Cfg gCharge_Cfg; +s_gCharger_Cfg gCharge_Cfg; /******************************************************************************\ Functions definitions @@ -138,7 +136,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > JEITA_NTC_CHG_COLD_HIGH_TMP ) //0.5*ICC充电 { - NTC_250mA_Chg_Flag = 1; + NTC_250mA_Chg_Flag = TRUE; gCharge_Cfg.nConstant_Cur = gConstant_Cur_Max_Setting / 2; @@ -146,7 +144,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > JEITA_NTC_CHG_COLD_HYST_HIGH_TMP ) { - NTC_500mA_Chg_Flag = 0; + NTC_500mA_Chg_Flag = FALSE; //gCharge_Cur.nConstant_Cur = gConstant_Cur_Max_Setting / 2; } @@ -161,7 +159,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) else if( NTC_Adc <= JEITA_NTC_CHG_WARM_LOW_TMP && NTC_Adc > JEITA_NTC_CHG_WARM_HIGH_TMP ) //1*ICC充电 { - NTC_500mA_Chg_Flag = 1; + NTC_500mA_Chg_Flag = TRUE; gCharge_Cfg.nConstant_Cur = gConstant_Cur_Max_Setting; @@ -169,7 +167,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc <= JEITA_NTC_CHG_WARM_HYST_LOW_TMP ) { - NTC_250mA_Chg_Flag = 0; + NTC_250mA_Chg_Flag = FALSE; // gCharge_Cur.nConstant_Cur = gConstant_Cur_Max_Setting; } @@ -185,7 +183,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc <= JEITA_NTC_CHG_WARM_HYST_HIGH_TMP ) { - NTC_Change_CV_Chg_Flag = 0; + NTC_Change_CV_Chg_Flag = FALSE; // gCharge_Cur.nVFloat = CHG_VFLOAT_4_200V; } @@ -200,7 +198,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) else if( NTC_Adc <= JEITA_NTC_CHG_HOT_LOW_TMP ) //浮充电压4.05V { - NTC_Change_CV_Chg_Flag = 1; + NTC_Change_CV_Chg_Flag = TRUE; gCharge_Cfg.nVFloat = VFLOAT_JEITA_HOT; @@ -208,7 +206,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if(NTC_Adc <= JEITA_NTC_CHG_HOT_HYST_LOW_TMP) { - NTC_500mA_Chg_Flag = 0; + NTC_500mA_Chg_Flag = FALSE; // gCharge_Cur.nVFloat = CHG_VFLOAT_4_050V; } @@ -225,7 +223,8 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc < JEITA_NTC_CHG_PRO_HYST_LOW_TMP) { - CHG_NTC_Low_Pro_Flag = 0; + CHG_NTC_Low_Pro_Flag = FALSE; + NTC_Flag = FALSE; } else @@ -238,7 +237,8 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > JEITA_NTC_CHG_PRO_HYST_HIGH_TMP ) { - CHG_NTC_High_Pro_Flag = 0; + CHG_NTC_High_Pro_Flag = FALSE; + NTC_Flag = FALSE; } else @@ -251,7 +251,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > JEITA_NTC_CHG_PRO_LOW_TMP ) //不充电 { - CHG_NTC_Low_Pro_Flag = 1; + CHG_NTC_Low_Pro_Flag = TRUE; #ifdef _DEBUG_CHARGER printf("NTC Low Pro!NTC_Adc:%d,(line:%d)\r\n",(uint16)NTC_Adc,(uint16)__LINE__); @@ -262,7 +262,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) if( NTC_Adc <= JEITA_NTC_CHG_PRO_HIGH_TMP ) //不充电 { - CHG_NTC_High_Pro_Flag = 1; + CHG_NTC_High_Pro_Flag = TRUE; NTC_Flag = TRUE; @@ -272,13 +272,14 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) } } - DisChg_NTC_Low_Pro_Flag = 0; - DisChg_NTC_High_Pro_Flag = 0; + DisChg_NTC_Low_Pro_Flag = FALSE; + DisChg_NTC_High_Pro_Flag = FALSE; } else //放电模式 { - CHG_NTC_Low_Pro_Flag = 0; - CHG_NTC_High_Pro_Flag = 0; + CHG_NTC_Low_Pro_Flag = FALSE; + + CHG_NTC_High_Pro_Flag = FALSE; if( NTC_Adc <= NTC_DISCHG_PRO_LOW_TMP && NTC_Adc > NTC_DISCHG_PRO_HIGH_TMP ) //正常放电 { @@ -286,7 +287,8 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc < NTC_DISCHG_HYST_LOW_TMP ) { - DisChg_NTC_Low_Pro_Flag = 0; + DisChg_NTC_Low_Pro_Flag = FALSE; + NTC_Flag = FALSE; } else @@ -299,7 +301,8 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > NTC_DISCHG_HYST_HIGH_TMP ) { - DisChg_NTC_High_Pro_Flag = 0; + DisChg_NTC_High_Pro_Flag = FALSE; + NTC_Flag = FALSE; } else @@ -312,12 +315,12 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > NTC_DISCHG_PRO_LOW_TMP ) { - DisChg_NTC_Low_Pro_Flag = 1; + DisChg_NTC_Low_Pro_Flag = TRUE; } else if( NTC_Adc < NTC_DISCHG_PRO_HIGH_TMP ) { - DisChg_NTC_High_Pro_Flag = 1; + DisChg_NTC_High_Pro_Flag = TRUE; } NTC_Flag = TRUE; @@ -334,7 +337,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc < IEC_NTC_CHG_HYST_LOW_TMP ) { - CHG_NTC_Low_Pro_Flag = 0; + CHG_NTC_Low_Pro_Flag = FALSE; NTC_Flag = FALSE; } @@ -348,7 +351,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > IEC_NTC_CHG_HYST_HIGH_TMP ) { - CHG_NTC_High_Pro_Flag = 0; + CHG_NTC_High_Pro_Flag = FALSE; NTC_Flag = FALSE; } @@ -362,12 +365,12 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if(NTC_Adc > IEC_NTC_CHG_PRO_LOW_TMP) { - CHG_NTC_Low_Pro_Flag = 1; + CHG_NTC_Low_Pro_Flag = TRUE; } else if(NTC_Adc <= IEC_NTC_CHG_PRO_HIGH_TMP) { - CHG_NTC_High_Pro_Flag = 1; + CHG_NTC_High_Pro_Flag = TRUE; } #ifdef _DEBUG_CHARGER @@ -376,13 +379,15 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) NTC_Flag = TRUE; } - DisChg_NTC_Low_Pro_Flag = 0; - DisChg_NTC_High_Pro_Flag = 0; + DisChg_NTC_Low_Pro_Flag = FALSE; + + DisChg_NTC_High_Pro_Flag = FALSE; } else //放电模式 { - CHG_NTC_Low_Pro_Flag = 0; - CHG_NTC_High_Pro_Flag = 0; + CHG_NTC_Low_Pro_Flag = FALSE; + + CHG_NTC_High_Pro_Flag = FALSE; if( (NTC_Adc <= NTC_DISCHG_PRO_LOW_TMP) && (NTC_Adc > NTC_DISCHG_PRO_HIGH_TMP) ) //正常放电 { @@ -390,7 +395,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc < NTC_DISCHG_HYST_LOW_TMP ) { - DisChg_NTC_Low_Pro_Flag = 0; + DisChg_NTC_Low_Pro_Flag = FALSE; NTC_Flag = FALSE; } @@ -404,7 +409,7 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if( NTC_Adc > NTC_DISCHG_HYST_HIGH_TMP ) { - DisChg_NTC_High_Pro_Flag = 0; + DisChg_NTC_High_Pro_Flag = FALSE; NTC_Flag = FALSE; } @@ -418,12 +423,12 @@ uint8_t PMU_NTC_Handle(uint8_t Charge_sta) { if(NTC_Adc > NTC_DISCHG_PRO_LOW_TMP) { - DisChg_NTC_Low_Pro_Flag = 1; + DisChg_NTC_Low_Pro_Flag = TRUE; } else if(NTC_Adc <= NTC_DISCHG_PRO_HIGH_TMP) { - DisChg_NTC_High_Pro_Flag = 1; + DisChg_NTC_High_Pro_Flag = TRUE; } NTC_Flag = TRUE; @@ -475,14 +480,14 @@ void Charger_Handler(void) { Set_PMU_CHG(OFF); //Disable Charger. - CHG_NTC_Pro_Flag = 1; + CHG_NTC_Pro_Flag = TRUE; ChgStatus = CHG_PROTECT; return; } - CHG_NTC_Pro_Flag = 0; + CHG_NTC_Pro_Flag = FALSE; #endif @@ -508,27 +513,27 @@ void Charger_Handler(void) if( bat_level > ( C_bat_level_protect + 1 ) ) { - F_batlevel_protect = 0; + F_batlevel_protect = FALSE; } if( bat_level > (C_bat_level_lowpower + 2) ) { - F_batlevel_low = 0; + F_batlevel_low = FALSE; } if( bat_level > (C_bat_level_25p_power + 2) ) { - F_batlevel_25p = 0; + F_batlevel_25p = FALSE; } if( bat_level > (C_bat_level_50p_power + 2) ) { - F_batlevel_50p = 0; + F_batlevel_50p = FALSE; } if( bat_level > (C_bat_level_75p_power + 2) ) { - F_batlevel_75p = 0; + F_batlevel_75p = FALSE; } #endif diff --git a/UsrSrc/discharge/discharge_module.c b/UsrSrc/discharge/discharge_module.c index a22ac92..80974c7 100644 --- a/UsrSrc/discharge/discharge_module.c +++ b/UsrSrc/discharge/discharge_module.c @@ -95,7 +95,7 @@ bit gBoost_UVLO_Flag; if( (BST_EN & 0x01) && gBoost_Prepared_Flag ) { BST_EN = 0; //Boost Disable - gBoost_Prepared_Flag = 0; + gBoost_Prepared_Flag = FALSE; #ifdef _DEBUG_DISCHARGE printf("Bst Close\r\n"); @@ -123,11 +123,11 @@ void DisCharge_Handler(void) /*放电过流保护 --- 硬件实现*/ #if 0 - gBoost_Prepared_Flag = 1; + gBoost_Prepared_Flag = TRUE; #else - gBoost_Prepared_Flag = 0; + gBoost_Prepared_Flag = FALSE; /*过温保护 --- 硬件实现*/ if( pmu_Info.pmu_Fault_STA2 & Fault_Sta2_CHIP_OTP ) @@ -138,7 +138,7 @@ void DisCharge_Handler(void) /*Boost Input UVLO 硬件实现*/ if( pmu_Info.pmu_Fault_STA2 & Fault_Sta2_BoostUV ) { - gBoost_UVLO_Flag = 1; + gBoost_UVLO_Flag = TRUE; return; } @@ -178,16 +178,16 @@ void DisCharge_Handler(void) Set_PMU_Boost(OFF); - Boost_NTC_Pro_Flag = 1; + Boost_NTC_Pro_Flag = TRUE; return; } - Boost_NTC_Pro_Flag = 0; + Boost_NTC_Pro_Flag = FALSE; #endif - gBoost_Prepared_Flag = 1; + gBoost_Prepared_Flag = TRUE; /* VIN 存在时,Boost 在电池电压高于 UVLO(硬件关闭 2.8/3.0V,硬件清 boost 使能。开 @@ -201,13 +201,13 @@ void DisCharge_Handler(void) { if( Vbat_Adc >= OPEN_BOOST_VIN ) { - gBoost_Prepared_Flag = 1; + gBoost_Prepared_Flag = TRUE; - gBoost_UVLO_Flag = 0; + gBoost_UVLO_Flag = FALSE; } else { - gBoost_Prepared_Flag = 0; //Boost Disable + gBoost_Prepared_Flag = FALSE; } } } diff --git a/UsrSrc/display/display_ui.c b/UsrSrc/display/display_ui.c index fd61eaf..1aa8ed0 100644 --- a/UsrSrc/display/display_ui.c +++ b/UsrSrc/display/display_ui.c @@ -118,7 +118,7 @@ uint8_t Breathing_Light_Cnt; // if( LED_On_Flag ) { - LED_On_Flag = 0; + LED_On_Flag = FALSE; LED_On_Timer = 0; @@ -127,7 +127,7 @@ uint8_t Breathing_Light_Cnt; // Display_AllOff(); #if SLEEP_ENABLE - Enter_Sleep_Cnt_Restart_Flag = 1; + Enter_Sleep_Cnt_Restart_Flag = TRUE; #endif return; } @@ -138,9 +138,9 @@ uint8_t Breathing_Light_Cnt; // { if( !LED_On_Flag1 ) { - LED_On_Flag1 = 1; + LED_On_Flag1 = TRUE; - LED_On_Flag = 1; + LED_On_Flag = TRUE; } else { @@ -171,17 +171,17 @@ uint8_t Breathing_Light_Cnt; // /* 保护消失后,需要开启5V升压一段时间。 */ if( LED_On_Flag1 ) { - LED_On_Flag1 = 0; - - LED_On_ChgDone_Flag = 0; - - LED_On_Chg_Flag = 0; - - CoverEvent_Flg_led = 0; - - Earphone_Chg_Flag_led = 0; - - Wkup_Earphone_Flag = 1; + LED_On_Flag1 = FALSE; + + LED_On_ChgDone_Flag = FALSE; + + LED_On_Chg_Flag = FALSE; + + CoverEvent_Flg_led = FALSE; + + Earphone_Chg_Flag_led = FALSE; + + Wkup_Earphone_Flag = TRUE; } #endif @@ -192,9 +192,9 @@ uint8_t Breathing_Light_Cnt; // { if( !LED_On_ChgDone_Flag ) { - LED_On_ChgDone_Flag = 1; - - LED_On_Chg_Flag = 0; + LED_On_ChgDone_Flag = TRUE; + + LED_On_Chg_Flag = FALSE; LED_Breating_Light_Off(); @@ -207,13 +207,14 @@ uint8_t Breathing_Light_Cnt; // { if( !LED_On_Chg_Flag ) { - LED_On_Chg_Flag = 1; - - LED_On_ChgDone_Flag = 0; - - LED_On_Flag = 1; - - Breathing_Light_Cnt = LED_R; + LED_On_Chg_Flag = TRUE; + + LED_On_ChgDone_Flag = FALSE; + + LED_On_Flag = TRUE; +#ifdef PWM_ENABLE + Breathing_Light_Cnt = LED_R; +#endif } else { @@ -284,25 +285,25 @@ uint8_t Breathing_Light_Cnt; // } } - CoverEvent_Flg_led = 0; - - Earphone_Chg_Flag_led = 0; - - Key_Press_short_irq_led = 0; - - Disp_Bat_Lev = 1; + CoverEvent_Flg_led = FALSE; + + Earphone_Chg_Flag_led = FALSE; + + Key_Press_short_irq_led = FALSE; + + Disp_Bat_Lev = TRUE; } else { if( LED_On_Chg_Flag ) { - LED_On_Chg_Flag = 0; + LED_On_Chg_Flag = FALSE; LED_Breating_Light_Off(); - LED_On_Flag = 1; + LED_On_Flag = TRUE; - Wkup_Earphone_Flag = 1; + Wkup_Earphone_Flag = TRUE; return; } @@ -352,13 +353,13 @@ uint8_t Breathing_Light_Cnt; // } else { - CoverEvent_Flg_led = 0; - - Disp_Bat_Lev = 0; - - Earphone_Chg_Flag_led = 0; - - Key_Press_short_irq_led = 0; + CoverEvent_Flg_led = FALSE; + + Disp_Bat_Lev = FALSE; + + Earphone_Chg_Flag_led = FALSE; + + Key_Press_short_irq_led = FALSE; Display_AllOff(); //清LED显示 } diff --git a/UsrSrc/hall/hall.c b/UsrSrc/hall/hall.c index ff12027..c869dc6 100644 --- a/UsrSrc/hall/hall.c +++ b/UsrSrc/hall/hall.c @@ -104,20 +104,20 @@ uint8_t Hall_Sta_bk; #endif } - CoverEvent_Flg = 1; + CoverEvent_Flg = TRUE; - Boost_Open_Flag = 0; + Boost_Open_Flag = FALSE; - CoverEvent_Flg_led = 1; + CoverEvent_Flg_led = TRUE; #ifdef LED_DISPLAY - LED_On_Flag = 1; + LED_On_Flag = TRUE; #endif Hall_Sta_bk = Hall_Sta; #if SLEEP_ENABLE - Enter_Sleep_Cnt_Restart_Flag = 1; + Enter_Sleep_Cnt_Restart_Flag = TRUE; #endif } diff --git a/UsrSrc/i2c_simu/i2c_simu.c b/UsrSrc/i2c_simu/i2c_simu.c index 26f742f..72a95c4 100644 --- a/UsrSrc/i2c_simu/i2c_simu.c +++ b/UsrSrc/i2c_simu/i2c_simu.c @@ -29,8 +29,8 @@ Variables definitions \******************************************************************************/ -idata bool F_I2C_SIMU_INIT; -idata bool F_I2C_SIMU_ERROR; + bool F_I2C_SIMU_INIT; + bool F_I2C_SIMU_ERROR; /******************************************************************************\ Functions definitions diff --git a/UsrSrc/key/key.c b/UsrSrc/key/key.c index f2c40e2..69a9457 100644 --- a/UsrSrc/key/key.c +++ b/UsrSrc/key/key.c @@ -60,7 +60,7 @@ bit Key_Press_l_irq; bit Key_Press_ll_irq; -idata KEY_EVENT_E Event_key; +KEY_EVENT_E Event_key; uint8_t Key_TWS_Pair_Tim; @@ -107,7 +107,7 @@ uint8_t Key_Lift_Debounce; Key_Press_Debounce++; if( Key_Press_Debounce >= KEY_PRESS_8S_CNT ) //长按8s,VOX掉电 { - Key_Press_ll_irq = 1; + Key_Press_ll_irq = TRUE; #ifdef _DEBUG_KEY printf("supper long 8s press.(line:%d)\r\n",(u16)__LINE__); #endif @@ -117,38 +117,38 @@ uint8_t Key_Lift_Debounce; { if( !nKey_Press_2s_Flag ) { - nKey_Press_2s_Flag = 1; + nKey_Press_2s_Flag = TRUE; } } - Key_Press_Flag = 1; + Key_Press_Flag = TRUE; - Key_Lift_Flag = 0; + Key_Lift_Flag = FALSE; } else { if( Key_Press_Flag ) { #if SLEEP_ENABLE - - Enter_Sleep_Cnt_Restart_Flag = 1; + + Enter_Sleep_Cnt_Restart_Flag = TRUE; #endif Event_key = KEY_EVENT_Empty; - Key_Press_Flag = 0; + Key_Press_Flag = FALSE; - Key_Lift_Flag = 1; + Key_Lift_Flag = TRUE; Key_Lift_Debounce = 0; if( (Key_Press_Debounce <= KEY_PRESS_500MS_CNT) ) //松开按键,按下时间小于500ms,则识别为短按,显示电量 { - Key_Press_short_irq_led = 1; + Key_Press_short_irq_led = TRUE; - nKey_Press_short_irq = 1; + nKey_Press_short_irq = TRUE; #ifdef LED_DISPLAY - LED_On_Flag = 1; + LED_On_Flag = TRUE; #endif } else @@ -156,11 +156,11 @@ uint8_t Key_Lift_Debounce; { if( nKey_Press_2s_Flag ) { - Key_Press_l_irq = 1; + Key_Press_l_irq = TRUE; } } - nKey_Press_2s_Flag = 0; + nKey_Press_2s_Flag = FALSE; #ifdef _DEBUG_KEY printf("Key lift(line:%d).\r\n",(u16)__LINE__); @@ -180,15 +180,25 @@ uint8_t Key_Lift_Debounce; Set_PMU_Boost(ON); - Boost_Open_Flag = 1; + Boost_Open_Flag = TRUE; #ifdef _DEBUG_KEY printf("Boost Open Key.(line:%d)\r\n",(u16)__LINE__); #endif return; } - - VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + Vol_State = VOX_GET_INTO_BOX; + + Vor_State = VOX_GET_INTO_BOX; +#else + VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V +#endif + +#endif if( Key_Lift_Debounce <= KEY_LIFT_CNT ) { @@ -197,17 +207,17 @@ uint8_t Key_Lift_Debounce; return; } - Key_Press_l_irq = 0; + Key_Press_l_irq = FALSE; /*todo*/ Event_key = KEY_EVENT_L_2S; Key_TWS_Pair_Tim = 0; - +#ifdef VOX_TX /*耳机配对*/ Vox_Get_BES_Addr_Flag[VOL_TYPE] = 0x00; Vox_Get_BES_Addr_Flag[VOR_TYPE] = 0x00; - +#endif #ifdef _DEBUG_KEY printf("long 2s press\r\n"); #endif @@ -221,14 +231,25 @@ uint8_t Key_Lift_Debounce; Set_PMU_Boost(ON); - Boost_Open_Flag = 1; + Boost_Open_Flag = TRUE; #ifdef _DEBUG_KEY printf("Boost Open Key.(line:%d)\r\n",(u16)__LINE__); #endif return; } - VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + Vol_State = VOX_GET_INTO_BOX; + + Vor_State = VOX_GET_INTO_BOX; +#else + VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V +#endif + +#endif if( Key_Lift_Debounce <= KEY_LIFT_CNT ) { @@ -237,7 +258,7 @@ uint8_t Key_Lift_Debounce; return; } - Key_Press_ll_irq = 0; + Key_Press_ll_irq = FALSE; Key_TWS_Clear_Pair_Tim = 0; /*todo*/ @@ -250,7 +271,7 @@ uint8_t Key_Lift_Debounce; if( nKey_Press_short_irq ) { - nKey_Press_short_irq = 0; + nKey_Press_short_irq = FALSE; /*todo*/ // Event_key = KEY_EVENT_SHORT; @@ -260,12 +281,12 @@ uint8_t Key_Lift_Debounce; #endif } - Key_Lift_Flag = 0; + Key_Lift_Flag = FALSE; - Boost_Open_Flag = 0; + Boost_Open_Flag = FALSE; } -#if 1 +#ifdef VOX_TX if ( CoverStatus == OPEN ) { if( Event_key == KEY_EVENT_L_2S ) //长按2s,充电仓发送配对指令。 @@ -303,10 +324,20 @@ uint8_t Key_Lift_Debounce; #endif Event_key = KEY_EVENT_Empty; - OpenCover_TX_Cmd_Flag = 1; -#if VOX_ENABLE - VOX_EN_Type(VOX_ADT_Mode); + OpenCover_TX_Cmd_Flag = TRUE; +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + Vol_State = VOX_GET_INTO_BOX; + + Vor_State = VOX_GET_INTO_BOX; +#else + VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V #endif + +#endif + #ifdef _DEBUG_KEY printf("Key Pair TimeOut(line:%d).\r\n",(uint16_t)__LINE__); #endif @@ -359,9 +390,20 @@ uint8_t Key_Lift_Debounce; Event_key = KEY_EVENT_Empty; - OpenCover_TX_Cmd_Flag = 1; - - VOX_EN_Type(VOX_ADT_Mode); + OpenCover_TX_Cmd_Flag = TRUE; +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + Vol_State = VOX_NONE_IN_BOX; + + Vor_State = VOX_NONE_IN_BOX; +#else + VOX_EN_Type(VOX_ADT_Mode); //VOX Enable 5V +#endif + +#endif + #ifdef _DEBUG_KEY printf("Key Pair Get VOL(line:%d).\r\n",(uint16_t)__LINE__); #endif @@ -438,11 +480,23 @@ uint8_t Key_Lift_Debounce; { Event_key = KEY_EVENT_Empty; - OpenCover_TX_Cmd_Flag = 1; + OpenCover_TX_Cmd_Flag = TRUE; Key_TWS_Clear_Pair_Tim = 0; - VOX_EN_Type(VOX_ADT_Mode); +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + Vol_State = VOX_NONE_IN_BOX; + + Vor_State = VOX_NONE_IN_BOX; +#else + VOX_EN_Type(VOX_ADT_Mode); //VOX Enable 5V +#endif + +#endif + } } } diff --git a/UsrSrc/led/led.c b/UsrSrc/led/led.c index 3dd44a5..7fe797b 100644 --- a/UsrSrc/led/led.c +++ b/UsrSrc/led/led.c @@ -201,6 +201,7 @@ void LED_Drv(void) /******************************************************************************/ { uint8_t i = 0; + static bit PWM_Dir_Flag; for(i = 0;i < LED_ID_MAX;i++) @@ -262,7 +263,9 @@ void LED_Drv(void) if( LED.Light_Dir[i] == SHOW_NONE ) { PWM_Disable(i); - PWM_Dir_Flag = 0; + + PWM_Dir_Flag = FALSE; + LED.State[i] = LED_OFF; } else @@ -271,7 +274,7 @@ void LED_Drv(void) { if( !PWM_Dir_Flag ) { - PWM_Dir_Flag = 1; + PWM_Dir_Flag = TRUE; LED.Flash_Duty[i] = PWM_REL_VALUE; } @@ -287,7 +290,7 @@ void LED_Drv(void) { if( !PWM_Dir_Flag ) { - PWM_Dir_Flag = 1; + PWM_Dir_Flag = TRUE; LED.Flash_Duty[i] = PWM_REL_FULL; } @@ -303,12 +306,12 @@ void LED_Drv(void) { if( LED.Flash_Duty[i] >= PWM_REL_FULL ) { - PWM_Dir_Flag = 1; + PWM_Dir_Flag = TRUE; } else if( LED.Flash_Duty[i] <= (PWM_REL_VALUE + 1) ) { - PWM_Dir_Flag = 0; + PWM_Dir_Flag = FALSE; } if(PWM_Dir_Flag) diff --git a/UsrSrc/main.c b/UsrSrc/main.c index 0d3e928..a22c0f0 100644 --- a/UsrSrc/main.c +++ b/UsrSrc/main.c @@ -48,7 +48,7 @@ void main(void ) #ifdef _DEBUG_MAIN - printf("System Init.Ver:%2x%2x%2x\r\n",(uint16_t)FW_VER0, (uint16_t)FW_VER1, (uint16_t)FW_VER2); + printf("System Init.Ver:%02x%02x%02x\r\n",(uint16_t)FW_VER0, (uint16_t)FW_VER1, (uint16_t)FW_VER2); #endif diff --git a/UsrSrc/pmu/pmu.c b/UsrSrc/pmu/pmu.c index 19f3983..134ee4f 100644 --- a/UsrSrc/pmu/pmu.c +++ b/UsrSrc/pmu/pmu.c @@ -31,7 +31,7 @@ Variables definitions \******************************************************************************/ -g_PMU_Info xdata pmu_Info; //pmu状态信息 +g_PMU_Info pmu_Info; //pmu状态信息 #if 0 g_PMU_Sys_Cfg pmu_Sys_Cfg; diff --git a/UsrSrc/sleep/sleep.c b/UsrSrc/sleep/sleep.c index 4ee66e0..43f07a4 100644 --- a/UsrSrc/sleep/sleep.c +++ b/UsrSrc/sleep/sleep.c @@ -254,12 +254,24 @@ void Enter_Sleep(void) */ bit Check_Require_Sleep(void ) { +#ifdef VOX_ADT_ENABLE + if( ( ChgStatus > CHG_PROTECT ) || ( ON == Vol_Vout_Enable ) || ( ON == Vor_Vout_Enable ) || Enter_Sleep_Cnt_Restart_Flag ) /*充电中、有中断、耳机处于充电状态情况下,Boost重载输出,系统不进休眠模式。 */ +#else if( ( ChgStatus > CHG_PROTECT ) || ( ON == Vox_Vout_Enable ) || Enter_Sleep_Cnt_Restart_Flag ) /*充电中、有中断、耳机处于充电状态情况下,Boost重载输出,系统不进休眠模式。 */ +#endif { + +#ifdef VOX_ADT_ENABLE +#ifdef _DEBUG_SLEEP + printf("Not Get Into Sleep(ChgStatus:%d,Vol_Vout:%d,Vor_Vout:%d,Restart_Flag:%d).\r\n",(uint16_t)ChgStatus,(uint16_t)Vol_Vout_Enable,(uint16_t)Vor_Vout_Enable,(uint16_t)Enter_Sleep_Cnt_Restart_Flag); +#endif +#else #ifdef _DEBUG_SLEEP printf("Not Get Into Sleep(ChgStatus:%d,Vox_Vout:%d,Restart_Flag:%d).\r\n",(uint16_t)ChgStatus,(uint16_t)Vox_Vout_Enable,(uint16_t)Enter_Sleep_Cnt_Restart_Flag); #endif - Enter_Sleep_Cnt_Restart_Flag = 0; +#endif + Enter_Sleep_Cnt_Restart_Flag = FALSE; + /*处理对应的保护和中断唤醒事件。*/ return false; } diff --git a/UsrSrc/system/system.c b/UsrSrc/system/system.c index 271b257..6c23f8b 100644 --- a/UsrSrc/system/system.c +++ b/UsrSrc/system/system.c @@ -115,7 +115,7 @@ void System_Init(void) #ifdef PWM_ENABLE PWM_Init_Set(PWM_CLKFRE_SET,PWM_RELOAD_SET); -#endif +#endif #ifdef LED_DISPLAY LED_Init(); @@ -131,6 +131,15 @@ void System_Init(void) Decnt_SleepDelay = ENTER_STANDBYMODE_CNT; Systerm_State.Next_State = POWER_ON_STATE; + + Boost_Open_Flag = FALSE; +#ifdef VOX_ADT_ENABLE + + Vol_GetOut_Box_Flag = TRUE; + + Vor_GetOut_Box_Flag = TRUE; + +#endif } /* @@ -153,7 +162,7 @@ void EX0_isr(void) interrupt Interrupt_Vector_IE0 #if SLEEP_ENABLE - Enter_Sleep_Cnt_Restart_Flag = 1; + Enter_Sleep_Cnt_Restart_Flag = TRUE; #endif diff --git a/UsrSrc/timer/sys_tim.c b/UsrSrc/timer/sys_tim.c index 2dc9eb6..64b04ea 100644 --- a/UsrSrc/timer/sys_tim.c +++ b/UsrSrc/timer/sys_tim.c @@ -87,24 +87,24 @@ void Sys_Tim0_Handler(void) return; F_sys_tim_tick = 0; //system tick - F_sys_tim_1ms = 1; + F_sys_tim_1ms = TRUE; //---------------5ms---------------------------------------- cnt_sys_tim_5ms++; if(cnt_sys_tim_5ms >= 5) { cnt_sys_tim_5ms = 0; - F_sys_tim_5ms = 1; + + F_sys_tim_5ms = TRUE; } //---------------10ms---------------------------------------- cnt_sys_tim_10ms++; if(cnt_sys_tim_10ms >= 10) { - cnt_sys_tim_10ms = 0; - - F_sys_tim_10ms = 1; + cnt_sys_tim_10ms = 0; + F_sys_tim_10ms = TRUE; } //---------------100ms---------------------------------------- @@ -112,7 +112,8 @@ void Sys_Tim0_Handler(void) if(cnt_sys_tim_100ms >= 100) { cnt_sys_tim_100ms = 0; - F_sys_tim_100ms = 1; + + F_sys_tim_100ms = TRUE; } //------------------------------------------------- @@ -120,14 +121,16 @@ void Sys_Tim0_Handler(void) if(cnt_sys_tim_250ms>=250) { cnt_sys_tim_250ms = 0; - F_sys_tim_250ms = 1; + + F_sys_tim_250ms = TRUE; //-----------------250ms------------------------- cnt_sys_tim_1s++; if(cnt_sys_tim_1s >= 4) { cnt_sys_tim_1s = 0; - F_sys_tim_1s = 1; + + F_sys_tim_1s = TRUE; } } } @@ -173,8 +176,7 @@ void tim0_Interrupt(void) interrupt Interrupt_Vector_TF0 //interrupt address is TH0 += C_TIM0_Reload >> 8; TL0 += C_TIM0_Reload & 0xFF; - F_sys_tim_tick = 1; - + F_sys_tim_tick = TRUE; } /* @@ -220,8 +222,7 @@ void tim1_Interrupt(void) interrupt Interrupt_Vector_TF1//interrupt address is TH1 += C_TIM1_Reload >> 8; TL1 += C_TIM1_Reload & 0xFF; - F_sys_tim1_tick = 1; - + F_sys_tim1_tick = TRUE; } /* diff --git a/UsrSrc/uart/uart.c b/UsrSrc/uart/uart.c index 407da78..93eac40 100644 --- a/UsrSrc/uart/uart.c +++ b/UsrSrc/uart/uart.c @@ -44,7 +44,7 @@ bit busy0; #if UART0_ENABLE -idata uint8_t RX0_Buffer[COM0_Data_Lenth]; //接收缓冲 +uint8_t RX0_Buffer[COM0_Data_Lenth]; //接收缓冲 bit Uart0_RX_Finish_Flag; @@ -52,7 +52,7 @@ bit Uart0_RX_Finish_Flag; #if UART1_ENABLE -idata uint8_t RX1_Buffer[COM0_Data_Lenth]; //接收缓冲 +uint8_t RX1_Buffer[COM0_Data_Lenth]; //接收缓冲 bit Uart1_RX_Finish_Flag; @@ -146,7 +146,7 @@ void Uart0SendPacket(uint16_t Length,uint8_t *TransBuf) { while(busy0); - busy0 = 1; + busy0 = TRUE; S0BUF = *TransBuf++; } @@ -157,6 +157,8 @@ void Uart0SendPacket(uint16_t Length,uint8_t *TransBuf) #endif +#ifdef VOX_RX + uint8_t Rx0Status; uint8_t RX0_Cnt; @@ -178,7 +180,7 @@ void uart0_Interrupt(void) interrupt Interrupt_Vector_RI_TI if(TI0) { TI0 = 0; - busy0 = 0; + busy0 = FALSE; } /*处理UART0接收中断*/ @@ -187,7 +189,7 @@ void uart0_Interrupt(void) interrupt Interrupt_Vector_RI_TI RI0 = 0; #if SLEEP_ENABLE - Enter_Sleep_Cnt_Restart_Flag = 1; + Enter_Sleep_Cnt_Restart_Flag = TRUE; #endif #ifdef VOX_RX @@ -229,7 +231,7 @@ void uart0_Interrupt(void) interrupt Interrupt_Vector_RI_TI Rx0Status = 0; - Uart0_RX_Finish_Flag = 1; + Uart0_RX_Finish_Flag = TRUE; } } @@ -284,7 +286,7 @@ void uart0_Interrupt(void) interrupt Interrupt_Vector_RI_TI Rx0Status = 0; - Uart0_RX_Finish_Flag = 1; + Uart0_RX_Finish_Flag = TRUE; } } @@ -301,6 +303,8 @@ void uart0_Interrupt(void) interrupt Interrupt_Vector_RI_TI #endif +#endif + #if UART1_ENABLE bit busy1; @@ -364,7 +368,7 @@ void Uart1SendPacket(uint16_t Length,uint8_t *TransBuf) { while(busy1); //ACC = *TransBuf++; - busy1 = 1; + busy1 = TRUE; S1BUF = *TransBuf++; } @@ -406,7 +410,7 @@ void uart1_Interrupt(void) interrupt Interrupt_Vector_RI1_TI1 if(S1CON & 0x02) //TI1 = 1 { S1CON &= ~0x02; //TI1 = 0 - busy1 = 0; + busy1 = FALSE; } /*处理UART1接收中断*/ @@ -415,7 +419,7 @@ void uart1_Interrupt(void) interrupt Interrupt_Vector_RI1_TI1 S1CON &= ~0x01; #if SLEEP_ENABLE - Enter_Sleep_Cnt_Restart_Flag = 1; + Enter_Sleep_Cnt_Restart_Flag = TRUE; #endif #ifdef VOX_RX @@ -528,7 +532,7 @@ void Uart2SendData(uint8_t Txdata) { while(busy2); - busy2 = 1; + busy2 = TRUE; S2BUF = Txdata; @@ -588,7 +592,7 @@ void uart2_Interrupt(void) interrupt Interrupt_Vector_IE8 if(S2CON & 0x02) //TI2 = 1 { S2CON &= ~0x02; //TI2 = 0 - busy2 = 0; + busy2 = FALSE; } /*处理UART1接收中断*/ diff --git a/UsrSrc/userapp/userapp.c b/UsrSrc/userapp/userapp.c index c860d5f..f67b0cf 100644 --- a/UsrSrc/userapp/userapp.c +++ b/UsrSrc/userapp/userapp.c @@ -42,7 +42,7 @@ Variables definitions \******************************************************************************/ -xdata s_sys_state Systerm_State = {SLEEP_STATE,AWAKE_STATE,AWAKE_STATE}; +s_sys_state Systerm_State = {SLEEP_STATE,AWAKE_STATE,AWAKE_STATE}; uint8_t Step_Cnt; @@ -115,7 +115,7 @@ void System_Drivers_Machine(void) if ( F_sys_tim_100ms ) { - F_sys_tim_100ms = 0; + F_sys_tim_100ms = FALSE; #if CHARGER_ENABLE Charger_Handler(); @@ -134,7 +134,43 @@ void System_Drivers_Machine(void) #endif #if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + /*Vox 过流保护,两只耳机都每隔200ms打嗝一次*/ + if( pmu_Info.pmu_Fault_STA2 & ( Fault_Sta2_VorOCP | Fault_Sta2_VolOCP ) ) + { + Vox_Output_Short_Flag = TRUE; + } + else + { + Vox_Output_Short_Flag = FALSE; + +#if VOX_ENABLE + Vol_Det_Machine(); //耳机入盒自动识别充电处理 + + Vor_Det_Machine(); +#endif + +#if VOX_FOLLOW_CHG + + if( !Vol_GetOut_Box_Flag || !Vor_GetOut_Box_Flag ) + { + if ( Vox_Fllow_Chg.Vox_Follow_Stop == OFF ) + { + Vox_Follow_Chg( &Vox_Fllow_Chg ); //跟随充处理。 + } + } + +#endif + } + +#else + Vox_Det_Machine(); + +#endif + #endif } } @@ -272,7 +308,7 @@ void SysTem_State_Machine(void) if(F_sys_tim_1s) { - F_sys_tim_1s = 0; + F_sys_tim_1s = FALSE; #ifdef _DEBUG_MAIN @@ -291,7 +327,7 @@ void SysTem_State_Machine(void) if(Enter_Sleep_Cnt_Restart_Flag) { - Enter_Sleep_Cnt_Restart_Flag = 0; + Enter_Sleep_Cnt_Restart_Flag = FALSE; Decnt_SleepDelay = ENTER_STANDBYMODE_CNT; #ifdef _DEBUG_MAIN @@ -325,8 +361,18 @@ void SysTem_State_Machine(void) if(Check_Require_Sleep()) { - VOX_EN_Type(VOX_ADT_Mode); - +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + VOL_EN_Type(VOX_ADT_Mode); + + VOR_EN_Type(VOX_ADT_Mode); +#else + VOX_EN_Type(VOX_ADT_Mode); //VOX Enable 5V +#endif + +#endif Set_PMU_Boost(OFF); Set_PMU_StandbyMode_Set(OFF); //关闭LDO @@ -340,7 +386,21 @@ void SysTem_State_Machine(void) #else Systerm_State.Next_State = AWAKE_STATE; - +#if VOX_ENABLE + +#ifdef VOX_ADT_ENABLE + + VOL_EN_Type(VOX_ADT_Mode); + + VOR_EN_Type(VOX_ADT_Mode); +#else + VOX_EN_Type(VOX_ADT_Mode); //VOX Enable 5V +#endif + +#endif + Set_PMU_Boost(OFF); + + Set_PMU_StandbyMode_Set(OFF); //关闭LDO #endif break; @@ -363,7 +423,7 @@ void UserAPP(void) { if(F_sys_tim_5ms) { - F_sys_tim_5ms = 0; + F_sys_tim_5ms = FALSE; switch( Step_Cnt++ ) { @@ -395,7 +455,7 @@ void UserAPP(void) if ( F_sys_tim_10ms ) { - F_sys_tim_10ms = 0; + F_sys_tim_10ms = FALSE; #ifdef LED_DISPLAY LED_Drv(); diff --git a/UsrSrc/vox/vox_module.c b/UsrSrc/vox/vox_module.c index 611b4f6..42fd68a 100644 --- a/UsrSrc/vox/vox_module.c +++ b/UsrSrc/vox/vox_module.c @@ -30,12 +30,20 @@ #include "adc.h" #include "userapp.h" -bit Vox_Vout_Enable; //Vox功率输出标志位 +#ifdef VOX_COVER_ENABLE + +bit Vox_Vout_Enable; //Vox功率输出标志位 + +#else + +bit Vor_Vout_Enable; //Vor功率输出标志位 + +bit Vol_Vout_Enable; //Vol功率输出标志位 + +#endif bit Boost_Open_Flag; -uint8_t Vox_Type; - bit Vox_Output_Short_Flag; #if VOX_ENABLE @@ -44,7 +52,10 @@ bit Vox_Output_Short_Flag; Macro definitions \******************************************************************************/ /*100ms调用周期*/ - +#define KEY_TWS_PAIR_TIMER 2 + +#define KEY_TWS_PAIR_CNT 6 + #define Vox_COM_MSG_Tim 20 #define MAX_PACKET_SIZE 0x20 @@ -63,9 +74,9 @@ bit Vox_Output_Short_Flag; uint8_t Vox_Follow_Init_Deb; -xdata uint16_t Vox_Follow_Chg_Debounce; +uint16_t Vox_Follow_Chg_Debounce; -g_Vox_Fllow_Chg_Cfg xdata Vox_Fllow_Chg; +g_Vox_Fllow_Chg_Cfg idata Vox_Fllow_Chg; e_Vox_Follow_Chg_Sta Follow_Chg_Sta; @@ -73,8 +84,8 @@ e_Vox_Follow_Chg_Sta Follow_Chg_Sta; #ifdef VOX_RX -xdata uint8_t Vox_Get_Vbat_Flag[2]; //耳机配对状态,VOL:低4bit;VOR:高4bit。0是无效,1是正在配对,2是配对成功,3不处理,保持当前状态。 -xdata uint8_t Vox_Get_BES_Addr_Flag[2]; +uint8_t Vox_Get_Vbat_Flag[2]; //耳机配对状态,VOL:低4bit;VOR:高4bit。0是无效,1是正在配对,2是配对成功,3不处理,保持当前状态。 +uint8_t Vox_Get_BES_Addr_Flag[2]; //idata uint8_t BES_Addr[6] = {0}; //蓝牙耳机地址,Vox_Bes_Addr[0][6]:VOL;Vox_Bes_Addr[1][6]:VOR #endif @@ -84,58 +95,60 @@ uint8_t EarPhone_Num; #endif bit OpenCover_TX_Cmd_Flag; - -#define KEY_TWS_PAIR_TIMER 2 -#define KEY_TWS_PAIR_CNT 6 +#if 0 #if XUANHENG -xdata uint8_t Vox_Pairing_State[2]; //耳机配对状态,0是无效,1是正在配对,2是配对成功,3不处理,保持当前状态。 - -xdata uint8_t Vox_Set_BES_Addr_Flag[2]; +uint8_t Vox_Pairing_State[2]; //耳机配对状态,0是无效,1是正在配对,2是配对成功,3不处理,保持当前状态。 + +uint8_t Vox_Set_BES_Addr_Flag[2]; -xdata uint8_t BES_Addr[6]; //蓝牙耳机地址,Vox_Bes_Addr[0][6]:VOL;Vox_Bes_Addr[1][6]:VOR +uint8_t BES_Addr[6]; //蓝牙耳机地址,Vox_Bes_Addr[0][6]:VOL;Vox_Bes_Addr[1][6]:VOR -xdata uint8_t Random_Data[8]; +uint8_t Random_Data[8]; -xdata uint8_t Bes_Bet_Level[2]; //对耳电池电量信息,Bes_Bet_Level[0]:左耳;Bes_Bet_Level[1]:右耳 +uint8_t Bes_Bet_Level[2]; //对耳电池电量信息,Bes_Bet_Level[0]:左耳;Bes_Bet_Level[1]:右耳 -xdata uint8_t Bes_Chg_Full[2]; //对耳硬件是否满电:0非满电;1:满电。 +uint8_t Bes_Chg_Full[2]; //对耳硬件是否满电:0非满电;1:满电。 -xdata uint8_t Tws_Paired_Record[2]; //TWS配对记录;0:有TWS配对记录;1:没有TWS配对记录; +uint8_t Tws_Paired_Record[2]; //TWS配对记录;0:有TWS配对记录;1:没有TWS配对记录; -xdata uint8_t Phone_Paired_Record[2]; //手机配对记录;0:有与手机配对记录;1:没有和手机配对记录。 +uint8_t Phone_Paired_Record[2]; //手机配对记录;0:有与手机配对记录;1:没有和手机配对记录。 -xdata uint8_t Bes_OTA_State[2]; //耳机静默升级状态;1:有;0:没有 +uint8_t Bes_OTA_State[2]; //耳机静默升级状态;1:有;0:没有 -xdata uint8_t Bes_Set_SN_State[2]; //耳机应答仓写入SN是否成功。1:成功;0:失败 +uint8_t Bes_Set_SN_State[2]; //耳机应答仓写入SN是否成功。1:成功;0:失败 -xdata uint8_t Bes_In_Pair_State[2]; //耳机进入配对状态标志位 +uint8_t Bes_In_Pair_State[2]; //耳机进入配对状态标志位 -xdata uint8_t Vox_Clear_Pair_Flag[2]; +uint8_t Vox_Clear_Pair_Flag[2]; bit Vol_Bes_Addr_Flag; bit Vor_Bes_Addr_Flag; -xdata uint8_t SN_Num[22]; //SN码,需要从OTP的固定位置获取。 +uint8_t SN_Num[22]; //SN码,需要从OTP的固定位置获取。 -xdata uint8_t SN_Num_Start; //SN码发送起始位置,有开盖动作时清零。 +uint8_t SN_Num_Start; //SN码发送起始位置,有开盖动作时清零。 bit gShip_Mode_Flag; //船运模式标志位:0:正常关机;1:船运模式 -#else +#elif JIELI -xdata uint8_t Net_Info[2][13]; +uint8_t Vox_Type; -xdata uint8_t MAC_Addr[2][18]; +uint8_t Net_Info[2][13]; -xdata uint8_t Earphone_Vbat[2]; //对耳电量 +uint8_t MAC_Addr[2][18]; + +uint8_t Earphone_Vbat[2]; //对耳电量 + +#endif #endif /******************************************************************************\ Functions definitions \******************************************************************************/ -#if 0 +#ifdef VOX_ADT_ENABLE /* ******************************************************************************* * uint8_t VOL_EN_Type(VOL_Enable_Type_e VOL_Enable_Type) @@ -177,7 +190,7 @@ xdata uint8_t Earphone_Vbat[2]; // VOX_Confg |= VOX_COM_PULL_UP_SET | VOX_PULL_UP_VOLTAGE_SET | VOX_COM_VOLTAGE_SET; - Bst_VOX_Comm_EN |= BST_COMM_EN_Vol_Comm_En; + Bst_VOX_Comm_EN |= BST_COMM_EN_Gate_Ctrl | BST_COMM_EN_Vol_Comm_En; break; @@ -218,6 +231,10 @@ xdata uint8_t Earphone_Vbat[2]; // I2cSfr_Write( BST_COMM_EN, Bst_VOX_Comm_EN ); I2cSfr_Write( VOX_CFG, VOX_Confg ); + +#ifdef _DEBUG_VOX +// printf("Vol Bst_VOX_Comm_EN:0x%x,VOX_Confg:0x%x(line:%d).\r\n",(uint16_t)Bst_VOX_Comm_EN, (uint16_t)VOX_Confg,(uint16_t)__LINE__); +#endif } /* @@ -261,7 +278,7 @@ xdata uint8_t Earphone_Vbat[2]; // VOX_Confg |= VOX_COM_PULL_UP_SET | VOX_PULL_UP_VOLTAGE_SET | VOX_COM_VOLTAGE_SET; - Bst_VOX_Comm_EN |= BST_COMM_EN_Vor_Comm_En; + Bst_VOX_Comm_EN |= BST_COMM_EN_Gate_Ctrl | BST_COMM_EN_Vor_Comm_En; break; @@ -302,6 +319,10 @@ xdata uint8_t Earphone_Vbat[2]; // I2cSfr_Write( BST_COMM_EN, Bst_VOX_Comm_EN ); I2cSfr_Write( VOX_CFG, VOX_Confg ); + +#ifdef _DEBUG_VOX +// printf("Vor Bst_VOX_Comm_EN:0x%x,VOX_Confg:0x%x(line:%d).\r\n",(uint16_t)Bst_VOX_Comm_EN, (uint16_t)VOX_Confg,(uint16_t)__LINE__); +#endif } #else @@ -389,6 +410,554 @@ xdata uint8_t Earphone_Vbat[2]; // } #endif + +#ifdef VOX_ADT_ENABLE + +#define VOX_LOADON_DET_DEBOUNCE 2 //Vox Loadon信号检测延时计数,loadon信号软件数字滤波,根据实际耳机进行调试; + +#define VOX_NO_LOADON_CNT 5 //耳机充满后,断内部下拉电阻延时计数,根据实际应用调整。 + +#define VOX_IOFF_DET_DEBOUNCE 50 //Vox Ioff检测延时5s,重载转轻载延时计数。 + +Vox_State_e Vol_State; + +bit Vol_GetOut_Box_Flag; //Vol 出盒标志,用于耳机抽电灯效。 +/* +******************************************************************************* +* void Vol_Det_Machine(void) +* +* Description : Vol Detect:耳机识别。 (100ms调用周期) +* +* Arguments : NONE + +* Returns : NONE + +* Notes : NONE +* +******************************************************************************* +*/ + +void Vol_Det_Machine(void) +{ + static uint8_t nVol_Loadon_Det_Debounce; //loadon标志检测延时计数 + + static uint8_t nVol_Output_Debounce; //Vox重载转轻载延时计数 + + static bit nVol_Chg_Full_Flag; //耳机充满标志 + + static bit nVol_GetOut_Box_Flag; + + static bit nVol_Outbox_Disp_Flag; + + static bit nVol_Intobox_Disp_Flag; + + static bit nVol_Get_Chip_STA_Flag; + + static uint8_t nCHIP_STA1_Vol; + + if( gBoost_Prepared_Flag ) + { + switch( Vol_State ) + { + case VOX_GET_INTO_BOX: //耳机入仓 + + /*开启Vox Vout 5V前需要先开Boost。*/ + if( !Boost_Open_Flag ) + { + Set_PMU_Boost_Vout(BOOST_VOUT_MAX); //开关盖Boost输出5.2V,保证耳机一定能被唤醒。 + + Set_PMU_Boost(ON); //Boost Enable;异常时由硬件主动关闭。开启Boost,开启Vox 5v会在开启Boost之后(100ms延时)。 + + Boost_Open_Flag = TRUE; +#ifdef _DEBUG_VOX + printf("Boost Open.(line:%d)\r\n",(u16)__LINE__); +#endif + return; + } + + VOL_EN_Type(VOX_VOUT_Mode); //Vox开启Vout 5V输出 + + Vol_Vout_Enable = ON; + + Boost_Open_Flag = FALSE; + + nVol_Chg_Full_Flag = FALSE; + + nVol_GetOut_Box_Flag = FALSE; + + nVol_Intobox_Disp_Flag = FALSE; + + nVol_Outbox_Disp_Flag = FALSE; + + nVol_Output_Debounce = 0; + + /*重启跟随充*/ +#if VOX_FOLLOW_CHG + Vox_Fllow_Chg.Vox_Follow_Start = OFF; + + Vox_Fllow_Chg.Vox_Follow_Stop = OFF; + + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; +#endif + + Vol_State = VOX_STAY_IN_BOX; + + break; + + case VOX_STAY_IN_BOX: //耳机在仓 + + if ( ( pmu_Info.pmu_VOX_STA & ( VOL_LoadOn | VOL_Ioff ) ) == ( VOL_LoadOn | VOL_Ioff ) ) //充电过程中出现只有IOFF,则出现如下三种情况:1、耳机出仓;2、耳机电池充满;3、耳机电池锂保。 + { + if( nVol_Intobox_Disp_Flag ) //Vol耳机在正常充电过程中,被拔出。 + { + nVol_Outbox_Disp_Flag = TRUE; + + nVol_Intobox_Disp_Flag = FALSE; + + nVol_GetOut_Box_Flag = TRUE; + + Vol_GetOut_Box_Flag = TRUE; //左耳出盒标志置1,用于抽电灯效 + +#ifdef _DEBUG_VOX + printf("Vol Get Out.(line:%d)\r\n",(u16)__LINE__); +#endif + } + + nVol_Output_Debounce++; + if( nVol_Output_Debounce >= VOX_IOFF_DET_DEBOUNCE ) //重载转轻载(耳机出仓后)需延时5s,Vox掉Vout 5V后转入ADT模式。 + { + nVol_Output_Debounce = 0; + + VOL_EN_Type(VOX_ADT_Mode); + + nVol_Chg_Full_Flag = TRUE; +#ifdef _DEBUG_VOX + printf("Vol Full And In ADT.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + if ( ( pmu_Info.pmu_VOX_STA & ( VOL_LoadOn | VOL_Ioff ) ) == VOL_LoadOn ) //无IOFF有Loadon,说明:1、耳机出仓后4s内,耳机再次入仓;2、10分钟未满,耳机电池退出锂保状态,进入正常充电; + { + nVol_Output_Debounce = 0; + + nVol_Intobox_Disp_Flag = TRUE; + + if( nVol_Chg_Full_Flag ) //Vox在ADT模式后检测到loadon标志,则说明耳机已充满,不再抽电,等loadon消失,判断耳机出盒。 + { + Vol_Vout_Enable = OFF; +#ifdef _DEBUG_VOX + printf("Vol Full.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else + { + if( nVol_Outbox_Disp_Flag ) //左耳4s内再次入盒,左耳对应的入盒灯效闪一次。 + { + nVol_Outbox_Disp_Flag = FALSE; + + if( nVol_GetOut_Box_Flag ) + { + nVol_GetOut_Box_Flag = FALSE; + /*重启跟随充*/ +#if VOX_FOLLOW_CHG + Vox_Fllow_Chg.Vox_Follow_Start = OFF; + + Vox_Fllow_Chg.Vox_Follow_Stop = OFF; + + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; +#endif + + Earphone_Chg_Flag_led = TRUE; //用于灯效显示 +#ifdef LED_DISPLAY + LED_On_Flag = TRUE; +#endif + +#ifdef _DEBUG_VOX + printf("Vol Get In Again.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + + Vol_Vout_Enable = ON; //正常充电标志置ON。 + + Vol_GetOut_Box_Flag = FALSE; +#ifdef _DEBUG_VOX + printf("Vol Ching.(line:%d)\r\n",(u16)__LINE__); +#endif + } + + + } + else + if ( !( pmu_Info.pmu_VOX_STA & VOL_LoadOn ) ) //无Loadon,说明,耳机出仓 + { + nVol_Loadon_Det_Debounce++; + if( nVol_Loadon_Det_Debounce >= VOX_NO_LOADON_CNT ) //耳机充满后,断开内部下拉电阻延时计数,根据实际应用调整。 + { + nVol_Loadon_Det_Debounce = 0; + + nVol_Intobox_Disp_Flag = FALSE; + + nVol_Outbox_Disp_Flag = FALSE; + + nVol_GetOut_Box_Flag = FALSE; + + Vol_State = VOX_NONE_IN_BOX; +#ifdef _DEBUG_VOX + printf("Vol Out Box.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + + break; + + case VOX_NONE_IN_BOX: //空仓 + + VOL_EN_Type(VOX_ADT_Mode); + + Vol_Vout_Enable = OFF; + + Vol_GetOut_Box_Flag = TRUE; //左耳出盒标志置1,用于抽电灯效 + + if( pmu_Info.pmu_VOX_STA & VOL_LoadOn ) //adt模式下出现loadon信号,则说明Vol通道有耳机入盒。 + { + nVol_Loadon_Det_Debounce++; + if( nVol_Loadon_Det_Debounce >= VOX_LOADON_DET_DEBOUNCE ) //Vox Loadon信号检测延时计数,loadon信号软件数字滤波,根据实际耳机进行调试; + { + nVol_Loadon_Det_Debounce = 0; + + Vol_State = VOX_GET_INTO_BOX; + + /*置灯效显示标志*/ + Earphone_Chg_Flag_led = TRUE; +#ifdef LED_DISPLAY + LED_On_Flag = TRUE; +#endif + +#ifdef _DEBUG_VOX + printf("Vol Det Loadon.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + { + nVol_Loadon_Det_Debounce = 0; + } + + break; + + default: + break; + } + } + else //bat保护后,VOX恢复到最初状态。 + { + Vol_State = VOX_GET_INTO_BOX; + + Vol_Vout_Enable = OFF; + + if( !nVol_Get_Chip_STA_Flag ) + { + nVol_Get_Chip_STA_Flag = TRUE; + + VOL_EN_Type(VOX_ADT_Mode); //VOL Disable 5V And Enable VOR ADT + + nCHIP_STA1_Vol = pmu_Info.pmu_VOX_STA & VOL_LoadOn; + } + else + { + /*耳机出入盒判断*/ + if( nCHIP_STA1_Vol != ( pmu_Info.pmu_VOX_STA & VOL_LoadOn ) ) //查询耳机loadon状态,loadon状态改变,则说明有耳机出入盒。 + { + if( pmu_Info.pmu_VOX_STA & VOL_LoadOn ) //Vox入盒 + { + Earphone_Chg_Flag_led = TRUE; //用于灯效显示 +#ifdef LED_DISPLAY + LED_On_Flag = TRUE; +#endif +#ifdef _DEBUG_VOX + printf("VOL Get Into Box Bat Low.(line:%d)\r\n",(u16)__LINE__); +#endif + } + + nCHIP_STA1_Vol = pmu_Info.pmu_VOX_STA & VOL_LoadOn; + } + } + } +} + +Vox_State_e Vor_State; + +bit Vor_GetOut_Box_Flag; //Vor 出盒标志,用于耳机抽电灯效。 +/* +******************************************************************************* +* void Vor_Det_Machine(void) +* +* Description : Vor Detect:耳机识别。 (100ms调用周期) +* +* Arguments : NONE + +* Returns : NONE + +* Notes : NONE +* +******************************************************************************* +*/ +void Vor_Det_Machine(void) +{ + static uint8_t nVor_Loadon_Det_Debounce; //loadon标志检测延时计数 + + static uint8_t nVor_Output_Debounce; //Vox重载转轻载延时计数 + + static bit nVor_Chg_Full_Flag; //耳机充满标志 + + static bit nVor_GetOut_Box_Flag; + + static bit nVor_Outbox_Disp_Flag; + + static bit nVor_Intobox_Disp_Flag; + + static bit nVor_Get_Chip_STA_Flag; + + static uint8_t nCHIP_STA1_Vor; + + if( gBoost_Prepared_Flag ) + { + switch( Vor_State ) + { + case VOX_GET_INTO_BOX: //耳机入仓 + + /*开启Vox Vout 5V前需要先开Boost。*/ + if( !Boost_Open_Flag ) + { + Set_PMU_Boost_Vout(BOOST_VOUT_MAX); //开关盖Boost输出5.2V,保证耳机一定能被唤醒。 + + Set_PMU_Boost(ON); //Boost Enable;异常时由硬件主动关闭。开启Boost,开启Vox 5v会在开启Boost之后(100ms延时)。 + + Boost_Open_Flag = TRUE; +#ifdef _DEBUG_VOX + printf("Boost Open.(line:%d)\r\n",(u16)__LINE__); +#endif + return; + } + + VOR_EN_Type(VOX_VOUT_Mode); //Vox开启Vout 5V输出 + + Vor_Vout_Enable = ON; + + Boost_Open_Flag = FALSE; + + nVor_Chg_Full_Flag = FALSE; + + nVor_GetOut_Box_Flag = FALSE; + + nVor_Intobox_Disp_Flag = FALSE; + + nVor_Outbox_Disp_Flag = FALSE; + + nVor_Output_Debounce = 0; + + /*重启跟随充*/ +#if VOX_FOLLOW_CHG + Vox_Fllow_Chg.Vox_Follow_Start = OFF; + + Vox_Fllow_Chg.Vox_Follow_Stop = OFF; + + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; +#endif + +#ifdef _DEBUG_VOX + printf("Vor Get Into Box.(line:%d)\r\n",(u16)__LINE__); +#endif + + Vor_State = VOX_STAY_IN_BOX; + + break; + + case VOX_STAY_IN_BOX: //耳机在仓 + + if ( ( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOR_Ioff ) ) == ( VOR_LoadOn | VOR_Ioff ) ) //充电过程中出现只有IOFF,则出现如下三种情况:1、耳机出仓;2、耳机电池充满;3、耳机电池锂保。 + { + if( nVor_Intobox_Disp_Flag ) //Vor耳机在正常充电过程中,被拔出。 + { + nVor_Outbox_Disp_Flag = TRUE; + + nVor_Intobox_Disp_Flag = FALSE; + + nVor_GetOut_Box_Flag = TRUE; + + Vor_GetOut_Box_Flag = TRUE; //右耳出盒标志置1,用于抽电灯效 + +#ifdef _DEBUG_VOX + printf("Vor Get Out.(line:%d)\r\n",(u16)__LINE__); +#endif + } + + nVor_Output_Debounce++; + if( nVor_Output_Debounce >= VOX_IOFF_DET_DEBOUNCE ) //重载转轻载(耳机出仓后)需延时5s,Vox掉Vout 5V后转入ADT模式。 + { + nVor_Output_Debounce = 0; + + VOR_EN_Type(VOX_ADT_Mode); + + nVor_Chg_Full_Flag = TRUE; +#ifdef _DEBUG_VOX + printf("Vor Full And In ADT.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + if ( ( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOR_Ioff ) ) == VOR_LoadOn ) //无IOFF有Loadon,说明:1、耳机出仓后4s内,耳机再次入仓;2、10分钟未满,耳机电池退出锂保状态,进入正常充电; + { + nVor_Output_Debounce = 0; + + nVor_Intobox_Disp_Flag = TRUE; + + if( nVor_Chg_Full_Flag ) //Vox在ADT模式后检测到loadon标志,则说明耳机已充满,不再抽电,等loadon消失,判断耳机出盒。 + { + Vor_Vout_Enable = OFF; +#ifdef _DEBUG_VOX + printf("Vor Full.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else + { + if( nVor_Outbox_Disp_Flag ) //左耳4s内再次入盒,左耳对应的入盒灯效闪一次。 + { + nVor_Outbox_Disp_Flag = FALSE; + + if( nVor_GetOut_Box_Flag ) + { + nVor_GetOut_Box_Flag = FALSE; + /*重启跟随充*/ +#if VOX_FOLLOW_CHG + Vox_Fllow_Chg.Vox_Follow_Start = OFF; + + Vox_Fllow_Chg.Vox_Follow_Stop = OFF; + + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; +#endif + + Earphone_Chg_Flag_led = TRUE; //用于灯效显示 +#ifdef LED_DISPLAY + LED_On_Flag = TRUE; +#endif + +#ifdef _DEBUG_VOX + printf("Vor Get In Again.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + + Vor_Vout_Enable = ON; //正常充电标志置ON。 + + Vor_GetOut_Box_Flag = FALSE; +#ifdef _DEBUG_VOX + printf("Vor Ching.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + if ( !( pmu_Info.pmu_VOX_STA & VOR_LoadOn ) ) //无Loadon,说明,耳机出仓 + { + nVor_Loadon_Det_Debounce++; + if( nVor_Loadon_Det_Debounce >= VOX_NO_LOADON_CNT ) //耳机充满后,断开内部下拉电阻延时计数,根据实际应用调整。 + { + nVor_Loadon_Det_Debounce = 0; + + nVor_Intobox_Disp_Flag = FALSE; + + nVor_Outbox_Disp_Flag = FALSE; + + nVor_GetOut_Box_Flag = FALSE; + + Vor_State = VOX_NONE_IN_BOX; +#ifdef _DEBUG_VOX + printf("Vor Out Box.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + { + nVor_Loadon_Det_Debounce = 0; + } + + break; + + case VOX_NONE_IN_BOX: //空仓 + + VOR_EN_Type(VOX_ADT_Mode); + + Vor_Vout_Enable = OFF; + + Vor_GetOut_Box_Flag = TRUE; //右耳出盒标志置1,用于抽电灯效 + + if( pmu_Info.pmu_VOX_STA & VOR_LoadOn ) //adt模式下出现loadon信号,则说明Vor通道有耳机入盒。 + { + nVor_Loadon_Det_Debounce++; + if( nVor_Loadon_Det_Debounce >= VOX_LOADON_DET_DEBOUNCE ) //Vox Loadon信号检测延时计数,loadon信号软件数字滤波,根据实际耳机进行调试; + { + nVor_Loadon_Det_Debounce = 0; + + Vor_State = VOX_GET_INTO_BOX; + + /*置灯效显示标志*/ + Earphone_Chg_Flag_led = TRUE; +#ifdef LED_DISPLAY + LED_On_Flag = TRUE; +#endif + +#ifdef _DEBUG_VOX + printf("Vor Det Loadon.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + + break; + + default: + break; + } + } + else //bat保护后,VOX恢复到最初状态。 + { + Vor_State = VOX_GET_INTO_BOX; + + Vor_Vout_Enable = OFF; + + if( !nVor_Get_Chip_STA_Flag ) + { + nVor_Get_Chip_STA_Flag = TRUE; + + VOR_EN_Type(VOX_ADT_Mode); //VOR Disable 5V And Enable VOR ADT + + nCHIP_STA1_Vor = pmu_Info.pmu_VOX_STA & VOR_LoadOn; + } + else + { + /*耳机出入盒判断*/ + if( nCHIP_STA1_Vor != ( pmu_Info.pmu_VOX_STA & VOR_LoadOn ) ) //查询耳机loadon状态,loadon状态改变,则说明有耳机出入盒。 + { + if( pmu_Info.pmu_VOX_STA & VOR_LoadOn ) //Vox入盒 + { + Earphone_Chg_Flag_led = TRUE; //用于灯效显示 +#ifdef LED_DISPLAY + LED_On_Flag = TRUE; +#endif +#ifdef _DEBUG_VOX + printf("VOR Get Into Box Bat Low.(line:%d)\r\n",(u16)__LINE__); +#endif + } + + nCHIP_STA1_Vor = pmu_Info.pmu_VOX_STA & VOR_LoadOn; + } + } + } +} + +#else + /* ******************************************************************************* * void Vox_Det_Machine(void) @@ -432,29 +1001,29 @@ void Vox_Det_Machine(void) static bit Vox_Getinto_Sleep_Flag; - static uint8_t CHIP_STA1_BK; - - static uint8_t Vox_Voltage_Hold_Timer; - - static uint8_t Vox_TX_Timer; - + static uint8_t CHIP_STA1_BK; + + static uint8_t Vox_Voltage_Hold_Timer; + + static uint8_t Vox_TX_Timer; + static bit Vox_Chn_Select; - static uint8_t Vox_Output_Debounce; + static uint8_t Vox_Output_Debounce; - static uint8_t Vox_Output_Cnt; + static uint8_t Vox_Output_Cnt; + + static bit CoverEvent_Flg1; - static bit CoverEvent_Flg1; - /*Vox 过流保护,两只耳机都每隔200ms打嗝一次*/ if( pmu_Info.pmu_Fault_STA2 & ( Fault_Sta2_VorOCP | Fault_Sta2_VolOCP ) ) { - Vox_Output_Short_Flag = 1; + Vox_Output_Short_Flag = TRUE; return; } - Vox_Output_Short_Flag = 0; + Vox_Output_Short_Flag = FALSE; if( gBoost_Prepared_Flag ) { @@ -466,7 +1035,7 @@ void Vox_Det_Machine(void) Set_PMU_Boost(ON); //Boost Enable;异常时由硬件主动关闭。开启Boost,开启Vox 5v会在开启Boost之后(100ms延时)。 - Boost_Open_Flag = 1; + Boost_Open_Flag = TRUE; #ifdef _DEBUG_VOX printf("Boost Open.(line:%d)\r\n",(u16)__LINE__); #endif @@ -481,33 +1050,33 @@ void Vox_Det_Machine(void) Vox_TX_Timer = 0; - Get_CHIP_STA1_Flag0 = 0; + Get_CHIP_STA1_Flag0 = FALSE; - Get_CHIP_STA1_Flag1 = 0; + Get_CHIP_STA1_Flag1 = FALSE; - CoverEvent_Flg1 = 1; + CoverEvent_Flg1 = TRUE; if( CoverStatus == CLOSE ) //1、关盖关闭COM_CTRL;显示灯效。(无需查询Loadon、IOFF状态,无论耳机是否在仓,Vox 5V输出。) { - Earphone_Chg_Flag_led = 0; //关盖取消耳机入盒灯效,显示关盖灯效。 + Earphone_Chg_Flag_led = FALSE; //关盖取消耳机入盒灯效,显示关盖灯效。 - Cover_Close_Flag = 1; + Cover_Close_Flag = TRUE; - Cover_Close_Flag1 = 1; + Cover_Close_Flag1 = TRUE; - Cover_Open_Flag = 0; + Cover_Open_Flag = FALSE; - Vox_Chg_Full_Flag = 0; + Vox_Chg_Full_Flag = FALSE; - Cover_Close_Force_Vout_Flag = 0; + Cover_Close_Force_Vout_Flag = FALSE; - Vox_Getinto_Sleep_Flag = 0; + Vox_Getinto_Sleep_Flag = FALSE; - Vox_Chn_Select = 0; + Vox_Chn_Select = FALSE; Vox_Vout_Enable = ON; - Wkup_Earphone_Flag = 0; + Wkup_Earphone_Flag = FALSE; #if VOX_FOLLOW_CHG Vox_Fllow_Chg.Vox_Follow_Start = OFF; @@ -522,21 +1091,21 @@ void Vox_Det_Machine(void) } else //2、开盖处理:5v 500ms 转0V 500ms,后转ADT模式。 { - Cover_Close_Flag = 0; + Cover_Close_Flag = FALSE; - Cover_Close_Flag1 = 0; + Cover_Close_Flag1 = FALSE; - Cover_Open_Flag = 1; + Cover_Open_Flag = TRUE; - Cover_Open_5V_Flag = 0; + Cover_Open_5V_Flag = FALSE; #ifdef _DEBUG_VOX printf("Box Open.(line:%d)\r\n",(u16)__LINE__); #endif } - Boost_Open_Flag = 0; + Boost_Open_Flag = FALSE; - CoverEvent_Flg = 0; + CoverEvent_Flg = FALSE; } /* 开关盖后,VOX先升压5.2V 一段时间,唤醒耳机,后转入ADT,获取盒内耳机数量。 */ @@ -549,7 +1118,7 @@ void Vox_Det_Machine(void) if ( CoverEvent_Flg1 ) { - CoverEvent_Flg1 = 0; + CoverEvent_Flg1 = FALSE; VOX_EN_Type(VOX_ADT_Mode); @@ -559,7 +1128,7 @@ void Vox_Det_Machine(void) { if ( !Get_CHIP_STA1_Flag0 ) //获取耳机在盒数量。 { - Get_CHIP_STA1_Flag0 = 1; + Get_CHIP_STA1_Flag0 = TRUE; if ( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOL_LoadOn ) ) { @@ -639,9 +1208,9 @@ void Vox_Det_Machine(void) Vox_Output_Debounce = 0; - Get_CHIP_STA1_Flag1 = 1; + Get_CHIP_STA1_Flag1 = TRUE; - OpenCover_TX_Cmd_Flag = 1; + OpenCover_TX_Cmd_Flag = TRUE; Vox_Vout_Enable = OFF; #ifdef _DEBUG_VOX @@ -655,7 +1224,7 @@ void Vox_Det_Machine(void) { if( OpenCover_TX_Cmd_Flag ) { - OpenCover_TX_Cmd_Flag = 0; + OpenCover_TX_Cmd_Flag = FALSE; CHIP_STA1_BK = pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOL_LoadOn ); @@ -667,9 +1236,9 @@ void Vox_Det_Machine(void) { if ( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOL_LoadOn ) ) { - Earphone_Chg_Flag_led = 1; + Earphone_Chg_Flag_led = TRUE; #ifdef LED_DISPLAY - LED_On_Flag = 1; + LED_On_Flag = TRUE; #endif } #ifdef _DEBUG_VOX @@ -693,7 +1262,7 @@ void Vox_Det_Machine(void) Set_PMU_Boost(ON); //Boost Enable;异常时由硬件主动关闭。开启Boost,开启Vox 5v会在开启Boost之后(100ms延时)。 - Boost_Open_Flag = 1; + Boost_Open_Flag = TRUE; Vox_Vout_Enable = ON; #if VOX_FOLLOW_CHG @@ -705,13 +1274,13 @@ void Vox_Det_Machine(void) #endif Vox_Voltage_Hold_Timer = 0; - Vox_Chg_Full_Flag = 0; + Vox_Chg_Full_Flag = FALSE; - CoverEvent_Flg1 = 1; + CoverEvent_Flg1 = TRUE; - Get_CHIP_STA1_Flag0 = 0; + Get_CHIP_STA1_Flag0 = FALSE; - Cover_Close_Force_Vout_Flag = 1; + Cover_Close_Force_Vout_Flag = TRUE; return; } @@ -722,9 +1291,9 @@ void Vox_Det_Machine(void) printf("Close Box And Force Voltage Up.\r\n "); #endif - Boost_Open_Flag = 0; + Boost_Open_Flag = FALSE; - Cover_Close_Flag1 = 1; + Cover_Close_Flag1 = TRUE; if( Vox_Voltage_Hold_Timer <= HALL_CLOSE_VOX_5V_HOLD_CNT ) //关盖Boost VOUT 5V保持时间。 { @@ -733,7 +1302,7 @@ void Vox_Det_Machine(void) return; } - Wkup_Earphone_Flag = 0; + Wkup_Earphone_Flag = FALSE; } else { @@ -823,13 +1392,13 @@ void Vox_Det_Machine(void) #ifdef _DEBUG_VOX printf("VOX Vout 5V(VOX_STA:0x%x,line:%d).\r\n",(uint16_t)(pmu_Info.pmu_VOX_STA), (uint16_t)__LINE__); #endif - Cover_Close_Flag1 = 0; + Cover_Close_Flag1 = FALSE; } else { if( !Vox_Chg_Full_Flag ) { - if( ( (pmu_Info.pmu_VOX_STA & ( VOR_Ioff | VOL_Ioff ) ) == ( VOR_Ioff | VOL_Ioff ) )|| !( pmu_Info.pmu_VOX_STA & ( VOL_LoadOn | VOR_LoadOn ) ) || F_batlevel_low ) //耳机充满、VOX无负载、盒子低电,则关闭Vout输出通路,关闭Boost。 + if( ( (pmu_Info.pmu_VOX_STA & ( VOR_Ioff | VOL_Ioff ) ) == ( VOR_Ioff | VOL_Ioff ) ) || !( pmu_Info.pmu_VOX_STA & ( VOL_LoadOn | VOR_LoadOn ) ) || F_batlevel_low ) //耳机充满、VOX无负载、盒子低电,则关闭Vout输出通路,关闭Boost。 { if( Vox_Voltage_Hold_Timer <= VOX_CHG_FULL_5V_LEAST_CNT ) //重载转轻载延时5s后关闭Boost输出。 { @@ -841,13 +1410,13 @@ void Vox_Det_Machine(void) printf("VOX CHG Full.\r\n"); #endif - Vox_Chg_Full_Flag = 1; + Vox_Chg_Full_Flag = TRUE; Vox_Output_Cnt = 0; Vox_Voltage_Hold_Timer = 0; - Vox_Getinto_Sleep_Flag = 0; + Vox_Getinto_Sleep_Flag = FALSE; VOX_EN_Type(VOX_ADT_Mode); //VOX Enable ADT } @@ -897,7 +1466,7 @@ void Vox_Det_Machine(void) { if( !Vox_Getinto_Sleep_Flag ) { - Vox_Getinto_Sleep_Flag = 1; + Vox_Getinto_Sleep_Flag = TRUE; VOX_EN_Type(VOX_ADT_Mode); @@ -910,14 +1479,14 @@ void Vox_Det_Machine(void) } } } - - Bat_Low_Pro_Flag = 0; + + Bat_Low_Pro_Flag = FALSE; } else { if( !Bat_Low_Pro_Flag ) //低电保护后,VOX开启ADT模式。判断耳机出入盒,并显示相应的灯效。 { - Bat_Low_Pro_Flag = 1; + Bat_Low_Pro_Flag = TRUE; VOX_EN_Type(VOX_ADT_Mode); @@ -933,9 +1502,9 @@ void Vox_Det_Machine(void) { if( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOL_LoadOn ) ) { - Earphone_Chg_Flag_led = 1; + Earphone_Chg_Flag_led = TRUE; #ifdef LED_DISPLAY - LED_On_Flag = 1; + LED_On_Flag = TRUE; #endif } @@ -945,6 +1514,8 @@ void Vox_Det_Machine(void) } +#endif + #if VOX_FOLLOW_CHG /* @@ -964,7 +1535,7 @@ void Vox_Det_Machine(void) void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) { static bit nVpmid_Value_Setting; - + switch (Follow_Chg_Sta) { case Vox_Follow_Chg_InitSta: //STA0:PMID=5.2V可以保证耳机一定能进入充电状态,并持续一段时间保证耳机能开始抽电。 @@ -983,34 +1554,34 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #ifdef _DEBUG_FOLLOW printf("Follow CHG InitSta Set Max Vpmid.(Vox_sta:0x%x)(line:%d)\r\n",(u16)pmu_Info.pmu_VOX_STA, (u16)__LINE__); #endif - nVpmid_Value_Setting = 1; + nVpmid_Value_Setting = TRUE; } } else { Vox_Follow_Init_Deb = 0; /* 参数初始化。 */ - nVpmid_Value_Setting = 0; + nVpmid_Value_Setting = FALSE; - n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] = OFF; - n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] = OFF; - n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] = OFF; - n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_TYPE] = OFF; - n_Vox_Fllow_Chg->IVox_TC_Mode[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->IVox_TC_Mode[VOR_TYPE] = OFF; - n_Vox_Fllow_Chg->IVox_TC_Mode[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->IVox_TC_Mode[VOL_TYPE] = OFF; - n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] = OFF; - n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] = OFF; - n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] = 0; + n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] = 0; - n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] = 0; + n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] = 0; n_Vox_Fllow_Chg->Vpmid_Threshold_Neg = VOUT_MIN_THD; @@ -1043,26 +1614,26 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) /*获取当前Ivox。Vox开启功率,且Ioff处于重载状态。*/ if( !(pmu_Info.pmu_VOX_STA & VOR_Ioff) ) { - n_Vox_Fllow_Chg->IVox_Init[VOR_CHAN] = g_pmu_Adc_Ivor; + n_Vox_Fllow_Chg->IVox_Init[VOR_TYPE] = g_pmu_Adc_Ivor; - n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_CHAN] = IVOR_Threshold_Neg(g_pmu_Adc_Ivor); //Ivox_Threshold_Neg = IVox_Init * 80% + n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_TYPE] = IVOR_Threshold_Neg(g_pmu_Adc_Ivor); //Ivox_Threshold_Neg = IVox_Init * 80% - n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_CHAN] = IVOR_Threshold_Pos(g_pmu_Adc_Ivor); //Ivox_Threshold_Neg = IVox_Init * 2 + n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_TYPE] = IVOR_Threshold_Pos(g_pmu_Adc_Ivor); //Ivox_Threshold_Neg = IVox_Init * 2 #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta1,VOR Chging(Ivor:%dmA).(line:%d)\r\n",g_pmu_Adc_Ivor,(u16)__LINE__); + printf("Follow CHG Sta1,VOR Chging(Ivor:%dmA,Ivor_Neg:%dmA,Ivor_Pos:%dmA).(line:%d)\r\n",g_pmu_Adc_Ivor,(u16)n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_TYPE],(u16)n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_TYPE],(u16)__LINE__); #endif } if( !(pmu_Info.pmu_VOX_STA & VOL_Ioff) ) { - n_Vox_Fllow_Chg->IVox_Init[VOL_CHAN] = g_pmu_Adc_Ivol; + n_Vox_Fllow_Chg->IVox_Init[VOL_TYPE] = g_pmu_Adc_Ivol; - n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_CHAN] = IVOL_Threshold_Neg(g_pmu_Adc_Ivol); //Ivox_Threshold_Neg = IVox_Init * 80% + n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_TYPE] = IVOL_Threshold_Neg(g_pmu_Adc_Ivol); //Ivox_Threshold_Neg = IVox_Init * 80% - n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_CHAN] = IVOL_Threshold_Pos(g_pmu_Adc_Ivol); //Ivox_Threshold_Neg = IVox_Init * 2 + n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_TYPE] = IVOL_Threshold_Pos(g_pmu_Adc_Ivol); //Ivox_Threshold_Neg = IVox_Init * 2 #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta1,VOL Chging(Ivol:%dmA).(line:%d)\r\n",(u16)g_pmu_Adc_Ivol,(uint16_t)__LINE__); + printf("Follow CHG Sta1,VOL Chging(Ivol:%dmA,Ivol_Neg:%dmA,Ivol_Pos:%dmA).(line:%d)\r\n",(u16)g_pmu_Adc_Ivol,(u16)n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_TYPE],(u16)n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_TYPE],(uint16_t)__LINE__); #endif } @@ -1086,21 +1657,21 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) if ( !(pmu_Info.pmu_VOX_STA & VOR_Ioff) ) { - n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] = g_pmu_Adc_Ivor; + n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] = g_pmu_Adc_Ivor; - n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] = ON; //判断VOR有耳机在盒正常抽电 + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] = ON; //判断VOR有耳机在盒正常抽电 #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta2,Get IVOR:%dmA.(line:%d)\r\n",(uint16_t)g_pmu_Adc_Ivor,(u16)__LINE__); + printf("Follow CHG Sta2,Get IVOR:%dmA,AtPre Ivor:%dmA.(line:%d)\r\n",(uint16_t)g_pmu_Adc_Ivor,(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE],(u16)__LINE__); #endif } if ( !(pmu_Info.pmu_VOX_STA & VOL_Ioff) ) { - n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] = g_pmu_Adc_Ivol; + n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] = g_pmu_Adc_Ivol; - n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] = ON; //判断VOL有耳机在盒正常抽电 + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] = ON; //判断VOL有耳机在盒正常抽电 #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta2,Get IVOL:%dmA.(line:%d)\r\n",(uint16_t)g_pmu_Adc_Ivol,(u16)__LINE__); + printf("Follow CHG Sta2,Get IVOL:%dmA,AtPre Ivol:%dmA.(line:%d)\r\n",(uint16_t)g_pmu_Adc_Ivol,(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE],(u16)__LINE__); #endif } @@ -1119,99 +1690,99 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) { Vox_Follow_Chg_Debounce = 0; - if ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_CHAN] ) || \ - ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_CHAN] ) ) //当前电流大于THP阈值电流,则说明耳机状态发生改变(TC跳转到CC或Recharge复充),需要重启跟随充。 + if ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_TYPE] ) || \ + ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_TYPE] ) ) //当前电流大于THP阈值电流,则说明耳机状态发生改变(TC跳转到CC或Recharge复充),需要重启跟随充。 { Follow_Chg_Sta = Vox_Follow_Chg_InitSta; n_Vox_Fllow_Chg->Vox_Follow_Start = OFF; //重启动跟随充 #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3,VOX Chg ReInit.(line:%d)\r\n",(uint16_t)__LINE__); + printf("Follow CHG Sta3,VOX Chg ReInit.(AtPre Ivor:%dmA,Ivol:%dmA;Pos Ivor:%dmA,Ivol:%dmA)(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE],(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE],n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_TYPE],n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_TYPE],(uint16_t)__LINE__); #endif } else { - if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == ON ) { - if ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] <= VOX_CV_TC_CURRENT ) //检测到Ivor小于CV/TC电流阈值,则说明耳机进入CV/TC阶段 + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] <= VOX_CV_TC_CURRENT ) //检测到Ivor小于CV/TC电流阈值,则说明耳机进入CV/TC阶段 { if ( pmu_Info.pmu_VOX_STA & VOR_Ioff ) //检测到Ivor Ioff,则VPMID升档。 { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] = ON; if ( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present >= VOUT_MAX_THD ) //Vpmid电压升到最大,并且IOFF标志存在,则说明耳机充满。 { - n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] = OFF; } #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CV),VOR Vpmid AddSta(Ivor:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CV),VOR Vpmid AddSta(AtPre Ivor:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE],(u16)__LINE__); #endif } else //未检测到Ivor Ioff,则Vpmid降档 { - n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] = ON; #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CV),VOR Vpmid SubSta(Ivor:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CV),VOR Vpmid SubSta(AtPre Ivor:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE],(u16)__LINE__); #endif } } else { - if ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_CHAN] ) + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_TYPE] ) { - n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] = ON; #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CC),VOR Vpmid SubSta(Ivor:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CC),VOR Vpmid SubSta(AtPre Ivor:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE],(u16)__LINE__); #endif } else { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] = ON; #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CC),VOR Vpmid AddSta(Ivor:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CC),VOR Vpmid AddSta(AtPre Ivor:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE],(u16)__LINE__); #endif } } } - if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == ON ) { - if ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] <= VOX_CV_TC_CURRENT ) //检测到Ivol小于CV/TC电流阈值,则说明耳机进入CV/TC阶段 + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] <= VOX_CV_TC_CURRENT ) //检测到Ivol小于CV/TC电流阈值,则说明耳机进入CV/TC阶段 { if ( pmu_Info.pmu_VOX_STA & VOL_Ioff ) //检测到Ivol Ioff,则VPMID升档。 { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] = ON; if ( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present >= VOUT_MAX_THD ) //Vpmid电压升到最大,并且IOFF标志存在,则说明耳机充满。 { - n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] = OFF; } #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CV),VOL Vpmid AddSta(Ivol:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CV),VOL Vpmid AddSta(Ivol:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE],(u16)__LINE__); #endif } else //未检测到Ivol Ioff,则Vpmid降档 { - n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_TYPE] = ON; #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CV),VOL Vpmid SubSta(Ivol:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CV),VOL Vpmid SubSta(Ivol:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE],(u16)__LINE__); #endif } } else { - if ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_CHAN] ) + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_TYPE] ) { - n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_TYPE] = ON; #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CC),VOL Vpmid SubSta(Ivol:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CC),VOL Vpmid SubSta(AtPre Ivol:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE],(u16)__LINE__); #endif } else { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] = ON; #ifdef _DEBUG_FOLLOW - printf("Follow CHG Sta3(CC),VOL Vpmid AddSta(Ivol:%dmA).(line:%d)\r\n",n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN],(u16)__LINE__); + printf("Follow CHG Sta3(CC),VOL Vpmid AddSta(AtPre Ivol:%dmA).(line:%d)\r\n",(uint16_t)n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE],(u16)__LINE__); #endif } } @@ -1228,25 +1799,25 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) /* 每2s检测一次IVOX电流。 */ Vox_Follow_Chg_Debounce++; - n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] = g_pmu_Adc_Ivor; + n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] = g_pmu_Adc_Ivor; - n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] = g_pmu_Adc_Ivol; + n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] = g_pmu_Adc_Ivol; } else { Vox_Follow_Chg_Debounce = 0; /* 充电效率优先 */ #ifdef FOLLOW_CHG_EFFICIENCY - if ( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) ) + if ( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == ON ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == ON ) ) { - if ( ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_CHAN] ) || \ - ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_CHAN] ) ) && \ - ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_CHAN] ) || \ - ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_CHAN] ) ) ) + if ( ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_TYPE] ) || \ + ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_TYPE] ) ) && \ + ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_TYPE] ) || \ + ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_TYPE] ) ) ) { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] = ON; - n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] = ON; Follow_Chg_Sta = Vox_Follow_Chg_Sta2; #ifdef _DEBUG_FOLLOW @@ -1266,13 +1837,13 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #endif { /* 充电速度优先 */ - if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == ON ) { /* 当检测到 IVOX < IVOX_THN or IVOX > IVOX_THP,则PMID 升高一个step(或N个step,根据实际测试设定。) */ - if ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_CHAN] ) || \ - ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_CHAN] ) ) + if ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_TYPE] ) || \ + ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_TYPE] ) ) { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] = ON; Follow_Chg_Sta = Vox_Follow_Chg_Sta2; #ifdef _DEBUG_FOLLOW @@ -1287,12 +1858,12 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #endif } - if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == ON ) { - if ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_CHAN] ) || \ - ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_CHAN] ) ) + if ( ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] > n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_TYPE] ) || \ + ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_TYPE] < n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_TYPE] ) ) { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] = ON; Follow_Chg_Sta = Vox_Follow_Chg_Sta2; #ifdef _DEBUG_FOLLOW @@ -1315,14 +1886,14 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) break; } - if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) || ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) ) + if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == ON ) || ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == ON ) ) { - if( ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] == ON ) || ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] == ON ) ) //当需要降压Vpmid,则每降一次档位,都会充电至少2s。 + if( ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] == ON ) || ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_TYPE] == ON ) ) //当需要降压Vpmid,则每降一次档位,都会充电至少2s。 { - if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) ) + if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == ON ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == ON ) ) { - if( ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] == ON ) && ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] == ON ) ) + if( ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] == ON ) && ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] == ON ) ) { n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = ON; #ifdef _DEBUG_FOLLOW @@ -1330,9 +1901,9 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #endif } } - if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == OFF ) ) + if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == ON ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == OFF ) ) { - if( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] == ON ) + if( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] == ON ) { n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = ON; #ifdef _DEBUG_FOLLOW @@ -1341,9 +1912,9 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) } } else - if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == OFF ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) ) + if( ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_TYPE] == OFF ) && ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_TYPE] == ON ) ) { - if( n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] == ON ) + if( n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_TYPE] == ON ) { n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = ON; #ifdef _DEBUG_FOLLOW @@ -1352,9 +1923,9 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) } } - n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_TYPE] = OFF; - n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_TYPE] = OFF; if ( n_Vox_Fllow_Chg->Vpmid_SubSta_Flag == ON ) { @@ -1386,11 +1957,11 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) else { /* PMID > PMID_THP,且VOL和VOR的任意一支路电流超过阈值,Ivol_THN > Ivol > Ivol_THP 或 Ivor_THN > Ivor > Ivor_THP。*/ - if( ( n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] == ON ) || ( n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] == ON ) ) + if( ( n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] == ON ) || ( n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] == ON ) ) { - n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_TYPE] = OFF; - n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = OFF; + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_TYPE] = OFF; if( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present < VOUT_MAX_THD ) { @@ -1427,6 +1998,9 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #endif +#ifdef VOX_TX + + #if XUANHENG /* @@ -1518,7 +2092,6 @@ void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) #endif -#ifdef VOX_TX /* ******************************************************************************* * void HandleTxCommand(VOX_BES_COMMAND_E RxCommand, e_Vox_Chan nVox_Chn_Select) @@ -1894,8 +2467,23 @@ void HandleTxCommand(VOX_BES_COMMAND_E TxCommand, e_Vox_Chan nVox_Chn_Select) #endif /* vor、vol都使用uart0进行分时通讯。 */ - VOX_EN_Type( VOX_COMM_Mode_Uart ); +#ifdef VOX_ADT_ENABLE + + if(nVox_Chn_Select == VOL_CHAN) + { + VOL_EN_Type( VOX_COMM_Mode_Uart ); + } + else + { + VOR_EN_Type( VOX_COMM_Mode_Uart ); + } +#else + + VOX_EN_Type( VOX_COMM_Mode_Uart ); + +#endif + if(nVox_Chn_Select == VOR_CHAN) { SFRADDR = MFP_CTL0; //关闭VOR到UART0的开关,配置P02为GPIO,P03为UART0。 @@ -2211,15 +2799,23 @@ void HandleRxMsg(VOX_BES_COMMAND_E RxCommand) void HandleVoxCommMsg(void) { - uint16_t CrcCheckSum = 0; uint8_t i = 0; + #if XUANHENG - uint16_t Data_Len = 0; + + uint16_t CrcCheckSum = 0; + + uint16_t Data_Len = 0; + +#else + + uint8_t CrcCheckSum = 0; + #endif /*RX数据处理*/ if( Uart0_RX_Finish_Flag ) { - Uart0_RX_Finish_Flag = 0; + Uart0_RX_Finish_Flag = FALSE; #ifdef _DEBUG_VOX printf("RX0_Buffer[0]:0x%x,RX0_Buffer[1]:0x%x,RX0_Buffer[2]:0x%x,RX0_Buffer[3]:0x%x,RX0_Buffer[4]:0x%x,RX0_Buffer[5]:0x%x,RX0_Buffer[6]:0x%x,RX0_Buffer[7]:0x%x,line:%d\r\n",(u16)RX0_Buffer[0],(u16)RX0_Buffer[1],(u16)RX0_Buffer[2],(u16)RX0_Buffer[3],(u16)RX0_Buffer[4],(u16)RX0_Buffer[5],(u16)RX0_Buffer[6],(u16)RX0_Buffer[7],(u16)__LINE__); diff --git a/sy8835_demo.si4project/sy8835_demo.SearchResults b/sy8835_demo.si4project/sy8835_demo.SearchResults index e54da2f..1499fb8 100644 --- a/sy8835_demo.si4project/sy8835_demo.SearchResults +++ b/sy8835_demo.si4project/sy8835_demo.SearchResults @@ -1,2 +1,14 @@ ----- reg3315 Matches (1 in 1 files) ---- -define.h (UsrInc\inc) line 142 : #include "reg3315.h" +---- VOX_MAX_CHAN Matches (13 in 1 files) ---- +vox_module.h (UsrInc\vox) line 47 : #define VOX_MAX_CHAN 0x02 +vox_module.h (UsrInc\vox) line 184 : VOX_MAX_CHAN = 0x02, +vox_module.h (UsrInc\vox) line 223 : VOX_MAX_CHAN = 0x02, +vox_module.h (UsrInc\vox) line 275 : VOX_MAX_CHAN = 0x02, +vox_module.h (UsrInc\vox) line 311 : VOX_MAX_CHAN = 0x02, +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint16_t IVox_Init[VOX_MAX_CHAN]; //璺熼殢鍏匳ox鍒濆鍖栫數娴佸笺 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint16_t IVox_Threshold_Neg[VOX_MAX_CHAN]; //Vox鐢垫祦涓嬮檷闃堝 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint16_t IVox_Threshold_Pos[VOX_MAX_CHAN]; //Vox鐢垫祦涓婂崌闃堝 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint16_t IVox_At_Present[VOX_MAX_CHAN]; //Vox褰撳墠鐢垫祦 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint8_t IVox_TC_Mode[VOX_MAX_CHAN]; //Vox CV_TC鍏呯數鐢垫祦闃堝 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint8_t Vpmid_SubSta[VOX_MAX_CHAN]; //Vox鐨刅pmid鐢靛帇涓嬮檷鏍囧織 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint8_t Vpmid_AddSta[VOX_MAX_CHAN]; //Vpmid鐢靛帇涓婂崌鏍囧織 +{anong_Vox_Fllow_Chg_Cfg} in vox_module.h (UsrInc\vox) : uint8_t Vox_InBox_Sta[VOX_MAX_CHAN]; //鑰虫満鍦ㄧ洅鏍囧織 diff --git a/sy8835_demo.si4project/sy8835_demo.sip_sym b/sy8835_demo.si4project/sy8835_demo.sip_sym index ed76abf..c2decf9 100644 Binary files a/sy8835_demo.si4project/sy8835_demo.sip_sym and b/sy8835_demo.si4project/sy8835_demo.sip_sym differ diff --git a/sy8835_demo.si4project/sy8835_demo.sip_xab b/sy8835_demo.si4project/sy8835_demo.sip_xab index 1ebd7a5..b3b92bb 100644 Binary files a/sy8835_demo.si4project/sy8835_demo.sip_xab and b/sy8835_demo.si4project/sy8835_demo.sip_xab differ diff --git a/sy8835_demo.si4project/sy8835_demo.sip_xad b/sy8835_demo.si4project/sy8835_demo.sip_xad index 3e8dc7f..106ea0b 100644 Binary files a/sy8835_demo.si4project/sy8835_demo.sip_xad and b/sy8835_demo.si4project/sy8835_demo.sip_xad differ diff --git a/sy8835_demo.si4project/sy8835_demo.siwork b/sy8835_demo.si4project/sy8835_demo.siwork index 499469a..8c173d4 100644 Binary files a/sy8835_demo.si4project/sy8835_demo.siwork and b/sy8835_demo.si4project/sy8835_demo.siwork differ