From 81ca86199abf04b660ea33f347ecc0e65a1f0c62 Mon Sep 17 00:00:00 2001 From: Alex xu Date: Fri, 29 Nov 2024 20:13:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E5=86=85=E5=AE=B9=EF=BC=9A?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=B7=9F=E9=9A=8F=E5=85=85=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Out/SY8835_EVB_mcu_2024_11_27_155640.bin | Bin 16384 -> 0 bytes Out/SY8835_EVB_mcu_2024_11_27_155640.hex | 653 ------------- ...cu_2024_11_27_155640_crc(e46f)_V010101.bin | Bin 16386 -> 0 bytes Out/SY8835_EVB_mcu_2024_11_29_200455.bin | Bin 0 -> 16384 bytes Out/SY8835_EVB_mcu_2024_11_29_200455.hex | 857 ++++++++++++++++++ ...cu_2024_11_29_200455_crc(23bf)_V010101.bin | Bin 0 -> 16386 bytes Project/SY8835_Demo.uvgui.GH | 40 +- UsrDoc/NTC计算取值公式表.xlsx | Bin 0 -> 16554 bytes UsrDoc/程序流程图/跟随充流程图.vsdx | Bin 0 -> 24870 bytes UsrInc/inc/config.h | 44 +- UsrInc/inc/define.h | 6 +- UsrInc/pmu/pmu.h | 4 +- UsrInc/vox/vox_module.h | 88 +- UsrSrc/charger/charger_module.c | 2 +- UsrSrc/pmu/pmu.c | 3 +- UsrSrc/userapp/userapp.c | 4 +- UsrSrc/vox/vox_module.c | 730 +++++++++++---- .../sy8835_demo.SearchResults | 14 +- sy8835_demo.si4project/sy8835_demo.sip_sym | Bin 249992 -> 251792 bytes sy8835_demo.si4project/sy8835_demo.sip_xab | Bin 90112 -> 94208 bytes sy8835_demo.si4project/sy8835_demo.sip_xad | Bin 1208 -> 1248 bytes sy8835_demo.si4project/sy8835_demo.sip_xsb | Bin 32768 -> 36864 bytes sy8835_demo.si4project/sy8835_demo.sip_xsd | Bin 648 -> 688 bytes sy8835_demo.si4project/sy8835_demo.siwork | Bin 108992 -> 50988 bytes 24 files changed, 1544 insertions(+), 901 deletions(-) delete mode 100644 Out/SY8835_EVB_mcu_2024_11_27_155640.bin delete mode 100644 Out/SY8835_EVB_mcu_2024_11_27_155640.hex delete mode 100644 Out/SY8835_EVB_mcu_2024_11_27_155640_crc(e46f)_V010101.bin create mode 100644 Out/SY8835_EVB_mcu_2024_11_29_200455.bin create mode 100644 Out/SY8835_EVB_mcu_2024_11_29_200455.hex create mode 100644 Out/SY8835_EVB_mcu_2024_11_29_200455_crc(23bf)_V010101.bin create mode 100644 UsrDoc/NTC计算取值公式表.xlsx create mode 100644 UsrDoc/程序流程图/跟随充流程图.vsdx diff --git a/Out/SY8835_EVB_mcu_2024_11_27_155640.bin b/Out/SY8835_EVB_mcu_2024_11_27_155640.bin deleted file mode 100644 index 39f4201b6c4c76db0e7672c2f2766c20f4310374..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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 diff --git a/Out/SY8835_EVB_mcu_2024_11_29_200455.bin b/Out/SY8835_EVB_mcu_2024_11_29_200455.bin new file mode 100644 index 0000000000000000000000000000000000000000..f38694a1c97fa57d74f65ad5638f6871b78c88e1 GIT binary patch literal 16384 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 literal 0 HcmV?d00001 diff --git a/Out/SY8835_EVB_mcu_2024_11_29_200455.hex b/Out/SY8835_EVB_mcu_2024_11_29_200455.hex new file mode 100644 index 0000000..1cea43d --- /dev/null +++ b/Out/SY8835_EVB_mcu_2024_11_29_200455.hex @@ -0,0 +1,857 @@ +:030000000226E6EF +:0F26E60075FE7275FF00758E007581B502273085 +:0B2FF900122BFA122865122B5280F8F0 +:101DFB004100F40002B4000002AE000002AC00008F +:101E0B0002AA000002B0000002A800004100F50089 +:101E1B00029C000002A2000002B2000002A6000019 +:0C1E2B0002A40000029E000002A00000C3 +:10006E0075FE3175FF8175FE0E43FF107DAB7F303F +:0C007E0012303D75FE3243FF03D2BD225C +:102E4500900000EFF04408FD7F31122CB590000092 +:0F2E5500E09000F5F075A38175FE3275FF012244 +:03006B00021FB3BE +:101FB300C0E0C0F0C083C082C0D075D000C000C0F4 +:0D1FC30001C002C003C004C005C006C00775 +:101FD000900048E4F0E5FEF0E5A420E0030220C311 +:101FE0007F3512304478AE760008A6077F3612306F +:101FF00044EF540378AE46F608E6F618E6FE08E627 +:10200000FF7C097DC412184F780A1217ED78AEA62E +:102010000608A6079000F5E0121829203700204A8C +:1020200001205302206603207904208C05209F069E +:1020300020AE07000020C378AEE6FE08E67802CEA8 +:10204000C313CE13D8F9799D807578AFE625E07972 +:10205000B5805378AEE6FE08E67803C333CE33CEC0 +:10206000D8F979A3805978AEE6FE08E67802C33342 +:10207000CE33CED8F979B3804678AEE6FE08E6785E +:1020800002C333CE33CED8F979A7803378AEE6FEDB +:1020900008E67802C333CE33CED8F979A58020780C +:1020A000AFE625E0799FF718E63319F7801578AE8B +:1020B000E6FE08E67802CEC313CE13D8F979A1F76D +:1020C000EE19F7E5A430E11B7F3712304478AC7687 +:1020D0000008A6077F38123044EF540378AC46F668 +:1020E00008E6F6E5A430E21B7F3912304478AA7680 +:1020F0000008A6077F3A123044EF540378AA46F648 +:1021000008E6F6E5A430E31B7F3B12304478B07656 +:102110000008A6077F3C123044EF540378B046F61F +:1021200008E6F6E5A430E41B7F3D12304478A8763B +:102130000008A6077F3E123044EF540378A846F605 +:0C21400008E6F675A40F900048E0F5FEDC +:10214C00D007D006D005D004D003D002D001D000E7 +:0B215C00D0D0D082D083D0F0D0E03291 +:051E3700C137010D039D +:102F0B00E4780FF67811F6780DE67810F6781276ED +:082F1B00047D207F40022CB56B +:1029F1009000EAE05463600CE4FF122DE1E4780EEC +:102A0100F6C237229000EBE05407FFBF0607D2372A +:102A1100780E7602227810E6FD7F22122CB578120C +:102A2100E6FD7F21122CB5780FE6C454F0781146EB +:102A3100FD7F23122CB57F01122DE1780E7601C2A4 +:022A410037223A +:041E3C00C12FC130C1 +:102A92009000EAE0FF30E603C22F22EF30E205C2E7 +:102AA2002FD23022303608E4FF122E03C22F22909A +:102AB20000EAE030E503C22F22D22F303019780E1F +:102AC200E6B40113C378B5E6941018E6940E4005F7 +:082AD200D22FC23022C22F22D4 +:081E4000C131C1324100F7FF7E +:102C89009000EBE0FE5420FF9000F7E06F601CEE2F +:102C990030E5089000F67401F08005E49000F6F044 +:0B2CA900D231D232D22B9000F7EFF0B6 +:012CB40022FD +:102BC5006C6F6E672032732070726573730D0A0027 +:102BD500737570706572206C6F6E67203873207026 +:102BE500726573730D0A0073686F72742070726575 +:052BF50073730D0A00DE +:101E4800C11EC11DC11C0118004100EE004100ED7A +:061E5800004200EF000053 +:102306009000EBE030E4379000EFE475F001121630 +:10231600F59000EFE0FEA3E0FFC39464EE94004066 +:1023260007201A14D21A8010C3EF9490EE9401403D +:1023360007201B04D21BD21CD217C21880383017B4 +:102346002EC217D218C21B9000EFE0FEA3E0FFD307 +:102356009419EE94005008D21ED219D22B8010C3C5 +:10236600EF94FAEE94005007301A04C21AD21DE414 +:102376009000EFF0A3F030183FC218301D14C21DB4 +:1023860078187602E49000EEF07BFF7A2B79C5127E +:102396001236301C0FC21C781876037BFF7A2B7915 +:1023A600D5121236301915C219781876017BFF7AC4 +:1023B6002B79EC1212368004E47818F69000F6E0D9 +:1023C6006401600302248E7818E664026003022426 +:1023D600559000EEE0C3940150107D017F0112215B +:1023E60067E4900075F0A3F080529000EDE0D3947E +:1023F600054004E4F08039900076E0B4010FE4FD76 +:102406007F021221679000767402F0802F9000768A +:10241600E064027027900075E0601A7D017F021269 +:102426002167E4900075F0A3F09000EEF07818F6BE +:102436007F03022775E4FD7F011221679000EEE01D +:10244600D3941440349000EDE004F0E4A3F0227835 +:1024560018E6640370329000EEE0FFC3941E50202D +:10246600EF540125E060047D0180099000EEE03024 +:10247600E007E4FD7F031221679000EEE004F022FE +:08248600E47818F69000EEF076 +:01248E00222B +:101E5E0041007D0041007C0041007E0041007B007E +:0F2FBF0075FE0B75FF0FC290C291C293C2922292 +:102ED700EF14600D14600D14600D2403700BD29075 +:0A2EE70022D29122D29222D293222D +:052E6400900000E0FFFA +:102E6900EF14600D14600D14600D2403700BC290F3 +:0A2E790022C29122C29222C29322CB +:10293100E4FF747F2FF582E43400F583E4F07483BF +:102941002FF582E43400F583E4F0EF25E02487F5E8 +:1029510082E43400F583E4F0A3F0EF25E0248FF561 +:1029610082E43400F583E4F0A3F0EF25E02497F549 +:1029710082E43400F583E4F0A3F0EF25E0249FF531 +:0F29810082E43400F583E4F0A3F00FEFB404A375 +:012990002224 +:1028CE00AC07747F2CF582E43400F583EDF0EAC397 +:1028DE0013FEEB13FFEC25E02487F582E43400F5BC +:1028EE0083EEF0A3EFF0AF03EC25E0248FF582E446 +:1028FE003400F583EAF0A3EFF0900005E0FEA3E0CC +:10290E00FFEC25E02497F582E43400F583EEF0A386 +:10291E00EFF0EC25E0249FF582E43400F583E4F03B +:03292E00A3F022F1 +:102B1700747F2FF582E43400F583EDF074832FF58D +:102B270082E43400F583EBF0EF25E02487F582E4B7 +:102B37003400F583E4F0A37469F0EF25E0249FF5F2 +:0B2B470082E43400F583E4F0A3F022E8 +:100E5E00E4900000F0F0900000E0FFC39404400323 +:100E6E000211A0747F2FF582E43400F583E0602236 +:100E7E0024FE6024147003020F68147003020FDF47 +:100E8E002403600302113C900000E0FF122ED702F3 +:100E9E00113C122E6402113C900000E0FF25E0246C +:100EAE0087F582E43400F583E0FCA3E0FDEF25E056 +:100EBE00249FF582E43400F583E0FEA3E0C39DEEAB +:100ECE009C5005122ED78003122E64900000E0FF76 +:100EDE0025E0248FF582E43400F583E0FCA3E0FDE9 +:100EEE00EF25E0249FF582E43400F583E0FEA3E0D5 +:100EFE00C39DEE9C500302113C900000E025E024BF +:100F0E009FF582E43400F583E4F0A3F0EF25E024AE +:100F1E0097F582E43400F583E0FEA3E0D39400EE6F +:100F2E0094004016900000E025E02497F582E4340A +:100F3E0000F58374FFF5F01216F5900000E0FF2522 +:100F4E00E02497F582E43400F583E0FCA3E04C60E6 +:100F5E000302113C747F2F020FFB900000E0FF256F +:100F6E00E02487F582E43400F583E0FCA3E0FDEF96 +:100F7E0025E0249FF582E43400F583E0FEA3E0D360 +:100F8E009DEE9C5005122ED78003122E6490000009 +:100F9E00E0FF25E0248FF582E43400F583E0FCA326 +:100FAE00E0FDEF25E0249FF582E43400F583E0FEBA +:100FBE00A3E0C39DEE9C500302113C900000E0257F +:100FCE00E0249FF582E43400F583E4F0A3F00211EF +:100FDE003C900000E0FF2483F582E43400F583E0CA +:100FEE007017122E25C238900000E0247FF582E49F +:100FFE003400F583E4F002113C900000E0FF2483FE +:10100E00F582E43400F583E0FE6402704B20381460 +:10101E00D238EF25E02487F582E43400F583E4F03E +:10102E00A37469F0900000E0FF25E02487F582E4C8 +:10103E003400F583E475F0011216F5EF25E02487F0 +:10104E00F582E43400F583E0FCA3E0C394FEEC9457 +:10105E00005003021126804EEE6401705A2038179C +:10106E00D238900000E025E02487F582E43400F5C4 +:10107E0083E4F0A374FEF0900000E0FF25E02487E7 +:10108E00F582E43400F58374FFF5F01216F5EF25C2 +:10109E00E02487F582E43400F583E0FEA3E0D394E8 +:1010AE0069EE94005072900000E02483F582E434DF +:1010BE0000F583E4F08061900000E0FF2483F58268 +:1010CE00E43400F583E06403704EEF25E02487F5E9 +:1010DE0082E43400F583E0FEA3E0FFC394FEEE94B9 +:1010EE00004004D238800BD3EF946AEE9400500285 +:1010FE00C238900000E025E0248730380DF582E4F8 +:10110E003400F58374FFF5F0800BF582E43400F5BE +:10111E0083E475F0011216F5900000E0FF25E0243F +:10112E0087F582E43400F583A3E0FD122A43900094 +:10113E0000E0FF7011747F2FF582E43400F583E038 +:10114E0090007DF08043900000E0B40110247FF504 +:10115E0082E43400F583E090007CF0802C90000057 +:10116E00E0B40210247FF582E43400F583E09000B1 +:10117E007EF08015900000E0B4030E247FF582E42B +:10118E003400F583E090007BF0900000E004F00264 +:10119E000E64E4900000F0900000E0FFC394045051 +:1011AE001BEF25E0249FF582E43400F583E475F00F +:0C11BE00011216F5900000E004F080DB48 +:0111CA002202 +:101E6E00C1344100DF004200E000004100E20F41BA +:051E7E0000DE00C1338D +:102F5000D2AC759A03D2BCD2BDD2A9D2AB75FE3029 +:042F600043FF802289 +:102F6400C2ACE4F59AC2BCC2BDC2A9C2AB75FE3004 +:042F740053FF7F2266 +:102C2E00303421302327C2239000DEE004F0E0C3CD +:102C3E0094054019E4A3F07DAA7F4F122CB5E490C1 +:0E2C4E0000DEF022122F64438702122F502264 +:102F7800780EE664016006200D03303304C233C3C3 +:032F880022D3222F +:102BFA00122D0C122FAF122FEB12006E7D087F766A +:102C0A0012303DD2A8D2AF122F0B7D697F03122F4B +:102C1A003A122FBF12293112000E122C5C9000D3E7 +:042C2A007401F0221F +:0300030002304B7D +:06304B00D23375E20F32E2 +:101E830020402800000000000000000000000000C7 +:101E9300000000000000000000000000000000003F +:101EA300000000000000000000000000000000002F +:101EB300000000000000000000000000000000001F +:071EC300000000C12EC12D3B +:102D0C0075FE0443FF0C75FE0343FF0C75FE0E535A +:102D1C00FFF043FF09D2DF43878075BA0375AADC45 +:062D2C00759852D2AC22A2 +:062B8C0090004312182026 +:102B9200E4900046F05398EFF0900046E0C39FE4C3 +:102BA2009E501C202CFDD22C900043E475F00112A3 +:102BB2001809121626F599900046E004F080DA43CF +:022BC200981069 +:012BC40022EE +:0300230002248F25 +:10248F00C0E0C0F0C083C082C0D075D000C000C013 +:07249F0002C003C006C007E4 +:1024A600309904C299C22C209803022564C298D29E +:1024B600339000E3E014602114604D2402600302AF +:1024C6002564E5999000E3B4550D7401F0A3E4F09A +:1024D600A3F09000E480138027AF997E00BE551DBF +:1024E600BFAA1A9000E37402F0A3A3E02428F8A67A +:1024F600999000E4E475F0011216F580619000E30E +:10250600E4F0A3F0A3F080569000E4A3E02428F8BA +:10251600A6999000E4E475F0011216F59000E4E047 +:10252600FAA3E0FB64074A700D782AE62404FEE469 +:1025360033A3F0A3CEF09000E6E06A7003A3E06B4D +:10254600600FD39000E5E094409000E4E0940040F2 +:0E2556000D9000E4E4F0A3F09000E3F0D22E2C +:10256400D007D006D003D002D000D0D0D082D08300 +:05257400D0F0D0E032C0 +:0E2FDD0090002BEFF012301890002BE0FF2236 +:102FAF0075F10A759F03759EFD759692759A0222AB +:08301800202DFDD22D8F97221F +:03008B00022F231E +:102F2300C0E0E59630E1055396FDC22DE59630E00D +:072F3300035396FED0E032CB +:101ECA004300D30402024100D100C12BC12A4100C0 +:0E1EDA00D2004100D6004100CF004100D000F0 +:102D5600E4FB7D04FF122B17E4FB7D047F01122B9D +:102D660017E4FB7D047F02122B17E4FB7D047F032F +:032D7600022B1716 +:10187C00780EE66401600302197E30375C2028057F +:10188C00D228122D56E4900005F0A3F0FBFA7D014E +:10189C00FF1228CEE4900005F0A3F0FBFA7D017F47 +:1018AC00011228CEE4900005F0A3F0FBFA7D017F35 +:1018BC00021228CEE4900005F0A3F0FBFA7D017F24 +:1018CC00031228CE90007D7401F090007CF0900003 +:1018DC007EF090007BF002197520270CD227D22BBA +:1018EC00E49000D6F00219759000D1E0C394015039 +:1018FC0057E004F09000D6E014601A1460271460CE +:10190C00342403706490007DE06404605C7B017D92 +:10191C0004E4FF802E90007CE06404604C7B017D2D +:10192C00047F01801E90007EE06404603C7B017D9E +:10193C00047F02800E90007BE06404602C7B017DB0 +:10194C00047F03122B1780219000D1E0C3940F5019 +:10195C0005E004F08013E49000D1F09000D6E00490 +:10196C00F0E0C394044002E4F0C232C20BC21ED2B7 +:10197C00292230270AC227122D56D22BD22A2230E6 +:10198C002B49E49000D1F0C22B900005F0A3F0FBA2 +:10199C00FAFDFF1228CEE4900005F0A3F0FBFAFD4F +:1019AC007F011228CEE4900005F0A3F0FBFAFD7F36 +:1019BC00021228CEE4900005F0A3F0FBFAFD7F03A1 +:1019CC001228CE90007D7402021B3620320C202986 +:1019DC0009200B06201E03021B4E9000D1E0FFC312 +:1019EC0094015004E004F022EFC394644003021B02 +:1019FC00449000D1E004F07814E6C3941950379069 +:101A0C00007DE064037003021B4EE4900005F0A31C +:101A1C00F07B64FA7D03FF1228CE90007D7404F0F5 +:101A2C00E4900005F0A3F0FBFAFD7F011228CE90A4 +:101A3C00007C740280327814E6C394325041E490F6 +:101A4C000005F0A3F0FBFA7D01FF1228CE90007D7B +:101A5C007401F0E4900005F0A3F0FBFA7D017F0126 +:101A6C001228CE90007C7401F0E4900005F0A3F0F5 +:101A7C00FBFAFD7F021228CE90007E74028048781B +:101A8C0014E6C3944B5057E4900005F0A3F0FBFA16 +:101A9C007D01FF1228CE90007D7401F0E4900005CA +:101AAC00F0A3F0FBFA7D017F011228CE90007C742C +:101ABC0001F0E4900005F0A3F0FBFA7D017F021227 +:101ACC0028CE90007E7401F0E4900005F0A3F0FBAA +:101ADC00FAFD7F031228CE90007B7402F02278145A +:101AEC00E6C39464505CE4900005F0A3F0FBFA7D2F +:101AFC0001FF1228CEE4900005F0A3F0FBFA7D0163 +:101B0C007F011228CEE4900005F0A3F0FBFA7D01D2 +:101B1C007F021228CEE4900005F0A3F0FBFA7D01C1 +:101B2C007F031228CE90007D7401F090007CF09021 +:101B3C00007EF090007BF022C232C229C20BC21E82 +:021B4C00D22B9A +:011B4E002274 +:102EA1009000F4E0FF04F0122E459000F4E0C3948A +:0B2EB100084005E4F07F01227F0022B2 +:102E83001229F1122A92122C89122306122CE130F4 +:0E2E93001F0BC21F12263B12187C121B4F226F +:09300F007B017A0079E8022991A5 +:10257900E4900000F09000D3E0FFA3E0FE6F60411B +:10258900A3EEF09000D3E0A3F024FD602F240260B5 +:102599000302263A900005E4F0A37403F07B647A01 +:1025A900007D02E4FF1228CE900005E4F0A3740335 +:1025B900F07B647A007D027F010228CE9000E280E0 +:1025C900529000D4E024FE602D146031146054242C +:1025D90003705E9000CFE004F0E0C394084052908D +:1025E90000D37402F0E49000CFF07815E6704290C1 +:1025F90000D37404F0229000D37403F02230233105 +:10260900C2239000E2E0D39400400CE014F0303390 +:1026190020C233740FF0229000D37404F0E49000C8 +:10262900DEF022122F785003022C2E9000D3740270 +:01263900F0B0 +:01263A00227D +:102B520030222EC2229000D0E0FF04F0EF14600F6A +:102B620014601114601324037017122EA180121224 +:102B7200300F800D122E838008122579E49000D048 +:0A2B8200F0302405C224120E5E227A +:10091C00426F7820436C6F73652E0D0A00426F781E +:10092C00204F70656E2E0D0A004F70656E20426F61 +:10093C007820434D44205458204F7665722E0D0A72 +:10094C00004F70656E20426F7820416E64204561C7 +:10095C007270686F6E6520476574496E2E0D0A00C3 +:10096C00436C6F736520426F7820416E6420466F34 +:10097C0072636520566F6C746167652055702E0D1F +:10098C000A00564F58204348472046756C6C2E0D74 +:10099C000A00564F582047657420496E746F2053D7 +:1009AC006C6565702E0D0A00466F6C6C6F7720437A +:1009BC00484720496E697453746120536574204D07 +:1009CC0061782056706D69642E28566F785F737449 +:1009DC00613A3078257829286C696E653A25642946 +:1009EC000D0A00466F6C6C6F772043484720496EA8 +:1009FC0069745374612E28566F785F7374613A3042 +:100A0C0078257829286C696E653A2564290D0A00C9 +:100A1C00466F6C6C6F772043484720537461312CC0 +:100A2C004E6F2045617250686F6E6520496E204292 +:100A3C006F782E286C696E653A2564290D0A00467C +:100A4C006F6C6C6F772043484720537461312C5680 +:100A5C004F5220436867696E672849766F723A2552 +:100A6C0064292E286C696E653A2564290D0A0046A6 +:100A7C006F6C6C6F772043484720537461312C5650 +:100A8C004F4C20436867696E672849766F6C3A252E +:100A9C0064292E286C696E653A2564290D0A004676 +:100AAC006F6C6C6F772043484720537461322C472E +:100ABC0065742049564F522E286C696E653A256430 +:100ACC00290D0A00466F6C6C6F7720434847205302 +:100ADC007461322C4765742049564F4C2E286C6932 +:100AEC006E653A2564290D0A00466F6C6C6F772091 +:100AFC0043484720537461332C564F582043686742 +:100B0C00205265496E69742E286C696E653A2564AD +:100B1C00290D0A00466F6C6C6F77204348472053B1 +:100B2C00746133284356292C564F522056706D69E8 +:100B3C0064204164645374612E286C696E653A2597 +:100B4C0064290D0A00466F6C6C6F77204348472070 +:100B5C0053746133284356292C564F522056706DCE +:100B6C006964205375625374612E286C696E653A02 +:100B7C002564290D0A00466F6C6C6F77204348473B +:100B8C002053746133284343292C564F52205670FE +:100B9C006D6964205375625374612E286C696E659F +:100BAC003A2564290D0A00466F6C6C6F7720434818 +:100BBC00472053746133284343292C564F522056F7 +:100BCC00706D6964204164645374612E286C696E85 +:100BDC00653A2564290D0A00466F6C6C6F772043CB +:100BEC0048472053746133284356292C564F4C20C8 +:100BFC0056706D6964204164645374612E286C696D +:100C0C006E653A2564290D0A00466F6C6C6F77206F +:100C1C004348472053746133284356292C564F4C74 +:100C2C002056706D6964205375625374612E286C64 +:100C3C00696E653A2564290D0A00466F6C6C6F77F6 +:100C4C00204348472053746133284343292C564F83 +:100C5C004C2056706D6964205375625374612E2854 +:100C6C006C696E653A2564290D0A00466F6C6C6FD1 +:100C7C0077204348472053746133284343292C562B +:100C8C004F4C2056706D6964204164645374612E1E +:100C9C00286C696E653A2564290D0A00466F6C6CE8 +:100CAC006F772043484720537461342C564F5220A1 +:100CBC0056706D696420416464537461286C696E6C +:100CCC00653A2564292E0D0A00466F6C6C6F7720EF +:100CDC0043484720537461342C564F522043686963 +:100CEC006E67286C696E653A2564292E0D0A0046DC +:100CFC006F6C6C6F772043484720537461342C56CB +:100D0C004F4C2056706D69642041646453746128A3 +:100D1C006C696E653A2564292E0D0A00466F6C6C61 +:100D2C006F772043484720537461342C564F4C2026 +:100D3C004368696E67286C696E653A2564292E0DC7 +:100D4C000A00466F6C6C6F772043484720537562DE +:100D5C005374612C564F4C2F564F52286C696E654C +:100D6C003A2564292E0D0A00466F6C6C6F77204370 +:100D7C004847205375625374612C564F52286C6946 +:100D8C006E653A2564292E0D0A00466F6C6C6F77E0 +:100D9C0020434847205375625374612C564F4C289E +:100DAC006C696E653A2564292E0D0A00466F6C6CD1 +:100DBC006F7720434847205375625374612C285336 +:100DCC0054413A307825782C56706D69643A3078F5 +:100DDC00257829286C696E653A2564290D0A004628 +:100DEC006F6C6C6F77204348472041646453746187 +:100DFC002C285354413A307825782C56706D696400 +:100E0C003A3078257829286C696E653A2564290D65 +:100E1C000A000000000000000000000000000000BC +:100E2C0000000000000000000000000000000000B6 +:100E3C0000000000000000000000000000000000A6 +:100E4C000000000000000000000000000000000096 +:020E5C00000094 +:101EE800C10DC10BC10C410077FFC10A42004F0070 +:101EF8000042004D000042007500004200720000E0 +:101F08004200780000106800000000000000000097 +:101F180000000000000000202478000000000000FD +:101F280000000000000000000000000000000000A9 +:101F38000000000000000000000000000000410058 +:021F4800740023 +:05277500900043EFF0AD +:10277A00E4A3F0A3F07F27122ADA900044EFF07F57 +:10278A0037122ADA900045EFF0900043E024FD600A +:10279A001B14602424FE602824057035900045E04F +:1027AA004494F0900044E04498F08025900044E07E +:1027BA004406F054E7F08019900045E054FD800982 +:1027CA00900045E04402F054FEF0900044E054E1E9 +:1027DA00F0900044E0FD7F27122CB5900045E0FD03 +:0527EA007F37022CB551 +:101B4F009000EAE054186003D20A22C20A202F0341 +:101B5F00021DB7303161200C0D7F3C122EF17F0139 +:101B6F00122E03D20C227F03122775E490004CF043 +:101B7F0090004AF0A3F0C2009000F6E07028C20B6C +:101B8F00D201C202C206C207C208900075F0A3F0CC +:101B9F00D20DC22A900070F0A3F090007AF07BFF74 +:101BAF007A09791C800CC201D202C2047BFF7A0928 +:101BBF007929121236C231200203021C7790004A93 +:101BCF00E0C394055003021D5B90004BE0C39405E6 +:101BDF00500A7F0612277590004B802A20004990EB +:101BEF00004CE0FFD3940B5022EF75F00384E5F027 +:101BFF007003FD800990004CE020E0077D017F0617 +:101C0F0012216790004CE004F0805D7F041227756D +:101C1F00E490004CF0D200D203C20CC20D7BFF7ACD +:101C2F000979351212368040300304C203802F9099 +:101C3F0000ECE0540CFBE4FAF9F8900049E0FFE403 +:101C4F00FCFDFEC31217DC601F9000ECE0540C602B +:101C5F000DD20BD22B7BFF7A09794D1212369000E1 +:101C6F00ECE0540C900049F0200103021DB4302A1F +:101C7F0038200C237F01122E03D20CD20DE49000DA +:101C8F0070F0A3F090007AF090004BF090004AF0C3 +:101C9F0090004CF0C206227F031227757BFF7A0952 +:101CAF00796C121236C22A803590004AE0D3940321 +:101CBF005003021D5B90004BE0FFD3940B501FEFBE +:101CCF0075F00384E5F07003FD800990004BE02070 +:101CDF00E0077D017F8112216790004B806E90009D +:101CEF004CE0FFD39432501FEF75F00384E5F07092 +:101CFF0003FD800990004CE020E0077D017F071273 +:101D0F00216790004C8045900071E0700C7B017A48 +:101D1F0000795112008E021DB42006489000ECE0AD +:101D2F005430FFE4FCFDFE7B30FAF9F8C31217DCE8 +:101D3F0060119000ECE0540CFFE4FCFDFEEF60033B +:101D4F0030356290004AE0C394325004E004F02230 +:101D5F007BFF7A09798E121236D206C20C7F0412DB +:101D6F002775804190004CE0FFD3940B5022EF7504 +:101D7F00F00384E5F07003FD800990004CE020E053 +:101D8F00077D017F8012216790004CE004F08015E1 +:101D9F00200712D2077F04122775C20D7BFF7A0925 +:101DAF00799E121236C20522200514D2057F041225 +:101DBF002775C20D9000ECE0540C900049F0229072 +:101DCF0000ECE0540CFBE4FAF9F8900049E0FFE472 +:101DDF00FCFDFEC31217DC60129000ECE0540CFF08 +:0B1DEF006004D20BD22B900049EFF0F3 +:011DFA0022C6 +:06008E0090000012182092 +:1000940090007AE014700302019E1470030202CFF0 +:1000A40014700302036D14700302056B24046003CF +:1000B40002069A90000012180090002012163F6069 +:1000C4000302069AD3900050E0940390004FE0940A +:1000D40000504AE475F0011216F590001BE475F027 +:1000E4003C1217AF30090302069A90000012180060 +:1000F40090001B12170BFF122EF17BFF7A0979B4C3 +:100104009000ECE0FF900006E4F0A3EFF0A374038A +:10011400F0A3743FF0121236D20902069AE490005A +:100124004FF0A3F0C209900000121800900016E4EA +:1001340012167E900015E412167E900013E4121637 +:100144007E900012E412167E900011E412167E9046 +:100154000010E412167E900018E412167E90001728 +:10016400E412167E900019E4F5F01217AF90001D0A +:10017400E475F03C1217AF90007A7401F07BFF7ABB +:100184000979EF9000ECE0FF900006E4F0A3EFF0B3 +:10019400A37403F0A374600205109000ECE0FB5418 +:1001A40020FFE4FCFDFEEF602BEB5410FF60259074 +:1001B4000000121800900020740112167EE49000D2 +:1001C4007AF07BFF7A0A791C9000067403F0A3741A +:1001D4006F0205109000ECE05420FFE4FCEF706225 +:1001E40078A0E6FE08E6FF900000121800900002D6 +:1001F400EE8FF01217AF7D051216A0EF7802C3330D +:10020400CE33CED8F9FF900000121800900006EE0D +:100214008FF01217AF78A0E6FC08E6FD25E0FFECAE +:100224003390000A8FF01217AF7BFF7A0A794B9054 +:100234000006ECF0A3EDF0A37403F0A3747DF012B8 +:1002440012369000ECE05410FFE4FCFDEF7065788A +:100254009CE6FE08E6FF900000121800EE8FF012F4 +:10026400179018E6FE08E6FF7D051216A0EF780247 +:10027400C333CE33CED8F9FF90000012180090009B +:1002840004EE8FF01217AF789CE6FC08E6FD25E03B +:10029400FFEC339000088FF01217AF7BFF7A0A79D6 +:1002A4007B900006ECF0A3EDF0A37403F0A3748A32 +:1002B400F012123690000012180090001F74011200 +:1002C400167E90007A7402F002069AD3900050E0F1 +:1002D400940590004FE09400500302037CE49000E6 +:1002E4004FF0A3F09000ECE05420FFE4FCFDEF702D +:1002F4003178A0E6FE08E6FF900000121800900096 +:100304000EEE8FF01217AF900018740112167E7B58 +:10031400FF7A0A79AB9000067403F0A374A6F01276 +:1003240012369000ECE05410FFE4FCFDEF703178DD +:100334009CE6FE08E6FF90000012180090000CEE08 +:100344008FF01217AF900017740112167E7BFF7A9C +:100354000A79D09000067403F0A374B0F012123638 +:1003640090007A7403F002069AD3900050E094024D +:1003740090004FE09400500AE475F0011216F50263 +:10038400069AE490004FF0A3F09000001218009039 +:10039400000A12170BFFAEF090000E12170BD39F3A +:1003A400E5F09E501C9000001218009000081217EF +:1003B4000BFFAEF090000C12170BD39FE5F09E409C +:1003C40024E490007AF090000012180090001FE4DA +:1003D40012167E7BFF7A0A79F59000067403F0A367 +:1003E40074CA0206969000001218009000181216A3 +:1003F4003F640160030204AA90000E12170BD39409 +:1004040014E5F0940050469000ECE030E5209000B4 +:1004140016740112167E900018E412167E7BFF7A81 +:100424000B79209000067403F0A374D980749000B3 +:1004340000121800900013740112167E7BFF7A0BD1 +:1004440079519000067403F0A374E0805590000085 +:1004540012180090000612170BFFAEF090000E1257 +:10046400170BD39FE5F09E900000401C12180090DB +:100474000013740112167E7BFF7A0B7982900006BA +:100484007403F0A374EA801A121800900016740121 +:1004940012167E7BFF7A0B79B39000067403F0A3E7 +:1004A40074F1F01212369000001218009000171226 +:1004B400163F6401600302069A90000C12170BD3D6 +:1004C4009414E5F0940050479000ECE030E4209060 +:1004D4000015740112167E900017E412167E7BFF3D +:1004E4007A0B79E49000067404F0A37401801D90E3 +:1004F4000000121800900012740112167E7BFF7A1D +:100504000C79159000067404F0A374080206969002 +:10051400000012180090000412170BFFAEF09000B8 +:100524000C12170BD39FE5F09E900000401C12188C +:1005340000900012740112167E7BFF7A0C794690AB +:1005440000067404F0A37412801A121800900015A7 +:10055400740112167E7BFF7A0C797790000674047E +:10056400F0A37419020696D3900050E094149000FE +:100574004FE09400502FE475F0011216F578A0E6D0 +:10058400FE08E6FF90000012180090000EEE8FF0B7 +:100594001217AF789CE6FF08E690000CCF8FF0129C +:1005A40017AF02069AE490004FF0A3F090000012F7 +:1005B400180090001812163F64017065900006122E +:1005C400170BFFAEF090000E12170BFDACF0C39F9B +:1005D400EC9E401590000012180090000A12170BB0 +:1005E400FFD3ED9FEC95F040259000001218009089 +:1005F4000016740112167E90007A7402F07BFF7A62 +:100604000C79A89000067404F0A3743E800F7BFF5D +:100614007A0C79D59000067404F0A37444F0121295 +:100624003690000012180090001712163F640170F3 +:100634006590000812170BFFAEF090000C12170B18 +:10064400FDACF0D39FEC9E50159000001218009062 +:10065400000412170BFFC3ED9FEC95F0502590009A +:1006640000121800900015740112167E90007A741E +:1006740002F07BFF7A0C79FB9000067404F0A374FB +:1006840052800F7BFF7A0D79289000067404F0A342 +:100694007458F012123690000012180090001812CC +:1006A400163FFF6401600D90001712163F6401604D +:1006B4000302090290001312163FFE6401600D90BC +:1006C400001212163F64016003020837EF640170E0 +:1006D4003190001712163FB40128EEB401249000A3 +:1006E4001312163FB4011B900014740112167E7B82 +:1006F400FF7A0D794E9000067404F0A3746FF01223 +:10070400123690000012180090001812163F64016F +:10071400702A90001712163F702290001312163F91 +:10072400640170539000140412167E7BFF7A0D79D5 +:10073400749000067404F0A374798037900000125A +:10074400180090001812163F702D90001712163FD3 +:10075400B4012490001212163FB4011B90001474CB +:100764000112167E7BFF7A0D79969000067404F0D0 +:10077400A37484F012123690000012180090001333 +:10078400E412167E900012E412167E9000141216E3 +:100794003F6401600302091B9000001218009000DE +:1007A4001B12170BD39400E5F09400400B90001B30 +:1007B40074FF75F0FE12174390001912170BFFAE69 +:1007C400F090001B12170BD39FE5F09E501790007A +:1007D4000012180090001BEE8FF01217AF90007AF1 +:1007E4007404F0800690007A7402F0E490004FF0F4 +:1007F400A3F0900000121800900014E412167E90EA +:10080400007AE0FF900006E4F0A3EFF090000012FD +:10081400180090001B12170BFF900008E5F0F0A3DE +:10082400EFF0A37404F0A374A3F07BFF7A0D79B8FE +:100834000208EF90000012180090001612163F6490 +:1008440001600D90001512163F6401600302091B3C +:10085400900016E412167E900015E412167E9000A5 +:100864001B12170BC3943CE5F09400501090000049 +:1008740012180090001BE475F00212174390007ADE +:100884007404F090000012180090001D12170BFF62 +:10089400AEF090001B12170BC39FE5F09E401B9017 +:1008A400000012180090001BEE8FF01217AFE490B6 +:1008B400007AF09000200412167E90007AE0FF90F7 +:1008C4000006E4F0A3EFF090000012180090001B63 +:1008D40012170BFF900008E5F0F0A3EFF0A37404E7 +:1008E400F0A374C2F07BFF7A0D79EB1212369000FC +:1008F4000012180090001B12170BFF022EF190003B +:100904007AE0D394024010E4F090000012180090B2 +:070914000020740112167EA1 +:01091B0022B9 +:0B002600900043121820900046EDF0FF +:10003100E4FE900046E0FD14F0ED6029900043E4F9 +:1000410075F0011218091216266EFEE4FFEFC39433 +:100051000850DFEE30E007C313648CFE8004EEC36A +:0700610013FE0F80E8AF065B +:010068002275 +:08216700900000EFF0A3EDF081 +:10216F00E4A3F078037C007D017BFF7A0E791EFEDD +:10217F007F40121600E4900003F0A37455F0A3748F +:10218F00AAF0900000E0FE900007F0900001E0FD43 +:10219F00900077F0EE12182921C00121EF02223EA4 +:1021AF0003224B06224B07229080229881000022A7 +:1021BF00A69000067402F0ED700E9000087402F005 +:1021CF00E4900075F00222A6900001E06401600324 +:1021DF000222A690000804F0E4900076F00222A6F6 +:1021EF00900006741BF07F05900001E075F012A4BB +:1021FF0024782FF8E6FE74032FF582E43400F5837C +:10220F00EEF00FEFB412E17F17EFC3940840030213 +:10221F0022A6900001E075F008A424682FF8E6FECE +:10222F0074032FF582E43400F583EEF00F80DA901B +:10223F0000067402F090000804F0805B90000674B2 +:10224F0005F09000087401F07814E6A3F0A3742051 +:10225F00F0900001E0FF700D900072E07002800FAF +:10226F009000738015EFB4012E900073E07008900A +:10227F00000B74FFF08020900072E090000BF08054 +:10228F00169000067401F0800E9000067402F09014 +:10229F000074E0900008F0900006E02404FF900026 +:1022AF0002F0FD7B017A007903120026900002E014 +:1022BF002403F582E43400F583EFF07F01122775D4 +:1022CF00900001E0FF700B75FE0E53FFF043FF0807 +:1022DF00800DEFB4010975FE0E53FFF043FF01901F +:1022EF000002E02401FFE433FE7B017A0079031240 +:0722FF002B8C7F0302277501 +:1027EF00EF24FA605014604D24067069E4FE742CD7 +:1027FF002EF8E6FF900077E075F012A424782EF8FB +:10280F00A6070EEEB412E7E4FE743E2EF8E6FF9034 +:10281F000077E075F008A424682EF8A6070EEEB432 +:10282F0008E7900077E0700690007504F0229000A2 +:10283F00767401F022782CE6B4E30D90004D74010C +:10284F00F008E6900072F02290004E7401F0782D9F +:05285F00E6900073F09B +:012864002251 +:102CE100E4FF900000F0302E21C22EFB7A007928FB +:102CF100782AE62403FD120026782AE6242BF8E63A +:0A2D0100B50707782BE6FF1227EF55 +:012D0B0022A5 +:101F4A00011500011400C135C13601135060280083 +:101F5A00A70BB80BEA0C1C0C800CB20CE40D160D86 +:101F6A00480D7A0DAC0DF70E420E880ED80F0A0FE7 +:091F7A003C0F870FD2101D106806 +:10263B00E4FF780EE6B40122EF25E024A7F582E44F +:10264B003400F583E0FCA3E02432FDE43CFCC378CA +:10265B00B5E69D18E69C501B801EEF25E024A7F5E0 +:10266B0082E43400F583E0FCA3E0D378B596EC1854 +:10267B009650050FEFB414BA7815E6FEEFD39E789B +:10268B00134003068001169000EBE030E30A781547 +:10269B00EFF675F005A418F67813E6FED394965072 +:1026AB0006EEC3940A500D7815EFF675F005A418D5 +:1026BB00F61876507815E6FFD394005004D2368086 +:1026CB0008EFD394014002C236EFD394015003D2EA +:0A26DB003522EFD394024002C2350D +:0126E50022D2 +:101F83004100DA004100DD004100D9004200D700E2 +:101F9300004100DB00C121C122C124C120C11FC1F6 +:091FA300234100DC00C125C12628 +:102865009000DCE06062E4F0D2219000DAE004F050 +:10287500E0C394054004E4F0D2229000DDE004F0CA +:10288500E0C3940A4004E4F0D2249000D7E475F044 +:10289500011216F5C39000D8E094649000D7E09437 +:1028A500004006E4F0A3F0D21F9000D9E004F0E068 +:1028B500C394FA4013E4F0D2209000DBE004F0E08A +:0928C50094044004E4F0D2232243 +:03000B00022D794A +:102D7900C0E0C083C082C0D074FC258CF58C746619 +:102D8900258AF58A9000DC7401F0D0D0D082D083F6 +:032D9900D0E03255 +:0E2FEB00758901758CFC758A66D2A9D28C227C +:102E250075FE0FEF25E0FE7403A806088002C33384 +:102E3500D8FCF452FFEFB4040675FE0FE4F5FF224B +:102F3A0075FE11EF5407F5FF75FE12AF058FFF7589 +:062F4A00FE1075FF0122DC +:102A430075FE0FEF25E0FE7403A806088002C3336A +:102A5300D8FCF452FF7401A806088002C333D8FCE3 +:102A630042FF75FE0B7401A807088002C333D8FC2C +:102A730042FFEF70038DCE22EFB401038DCF22EF1F +:0F2A8300B402038DDE22EFB40304AF058FDF2210 +:033FFD00010101BE +:061FAC0001160001170000 +:102C5C00D28075FE0443FF0175FE0343FF0175FE30 +:102C6C000243FF01D28175FE0443FF0275FE03434C +:0D2C7C00FF0275FE0243FF0278167601226A +:0C2F8B00C280122F97D281122F97D280A3 +:052F9700E4FF0FDFFE66 +:012F9C002212 +:102EBC00D281D280122F972081037F0022C28112EF +:0B2ECC002F973081037F00227F01223E +:0F2FCE00C280C281122F92D281122F97022F97A9 +:102F9D00C280122F97C281122F92122F97C28002D8 +:022FAD002F975C +:08302000122F8BC280022F97D2 +:0B300400122F8B122F97C280022F9713 +:022DBF00AE075D +:102DC1007D08AF051DEF6015C280EE30E704D281AA +:0F2DD1008002C281EE25E0FE122F9280E5C280C3 +:012DE00022D0 +:102D9C007E08E4FDD281AF061EEF6012ED25E0FD4A +:102DAC00C280122F923081EEED4401FD80E8C2808A +:022DBC00AF0561 +:012DBE0022F2 +:10000E007D087F35122CB57D0A7F7612303D7D043A +:05001E007F20022CB55B +:102991009000001218207F10122ADA9000001218FD +:1029A10000EF12166C7F11122ADA90000012180043 +:1029B100900001EF12167E7F12122ADA90000012A7 +:1029C1001800900002EF12167E7F13122ADA90008F +:1029D10000121800900003EF12167E7F14122ADAFB +:1029E100900000121800900004EF12167E7F002262 +:052DE100900000EFF07E +:102DE600E47F20122ADA900000E06006EF4401FF3B +:0D2DF6008004EF54FEFFAD077F20022CB5D6 +:052E0300900000EFF05B +:102E0800E47F27122ADA900000E06006EF4401FF11 +:0D2E18008004EF54FEFFAD077F27022CB5AC +:052EF100900003EFF06A +:102EF600E47F25122ADAEF54C0FF900003E04FFD6D +:052F06007F25022CB53F +:102D32009000F1121820121626FD7F27122CB59052 +:102D420000F112180090000112163FFD7F37122C7D +:042D5200B57F002227 +:073028007DAA7F4F022CB5C9 +:07302F007D117F4F022CB55B +:073036007D337F4F022CB532 +:07303D008FFEAF058FFF229B +:063044008FFEAEFFAF0697 +:01304A002263 +:102CB500900046EFF0A3EDF0122EBC7F0C122DBF55 +:102CC500123004900046E0FF122DBF123004900030 +:0C2CD50047E0FF122DBF123004022FCE8A +:052ADA00900046EFF042 +:102ADF00E4A3F0122EBC7F0C122DBF123004900015 +:102AEF0046E0FF122DBF123004122EBC7F0D122DA7 +:102AFF00BF123004122D9C900047EFF012302012BD +:072B0F002FCE900047E0FF0C +:012B1600229C +:1026F500022FF9E493A3F8E493A34003F68001F2D3 +:1027050008DFF48029E493A3F85407240CC8C333E5 +:10271500C4540F4420C8834004F456800146F6DFB4 +:10272500E4800B0102040810204080901DFBE47E2C +:10273500019360BCA3FF543F30E509541FFEE493A9 +:10274500A360010ECF54C025E060A840B8E493A370 +:10275500FAE493A3F8E493A3C8C582C8CAC583CA9B +:10276500F0A3C8C582C8CAC583CADFE9DEE780BE53 +:011FB200002E +:10153000E709F608DFFA8046E709F208DFFA803E9D +:1015400088828C83E709F0A3DFFA8032E309F6088A +:10155000DFFA8078E309F208DFFA807088828C83F2 +:10156000E309F0A3DFFA806489828A83E0A3F608A6 +:10157000DFFA805889828A83E0A3F208DFFA804C80 +:1015800080D280FA80C680D4806980F28033801057 +:1015900080A680EA809A80A880DA80E280CA8033C0 +:1015A00089828A83ECFAE493A3C8C582C8CCC58338 +:1015B000CCF0A3C8C582C8CCC583CCDFE9DEE78008 +:1015C0000D89828A83E493A3F608DFF9ECFAA9F087 +:1015D000EDFB2289828A83ECFAE0A3C8C582C8CCDD +:1015E000C583CCF0A3C8C582C8CCC583CCDFEADEF6 +:1015F000E880DB89828A83E493A3F208DFF980CC58 +:1016000088F0EF60010E4E60C388F0ED2402B40450 +:101610000050B9F582EB2402B4040050AF232345F7 +:0616200082239015807387 +:10162600BB010689828A83E0225002E722BBFE02C2 +:09163600E32289828A83E49322F5 +:10163F00BB010CE58229F582E5833AF583E0225060 +:10164F0006E92582F8E622BBFE06E92582F8E222AA +:0D165F00E58229F582E5833AF583E49322C4 +:10166C00BB010689828A83F0225002F722BBFE015D +:02167C00F32257 +:10167E00F8BB010DE58229F582E5833AF583E8F0A2 +:10168E00225006E92582C8F622BBFE05E92582C84E +:02169E00F22236 +:1016A000BC000BBE0029EF8DF084FFADF022E4CC2E +:1016B000F875F008EF2FFFEE33FEEC33FCEE9DECF7 +:1016C000984005FCEE9DFE0FD5F0E9E4CEFD22ED3D +:1016D000F8F5F0EE8420D21CFEADF075F008EF2F87 +:1016E000FFED33FD4007985006D5F0F222C398FD78 +:0516F0000FD5F0EA2215 +:1016F500C5F0F8A3E028F0C5F0F8E5821582700280 +:061705001583E038F0221C +:10170B00BB0110E58229F582E5833AF583E0F5F01C +:10171B00A3E0225009E92582F886F008E622BBFEF9 +:10172B000AE92582F8E2F5F008E222E5832AF5833F +:08173B00E993F5F0A3E9932204 +:10174300BB010DC58229C582C5833AC5830216F53F +:101753005011C58229F808E5F026F618F5F0E58260 +:1017630036F622BBFE11C58229F808E225F0F5F012 +:10177300F218E23582F222F8E58229F582E5832A1E +:0D178300F58374019325F0F5F0E49338220E +:10179000BB010A89828A83F0E5F0A3F0225006F7A4 +:0F17A00009A7F01922BBFE06F3E5F009F31922A1 +:1017AF00F8BB0111E58229F582E5833AF583E8F06C +:1017BF00E5F0A3F0225009E92582C8F608A6F02229 +:0D17CF00BBFE09E92582C8F2E5F008F22210 +:1017DC00EB9FF5F0EA9E42F0E99D42F0E89C45F063 +:0117EC0022DA +:1017ED00E8600FECC313FCED13FDEE13FEEF13FFDA +:0317FD00D8F122FE +:09180000E0FBA3E0FAA3E0F922E9 +:10180900F8E0FBA3A3E0F925F0F0E5821582700268 +:071819001583E0FA38F0220C +:09182000EBF0A3EAF0A3E9F022C9 +:10182900D083D082F8E4937012740193700DA3A34E +:1018390093F8740193F5828883E473740293686062 +:06184900EFA3A3A380DF62 +:10184F00EC8EF0A4CCC5F0CCCDF8EFA4CEC5F02D26 +:10185F00FDE43CFCE8A42EC8C5F03DFDE43CFCEFE4 +:0D186F00A4FFE5F028FEE43DFDE43CFC2272 +:1011CB00E5082406F582E43400F583E00508229057 +:1011DB000003301503900006E475F00112180902A4 +:1011EB001626200EE97F2ED20E8018EF540F249076 +:1011FB00D43440D4FF30120BEF24BFB41A00500389 +:10120B002461FFE50960021509050CE50C70020568 +:10121B000B30150E900003E475F001121809EF0264 +:10122B00166C022FDD7403D2158003E4C215F5088A +:10123B00900003121820E4F509F50BF50CE5096095 +:10124B00077F2012120E80F5750AFFC20FC20EC265 +:10125B0010C211C213C214C2161211DAFF700D3074 +:10126B0015057F0012121FAF0CAE0B22B4255FC207 +:10127B00D5C2121211DAFF24D0B40A00501A75F03D +:10128B000A780930D50508B6FF0106C6A426F62054 +:10129B00D5047002D21180D924CFB41A00EF5004B8 +:1012AB00C2E5D212021420D20F80C6D20E80C0D259 +:1012BB001080BCD2D580BAD21380B47F2012120E0C +:1012CB002010077401B5090040F11211CBFF121267 +:1012DB000E021248D216D21480951211CBFB1211AA +:1012EB00CBFA1211CBF94A4B700679F17A147BFFCA +:1012FB0020102EE509602A7E008E8275830012165F +:10130B003F60060EEE650A70F0C2D5EBC0E0EAC096 +:10131B00E0E9C0E0EE121467D0E0F9D0E0FAD0E0DB +:10132B00FB121626FF60AAEBC0E0EAC0E0E9C0E0C2 +:10133B0012120ED0E02401F9D0E03400FAD0E0FB19 +:10134B00E50A0460DCD50AD980877BFF7A147963C0 +:10135B00D210809C791080027908C214C2168008C2 +:10136B00D2D5790A8004790AC2D5E50A047002F550 +:10137B000AE4FAFDFEFF1211CBFC7B08200F1312BF +:10138B0011CBFD7B10300E0A1211CBFE1211CBFFCD +:10139B007B20EC3382D592D55013C3E4300E069FDD +:1013AB00FFE49EFEE4200F039DFDE49CFCE4CBF8E0 +:1013BB00C20FEC700CCFCECDCCE824F8F870F380D4 +:1013CB0017C3EF33FFEE33FEED33FDEC33FCEB33A2 +:1013DB00FB994002FB0FD8E9EB300F05F8D0E0C4C6 +:1013EB0048B20FC0E00AEC4D4E4F78207B0070C224 +:1013FB00EAB50A0040BCC0E0121469D0F0D0E0207E +:10140B000F04C4C0E0C4B20FC0F01211F7D0F0D576 +:10141B00F0EB02124812182912E553135F5812B65B +:10142B004C12B24213634F136B44136B4912CB43F1 +:08143B001371551355461355BA +:101443004513554715115012BA2D12BE2E12E12B1A +:1014530012C22312DF2014FA2A127A48000012D98A +:101463003F3F3F00790AA2D5201114301309B91068 +:10147300020404B9080104A2D52014025001042077 +:1014830010689210B509005034C0E07F2030111964 +:101493007F30A21072147213500F1214C0C210C204 +:1014A30014C213C2167F30800F301303E9C0E01259 +:1014B300120E301303D0E0F9D0E0B509CC30131786 +:1014C3007F30B9100C12120E7F583012077F7880CC +:1014D30003B9080312120E3010057F2D02120E7F7E +:1014E300202016F87F2B2014F322921080CF286E31 +:1014F300756C6C2900D20F1211CB300FF8C20F7824 +:101503000930D50108F602127A2D504349581211B9 +:10151300CB2403B405004001E490150C931211FF92 +:0D152300743A1211FFD21175090402135F12 +:00000001FF diff --git a/Out/SY8835_EVB_mcu_2024_11_29_200455_crc(23bf)_V010101.bin b/Out/SY8835_EVB_mcu_2024_11_29_200455_crc(23bf)_V010101.bin new file mode 100644 index 0000000000000000000000000000000000000000..1407796bc9e6861672f195a2a4829a48958c40fc GIT binary patch literal 16386 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 literal 0 HcmV?d00001 diff --git a/Project/SY8835_Demo.uvgui.GH b/Project/SY8835_Demo.uvgui.GH index 19b12cc..4876b9e 100644 --- a/Project/SY8835_Demo.uvgui.GH +++ b/Project/SY8835_Demo.uvgui.GH @@ -110,8 +110,8 @@ 0 - 2857 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000001A000000190000000100000046453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF58453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C636861726765725C636861726765725F6D6F64756C652E630000000010636861726765725F6D6F64756C652E6300000000FFDC7800FFFFFFFF50453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C766F785C766F785F6D6F64756C652E63000000000C766F785F6D6F64756C652E6300000000BECEA100FFFFFFFF51453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C757365726170705C757365726170702E630000000009757365726170702E6300000000F0A0A100FFFFFFFF4B453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C756172745C756172742E630000000006756172742E6300000000BCA8E100FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6164635C6164632E6300000000056164632E63000000009CC1B600FFFFFFFF4B453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C68616C6C5C68616C6C2E63000000000668616C6C2E6300000000F7B88600FFFFFFFF4F453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C74696D65725C7379735F74696D2E6300000000097379735F74696D2E6300000000D9ADC200FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6C65645C6C65642E6300000000056C65642E6300000000A5C2D700FFFFFFFF4F453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C73797374656D5C73797374656D2E63000000000873797374656D2E6300000000B3A6BE00FFFFFFFF50453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C557372496E635C766F785C766F785F6D6F64756C652E68000000000C766F785F6D6F64756C652E6800000000EAD6A300FFFFFFFF4B453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C557372496E635C756172745C756172742E680000000006756172742E6800000000F6FA7D00FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6B65795C6B65792E6300000000056B65792E6300000000B5E99D00FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6261745C6261742E6300000000056261742E63000000005FC3CF00FFFFFFFF53453A5C746F646179776F726B5C32303234303332355F7470333331305C426F74685F5761795F436F6D6D5F5359383833335C7A6B6C78756E5F5359383833335C557372496E635C696E635C646566696E652E680000000008646566696E652E6800000000C1838300FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C70776D5C70776D2E63000000000570776D2E6300000000CACAD500FFFFFFFF5C453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6469736368617267655C6469736368617267655F6D6F64756C652E6300000000126469736368617267655F6D6F64756C652E6300000000C5D4F200FFFFFFFF4A453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C496E6974566172732E63000000000A496E6974566172732E6300000000FFDC7800FFFFFFFF53453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C6932635F73696D755C6932635F73696D752E63000000000A6932635F73696D752E6300000000BECEA100FFFFFFFF4C453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C557372496E635C696E635C646566696E652E680000000008646566696E652E6800000000F0A0A100FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C557372496E635C706D755C706D752E680000000005706D752E6800000000BCA8E100FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C706D755C706D752E630000000005706D752E63000000009CC1B600FFFFFFFF4D453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5573725372635C736C6565705C736C6565702E630000000007736C6565702E6300000000F7B88600FFFFFFFF49453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C557372496E635C70776D5C70776D2E68000000000570776D2E6800000000D9ADC200FFFFFFFF50453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C5372635C737461727475705C535441525455502E413531000000000B535441525455502E41353100000000A5C2D700FFFFFFFF4D453A5C746F646179776F726B5C32303234313033305F7379383833355C426F74685F5761795F436F6D6D5F5359383833335F5849414F4D495C557372496E635C736C6565705C736C6565702E680000000007736C6565702E6800000000B3A6BE00FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000007408000066000000000F000059020000 + 2457 + 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000001A000000020000000100000036453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF48453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C636861726765725C636861726765725F6D6F64756C652E630000000010636861726765725F6D6F64756C652E6300000000FFDC7800FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C766F785C766F785F6D6F64756C652E63000000000C766F785F6D6F64756C652E6300000000BECEA100FFFFFFFF41453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C757365726170705C757365726170702E630000000009757365726170702E6300000000F0A0A100FFFFFFFF3B453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C756172745C756172742E630000000006756172742E6300000000BCA8E100FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6164635C6164632E6300000000056164632E63000000009CC1B600FFFFFFFF3B453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C68616C6C5C68616C6C2E63000000000668616C6C2E6300000000F7B88600FFFFFFFF3F453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C74696D65725C7379735F74696D2E6300000000097379735F74696D2E6300000000D9ADC200FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6C65645C6C65642E6300000000056C65642E6300000000A5C2D700FFFFFFFF3F453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C73797374656D5C73797374656D2E63000000000873797374656D2E6300000000B3A6BE00FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C766F785C766F785F6D6F64756C652E68000000000C766F785F6D6F64756C652E6800000000EAD6A300FFFFFFFF3B453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C756172745C756172742E680000000006756172742E6800000000F6FA7D00FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6B65795C6B65792E6300000000056B65792E6300000000B5E99D00FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6261745C6261742E6300000000056261742E63000000005FC3CF00FFFFFFFF53453A5C746F646179776F726B5C32303234303332355F7470333331305C426F74685F5761795F436F6D6D5F5359383833335C7A6B6C78756E5F5359383833335C557372496E635C696E635C646566696E652E680000000008646566696E652E6800000000C1838300FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C70776D5C70776D2E63000000000570776D2E6300000000CACAD500FFFFFFFF4C453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6469736368617267655C6469736368617267655F6D6F64756C652E6300000000126469736368617267655F6D6F64756C652E6300000000C5D4F200FFFFFFFF3A453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C496E6974566172732E63000000000A496E6974566172732E6300000000FFDC7800FFFFFFFF43453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C6932635F73696D755C6932635F73696D752E63000000000A6932635F73696D752E6300000000BECEA100FFFFFFFF3C453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C696E635C646566696E652E680000000008646566696E652E6800000000F0A0A100FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C706D755C706D752E680000000005706D752E6800000000BCA8E100FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C706D755C706D752E630000000005706D752E63000000009CC1B600FFFFFFFF3D453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5573725372635C736C6565705C736C6565702E630000000007736C6565702E6300000000F7B88600FFFFFFFF39453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C70776D5C70776D2E68000000000570776D2E6800000000D9ADC200FFFFFFFF40453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C5372635C737461727475705C535441525455502E413531000000000B535441525455502E41353100000000A5C2D700FFFFFFFF3D453A5C746F646179776F726B5C32303234313033305F7379383833355C5359383833355F44656D6F5C557372496E635C736C6565705C736C6565702E680000000007736C6565702E6800000000B3A6BE00FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000007408000066000000000F000059020000 @@ -1806,7 +1806,7 @@ File 2558 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000832303234313031359600000000000000010008323032343130313500000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000832303234313031359600000000000000010008323032343130313500000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1822,7 +1822,7 @@ Build 976 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -3603,7 +3603,7 @@ 0 100 - 25 + 2 ..\UsrSrc\main.c 0 @@ -3625,8 +3625,8 @@ ..\UsrSrc\vox\vox_module.c 0 - 815 - 834 + 691 + 710 1 0 @@ -3660,7 +3660,7 @@ ..\UsrSrc\hall\hall.c - 46 + 50 64 75 1 @@ -3696,9 +3696,9 @@ ..\UsrInc\vox\vox_module.h - 36 - 41 - 60 + 0 + 240 + 254 1 0 @@ -3741,7 +3741,7 @@ ..\UsrSrc\pwm\pwm.c - 10 + 14 46 59 1 @@ -3759,7 +3759,7 @@ ..\UsrSrc\InitVars.c - 53 + 59 13 30 1 @@ -3768,7 +3768,7 @@ ..\UsrSrc\i2c_simu\i2c_simu.c - 21 + 25 1 6 1 @@ -3786,16 +3786,16 @@ ..\UsrInc\pmu\pmu.h - 12 - 433 - 448 + 0 + 432 + 443 1 0 ..\UsrSrc\pmu\pmu.c - 1 + 0 78 91 1 @@ -3831,9 +3831,9 @@ ..\UsrInc\sleep\sleep.h - 3 + 19 6 - 19 + 25 1 0 diff --git a/UsrDoc/NTC计算取值公式表.xlsx b/UsrDoc/NTC计算取值公式表.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..e4e27a731b113e1e9db963764eaa02539f425195 GIT binary patch literal 16554 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

%+umB$qrQ6wHa%9t= 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 2000 ) ////NTCܣNTCգ NTC ܣ + if( NTC_Adc >= 2500 ) ////NTCܣNTCգ NTC ܣ { return FALSE; } diff --git a/UsrSrc/pmu/pmu.c b/UsrSrc/pmu/pmu.c index 9505a77..5d8151b 100644 --- a/UsrSrc/pmu/pmu.c +++ b/UsrSrc/pmu/pmu.c @@ -20,6 +20,7 @@ /*_____ I N C L U D E S ____________________________________________________*/ #include "pmu.h" +#include "vox_module.h" /******************************************************************************\ @@ -30,7 +31,7 @@ Variables definitions \******************************************************************************/ -g_PMU_Info pmu_Info; //pmu״̬Ϣ +g_PMU_Info xdata pmu_Info; //pmu״̬Ϣ #if 0 g_PMU_Sys_Cfg pmu_Sys_Cfg; diff --git a/UsrSrc/userapp/userapp.c b/UsrSrc/userapp/userapp.c index 779f743..ccb44d4 100644 --- a/UsrSrc/userapp/userapp.c +++ b/UsrSrc/userapp/userapp.c @@ -571,7 +571,7 @@ void SysTem_State_Machine(void) if(F_sys_tim_1s) { F_sys_tim_1s = 0; -#ifdef _DEBUG_PMU +#ifdef _DEBUG_MAIN printf("STA0:0x%x,STA1:0x%x,STA2:0x%x,Chip_STA:0x%x,VOX_STA:0x%x.Dec_Sleep:%d\r\n",(u16)(pmu_Info.pmu_Fault_STA0),(u16)(pmu_Info.pmu_Fault_STA1),(u16)(pmu_Info.pmu_Fault_STA2),(u16)(pmu_Info.pmu_Chip_STA),(u16)(pmu_Info.pmu_VOX_STA),(u16)Decnt_SleepDelay); // printf("Chg Sta:0x%x.,batPec:%d.\r\n",(u16)ChgStatus,(u16)bat_level_Pec); @@ -590,7 +590,9 @@ void SysTem_State_Machine(void) Enter_Sleep_Cnt_Restart_Flag = 0; Decnt_SleepDelay = ENTER_STANDBYMODE_CNT; +#ifdef _DEBUG_MAIN printf("Decnt_SleepDelay Reload.\r\n"); +#endif } } else diff --git a/UsrSrc/vox/vox_module.c b/UsrSrc/vox/vox_module.c index 3181915..6c58597 100644 --- a/UsrSrc/vox/vox_module.c +++ b/UsrSrc/vox/vox_module.c @@ -65,34 +65,52 @@ bit Vox_Output_Short_Flag = 0; #define VOX_FOLLOW_CHG_CNT 10 -#define VOX_CLOSE_HOLD_CNT 50 //ظǷǰʱ - -/******************************************************************************\ - Variables definitions -\******************************************************************************/ - +#define VOX_CLOSE_HOLD_CNT 50 //ظǷǰʱ #if VOX_FOLLOW_CHG -bit Vor_In_Box_Flag = 0; -bit Vol_In_Box_Flag = 0; +#define VOX_FOLLOW_CHG_INIT_CNT 3 -bit Boost_VoxVout_Follow_Flag = 0; -int8 Boost_Vout_Value = 0; -bit Boost_Up_Flag = 0; +#define VOX_FOLLOW_CHG_NOWCURCHK_CNT 5 + +#define VOX_FOLLOW_CHG_VOLTAGE_ADJUST_CNT 2 //PMIDѹ + +#define VOX_FOLLOW_CHG_PMID_UP_CNT 20 //PMIDڣ2s + +#define VOX_FOLLOW_CHG_PMID_UP_STEPS 2 //PMIDڵλ + +#define VOX_FOLLOW_CHG_PMID_DOWN_STEPS 2 //PMID½ڵλ + +#define VPMID_MAX_THD 0x3C + +#define VPMID_MIN_THD 0x00 + +#define VOX_CV_TC_CURRENT 20 //紦CV/TC׶εĵֵλmA + +#endif +/******************************************************************************\ + Variables definitions +\******************************************************************************/ +#if VOX_FOLLOW_CHG + +xdata uint16_t Vox_Follow_Chg_Debounce = 0; + +g_Vox_Fllow_Chg_Cfg xdata Vox_Fllow_Chg; + +e_Vox_Follow_Chg_Sta Follow_Chg_Sta; #endif #ifdef VOX_RX -uint8_t Vox_Get_Vbat_Flag[2] = {0}; //״̬VOL:4bitVOR:4bit0Ч1ԣ2Գɹ3ֵǰ״̬ -idata uint8_t Vox_Get_BES_Addr_Flag[2] = {0}; +xdata uint8_t Vox_Get_Vbat_Flag[2] = {0}; //״̬VOL:4bitVOR:4bit0Ч1ԣ2Գɹ3ֵǰ״̬ +xdata uint8_t Vox_Get_BES_Addr_Flag[2] = {0}; //idata uint8_t BES_Addr[6] = {0}; //ַVox_Bes_Addr[0][6]VOLVox_Bes_Addr[1][6]VOR #endif -uint8_t Earphone_Vbat[2] = 0; //Զ -uint8_t Vox_Online_State[2] = {0}; //߱־λ +xdata uint8_t Earphone_Vbat[2] = 0; //Զ +xdata uint8_t Vox_Online_State[2] = {0}; //߱־λ #define KEY_TWS_PAIR_TIMER 2 #define KEY_TWS_PAIR_CNT 6 @@ -399,9 +417,6 @@ void Vox_Det_Machine(void) static bit Vox_Getinto_Sleep_Flag; static uint8_t CHIP_STA1_BK; -#if VOX_FOLLOW_CHG - static bit Follow_Chg_Start_Flag; -#endif static uint8_t Vox_Voltage_Hold_Timer; static uint8_t Vox_TX_Timer; @@ -422,20 +437,20 @@ void Vox_Det_Machine(void) if( gBoost_Prepared_Flag ) { - if( CoverEvent_Flg ) //Hall¼ + if( CoverEvent_Flg ) //Hall¼ { if( !Boost_Open_Flag ) { Set_PMU_Boost_Vout(BOOST_VPMID_5_2V); //ظBoost5.2V֤һܱѡ - Set_PMU_Boost(ON); //Boost Enable쳣ʱӲرաBoostVox 5vڿBoost֮100msʱ + Set_PMU_Boost(ON); //Boost Enable쳣ʱӲرաBoostVox 5vڿBoost֮100msʱ Boost_Open_Flag = 1; return; } - VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V + VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V Vox_Output_Debounce = 0; @@ -456,11 +471,7 @@ void Vox_Det_Machine(void) Vox_Chg_Full_Flag = 0; Vox_Getinto_Sleep_Flag = 0; -#if VOX_FOLLOW_CHG - Follow_Chg_Start_Flag = 0; - Boost_VoxVout_Follow_Flag = 0; -#endif Vox_Chn_Select = 0; Vox_Get_BES_Addr_Flag[VOL_TYPE] = 0x00; @@ -468,6 +479,19 @@ void Vox_Det_Machine(void) Vox_Get_BES_Addr_Flag[VOR_TYPE] = 0x00; Vox_Vout_Enable = ON; + + Wkup_Earphone_Flag = 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("Box Close.\r\n"); +#endif } else //2Ǵ5v 500ms ת0V 500msתADTģʽ { @@ -475,7 +499,10 @@ void Vox_Det_Machine(void) Cover_Open_Flag = 1; - Cover_Open_5V_Flag = 0; + Cover_Open_5V_Flag = 0; +#ifdef _DEBUG_VOX + printf("Box Open.\r\n"); +#endif } CoverEvent_Flg = 0; @@ -533,7 +560,9 @@ void Vox_Det_Machine(void) Boost_Open_Flag = 0; Vox_Vout_Enable = OFF; - +#ifdef _DEBUG_VOX + printf("Open Box CMD TX Over.\r\n"); +#endif } } else @@ -555,6 +584,10 @@ void Vox_Det_Machine(void) #ifdef LED_DISPLAY LED_On_Flag = 1; #endif +#ifdef _DEBUG_VOX + printf("Open Box And Earphone GetIn.\r\n"); +#endif + } CHIP_STA1_BK = ( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOL_LoadOn ) ); @@ -575,7 +608,13 @@ void Vox_Det_Machine(void) Boost_Open_Flag = 1; Vox_Vout_Enable = ON; - +#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 Vox_TX_Timer = 0; Vox_Voltage_Hold_Timer = 0; @@ -588,6 +627,9 @@ void Vox_Det_Machine(void) } VOX_EN_Type(VOX_VOUT_Mode); //VOX Enable 5V +#ifdef _DEBUG_VOX + printf("Close Box And Force Voltage Up.\r\n"); +#endif Wkup_Earphone_Flag = 0; } @@ -599,14 +641,6 @@ void Vox_Det_Machine(void) return; } - #if 0 - /* ظǺ󣬺жȡǰIvolIvorΪPMIDѹijʼInit_IvolInit_Ivor */ - if( pmu_Info.pmu_VOX_STA & ( VOR_LoadOn | VOL_LoadOn ) ) - { - - - } - #endif if( Vox_TX_Timer <= Vox_TX_Pattern_Tim ) //͹ظָ { @@ -652,143 +686,72 @@ void Vox_Det_Machine(void) } #if VOX_FOLLOW_CHG - if( !F_batlevel_low && !Follow_Chg_Start_Flag ) - { - //if( !Follow_Chg_Start_Flag ) - { - /*߼*/ - if( !Boost_VoxVout_Follow_Flag ) - { - Boost_Vout_Value = 0x03; - Boost_Up_Flag = 0; - - SFRADDR = VOX_CON0; //IOFFѡߵ10/15/20/25mA - SFRDATA |= 0x20; - - SFRADDR = VOX_CON2; - SFRDATA &= ~0xC0; - SFRDATA |= 0x80; //IOFF 20mA - - Boost_VoxVout_Follow_Flag = 1; - } - else - { - if( Vox_Voltage_Hold_Timer < VOX_FOLLOW_CHG_CNT ) //ȶ硣 + if ( Vox_Fllow_Chg.Vox_Follow_Stop == OFF ) + { + Vox_Follow_Chg( &Vox_Fllow_Chg ); //䴦 + } + else +#endif + { + 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( Vox_Voltage_Hold_Timer < VOX_VOUT_5V_LEAST_CNT ) //תʱ5sرBoost { Vox_Voltage_Hold_Timer++; return; } - - Vox_Voltage_Hold_Timer = 0; - - if ( CHIP_STA1 & 0x0C ) //ǷIOFF־ڣBoostһstepBoost½һstep - { - Boost_Vout_Value += 1; //Boost һstep - - Boost_Up_Flag = 1; - - if( Boost_Vout_Value >= BOOST_VOUT_MAX ) //Boostﵽѹֵ䡣 - { - Boost_Vout_Value = BOOST_VOUT_MAX; - - Boost_VoxVout_Follow_Flag = 0; - - Follow_Chg_Start_Flag = 1; - - SFRADDR = VOX_CON0; //IOFFѡ͵2/3/4/5mA - SFRDATA &= ~0x20; - - SFRADDR = VOX_CON2; - SFRDATA &= ~0xC0; - SFRDATA |= 0x40; //IOFF 3mA - } - } - else - { - if( !Boost_Up_Flag ) //ֻڳʼصѹʱִ - { - Boost_Vout_Value -= 1; //Boost ½һstep - - if( Boost_Vout_Value <= 0 ) - { - Boost_Vout_Value = 0; - } - } - } - - SFRADDR = OTP_KEY; - SFRDATA = 0x69; - - SFRADDR = BST_CTL0; //Boost - SFRDATA &= ~0x03; - SFRDATA |= Boost_Vout_Value; - - SFRADDR = OTP_KEY; - SFRDATA = 0x01; - } - } - } - -#endif - 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( Vox_Voltage_Hold_Timer < VOX_VOUT_5V_LEAST_CNT ) //תʱ5sرBoost - { - Vox_Voltage_Hold_Timer++; - - return; - } #ifdef _DEBUG_VOX - printf("VOX CHG Full.\r\n"); + printf("VOX CHG Full.\r\n"); #endif - Vox_Chg_Full_Flag = 1; + Vox_Chg_Full_Flag = 1; - Boost_Open_Flag = 0; - - VOX_EN_Type(VOX_ADT_Mode); //VOX Enable ADT - } - } - else - { - - if( Vox_Output_Debounce <= Vox_TX_Pattern_Tim ) - { - if( (Vox_Output_Debounce % Vox_TX_Interval_2) == 0 ) //200msһ - { -#ifdef VOX_TX - HandleTxCommand(VHOUSE_CMD_PWROFF,VOL_CHAN); //ָֶͨ -#endif - } - else - if( (Vox_Output_Debounce % Vox_TX_Interval) == 0 ) //200msһ - { -#ifdef VOX_TX - HandleTxCommand(VHOUSE_CMD_PWROFF,VOR_CHAN); //Ҷָֶͨ -#endif - } + Boost_Open_Flag = 0; - Vox_Output_Debounce++; + VOX_EN_Type(VOX_ADT_Mode); //VOX Enable ADT + } } else - { - if( !Vox_Getinto_Sleep_Flag ) - { - Vox_Getinto_Sleep_Flag = 1; - - VOX_EN_Type(VOX_ADT_Mode); - - Vox_Vout_Enable = OFF; -#ifdef _DEBUG_VOX - printf("VOX Get Into Sleep.\r\n"); + { + + if( Vox_Output_Debounce <= Vox_TX_Pattern_Tim ) + { + if( (Vox_Output_Debounce % Vox_TX_Interval_2) == 0 ) //200msһ + { +#ifdef VOX_TX + HandleTxCommand(VHOUSE_CMD_PWROFF,VOL_CHAN); //ָֶͨ #endif + } + else + if( (Vox_Output_Debounce % Vox_TX_Interval) == 0 ) //200msһ + { +#ifdef VOX_TX + HandleTxCommand(VHOUSE_CMD_PWROFF,VOR_CHAN); //Ҷָֶͨ +#endif + } + + Vox_Output_Debounce++; + } + else + { + if( !Vox_Getinto_Sleep_Flag ) + { + Vox_Getinto_Sleep_Flag = 1; + + VOX_EN_Type(VOX_ADT_Mode); + + Vox_Vout_Enable = OFF; +#ifdef _DEBUG_VOX + printf("VOX Get Into Sleep.\r\n"); +#endif + } } } - } + } } Bat_Low_Pro_Flag = 0; @@ -825,46 +788,457 @@ void Vox_Det_Machine(void) } } +#if VOX_FOLLOW_CHG -#if 0 -uint16_t Vox_Follow_Chg_Debounce = 0; +/* +******************************************************************************* +* void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *g_Vox_Fllow_Chg ) +* +* Description : Vox 䴦 (40ms) +* +* Arguments : NONE -#define VOX_FOLLOW_CHG_INIT_CNT 3 +* Returns : NONE -void Vox_Follow_Chg( e_Vox_Chan_Set Vox_Chn, e_Vox_Follow_Chg_Sta Follow_Chg_Sta ) +* Notes : NONE +* +******************************************************************************* +*/ +void Vox_Follow_Chg( g_Vox_Fllow_Chg_Cfg *n_Vox_Fllow_Chg ) { + static bit nVpmid_Value_Setting; + +#ifdef _DEBUG_VOX + //printf("Follow CHG Sta:0x%x.(Vox_sta:0x%x)(line:%d)\r\n",(u16)Follow_Chg_Sta,(u16)pmu_Info.pmu_VOX_STA, (u16)__LINE__); +#endif + switch (Follow_Chg_Sta) { - case Vox_Follow_Chg_InitSta: + case Vox_Follow_Chg_InitSta: //STA0:PMID=5.2VԱ֤һܽ״̬һʱ䱣֤ܿʼ硣 - if( Vox_Follow_Chg_Debounce <= VOX_FOLLOW_CHG_INIT_CNT ) + if( (n_Vox_Fllow_Chg->Vox_Follow_Stop == OFF) ) // { - Vox_Follow_Chg_Debounce++; - - Set_PMU_Boost_Vout(BOOST_VPMID_5_2V); - } - else - { - Vox_Follow_Chg_Debounce = 0; + if( Vox_Follow_Chg_Debounce <= VOX_FOLLOW_CHG_INIT_CNT ) + { + Vox_Follow_Chg_Debounce++; + + n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present = BOOST_VPMID_5_2V; + + if( !nVpmid_Value_Setting ) + { + Set_PMU_Boost_Vout(n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present); +#ifdef _DEBUG_VOX + 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; + } + } + else + { + Vox_Follow_Chg_Debounce = 0; - Follow_Chg_Sta = Vox_Follow_Chg_Sta1; + nVpmid_Value_Setting = 0; + + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = OFF; + + n_Vox_Fllow_Chg->IVox_TC_Mode[VOR_CHAN] = OFF; + + n_Vox_Fllow_Chg->IVox_TC_Mode[VOL_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vpmid_Threshold_Neg = VPMID_MIN_THD; + + n_Vox_Fllow_Chg->Vpmid_Threshold_Pos = VPMID_MAX_THD; + + Follow_Chg_Sta = Vox_Follow_Chg_Sta1; +#ifdef _DEBUG_VOX + printf("Follow CHG InitSta.(Vox_sta:0x%x)(line:%d)\r\n",(u16)pmu_Info.pmu_VOX_STA, (u16)__LINE__); +#endif + } } break; - case Vox_Follow_Chg_Sta1: - $end$ - break; - - + case Vox_Follow_Chg_Sta1: //STA1:ȡǰVox޵ֵ - default: + if ( ( pmu_Info.pmu_VOX_STA & VOR_Ioff ) && ( pmu_Info.pmu_VOX_STA & VOL_Ioff ) ) //VOLVOR޳磬˵ѳټ䡣 + { + n_Vox_Fllow_Chg->Vox_Follow_Stop = ON; + + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta1,No EarPhone In Box.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else + { + /*ȡǰIvoxVoxʣ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_Threshold_Neg[VOR_CHAN] = ( g_pmu_Adc_Ivor / 5 ) << 2; //Ivox_Threshold_Neg = IVox_Init * 80% + + n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOR_CHAN] = g_pmu_Adc_Ivor << 1; //Ivox_Threshold_Neg = IVox_Init * 2 +#ifdef _DEBUG_VOX + printf("Follow CHG Sta1,VOR Chging(Ivor:%d).(line:%d)\r\n",g_pmu_Adc_Ivor,(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_Threshold_Neg[VOL_CHAN] = ( g_pmu_Adc_Ivol / 5 ) << 2; //Ivox_Threshold_Neg = IVox_Init * 80% + + n_Vox_Fllow_Chg->IVox_Threshold_Pos[VOL_CHAN] = g_pmu_Adc_Ivol << 1; //Ivox_Threshold_Neg = IVox_Init * 2 +#ifdef _DEBUG_VOX + printf("Follow CHG Sta1,VOL Chging(Ivol:%d).(line:%d)\r\n",g_pmu_Adc_Ivol,(u16)__LINE__); +#endif + + } + + n_Vox_Fllow_Chg->Vox_Follow_Start = ON; + + Follow_Chg_Sta = Vox_Follow_Chg_Sta2; + } + + break; + + case Vox_Follow_Chg_Sta2: //STA2:ȡǰVoxȴIVOXȶ⵱ǰIVox_At_Present + + if( Vox_Follow_Chg_Debounce <= VOX_FOLLOW_CHG_NOWCURCHK_CNT ) + { + Vox_Follow_Chg_Debounce++; + } + else + { + Vox_Follow_Chg_Debounce = 0; + + 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->Vox_InBox_Sta[VOR_CHAN] = ON; //жVORжں +#ifdef _DEBUG_VOX + printf("Follow CHG Sta2,Get IVOR.(line:%d)\r\n",(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->Vox_InBox_Sta[VOL_CHAN] = ON; //жVOLжں +#ifdef _DEBUG_VOX + printf("Follow CHG Sta2,Get IVOL.(line:%d)\r\n",(u16)__LINE__); +#endif + } + + Follow_Chg_Sta = Vox_Follow_Chg_Sta3; + } + + break; + + case Vox_Follow_Chg_Sta3: //STA3:IvoxжPMIDǷҪ͡ + + if( Vox_Follow_Chg_Debounce <= VOX_FOLLOW_CHG_VOLTAGE_ADJUST_CNT ) + { + Vox_Follow_Chg_Debounce++; + } + else + { + 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תCCRecharge䣩Ҫ䡣 + { + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; + + n_Vox_Fllow_Chg->Vox_Follow_Start = OFF; // +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3,VOX Chg ReInit.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else + { + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) + { + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] <= VOX_CV_TC_CURRENT ) //⵽IvorСCV/TCֵ˵CV/TC׶ + { + if ( pmu_Info.pmu_VOX_STA & VOR_Ioff ) //⵽Ivor IoffVPMID + { + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = ON; + + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] = OFF; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CV),VOR Vpmid AddSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else //δ⵽Ivor IoffVpmid + { + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CV),VOR Vpmid SubSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + { + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOR_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOR_CHAN] ) + { + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CC),VOR Vpmid SubSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else + { + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CC),VOR Vpmid AddSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + } + + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == ON ) + { + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] <= VOX_CV_TC_CURRENT ) //⵽IvolСCV/TCֵ˵CV/TC׶ + { + if ( pmu_Info.pmu_VOX_STA & VOL_Ioff ) //⵽Ivol IoffVPMID + { + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; + + n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] = OFF; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CV),VOL Vpmid AddSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else //δ⵽Ivol IoffVpmid + { + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CV),VOL Vpmid SubSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + } + else + { + if ( n_Vox_Fllow_Chg->IVox_At_Present[VOL_CHAN] > n_Vox_Fllow_Chg->IVox_Threshold_Neg[VOL_CHAN] ) + { + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CC),VOL Vpmid SubSta.(line:%d)\r\n",(u16)__LINE__); +#endif + } + else + { + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta3(CC),VOL Vpmid AddSta.(line:%d)\r\n",(u16)__LINE__); +#endif + + } + } + } + } + } + + break; + + case Vox_Follow_Chg_Sta4: //STA4:IVOXжPMIDǷߣ1ڴ״̬£ÿ2sһIVOX2⵽ IVOX < IVOX_THN or IVOX > IVOX_THP,PMID һstepNstepʵʲ趨 + + if( Vox_Follow_Chg_Debounce <= VOX_FOLLOW_CHG_PMID_UP_CNT ) + { + /* ÿ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[VOL_CHAN] = g_pmu_Adc_Ivol; + + } + else + { + Vox_Follow_Chg_Debounce = 0; + + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOR_CHAN] == ON ) + { + /* ⵽ IVOX < IVOX_THN or IVOX > IVOX_THP,PMID һstepNstepʵʲ趨 */ + 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->Vpmid_AddSta[VOR_CHAN] = ON; + + Follow_Chg_Sta = Vox_Follow_Chg_Sta2; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta4,VOR Vpmid AddSta(line:%d).\r\n",(u16)__LINE__); +#endif + } +#ifdef _DEBUG_VOX + else + { + printf("Follow CHG Sta4,VOR Ching(line:%d).\r\n",(u16)__LINE__); + } +#endif + } + + if ( n_Vox_Fllow_Chg->Vox_InBox_Sta[VOL_CHAN] == 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] ) ) + { + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = ON; + + Follow_Chg_Sta = Vox_Follow_Chg_Sta2; +#ifdef _DEBUG_VOX + printf("Follow CHG Sta4,VOL Vpmid AddSta(line:%d).\r\n",(u16)__LINE__); +#endif + } +#ifdef _DEBUG_VOX + else + { + printf("Follow CHG Sta4,VOL Ching(line:%d).\r\n",(u16)__LINE__); + } +#endif + } + } + + break; + + default: 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->Vpmid_SubSta[VOR_CHAN] == ON ) || ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] == 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->Vpmid_SubSta[VOR_CHAN] == ON ) && ( n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] == ON ) ) + { + n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG SubSta,VOL/VOR(line:%d).\r\n",(u16)__LINE__); +#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->Vpmid_SubSta[VOR_CHAN] == ON ) + { + n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG SubSta,VOR(line:%d).\r\n",(u16)__LINE__); +#endif + } + } + 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->Vpmid_SubSta[VOL_CHAN] == ON ) + { + n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = ON; +#ifdef _DEBUG_VOX + printf("Follow CHG SubSta,VOL(line:%d).\r\n",(u16)__LINE__); +#endif + } + } + + n_Vox_Fllow_Chg->Vpmid_SubSta[VOR_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vpmid_SubSta[VOL_CHAN] = OFF; + if ( n_Vox_Fllow_Chg->Vpmid_SubSta_Flag == ON ) + { + if( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present > VPMID_MIN_THD ) + { + n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present = n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present - VOX_FOLLOW_CHG_PMID_DOWN_STEPS; + } + + if( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present <= n_Vox_Fllow_Chg->Vpmid_Threshold_Neg ) //Vpmidֵʼѹ + { + n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present = n_Vox_Fllow_Chg->Vpmid_Threshold_Neg; + + Follow_Chg_Sta = Vox_Follow_Chg_Sta4; + } + else + { + Follow_Chg_Sta = Vox_Follow_Chg_Sta2; + } + Vox_Follow_Chg_Debounce = 0; + + n_Vox_Fllow_Chg->Vpmid_SubSta_Flag = OFF; +#ifdef _DEBUG_VOX + printf("Follow CHG SubSta,(STA:0x%x,Vpmid:0x%x)(line:%d)\r\n",(u16)Follow_Chg_Sta,(u16)n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present,(u16)__LINE__); +#endif + Set_PMU_Boost_Vout( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present ); + } + } + else + { + /* PMID > PMID_THPVOLVORһ֧·ֵ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 ) ) + { + n_Vox_Fllow_Chg->Vpmid_AddSta[VOR_CHAN] = OFF; + + n_Vox_Fllow_Chg->Vpmid_AddSta[VOL_CHAN] = OFF; + + if( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present < VPMID_MAX_THD ) + { + n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present = n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present + VOX_FOLLOW_CHG_PMID_UP_STEPS; + } + + Follow_Chg_Sta = Vox_Follow_Chg_Sta4; //ҪѹVpmidҪػSta4 + + /* VPMID ֵ˵ָػStaInit */ + if( n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present >= n_Vox_Fllow_Chg->Vpmid_Threshold_Pos ) + { + n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present = n_Vox_Fllow_Chg->Vpmid_Threshold_Pos; + + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; + + n_Vox_Fllow_Chg->Vox_Follow_Stop = ON; + } +#ifdef _DEBUG_VOX + printf("Follow CHG AddSta,(STA:0x%x,Vpmid:0x%x)(line:%d)\r\n",(u16)Follow_Chg_Sta,(u16)n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present,(u16)__LINE__); +#endif + Set_PMU_Boost_Vout(n_Vox_Fllow_Chg->Vpmid_Threshold_At_Present); + + } +#if 0 + else //ѹVpmidػSta3 + { + Follow_Chg_Sta = Vox_Follow_Chg_Sta3; + } +#endif + } + } +#if 1 + else + { + if( Follow_Chg_Sta > Vox_Follow_Chg_Sta2 ) + { + Follow_Chg_Sta = Vox_Follow_Chg_InitSta; + + n_Vox_Fllow_Chg->Vox_Follow_Stop = ON; + } + } +#endif } #endif diff --git a/sy8835_demo.si4project/sy8835_demo.SearchResults b/sy8835_demo.si4project/sy8835_demo.SearchResults index dab0410..968e8e6 100644 --- a/sy8835_demo.si4project/sy8835_demo.SearchResults +++ b/sy8835_demo.si4project/sy8835_demo.SearchResults @@ -1,11 +1,3 @@ ----- POWER_CTRL_CMD Matches (14 in 4 files) ---- -pmu.c (UsrSrc\pmu) line 135 : I2cSfr_Write( POWER_CTRL_CMD, n_PMU_Sys_Cfg->pmu_PWR_Ctrl_Cmd ); -Set_PMU_Enter_ShipMode in pmu.c (UsrSrc\pmu) : I2cSfr_Write( POWER_CTRL_CMD, POWER_CTRL_CMD_ENTER_SHIPMODE ); -Set_PMU_En_ReChg in pmu.c (UsrSrc\pmu) : I2cSfr_Write( POWER_CTRL_CMD, POWER_CTRL_CMD_RECHG_ENABLE ); -Set_PMU_Rst in pmu.c (UsrSrc\pmu) : I2cSfr_Write( POWER_CTRL_CMD, POWER_CTRL_CMD_RST_VDD ); -pmu.h (UsrInc\pmu) line 31 : #define POWER_CTRL_CMD_RECHG_ENABLE 0x11 //0x11:VIN正常是,写入此命令,IC将重新开启充电循环; -pmu.h (UsrInc\pmu) line 33 : #define POWER_CTRL_CMD_RST_CMD 0x17 //0x17:CMD_RST,此命令将复位I2CR<0x20>~<0x4F>、VDD; -pmu.h (UsrInc\pmu) line 35 : #define POWER_CTRL_CMD_ENTER_SHIPMODE 0xAA //0xAA:EnterShipmode,当且仅当在standby mode状态下写入此命令,IC进入ShipMode状态,在Charge Mode状态时,写入此命令无效; -pmu.h (UsrInc\pmu) line 37 : #define POWER_CTRL_CMD_RST_VDD 0x33 //0x33:RstVDD,在任意状态下关闭VSYS 200ms,然后在重启VDD。 -reg3315.h (UsrInc\inc) line 53 : #define POWER_CTRL_CMD 0x4F -Enter_Sleep in sleep.c (UsrSrc\sleep) : I2cSfr_Write(POWER_CTRL_CMD, POWER_CTRL_CMD_ENTER_SHIPMODE); //Enter ShipMode +---- VPMID_MIN_THD Matches (2 in 1 files) ---- +vox_module.c (UsrSrc\vox) line 86 : #define VPMID_MIN_THD 0x00 +Vox_Follow_Chg in vox_module.c (UsrSrc\vox) : n_Vox_Fllow_Chg->Vpmid_Threshold_Neg = VPMID_MIN_THD; diff --git a/sy8835_demo.si4project/sy8835_demo.sip_sym b/sy8835_demo.si4project/sy8835_demo.sip_sym index ef2e38ce5e70c7ea89bc5ee7415b7adbca7b1b53..ff721dbb846bf0ab4f326289e4fecf96371a4a8a 100644 GIT binary patch delta 9836 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 M`R^@K6;r1DALq1}oB#j- delta 9023 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 Tp9S;FG#m9FmKv%WpicUKrqqc2 diff --git a/sy8835_demo.si4project/sy8835_demo.sip_xab b/sy8835_demo.si4project/sy8835_demo.sip_xab index fd15512a24c988625f93d3231588c27f58f6a630..f30ad270beef74d5510b9cd3d767b95645a6f5d2 100644 GIT binary patch delta 4690 zcmcJSU2Kz87{|})$F`CZ-o+^{0au}f024|WBFP9Ht3XNVUf5vZ4F$o0j5JE z$`ymx(2!^(;mUB+?8H@r2~+Tc3uPJ;FT9zGfDv82agu1_Iqmz~M-w8(NW#Uh=e*}U z=l}el=bSmCL1#QzEC=Qd1Vy9J|JsCbIu0ImCj!T;Y*5sh-=g||M`GJ9l?fJo`B7hW zX2AS9kR7;Q!=KdfcQt&whVRsH(l2~wSJqGaXYH3CuxI};@SGPq9~`dXBQ<=qhB-Rl zAFCNp2vI*Bkb0uwBVP+aRpc5Jf<4=fe1k$w%xUzi$h;vrCD#Hy(s{T~AQy~WFml1j z1tS-H&nLnrx+ZV^UuSb(NPk7jsR`)I0vrWKUij63SUYor*8;QGI~x#lXO1ro&J4)? z!rHW#46!6?!DI*~LogYF$-g$cQ!@;$aPsH}zYpmp5)S_dyWckSHi+KXZ#ehjNq zi|TzA5t=!PLkF_16Sdv(sC911Eq_$_)tx2DfR&prM<>zMn^v*qLjg6mG9rg#PD2PI zCDf^B=1VoU{-S@%d^#|(xxYV)`Cz_*F&~WiV9W>OB^WPxoX=t=CSWFGSrZUuf^iD- zaSDu6V4MQulqxUk&terO;1xD>a~tdg$7(ZCW&8W7smdhH)D%of!KMV<>l;#e!eODC zo|7sQyHY8f$%o_}#+l5=nJ~_Tai+%|DXeLFnK=p08{>RHI^HyyOcW_TE@vtiQC(g2~GwR_yTprsc&dz zi*_?TdqQB;cK68ZTZT`^L#tSzRd3bZ^Q_GRFsU*tbPs0TjptTJCzau-JHRQzHj6hYFcj%$}KrX+<`?wz7^W0xH@bU70kF6KfZ?4nhEzt6vlI?!%% zv=78D-rZ8+u04Xf@W$2655Dw;=m}x<)733f#Xq!s*2i8Q=!s%eS68DArxHCtt_m#5oSRF8DNFnwpjH5XNAfOu=Ld z#%wTc3MP|PcGI7IrN(ZIH@nui@!?w;Ukg$t^#0w0`vn42&AZ>-cYAd+F?qiU_Gnk9 zZ=dvq=nPHj{@ri<5mIYTq*q)+Dm`v<$L>Webkj=;J?XeA-z!RGO+;i8$#gkYtO4uB zQsFLt^^OgAjH1kk!|wWW-zu&JW}`RE8^dGw?Q%!JoY(!j+?q#xwnlumf*B_njKhp0 z987ZHH)Zu`Mk-wuYTj>+K{xjM_!jOKqNdx!bbFX?UtwKNcXh+mx4k=ma#;(Vk}-nAgRvq^ zhF}ziQMgq#|FKl&>76=Gv0GmT^iFthpqhZNH_mdE7zhR`ou zxUpFFg^({?SQeEhLtJ0&r3+DcC%Eb_Pfe|^lU}_>42tQ>O|M=n-kLSO&OMXe5uv1X zV{p=k`UDEXh4JMwUb0rmTwo+7i~gxzudga6IUq!#xJG75u{Ig;g=htBh2+z6(n4Az zRWhCIDaF^xV#A1*y)HtR(fbJd_@NVIGU0KlxLIa`=Tp)eNy$;aDzCfvfR`{=h7r;{ zM6obTUBFx!FpsK(n4W?LN`kKf2|NN?@5wgL*V}B~OtswWvjU{`JEY=UdXUk^l z*{ry`E7e0in}^e<(v4qOL9J+=it e<^z}ycn6s3f7mBpBgMcX+uXBPTZ}qG^?w7&hb24! delta 1883 zcmcgt-)j^{9G~y(?&Y?m+@x57km6uYN}`0dKa_x!HKCC}t~U@GE%afJQuHBuOATnB zG7ml|zMMD0nzw^{5XnQA49!xgx<%WPR@(gsELU3m@nCz`2c!1q%-wEE^Hfl?Faw|2 zo%zgsKA-O_Z&^IH!nRqre95g4OKK;$u#VB2NIlzBJGd|}3;hE|y+9UUGf=-CR~?^t zdlqdmt~_@_5q=jp!vdIKAX8i%c)!VBvSfRZT8qL!1N!WH)Y&IX3~e!9+-gF!CpBA# zV6q%sGhxEn`=7B=DGNaFn^NgEMoOiRy1|*O9zPzq7W^#FymHGF-cG04*oj40WbjaQ ziaYQDOW<9<8KcON>$|2+$wq6Yh{uR*jZqNoF|y+Dd{kpVVEiUVmR4U8@u~UB(XUfn zO!2oV9!l}849lhQ%ZBjYVnI9yY%!aszC%;h`T6fL%IS4=tf$H|Gf#_0E!3yi(}L*r zH{r_WfoG28k7EQ@Ts|n1!%kkQ$X2{WN$S^fBr9uOzGeTz6HWh=-E8o@h|jtrIqRrK zSI)V%@av9@>s*-@@cJd%^e=(%mdO8V>_SnAi@OTUE>sr2$(&G%Xe|AuIA>>D8ImK7 zS8bBnt9SOUk4{SeN(g;l^`?r!<#RG#cFk@kLf@ABGtZFZYJvlL1gMCw59hk~l_~FE zKLi`+G!^AUwR%!IUl8nO9NFlXsr6l4F3+ZHD0`npCBuT<@I-ur?Z~pGvp7*bjk2tz zSQc(}jQUz4oVA8(L?&yk?e@bgX!6QWm$C5gD24C%svLfBq<_C*2#be>Qk z@0tH5e2$f-W$Sm(5Usz6aQ}{Fvdr;Ca5nrXemVjX*e|5iL(vF^!@0o8gA?&QcrQln zmw_4)+YVt)r)!nMHe*P!gN}Tu^1-nK)&?Oj9h`nApu@lduDjMScmXSdA0i6cp4w ZsAHi!JzaisZ7=97I+1q_8hwh8{sYGmtD^t_ diff --git a/sy8835_demo.si4project/sy8835_demo.sip_xad b/sy8835_demo.si4project/sy8835_demo.sip_xad index 26e1d47133024573c78a3a3a1afe5cc68896f902..50d4f107829159db4bba2dd1ea8ea1b2f40c01ef 100644 GIT binary patch delta 435 zcmXYtJxBvV5QXP{kP8N~l_;dxN>W}a*d(1`;Z+i_Ik1ePrB*pm)Iucj1T8F53N}~9 zE?9_dI?I3rECf%m$bq2m&1GTU?)T>HF3hkpsq`-0d%xfBu8YXhyc*bl91%M`u4Rue z3qaZNsEbk+Nm{!df_$saOuFIN;D#^)90JY>rZDLpV61@72yj9WbUpx|JX>^(YlA;R z2v~DhU2HMDQ}vL(089xHI$0TbgZD(w7UtU1I}OhUSF{quBEU1Di3g6#zyRJmy$J%Z zfLlTjkOPK<0btp;-Gq?MjAT5NYu^{0MjbzFAMB}lMvV(2F-A6Dn;r)x;xo6^R`-jV iBK`!yooBU$Vof?N;P^2Ywh0_P5B386kN>! delta 370 zcmaFBxr1{;4^s)t#EJFR3=9mSP^!Speinuqbf<25~lsGcjyn xn4HZb%Y6*Q{{ZBFV3@p{MbhMf(Fy*587$z?0g7P&7N7_y6hZ1P07DX_007$)MBe}a diff --git a/sy8835_demo.si4project/sy8835_demo.sip_xsb b/sy8835_demo.si4project/sy8835_demo.sip_xsb index af3e513cd0b8c386271292dd5d7c4f6ec1a7c0ce..0527e8e80e33a9cdc3f90e651e5463a63703c7c3 100644 GIT binary patch delta 977 zcmaix%SyvQ6o#jhjHTdZL=Z(6vA9q~RM3SRDJVh&+bE?J5mQmIYINddp|sFELS@{F z1z$iq3%5nYt$l=gUwFm6Vyad%$Ay6`zMTJ`nJ?ow*va7|gYX2=c$S333yCVcKR_$5 z=nu5k`4W7+>44{&G(nqbfTmTXqVH$Xj4`1FssAw4*}{zxJNTxes>(EKhWoaV%=@Z1 z85vSJ)f3#&i@cyyVT{pQZP!x_M~6+wVm9vh^NF0IZV*((_vSRE9Vz^HPS2!NG*H@affNl50KLz&y z&tSeR&w0;$Th9ZQHZh+7Gr1!o^AkSx(G7{cg=s8`$*htYRFJFo^`vIkn0s}NUJfg$ z-pe{*18@P$`6(jvlFSY40u+)&Oj_?aZ38*s83|PUQew19SMx&Okm1^6P+arM#H2UNO%y JTi9{x{{Y7Suqprm delta 374 zcmZozz|_#dv>||%0}pH9f2cE46F=L;FO} zdH5A=SQ*%0`r}<(of4Q(`QIi7O3dFZASuAP*+5BveUhfYVh2rWfxj#WWg+n<7Ly%Z z3Ybb5HeYhFW8puIWL;Q(&SZYiME)}^BSItQSb z1(QNVABdCiO@JW*#DIXM3=ClFLA)^kh3Du1_lNWDAoYdUlEI0;pP3<;CFn51|Vj85<`0J;Dq3IM<-Ax;1Q diff --git a/sy8835_demo.si4project/sy8835_demo.siwork b/sy8835_demo.si4project/sy8835_demo.siwork index 3de9e0b7bd38a56470ca666180dd8eb0a326df2a..f81e4faebd32fa189ba91c28319ca24881490542 100644 GIT binary patch literal 50988 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 RidvQ!ZKyna9tRAS|34QBT@(NS