Browse Source

1,修改亮度调整方法,解决低亮呼吸灯不均匀问题;
2,开机不执行Poweroff,否则亏电充电唤醒时不显示充电灯。

Deyauo 10 months ago
parent
commit
8dfd9d0d30

+ 410 - 406
Debug/Exe/tail_light_stm8.hex

@@ -1,105 +1,105 @@
-:1080000082009D1C82009E6882009E6982009E6A9A
-:1080100082009E6B82009E6C82009E6D82009E6E2E
-:1080200082009E6F82009E7082009E5A82009E5A3D
-:1080300082009E7182009E7282009E7382009E74F6
-:1080400082009E7582009E5A82009E5A82009E7611
-:1080500082009E7782009E7882009E5A82009E5AFD
-:1080600082009BA7820098C082009E7982009E5A5F
-:1080700082009E5A82009E5A82009E5A82009E5A18
+:1080000082009D4982009EA082009EA182009EA2C5
+:1080100082009EA382009EA482009EA582009EA64E
+:1080200082009EA782009EA882009E9282009E925D
+:1080300082009EA982009EAA82009EAB82009EAC16
+:1080400082009EAD82009E9282009E9282009EAE31
+:1080500082009EAF82009EB082009E9282009E921D
+:1080600082009BD4820098A082009EB182009E92E2
+:1080700082009E9282009E9282009E9282009E9238
 :10808000CD898C5FBF0ABF08725C008DC6008D4A27
 :10809000270F4A2603CC812B4A2603CC81B6CC82FB
-:1080A00086725F008CA601CD994BAE0043CD990935
-:1080B000CD8A4EC6008C4D261AAE0043CD9909CD0F
+:1080A00086725F008CA601CD9973AE0043CD9931E5
+:1080B000CD8A4EC6008C4D261AAE0043CD9931CDE7
 :1080C0008A34CD863CBE00A300002605BE02A30074
 :1080D0000B25E0CE007DBF025FBF00AE004FCD8616
-:1080E00024AE004FCD9921725C008EC6008EA10493
-:1080F000251CAE004FCD9909A602CD87C9BE02CF7F
+:1080E00024AE004FCD9949725C008EC6008EA1046B
+:1080F000251CAE004FCD9931A602CD87C9BE02CF57
 :10810000007B5FCF004F5FCF0051725F008ECE00CB
 :108110007BA302C725063501008B200CCE007BA374
 :1081200002B22404725F008BCC8286725F008CA640
-:1081300004CD994BAE0043CD9909CD8A4EC6008C33
-:108140004D261AAE0043CD9909CD8A34CD863CBE6A
+:1081300004CD9973AE0043CD9931CD8A4EC6008CE3
+:108140004D261AAE0043CD9931CD8A34CD863CBE42
 :1081500000A300002605BE02A3000B25E0CE007D93
 :10816000BF025FBF00AE004BCD8624AE004BCD9961
-:1081700021725C008FC6008FA104251CAE004BCD80
-:108180009909A602CD87C9BE02CF00795FCF004B07
+:1081700049725C008FC6008FA104251CAE004BCD58
+:108180009931A602CD87C9BE02CF00795FCF004BDF
 :108190005FCF004D725F008F90CE0079AE000ABFB6
-:1081A0000093CD9876CD98B541B70041A60AB000AE
-:1081B000C7008ACC8286725F008CA605CD994BAE33
-:1081C0000043CD9909CD8A4EC6008C4D261AAE00CB
-:1081D00043CD9909CD8A34CD863CBE00A30000264C
+:1081A0000093CD9856CD989541B70041A60AB000EE
+:1081B000C7008ACC8286725F008CA605CD9973AE0B
+:1081C0000043CD9931CD8A4EC6008C4D261AAE00A3
+:1081D00043CD9931CD8A34CD863CBE00A300002624
 :1081E00005BE02A3000B25E0CE007DBF025FBF00ED
-:1081F000AE0047CD8624AE0047CD9921725C009039
-:10820000C60090A104251CAE0047CD9909A602CD59
+:1081F000AE0047CD8624AE0047CD9949725C009011
+:10820000C60090A104251CAE0047CD9931A602CD31
 :1082100087C9BE02CF00775FCF00475FCF004972AA
 :108220005F0090CE0077A3035625063564009120A9
 :108230002ACE0077A302AE2406725F0091201CCEE6
 :1082400000771CFD53BF025FBF00CD8657000002C0
 :108250005CA60ACD87C9B603C70091C60091C100CC
 :1082600014251CC600143F00B701C600915F977229
-:10827000B00000A3000B2E07C60091A15F25055595
+:10827000B00000A3000B2E07C6008BA101260555F8
 :10828000009100142000C6008DA1032504725F0038
 :108290008DC60012A101260B5500140000C6008BEC
-:1082A000CD8E4B725C0092C60092A1042427C600BA
+:1082A000CD8F15725C0092C60092A1042427C600EF
 :1082B000925F97581C003BBF00C60092905F90975A
 :1082C000905872A90035C600925F97581C002FCDB8
-:1082D000917BCC8417A603AE0031CD9743CF007FAE
-:1082E000A603AE0037CD9743CF0081A603AE003D75
-:1082F000CD9743CF0083A603AE0031CD95DCAE0011
-:1083000053CD9921A603AE0037CD95DCAE0057CDF5
-:108310009921A603AE003DCD95DCAE005BCD992141
-:10832000C6008B4D2703CC83F7AE0053CD9909AE21
+:1082D00091A3CC8417A603AE0031CD9770CF007F59
+:1082E000A603AE0037CD9770CF0081A603AE003D48
+:1082F000CD9770CF0083A603AE0031CD9609AE00B6
+:1083000053CD9949A603AE0037CD9609AE0057CD9F
+:108310009949A603AE003DCD9609AE005BCD9949C3
+:10832000C6008B4D2703CC83F7AE0053CD9931AEF9
 :1083300003E9BF065FBF04CD87B22E26AE0057CD3E
-:108340009909AE03E9BF065FBF04CD87B22E13AE15
-:10835000005BCD9909AE03E9BF065FBF04CD87B2CC
-:108360002F18AE0043CD9909AE005FCD9921AE0024
-:1083700043CD9909AE0063CD9921C60013A1012711
+:108340009931AE03E9BF065FBF04CD87B22E13AEED
+:10835000005BCD9931AE03E9BF065FBF04CD87B2A4
+:108360002F18AE0043CD9931AE005FCD9949AE00D4
+:1083700043CD9931AE0063CD9949C60013A10127C1
 :1083800007C60013A102263B90AE005FAE0043CDAE
-:10839000990993CD863FBE00A300002605BE02A327
-:1083A00075312537A607CD841AAE0043CD9909AEA5
-:1083B000005FCD9921AE0043CD9909AE0063CD9900
-:1083C000212018AE0043CD9909AE005FCD9921AEB2
-:1083D0000043CD9909AE0063CD9921CE008372B0E0
+:10839000993193CD863FBE00A300002605BE02A3FF
+:1083A00075312537A607CD841AAE0043CD9931AE7D
+:1083B000005FCD9949AE0043CD9931AE0063CD99B0
+:1083C000492018AE0043CD9931AE005FCD9949AE3A
+:1083D0000043CD9931AE0063CD9949CE008372B090
 :1083E0000085A3FFC42E08350100895FCF0073CE3E
-:1083F0000083CF0085201CAE0043CD9909AE005FFD
-:10840000CD9921AE0043CD9909AE0063CD9921727B
+:1083F0000083CF0085201CAE0043CD9931AE005FD5
+:10840000CD9949AE0043CD9931AE0063CD99497203
 :108410005F0089725F0092CC89EACD8948B7097202
-:108420005F00125FCD9DD83F08B608A106242AA69A
+:108420005F00125FCD9E053F08B608A106242AA66C
 :10843000025F01B6080262A100270C35FA00013F75
-:10844000004FCD950D20083F013F004FCD950DAE5B
-:108450000190CD9C213C0820D03F08B6094444A49B
+:10844000004FCD953A20083F013F004FCD953AAE01
+:108450000190CD9C4E3C0820D03F08B6094444A46E
 :1084600001A1002603CC84FD354F0000A620CD9C41
-:108470000135400000A622CD9C01A640B708CE00E1
+:108470002E35400000A622CD9C2EA640B708CE0087
 :108480007FA300642E0ECE007FA3FF9D2F06B608AB
 :10849000AA03B708CE0081A300642E0ECE0081A3EC
 :1084A000FF9D2F06B608AA0CB708CE0083A3006470
 :1084B0002E0ECE0083A3FF9D2F06B608AA30B70864
 :1084C000B608A43FA1002619B608AA7FB708450838
-:1084D00000A630CD9C0135380000A632CD9C01208D
-:1084E00011450800A630CD9C0135080000A632CD0C
-:1084F0009C0135050000A633CD9C0120073F00A656
-:1085000020CD9C019BCD9049CD9699CD9CB0AE508D
-:1085100000CD9D0935D00000A608AE5000CD92A533
-:10852000AE5005CD9D0935D00000A610AE5005CD4A
-:1085300092A535D00000A620AE5005CD92A5AE5034
-:108540000ACD9D0935D00000A620AE500ACD92A5D7
-:1085500035C00000A640AE500ACD92A5AE500FCD5A
-:108560009D0935D00000A608AE500FCD92A53F0062
-:10857000A620AE500FCD92A53F00A640AE500FCD25
-:1085800092A53F00A610AE500ACD92A5CD99B83560
-:10859000600000A610AE500FCD92A535020000A6D7
-:1085A00003CD93C035200000A610AE500ACD92A591
+:1084D00000A630CD9C2E35380000A632CD9C2E2033
+:1084E00011450800A630CD9C2E35080000A632CDDF
+:1084F0009C2E35050000A633CD9C2E20073F00A6FC
+:1085000020CD9C2E9BCD9071CD96C6CD9CDDAE50DE
+:1085100000CD9D3635D00000A608AE5000CD92CDDE
+:10852000AE5005CD9D3635D00000A610AE5005CD1D
+:1085300092CD35D00000A620AE5005CD92CDAE50E4
+:108540000ACD9D3635D00000A620AE500ACD92CD82
+:1085500035C00000A640AE500ACD92CDAE500FCD32
+:108560009D3635D00000A608AE500FCD92CD3F000D
+:10857000A620AE500FCD92CD3F00A640AE500FCDFD
+:1085800092CD3F00A610AE500ACD92CDCD99E035E8
+:10859000600000A610AE500FCD92CD35020000A6AF
+:1085A00003CD93E835200000A610AE500ACD92CD41
 :1085B000B6094444A401A100271735600000A68035
-:1085C000AE500ACD92A535030000A602CD93C0207F
-:1085D0000935010000A602CD93C09A8ECD87E5CD66
-:1085E00096F2350100125FCF00675FCF00695FCF61
+:1085C000AE500ACD92CD35030000A602CD93E8202F
+:1085D0000935010000A602CD93E89A8ECD87E5CD3E
+:1085E000971F350100125FCF00675FCF00695FCF33
 :1085F000006B5FCF006D5FCF00735FCF006F5FCF09
 :1086000000715FCF0075CC89F5AE000020006C03CF
-:1086100026096C0226056C0126017C81CD9CD620A2
+:1086100026096C0226056C0126017C81CD9D032074
 :1086200003AE0004B603EB03B703B602E902B702D8
 :10863000B601E901B701B600F9B70081AE0004B692
 :1086400003E003B703B602E202B702B601E201B7E4
-:1086500001B600F2B70081CD9CD689FEBF0485EE3D
+:1086500001B600F2B70081CD9D0389FEBF0485EE0F
 :1086600002BF06B600BE06429FB700B601BE054275
 :108670009FBB00B700B602BE04429FBB00B700B666
 :1086800003BE03429FBB00B700B601BE06423F01D6
@@ -108,7 +108,7 @@
 :1086B000423F0272BB0001BF0124023C00B603BE70
 :1086C000054272BB0001BF0124023C00B603BE0696
 :1086D000423F0372BB0002BF022405BE005CBF0024
-:1086E00081CD9CC9BE00261E90BE04260CBE029001
+:1086E00081CD9CF6BE00261E90BE04260CBE0290D4
 :1086F000BE0665BF0290BF0681BF04450206450362
 :1087000007BF00BF0281A6203D00260DBE01BF00AD
 :108710004503023F033A03A0085F905F992017903A
@@ -124,29 +124,29 @@
 :1087B0000681BE00B3042610BE02B3068A84A47BE1
 :1087C000A5012702AA04888681AE00004D270A74FD
 :1087D0006601660266034A26F681BF025F3D022AF1
-:1087E0000153BF00819BCD9982A601CD9D3F4FCD06
-:1087F00099E9A680CD99E9350100004FCD963E3527
-:10880000010000A607CD963E35010000A605CD96D5
-:108810003E35010000A604CD963E35010000A613AA
-:10882000CD963EAE5000CD9D09AE5005CD9D09AE12
-:10883000500ACD9D0935600000A608AE500ACD92C1
-:10884000A535020000A602CD93C035600000A680C9
-:10885000AE500ACD92A535020000A602CD93C0AE5F
-:10886000500FCD9D0935400000A610AE500FCD929F
-:10887000A5CD90493F0090AE03E74FAE000FCD9BD2
-:10888000CB352A00053F043F033F025F3F0135110E
-:108890000000A660CD9576A601CD9D5B3501000058
-:1088A0004FCD982CA601CD9AADA601CD9D4DCD966C
-:1088B00099AE03E7A604CD9D2F352200015F351147
-:1088C0000000A660CD9A1AA601CD9D853522000133
-:1088D0005F35110000A660CD9A4BA601CD9D933562
-:1088E0002200015F35110000A660CD9A7CA601CD63
-:1088F0009DA1A601CD9D77A601CD9D69CD9CB035EA
-:10890000F90000A606CD9DE5A601CD9DBDA601CD31
-:108910009E1635010000A601CD9C7DA601CD9DAF20
-:108920003F00A620AE500FCD92A53F00A640AE500E
-:108930000FCD92A53F00A610AE500ACD92A5CD99BD
-:10894000B89A8188A600200A88A608200588A60C67
+:1087E0000153BF00819BCD99AAA601CD9D6C4FCDB1
+:1087F0009A11A680CD9A11350100004FCD966B35A8
+:10880000010000A607CD966B35010000A605CD96A8
+:108810006B35010000A604CD966B35010000A61350
+:10882000CD966BAE5000CD9D36AE5005CD9D36AE8B
+:10883000500ACD9D3635600000A608AE500ACD9294
+:10884000CD35020000A602CD93E835600000A68079
+:10885000AE500ACD92CD35020000A602CD93E8AE0F
+:10886000500FCD9D3635400000A610AE500FCD9272
+:10887000CDCD90713F0090AE03E74FAE000FCD9B82
+:10888000F8352A00053F043F033F025F3F013511E1
+:108890000000A660CD95A3A601CD9D8835010000FE
+:1088A0004FCD980CA601CD9B04A601CD9D7ACD9607
+:1088B000C6AE03E7A604CD9D5C352200015F3511ED
+:1088C0000000A660CD9A42A601CD9DB235220001DE
+:1088D0005F35110000A660CD9A73A601CD9DC0350D
+:1088E0002200015F35110000A660CD9AA4A601CD3B
+:1088F0009DCEA601CD9DA4A601CD9D96CD9CDD3536
+:10890000F90000A606CD9E12A601CD9DEAA601CDD6
+:108910009E4F35010000A601CD9CAAA601CD9DDC8D
+:108920003F00A620AE500FCD92CD3F00A640AE50E6
+:108930000FCD92CD3F00A610AE500ACD92CDCD996D
+:10894000E09A8188A600200A88A608200588A60C3F
 :108950002000887B02887B02891E061F045F97FE29
 :108960001F06858481891E05BF00200E891E05BF54
 :10897000082007891E05BF0C20001E031F05855B0C
@@ -164,327 +164,331 @@
 :108A300045030781450804450905450A06450B0716
 :108A400081450C04450D05450E06450F078145007F
 :108A50000845010945020A45030B8145000C450103
-:108A60000D45020E45030F81CD8B7EC60030A1025D
+:108A60000D45020E45030F81CD8B75C60030A10266
 :108A7000260A35010088725F00302020C60030A130
 :108A800004260A35020088725F0030200FC60030CD
 :108A9000A105260835030088725F0030C600884DA6
-:108AA0002603CC8B5CC60088A1012649C60013A111
+:108AA0002603CC8B53C60088A1012645C60013A11E
 :108AB00001260635020013201EC60013A102260659
 :108AC000350300132011C60013A103260635040048
-:108AD00013200435010013AE0043CD9909AE005FA9
-:108AE000CD9921AE0043CD9909AE0063CD99217295
-:108AF0005F00882067C60088A102264CCE0010A324
-:108B000000322608AE0064CF0010201ECE0010A355
-:108B100000642608AE00FACF0010200ECE0010A38D
-:108B200000FA2606AE0032CF0010AE0043CD990900
-:108B3000AE005FCD9921AE0043CD9909AE0063CD63
-:108B40009921725F00882014C60088A103260DA613
-:108B500003CD841A35010013725F0088C60012A18C
-:108B600001261755008B0000C6008A905F9097AED3
-:108B70000089C60013CD8D7D2003CD9E4B81A610AC
-:108B8000AE500FCD9E3EC7002AC600294D27154A7C
-:108B900027234A273F4A2603CC8C1F4A2603CC8C26
-:108BA0005CCC8C87C6002A4D260835010029350A81
-:108BB000002FCC8C87C6002F4D2612C6002A4D26CA
-:108BC0000635020029200A725F00292004725A002B
-:108BD0002FCC8C87C6002A4D2619CE002B5CCF00E7
-:108BE0002BCE002BA303E82534350500305FCF00E2
-:108BF0002B202ACE002BA303E8250E725F00293517
-:108C00000500305FCF002B2014CE002BA3001425CD
-:108C10000C350300295FCF002B350A002F2068C6D2
-:108C2000002F4D2631CE002D5CCF002DCE002DA380
-:108C3000012C250E35020030725F00295FCF002D18
-:108C40002018C6002A4D2612350400295FCF002DBA
-:108C5000350A002F2004725A002F202BC6002F4DFA
-:108C60002621C6002A4D2609CE002B5CCF002B20E2
-:108C70001635040030725F00295FCF002B5FCF00F4
-:108C80002D2004725A002F81CD8991CD89485FBF74
-:108C90000EBF0C3F09B609A1022503CC8D763F0813
-:108CA000AE000ABF00BE08CD9876A601D1001527F8
-:108CB00003CC8D713F08AE000ABF00BE08CD987688
-:108CC0001C001A9093AE0043CD990993CD87972449
-:108CD00012AE0043CD9909CD861C9A7EC800CD8A7C
-:108CE0005B2009AE0043CD9909CD8A5B3F08AE00F9
-:108CF0000ABF00BE08CD98761C001ACD8A1ACD8610
-:108D00003FCD89823F08AE000ABF00BE08CD9876ED
-:108D10001C0016FEBF065FBF04CD89B3CD87A72513
-:108D2000503F08AE000ABF00BE08CD98761C001E5A
-:108D30007D27123F08AE000ABF00BE08CD98761C02
-:108D4000001E7A202C3F08AE000ABF00BE08CD9856
-:108D5000761C001A9093AE0043CD990993CD9921CA
-:108D60003F08AE000ABF00BE08CD98761C0018FE72
-:108D7000FD3C09CC8C95CD896CCD89D481CD898C75
-:108D8000CD894DB70CBF0890BF0A45000D92C608AB
-:108D9000A1012618BE08CD9B815FCF00675FCF0081
-:108DA000695FCF006B5FCF006DCC8E48B60DA1011F
-:108DB000261DCD9E4B5FCF00675FCF00695FCF0060
-:108DC0006B5FCF006D5FCF006F5FCF007120795F69
-:108DD000CF0073B60C4D270E4A270D4A27214A278C
-:108DE000354A274B20622060BE0ACD94A35FCF0096
-:108DF000695FCF006B5FCF006D5FCF00712049BE10
-:108E00000ACD8F0A5FCF00675FCF006B5FCF006D29
-:108E10005FCF006F2032CD9B085FCF00675FCF0030
-:108E2000695FCF006D5FCF006F5FCF00712019CDFC
-:108E30009E305FCF00675FCF00695FCF006B5FCF71
-:108E4000006F5FCF00712000CC89EECD898CB7090F
-:108E500045000A3F083F0BB609A1012617B60AA133
-:108E60006425115FCF00753F0135FA00004FCD95A5
-:108E70000DCC8F07B609A101260AA60AB708A614C9
-:108E8000B70B2018B60AA10B240AA602B708A6043D
-:108E9000B70B2008A602B708A632B70BCE00755C48
-:108EA000CF00755FB60897C300752544B60AA10BBD
-:108EB000240B3F013F00A6FACD950D204AB60AA12A
-:108EC00029240D3F0135A00000A6FACD950D2037CD
-:108ED000B60AA151240E35FA000135FA00004FCD33
-:108EE000950D20233F0135FA00004FCD950D201739
-:108EF0005FB60B97C30075250A3F013F004FCD9524
-:108F00000D20045FCF0075CC89EACD89483B000A6B
-:108F1000BF083F0ABE08A3000524043F0A200BBE79
-:108F200008A300082504A601B70AB60AA101260E67
-:108F3000CE0071A3000225065FCD9DD82068CE002B
-:108F4000695CCF0069CE0069A303E92421CE00103B
-:108F5000BF065FBF04CE0069BF025FBF00CD86635E
-:108F6000CD86E1000003E8BE02CD9DD82038CE00BA
-:108F700069A307D12425AE07D072B00069BF025F94
-:108F8000BF00CE0010BF065FBF04CD8663CD86E173
-:108F9000000007D0BE02CD9DD8200B5FCF0069CE68
-:108FA00000715CCF007132000ACC89F5CD898CCD7F
-:108FB000894D5202B70A45000B0F020F013F093FCE
-:108FC000083F0D3F0C961C0002B60ACD9ADC961C99
-:108FD0000001B60BCD9ADC5FBF087B013F00B701F3
-:108FE000BE0801BA0101BA0001BF08BE084F02BFA6
-:108FF00008BE0802A4FF02A40002BF087B023F00D3
-:10900000B701BE0801BA0101BA0001BF08BE0802DB
-:10901000A48002A400025D2714BE08CD98BBBF083F
-:10902000BE0802AAF002AA0002BF082012BE08CDA4
-:1090300098BBBF08BE0802A40F02A4FF02BF08CD60
-:1090400089F9BE0C5B02CC89EE725F5250725F529E
-:1090500051725F5252725F5253725F5254725F523A
-:1090600056725F525C725F525D3501525835015243
-:10907000593501525A3501525B725F525C725F5230
-:109080005D725F5258725F5259725F525A725F52EC
-:109090005B725F525E725F525F725F5260725F52CC
-:1090A0006135FF526235FF5263725F5265725F52E3
-:1090B00066725F5267725F5268725F5269725F5286
-:1090C0006A725F526B725F526C725F526F350152FF
-:1090D00057725F526E725F526D725F5264725F526E
-:1090E0005581B703450002905FB6039097AE000A22
-:1090F000BF0093CD98764FD100152604A601207AA3
-:109100005FB6039790AE000A90BF00CD9876A60197
-:10911000D100152604A60220615FB6039790AE0029
-:109120000A90BF00CD9876A602D10015264A5FB6F8
-:10913000039790AE000A90BF00CD98761C001A905D
-:1091400093AE0043CD991593CD992F5FB6039790B9
-:10915000AE000A90BF00CD9876A601D700155FB685
-:10916000039790AE000A90BF00CD9876B6021C001F
-:109170001EF71D001E4F2002A60181CD898CCD89CE
-:109180004D3B000E899089CD89433F0D3F0C3F0B2D
-:109190003F0A3F093F083510000EA608B70E3D0EE6
-:1091A000273135290000A628CD8FAC72BB000CBF3B
-:1091B0000C352B0000A62ACD8FAC72BB000ABF0A6B
-:1091C000352D0000A62CCD8FAC72BB0008BF083A2D
-:1091D0000E20CB90AE0008BE0CCD989490931E0547
-:1091E000BF0091CF0090AE0008BE0ACD9894909336
-:1091F0001E03BF0091CF0090AE0008BE08CD98942A
-:1092000090931E01BF0091CF005B0632000ECC8907
-:10921000EECD89483B000AB7083F09B609A10824EA
-:1092200039A610AE5005CD9E28CD9DCBB608A480A2
-:10923000A100270AA620AE5005CD9E372008A62003
-:10924000AE5005CD9E28B60848B708A610AE50050A
-:10925000CD9E37CD9DCB3C0920C1A610AE5005CD8B
-:109260009E28CD9DCB3F00A620AE5005CD92A5A651
-:1092700010AE5005CD9E379D9DA620AE5005CD9ECB
-:109280003EB70ACD9DCBA610AE5005CD9E2835D059
-:109290000000A620AE5005CD92A5CD9DCBB60A32DA
-:1092A000000ACC89F59093B701931C0004B60143E2
-:1092B000F4931C0004F7B600A480A1002723B60095
-:1092C000A410A100270890F6BA0190F72007B60174
-:1092D0004390F490F7935C5CF6BA01935C5CF720E2
-:1092E0000B935C5CB60143F4935C5CF7B600A4405E
-:1092F000A100270E931C0003F6BA01931C0003F78C
-:10930000200D931C0003B60143F4931C0003F7B631
-:1093100000A420A100270E931C0004F6BA01931CA0
-:109320000004F7200D931C0004B60143F4931C00C5
-:1093300004F781CD898CB707BF0490BF023F06AE0A
-:10934000000ABF00BE06CD9876A601D100152604FE
-:10935000A60220693F06AE000ABF00BE06CD987681
-:1093600090BE041C0018FF1D00183F06AE000ABF87
-:1093700000BE06CD987690BE021C0016FF1D00169A
-:109380003F06AE000ABF00BE06CD98761C001A90BC
-:10939000935FBF0ABF0893CD993D3F06AE000ABF59
-:1093A00000BE06CD98761C001E7F3F06AE000ABFA9
-:1093B00000BE06CD9876A602D70015A604CC89EA91
-:1093C000B701B6014D270E4A271D4A272E4A2740CE
-:1093D0004A27522062C650A0A4FCC750A0C650A085
-:1093E000BA00C750A02050C650A0A4F3C750A0B6E2
-:1093F000004848CA50A0C750A0203CC650A0A4CFE7
-:10940000C750A0B6004EA4F0CA50A0C750A0202755
-:10941000C650A0A43FC750A0B600CD9E45CA50A0DC
-:10942000C750A02012C650A1A4FCC750A1C650A18D
-:10943000BA00C750A1200081CD89483F09A620AEBF
-:109440005005CD9E373F00A620AE5005CD92A53FDA
-:1094500008B608A108243BB60948B709A610AE50C3
-:1094600005CD9E379D9DA620AE5005CD9E3EA10008
-:109470002708B609AA01B7092006B609A4FEB7094C
-:10948000CD9DCBA610AE5005CD9E28CD9DCB3C08E2
-:1094900020BF35D00000A620AE5005CD92A5B6095C
-:1094A000CC89F5CD89483B000ABF083F0ABE08A316
-:1094B000000524043F0A200BBE08A300082504A6CB
-:1094C00001B70AB60AA101260ECE006FA30003253C
-:1094D000065FCD9DD82030CE00675CCF0067CE0000
-:1094E00067A300C92408CE0010CD9DD82019CE0056
-:1094F00067A3019124065FCD9DD8200B5FCF006745
-:10950000CE006F5CCF006F32000ACC89F53B0009BA
-:109510003B000B3B000DB70D45000B4501095FB645
-:109520000D97BF025FBF00CD8657000001F4A6086B
-:10953000CD87C9BE02CD9DFB5FB60B97BF025FBF53
-:1095400000CD8657000001F4A608CD87C9BE02CD24
-:109550009E045FB60997BF025FBF00CD865700002B
-:1095600001F4A608CD87C9BE02CD9E0D32000D3292
-:10957000000B32000981CD8948B706C6525CA4F0C1
-:10958000C7525CB603A40888B602A402B70884BA1E
-:109590000888B601A40488B600A401B70984BA09F2
-:1095A000B70884BA08CA525CC7525CC65258A48F26
-:1095B000BA06C75258C6526FA4FCC7526FB605A46C
-:1095C0000288B604A401B70884BA08CA526FC75209
-:1095D0006F9EC752659FC75266CC89F5CD898CCDE9
-:1095E00089915202BF0EB70D3F0C5FBF0ABF08B68C
-:1095F0000DBE0ECD97431F013F0CB60CB10D2436A6
-:109600005FB60C975872BB000EFE72F001CD87DA80
-:10961000CD8A275FB60C975872BB000EFE72F00120
-:10962000CD87DACD8663CD8A27CD8A0DCD8621CD33
-:109630008A4E3C0C20C4CD8A0D5B02CC89E7B70171
-:10964000B601A410A10026293D002712B601A40FDF
-:109650005F5CCD98AD9FCA50C7C750C7203AB601CE
-:10966000A40F5F5CCD98AD9F43C450C7C750C720BF
-:10967000273D002712B601A40F5F5CCD98AD9FCAAD
-:1096800050CAC750CA2011B601A40F5F5CCD98AD77
-:109690009F43C450CAC750CA81725F5300725F5360
-:1096A00003725F5305725F530A725F530B725F530D
-:1096B0000A725F530B725F5307725F5308725F53F6
-:1096C00009725F530C725F530D725F530E35FF5377
-:1096D0000F35FF5310725F5311725F5312725F5355
-:1096E00013725F5314725F5315725F5316725F5398
-:1096F00004813B0008CD9C973F08B608A105243F94
-:1097000035470000A620CD9C013F00A621CD9C013D
-:109710003F00A622CD9C0135880000A623CD9C01E8
-:109720003F00A630CD9C013F00A632CD9C013F00FA
-:10973000A633CD9C01AE0064CD9C213C0820BB32F9
-:10974000000881CD898CCD8991BF0AB7095FBF061A
-:10975000BF043F083F08B608B10924205FB6089748
-:109760005872BB000AFECD87DACD8A5BCD8A00CD68
-:109770008A41CD8621CD8A273C0820DA5FB6099739
-:10978000BF0E5FBF0CCD8A00CD8A41CD8751BE028E
-:10979000CC89E7CD87E5CD96F2725F00875FCF0079
-:1097A000435FCF004590AE0001AE8A684FCD933342
-:1097B00090AE0064AE8080A601CD93333F004FCDC4
-:1097C00090E235010000A601CD90E2A603CD841AF7
-:1097D000C60087A10126F9725F0087CD8C8820F032
-:1097E000433A5C55736572735C6865726F5C44657F
-:1097F000736B746F705C5461696C6C696768745FDB
-:10980000436F64655C73746D385F70726A5C636F1C
-:1098100064655F6961725C6C69625C7372635C73DE
-:10982000746D38735F74696D312E63004D26103D81
-:109830000027067210525C203C7211525C2036A147
-:109840000126103D0027067218525C20287219521A
-:109850005C2022A10226103D0027067210525D20D6
-:10986000147211525D200E3D0027067218525D20C1
-:10987000047219525D8188895EB60142891E03B661
-:10988000004272FB014F02891E05B6014272FB01C4
-:109890005B0684815D2B06905D2B0A658150905D8F
-:1098A0002B07655081905020F9905020EE4D2704F1
-:1098B000584A26FC8154545454545454545454819A
-:1098C0008A84A4BF8886CD8982CD898735010087A7
-:1098D000AE0043CD9909BE00A39A7E2605BE02A321
-:1098E000C800260A5FCF00435FCF0045200FAE00BF
-:1098F00043CD9909CD8609AE0043CD9921A601CD6E
-:109900009E1FCD89BECD89B38089FEBF001E01EEAA
-:1099100002BF02858189FEBF041E01EE02BF0685DB
-:1099200081908990BE00FF90BE02EF0290858190E9
-:109930008990BE04FF90BE06EF02908581908990C9
-:10994000BE08FF90BE0AEF02908581B7013F00720A
-:109950005F5401B6014CC75400725F5402B6014C0B
-:109960005F5CCD98AD9FC7540772105401721A54B2
-:10997000003F00B600A16424043C0020F67210549D
-:109980000181350150C0725F50C135E150C4725F32
-:1099900050C5351850C635FF50C735FF50CA725FE5
-:1099A00050C8725F50C9720050C9FB725F50C972D3
-:1099B0005F50CC725F50CD81725F5400725F540172
-:1099C000725F5402725F5403725F5406725F5407F1
-:1099D00035FF540835035409725F540A725F540B03
-:1099E000725F540E725F540F81B700B600A480A15D
-:1099F000002614C650C6A4E7C750C6B600A418CAAD
-:109A000050C6C750C62012C650C6A4F8C750C6B626
-:109A100000A407CA50C6C750C681B704C6530AA4DB
-:109A2000FCC7530AB601A40288B600A401B7038498
-:109A3000BA03CA530AC7530AC65307A48FBA04C746
-:109A400053079EC753119FC7531281B704C6530AC9
-:109A5000A4CFC7530AB601A42088B600A410B70348
-:109A600084BA03CA530AC7530AC65308A48FBA0458
-:109A7000C753089EC753139FC7531481B704C653D7
-:109A80000BA4FCC7530BB601A40288B600A401B70F
-:109A90000384BA03CA530BC7530BC65309A48FBA26
-:109AA00004C753099EC753159FC75316813B00082F
-:109AB000B7083D082714B608A101270EAE020FBF54
-:109AC000025FBF00AE97E0CD9E663D082706721E7E
-:109AD000526D2004721F526D32000881CD898CB7FF
-:109AE0000BBF08CD9B5AA630CD9211B60BCD92116B
-:109AF000CD9B5AA631CD9211CD9438B70ACD9C405A
-:109B0000B60A92C708CC89EACE006B5CCF006BCE58
-:109B1000006BA300332408CE0010CD9DD82012CEB8
-:109B2000006BA303E924065FCD9DD820045FCF001E
-:109B30006B8189FE9093855C5C905D271C89FEBFDC
-:109B400000855C5C89FEBF02855C5C515A92D60040
-:109B500092D7025A2AF75120D981A620AE5005CDBE
-:109B60009E37A610AE5005CD9E37CD9DCBA620AE1C
-:109B70005005CD9E28CD9DCBA610AE5005CD9E287C
-:109B800081CD8948BF08CE00735CCF0073CE0073CF
-:109B9000A30BB92408AE03E8CD9DD820075FCD9D67
-:109BA000D8923F08CC89F5CD8943721F5400C65422
-:109BB000045F975858C654053F00B70172BB0000B8
-:109BC000CF007D3501008CCD896580B701909EC79F
-:109BD0005262909FC752639EC752609FC75261C630
-:109BE0005250A48FBA01C75250B600C75264819C2C
-:109BF0005F007E001500009B3200059E550010009E
-:109C000000CD8948B708450009CD9B5AA630CD92B2
-:109C100011B608CD9211B609CD9211CD9C40CC89D8
-:109C2000F5BF0090BE0090BF00BE005ABF00905D1F
-:109C3000270DAE03845D27EB9D9D9D9D5A20F681E7
-:109C4000A620AE5005CD9E28A610AE5005CD9E375D
-:109C5000CD9DCBA620AE5005CD9E37CD9DCB818925
-:109C6000FE9093855C5C905D271289FEBF00855C49
-:109C70005C515A926F005A2AFA5120E381B7013D94
-:109C800000270AC65343BA01C753432009B601430C
-:109C9000C45343C753438135D00000A610AE5005CE
-:109CA000CD92A535D00000A620AE5005CD92A5815D
-:109CB000725F5340725F5343725F5346725F534704
-:109CC00035FF5348725F5344811603931C000451BF
-:109CD0001703CD9915811E031C00041F031D0004EA
-:109CE00081AE9BEF20065C5C90FE90FD909390A36C
-:109CF0009C0126F281CD89485202BF08BE081F018F
-:109D0000965CA601CD9E7A20F39093907F935C5C45
-:109D10007F931C00037F931C00047F81AE03FF949C
-:109D2000CD9E5D5D2703CD9CE1CD9793CC9E60B722
-:109D300000B600C7530E9EC7530F9FC75310814DE7
-:109D40002706721050C02004721150C0814D2706A2
-:109D500072105250200472115250814D2706721613
-:109D60005258200472175258814D27067210530022
-:109D7000200472115300814D2706721E53002004E7
-:109D8000721F5300814D2706721653072004721765
-:109D90005307814D27067216530820047217530883
-:109DA000814D270672165309200472175309814DFD
-:109DB000270672105340200472115340814D27062C
-:109DC000721E53402004721F534081A614B7003DF9
-:109DD0000027043A0020F881CD8948BF08BE08CD8D
-:109DE0009DF2CC89F5B701B601C75347B600C753FA
-:109DF00048819EC752659FC75266819EC753119F77
-:109E0000C75312819EC753139FC75314819EC753D4
-:109E1000159FC7531681B700B60043C7534481B797
-:109E200000B60043C7534481B700B60043F4F7813E
-:109E3000CE0010CD9DD881B700F6BA00F781B700EB
-:109E40005CF6B4008148484EA4F0815FCD9DD88176
-:109E50008985CD9CF50064010164CC9E635F5C81C3
-:109E6000CC9E509D20FD20FE808080808080808060
-:0B9E7000808080808080808080808166
-:0400000500009D1C3E
+:108AD00013200435010013AE0043CD9931AE005F81
+:108AE000CD9949AE0043CD9931AE0063CD9949206F
+:108AF0005EC60088A1022647CE0010A3000126080A
+:108B0000AE0002CF0010201DCE0010A300022608E8
+:108B1000AE0003CF0010200DCE0010A300032605E9
+:108B20005F5CCF0010AE0043CD9931AE005FCD99B0
+:108B300049AE0043CD9931AE0063CD99492010C6AE
+:108B40000088A1032609A603CD841A3501001372FB
+:108B50005F0088C60012A101261755008B0000C6D1
+:108B6000008A905F9097AE0089C60013CD8E472093
+:108B700003CD9E8381A610AE500FCD9E70C7002AF4
+:108B8000C600294D27154A27234A273F4A2603CCEA
+:108B90008C164A2603CC8C53CC8C7EC6002A4D26DC
+:108BA0000835010029350A002FCC8C7EC6002F4DD8
+:108BB0002612C6002A4D260635020029200A725FB9
+:108BC00000292004725A002FCC8C7EC6002A4D2624
+:108BD00019CE002B5CCF002BCE002BA303E825344D
+:108BE000350500305FCF002B202ACE002BA303E8F1
+:108BF000250E725F0029350500305FCF002B201451
+:108C0000CE002BA30014250C350300295FCF002BC9
+:108C1000350A002F2068C6002F4D2631CE002D5C6E
+:108C2000CF002DCE002DA3012C250E350200307271
+:108C30005F00295FCF002D2018C6002A4D2612356F
+:108C40000400295FCF002D350A002F2004725A003E
+:108C50002F202BC6002F4D2621C6002A4D2609CED7
+:108C6000002B5CCF002B201635040030725F0029EA
+:108C70005FCF002B5FCF002D2004725A002F81CDD3
+:108C80008991CD89485FBF0EBF0C3F09B609A1028B
+:108C90002503CC8D6D3F08AE000ABF00BE08CD98FD
+:108CA00056A601D100152703CC8D683F08AE000AF7
+:108CB000BF00BE08CD98561C001A9093AE0043CD5D
+:108CC000993193CD87972412AE0043CD9931CD864B
+:108CD0001C9A7EC800CD8A5B2009AE0043CD993135
+:108CE000CD8A5B3F08AE000ABF00BE08CD98561C77
+:108CF000001ACD8A1ACD863FCD89823F08AE000A80
+:108D0000BF00BE08CD98561C0016FEBF065FBF040C
+:108D1000CD89B3CD87A725503F08AE000ABF00BE5E
+:108D200008CD98561C001E7D27123F08AE000ABFD2
+:108D300000BE08CD98561C001E7A202C3F08AE00BD
+:108D40000ABF00BE08CD98561C001A9093AE00438F
+:108D5000CD993193CD99493F08AE000ABF00BE08B6
+:108D6000CD98561C0018FEFD3C09CC8C8CCD896C2E
+:108D7000CD89D481CD898C3B000CBF083F0C3F0BC3
+:108D80003F0ACE0010A300012607AE0019BF0A203B
+:108D90001CCE0010A300022607AE0032BF0A200D31
+:108DA000CE0010A300032605AE0064BF0ABE08A3D0
+:108DB000000424043F0C200BBE08A300092504A6D0
+:108DC00001B70CB60CA101260ECE0071A30002253E
+:108DD000065FCD9E05206ACE00695CCF0069CE009B
+:108DE00069A303E92422CD8A3A5FBF04CE0069BF9C
+:108DF000025FBF00CD8663CD86E1000003E8BE02BE
+:108E00001C000FCD9E052039CE0069A307D1242672
+:108E1000AE07D072B00069BF025FBF00CD8A3A5F73
+:108E2000BF04CD8663CD86E1000007D0BE021C00E2
+:108E30000FCD9E05200B5FCF0069CE00715CCF0087
+:108E40007132000CCC89EACD898CCD894DB70CBF2D
+:108E50000890BF0A45000D92C608A1012618BE0859
+:108E6000CD9BAE5FCF00675FCF00695FCF006B5FC8
+:108E7000CF006DCC8F12B60DA101261DCD9E835F54
+:108E8000CF00675FCF00695FCF006B5FCF006D5F82
+:108E9000CF006F5FCF007120795FCF0073B60C4DAC
+:108EA000270E4A270D4A27214A27354A274B206299
+:108EB0002060BE0ACD94605FCF00695FCF006B5F1A
+:108EC000CF006D5FCF00712049BE0ACD8D745FCF9A
+:108ED00000675FCF006B5FCF006D5FCF006F203208
+:108EE000CD9AD55FCF00675FCF00695FCF006D5F20
+:108EF000CF006F5FCF00712019CD9E1F5FCF00673D
+:108F00005FCF00695FCF006B5FCF006F5FCF0071F5
+:108F10002000CC89EECD898CB70945000A3F083F77
+:108F20000BB609A1012617B60AA16425115FCF006F
+:108F3000753F0135FA00004FCD953ACC8FD1B60977
+:108F4000A101260AA60AB708A614B70B2018B60A6C
+:108F5000A10B240AA602B708A604B70B2008A60294
+:108F6000B708A632B70BCE00755CCF00755FB608A8
+:108F700097C300752544B60AA10B240B3F013F009F
+:108F8000A6FACD953A204AB60AA129240D3F01350B
+:108F9000A00000A6FACD953A2037B60AA151240EBA
+:108FA00035FA000135FA00004FCD953A20233F01F4
+:108FB00035FA00004FCD953A20175FB60B97C300E6
+:108FC00075250A3F013F004FCD953A20045FCF0041
+:108FD00075CC89EACD898CCD894D5202B70A4500FE
+:108FE0000B0F020F013F093F083F0D3F0C961C007D
+:108FF00002B60ACD9B33961C0001B60BCD9B335FA6
+:10900000BF087B013F00B701BE0801BA0101BA00E9
+:1090100001BF08BE084F02BF08BE0802A4FF02A499
+:109020000002BF087B023F00B701BE0801BA010180
+:10903000BA0001BF08BE0802A48002A400025D2796
+:1090400014BE08CD989BBF08BE0802AAF002AA0071
+:1090500002BF082012BE08CD989BBF08BE0802A41C
+:109060000F02A4FF02BF08CD89F9BE0C5B02CC89B8
+:10907000EE725F5250725F5251725F5252725F5283
+:1090800053725F5254725F5256725F525C725F52FB
+:109090005D35015258350152593501525A35015248
+:1090A0005B725F525C725F525D725F5258725F52C8
+:1090B00059725F525A725F525B725F525E725F52B8
+:1090C0005F725F5260725F526135FF526235FF52CC
+:1090D00063725F5265725F5266725F5267725F526F
+:1090E00068725F5269725F526A725F526B725F524E
+:1090F0006C725F526F35015257725F526E725F52DF
+:109100006D725F5264725F525581B70345000290E1
+:109110005FB6039097AE000ABF0093CD98564FD12B
+:1091200000152604A601207A5FB6039790AE000AC8
+:1091300090BF00CD9856A601D100152604A60220A6
+:10914000615FB6039790AE000A90BF00CD9856A617
+:1091500002D10015264A5FB6039790AE000A90BF71
+:1091600000CD98561C001A9093AE0043CD993D93C4
+:10917000CD99575FB6039790AE000A90BF00CD9887
+:1091800056A601D700155FB6039790AE000A90BFB0
+:1091900000CD9856B6021C001EF71D001E4F20027F
+:1091A000A60181CD898CCD894D3B000E899089CD5A
+:1091B00089433F0D3F0C3F0B3F0A3F093F083510E5
+:1091C000000EA608B70E3D0E273135290000A6284F
+:1091D000CD8FD472BB000CBF0C352B0000A62ACD5E
+:1091E0008FD472BB000ABF0A352D0000A62CCD8F8C
+:1091F000D472BB0008BF083A0E20CB90AE0008BE68
+:109200000CCD987490931E05BF0091CF0090AE00D6
+:1092100008BE0ACD987490931E03BF0091CF0090B2
+:10922000AE0008BE08CD987490931E01BF0091CF88
+:10923000005B0632000ECC89EECD89483B000AB7B0
+:10924000083F09B609A1082439A610AE5005CD9EE5
+:1092500061CD9DF8B608A480A100270AA620AE50D3
+:1092600005CD9E692008A620AE5005CD9E61B608AA
+:1092700048B708A610AE5005CD9E69CD9DF83C09B3
+:1092800020C1A610AE5005CD9E61CD9DF83F00A631
+:1092900020AE5005CD92CDA610AE5005CD9E699D55
+:1092A0009DA620AE5005CD9E70B70ACD9DF8A610A4
+:1092B000AE5005CD9E6135D00000A620AE5005CD44
+:1092C00092CDCD9DF8B60A32000ACC89F59093B7BD
+:1092D00001931C0004B60143F4931C0004F7B6008C
+:1092E000A480A1002723B600A410A100270890F6AF
+:1092F000BA0190F72007B6014390F490F7935C5CB5
+:10930000F6BA01935C5CF7200B935C5CB60143F406
+:10931000935C5CF7B600A440A100270E931C0003E9
+:10932000F6BA01931C0003F7200D931C0003B6014D
+:1093300043F4931C0003F7B600A420A100270E936A
+:109340001C0004F6BA01931C0004F7200D931C00C6
+:1093500004B60143F4931C0004F781CD898CB70750
+:10936000BF0490BF023F06AE000ABF00BE06CD9804
+:1093700056A601D100152604A60220693F06AE00BC
+:109380000ABF00BE06CD985690BE041C0018FF1DF3
+:1093900000183F06AE000ABF00BE06CD985690BE2C
+:1093A000021C0016FF1D00163F06AE000ABF00BEDD
+:1093B00006CD98561C001A90935FBF0ABF0893CD44
+:1093C00099653F06AE000ABF00BE06CD98561C0048
+:1093D0001E7F3F06AE000ABF00BE06CD9856A6020D
+:1093E000D70015A604CC89EAB701B6014D270E4A6D
+:1093F000271D4A272E4A27404A27522062C650A0DE
+:10940000A4FCC750A0C650A0BA00C750A02050C6A8
+:1094100050A0A4F3C750A0B6004848CA50A0C750F7
+:10942000A0203CC650A0A4CFC750A0B6004EA4F0C8
+:10943000CA50A0C750A02027C650A0A43FC750A024
+:10944000B600CD9E7DCA50A0C750A02012C650A124
+:10945000A4FCC750A1C650A1BA00C750A1200081EA
+:10946000CD89483B000ABF083F0ABE08A300042478
+:10947000043F0A200BBE08A300092504A601B70A71
+:10948000B60AA101260ECE006FA3000325065FCD0C
+:109490009E052035CE00675CCF0067CE0067A30035
+:1094A000C9240DCE0010581C9E75FECD9E052019B6
+:1094B000CE0067A3019124065FCD9E05200B5FCFF0
+:1094C0000067CE006F5CCF006F32000ACC89F5CD0B
+:1094D00089483F09A620AE5005CD9E693F00A620D1
+:1094E000AE5005CD92CD3F08B608A108243BB60981
+:1094F00048B709A610AE5005CD9E699D9DA620AE29
+:109500005005CD9E70A1002708B609AA01B7092011
+:1095100006B609A4FEB709CD9DF8A610AE5005CD3C
+:109520009E61CD9DF83C0820BF35D00000A620AE3E
+:109530005005CD92CDB609CC89F53B00093B000B17
+:109540003B000DB70D45000B4501095FB60D97BFF8
+:10955000025FBF00CD8657000001F4A608CD87C981
+:10956000BE02CD9E345FB60B97BF025FBF00CD86B3
+:1095700057000001F4A608CD87C9BE02CD9E3D5F0D
+:10958000B60997BF025FBF00CD8657000001F4A661
+:1095900008CD87C9BE02CD9E4632000D32000B3287
+:1095A000000981CD8948B706C6525CA4F0C7525C59
+:1095B000B603A40888B602A402B70884BA0888B61D
+:1095C00001A40488B600A401B70984BA09B70884C5
+:1095D000BA08CA525CC7525CC65258A48FBA06C7B2
+:1095E0005258C6526FA4FCC7526FB605A40288B683
+:1095F00004A401B70884BA08CA526FC7526F9EC745
+:1096000052659FC75266CC89F5CD898CCD89915220
+:1096100002BF0EB70D3F0C5FBF0ABF08B60DBE0EEE
+:10962000CD97701F013F0CB60CB10D24365FB60C00
+:10963000975872BB000EFE72F001CD87DACD8A27F3
+:109640005FB60C975872BB000EFE72F001CD87DA40
+:10965000CD8663CD8A27CD8A0DCD8621CD8A4E3C1D
+:109660000C20C4CD8A0D5B02CC89E7B701B601A4FA
+:1096700010A10026293D002712B601A40F5F5CCD82
+:10968000988D9FCA50C7C750C7203AB601A40F5F34
+:109690005CCD988D9F43C450C7C750C720273D005D
+:1096A0002712B601A40F5F5CCD988D9FCA50CAC720
+:1096B00050CA2011B601A40F5F5CCD988D9F43C4A2
+:1096C00050CAC750CA81725F5300725F5303725F02
+:1096D0005305725F530A725F530B725F530A725FD6
+:1096E000530B725F5307725F5308725F5309725FC7
+:1096F000530C725F530D725F530E35FF530F35FFDE
+:109700005310725F5311725F5312725F5313725F83
+:109710005314725F5315725F5316725F5304813B8B
+:109720000008CD9CC43F08B608A105243F3547007A
+:1097300000A620CD9C2E3F00A621CD9C2E3F00A64A
+:1097400022CD9C2E35880000A623CD9C2E3F00A65E
+:1097500030CD9C2E3F00A632CD9C2E3F00A633CDAF
+:109760009C2EAE0064CD9C4E3C0820BB320008818C
+:10977000CD898CCD8991BF0AB7095FBF06BF043F71
+:10978000083F08B608B10924205FB608975872BB95
+:10979000000AFECD87DACD8A5BCD8A00CD8A41CD25
+:1097A0008621CD8A273C0820DA5FB60997BF0E5F75
+:1097B000BF0CCD8A00CD8A41CD8751BE02CC89E74E
+:1097C000433A5C55736572735C6865726F5C44659F
+:1097D000736B746F705C5461696C6C696768745FFB
+:1097E000436F64655C73746D385F70726A5C636F3D
+:1097F00064655F6961725C6C69625C7372635C73FF
+:10980000746D38735F74696D312E63004D26103DA1
+:109810000027067210525C203C7211525C2036A167
+:109820000126103D0027067218525C20287219523A
+:109830005C2022A10226103D0027067210525D20F6
+:10984000147211525D200E3D0027067218525D20E1
+:10985000047219525D8188895EB60142891E03B681
+:10986000004272FB014F02891E05B6014272FB01E4
+:109870005B0684815D2B06905D2B0A658150905DAF
+:109880002B07655081905020F9905020EE4D270411
+:10989000584A26FC815454545454545454545481BA
+:1098A0008A84A4BF8886CD8982CD898735010087C7
+:1098B000AE0043CD9931BE00A39A7E2605BE02A319
+:1098C000C800260A5FCF00435FCF0045200FAE00DF
+:1098D00043CD9931CD8609AE0043CD9949A601CD3E
+:1098E0009E58CD89BECD89B380CD87E5CD971F72B7
+:1098F0005F00875FCF00435FCF004590AE0001AEB1
+:109900008A684FCD935B90AE0064AE8080A601CD97
+:10991000935B3F004FCD910A35010000A601CD9128
+:109920000AC60087A10126F9725F0087CD8C7F20CF
+:10993000F089FEBF001E01EE02BF02858189FEBFD5
+:10994000041E01EE02BF068581908990BE00FF9043
+:10995000BE02EF02908581908990BE04FF90BE0602
+:10996000EF02908581908990BE08FF90BE0AEF02B9
+:10997000908581B7013F00725F5401B6014CC75416
+:1099800000725F5402B6014C5F5CCD988D9FC75446
+:109990000772105401721A54003F00B600A16424EB
+:1099A000043C0020F67210540181350150C0725FF2
+:1099B00050C135E150C4725F50C5351850C635FFEF
+:1099C00050C735FF50CA725F50C8725F50C97200ED
+:1099D00050C9FB725F50C9725F50CC725F50CD812D
+:1099E000725F5400725F5401725F5402725F5403DD
+:1099F000725F5406725F540735FF540835035409EB
+:109A0000725F540A725F540B725F540E725F540F90
+:109A100081B700B600A480A1002614C650C6A4E7F2
+:109A2000C750C6B600A418CA50C6C750C62012C632
+:109A300050C6A4F8C750C6B600A407CA50C6C7503F
+:109A4000C681B704C6530AA4FCC7530AB601A402D0
+:109A500088B600A401B70384BA03CA530AC7530ADD
+:109A6000C65307A48FBA04C753079EC753119FC795
+:109A7000531281B704C6530AA4CFC7530AB601A430
+:109A80002088B600A410B70384BA03CA530AC75388
+:109A90000AC65308A48FBA04C753089EC753139F1E
+:109AA000C7531481B704C6530BA4FCC7530BB601AC
+:109AB000A40288B600A401B70384BA03CA530BC733
+:109AC000530BC65309A48FBA04C753099EC7531535
+:109AD0009FC7531681CE006B5CCF006BCE006BA38B
+:109AE0000033240DCE0010581C9E75FECD9E05201F
+:109AF00012CE006BA303E924065FCD9E0520045F10
+:109B0000CF006B813B0008B7083D082714B608A1B9
+:109B100001270EAE020FBF025FBF00AE97C0CD9E01
+:109B20009E3D082706721E526D2004721F526D3230
+:109B3000000881CD898CB70BBF08CD9B87A630CD9F
+:109B40009239B60BCD9239CD9B87A631CD9239CDC6
+:109B500094CFB70ACD9C6DB60A92C708CC89EA8922
+:109B6000FE9093855C5C905D271C89FEBF00855C40
+:109B70005C89FEBF02855C5C515A92D60092D70286
+:109B80005A2AF75120D981A620AE5005CD9E69A64C
+:109B900010AE5005CD9E69CD9DF8A620AE5005CDE6
+:109BA0009E61CD9DF8A610AE5005CD9E6181CD89F8
+:109BB00048BF08CE00735CCF0073CE0073A30BB90F
+:109BC0002408AE03E8CD9E0520075FCD9E05923F99
+:109BD00008CC89F5CD8943721F5400C654045F97A1
+:109BE0005858C654053F00B70172BB0000CF007D36
+:109BF0003501008CCD896580B701909EC752629077
+:109C00009FC752639EC752609FC75261C65250A4FD
+:109C10008FBA01C75250B600C75264819C8C007E37
+:109C2000001500009B5F00059E8D00100000CD898F
+:109C300048B708450009CD9B87A630CD9239B608B4
+:109C4000CD9239B609CD9239CD9C6DCC89F5BF0046
+:109C500090BE0090BF00BE005ABF00905D270DAEC1
+:109C600003845D27EB9D9D9D9D5A20F681A620AE25
+:109C70005005CD9E61A610AE5005CD9E69CD9DF8D4
+:109C8000A620AE5005CD9E69CD9DF88189FE9093AA
+:109C9000855C5C905D271289FEBF00855C5C515A33
+:109CA000926F005A2AFA5120E381B7013D00270A3A
+:109CB000C65343BA01C753432009B60143C45343B3
+:109CC000C753438135D00000A610AE5005CD92CDCC
+:109CD00035D00000A620AE5005CD92CD81725F53E5
+:109CE00040725F5343725F5346725F534735FF5371
+:109CF00048725F5344811603931C0004511703CD2F
+:109D0000993D811E031C00041F031D000481AE9CAD
+:109D10001C20065C5C90FE90FD909390A39C2E26E8
+:109D2000F281CD89485202BF08BE081F01965CA689
+:109D300001CD9EB220F39093907F935C5C7F931C47
+:109D400000037F931C00047F81AE03FF94CD9E959A
+:109D50005D2703CD9D0ECD98E9CC9E98B700B60047
+:109D6000C7530E9EC7530F9FC75310814D270672CE
+:109D70001050C02004721150C0814D27067210523D
+:109D800050200472115250814D27067216525820ED
+:109D90000472175258814D27067210530020047226
+:109DA000115300814D2706721E53002004721F5369
+:109DB00000814D270672165307200472175307813E
+:109DC0004D270672165308200472175308814D2739
+:109DD0000672165309200472175309814D27067223
+:109DE000105340200472115340814D2706721E53B8
+:109DF000402004721F534081A614B7003D00270481
+:109E00003A0020F881CD8948BF08BE08CD9E2BCCF2
+:109E100089F5B701B601C75347B600C7534881CE8D
+:109E20000010581C9E75FECD9E05819EC752659FF1
+:109E3000C75266819EC753119FC75312819EC75355
+:109E4000139FC75314819EC753159FC7531681B7DD
+:109E500000B60043C7534481B700B60043C753441C
+:109E600081B700B60043F4F781B700F6BA00F78176
+:109E7000B7005CF6B4008100190032006448484E17
+:109E8000A4F0815FCD9E05818985CD9D22000201D0
+:109E90000164CC9E9B5F5C81CC9E889D20FD20FE52
+:109EA00080808080808080808080808080808080B2
+:039EB0008080812E
+:0400000500009D4911
 :00000001FF

BIN
Debug/Exe/tail_light_stm8.out


+ 267 - 265
Debug/List/tail_light_stm8.map

@@ -1,6 +1,6 @@
 ###############################################################################
 #
-# IAR ELF Linker V3.10.1.201 for STM8                     21/Oct/2024  23:06:24
+# IAR ELF Linker V3.10.1.201 for STM8                     22/Oct/2024  16:09:35
 # Copyright 2010-2017 IAR Systems AB.
 #
 #    Output file  =  
@@ -8,7 +8,7 @@
 #    Map file     =  
 #        C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\List\tail_light_stm8.map
 #    Command line =  
-#        -f C:\Users\hero\AppData\Local\Temp\EWDC5E.tmp
+#        -f C:\Users\hero\AppData\Local\Temp\EWA643.tmp
 #        (C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\Obj\delay.o
 #        C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\Obj\hw_init.o
 #        C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\Obj\i2c_analog.o
@@ -158,122 +158,123 @@ initialize by copy {
     .intvec          const    0x008000    0x80  interrupt.o [4]
                             - 0x008080    0x80
 
-"P3-P5":                                0x1dfb
+"P3-P5":                                0x1e33
   .near_func.text    ro code  0x008080   0x39a  tasks.o [1]
   .near_func.text    ro code  0x00841a   0x1ef  tasks.o [1]
   .near_func.text    ro code  0x008609   0x1dc  long.o [4]
   .near_func.text    ro code  0x0087e5   0x15e  hw_init.o [1]
   .near_func.text    ro code  0x008943   0x125  vreg_util.o [4]
-  .near_func.text    ro code  0x008a68   0x116  tasks.o [1]
-  .near_func.text    ro code  0x008b7e   0x10a  key.o [1]
-  .near_func.text    ro code  0x008c88    0xf5  system_task_handling.o [1]
-  .near_func.text    ro code  0x008d7d    0xce  tasks.o [1]
-  .near_func.text    ro code  0x008e4b    0xbf  led.o [1]
-  .near_func.text    ro code  0x008f0a    0xa2  led.o [1]
-  .near_func.text    ro code  0x008fac    0x9d  sc7a20.o [1]
-  .near_func.text    ro code  0x009049    0x99  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x0090e2    0x99  system_task_handling.o [1]
-  .near_func.text    ro code  0x00917b    0x96  sc7a20.o [1]
-  .near_func.text    ro code  0x009211    0x94  i2c_analog.o [1]
-  .near_func.text    ro code  0x0092a5    0x8e  stm8s_gpio.o [1]
-  .near_func.text    ro code  0x009333    0x8d  system_task_handling.o [1]
-  .near_func.text    ro code  0x0093c0    0x78  stm8s_exti.o [1]
-  .near_func.text    ro code  0x009438    0x6b  i2c_analog.o [1]
-  .near_func.text    ro code  0x0094a3    0x6a  led.o [1]
-  .near_func.text    ro code  0x00950d    0x69  led.o [1]
-  .near_func.text    ro code  0x009576    0x66  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x0095dc    0x62  math.o [1]
-  .near_func.text    ro code  0x00963e    0x5b  stm8s_clk.o [1]
-  .near_func.text    ro code  0x009699    0x59  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x0096f2    0x51  sc7a20.o [1]
-  .near_func.text    ro code  0x009743    0x50  math.o [1]
-  .near_func.text    ro code  0x009793    0x4d  main.o [1]
-  .near.rodata       const    0x0097e0    0x4c  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x00982c    0x4a  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x009876    0x4a  short.o [4]
-  .near_func.text    ro code  0x0098c0    0x49  stm8s_it.o [1]
-  .near_func.text    ro code  0x009909    0x42  long_util.o [4]
-  .near_func.text    ro code  0x00994b    0x37  hw_init.o [1]
-  .near_func.text    ro code  0x009982    0x36  stm8s_clk.o [1]
-  .near_func.text    ro code  0x0099b8    0x31  stm8s_adc1.o [1]
-  .near_func.text    ro code  0x0099e9    0x31  stm8s_clk.o [1]
-  .near_func.text    ro code  0x009a1a    0x31  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009a4b    0x31  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009a7c    0x31  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009aad    0x2f  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x009adc    0x2c  sc7a20.o [1]
-  .near_func.text    ro code  0x009b08    0x2a  led.o [1]
-  .near_func.text    ro code  0x009b32    0x28  init_small.o [4]
-  .near_func.text    ro code  0x009b5a    0x27  i2c_analog.o [1]
-  .near_func.text    ro code  0x009b81    0x26  led.o [1]
-  .near_func.text    ro code  0x009ba7    0x24  stm8s_it.o [1]
-  .near_func.text    ro code  0x009bcb    0x24  stm8s_tim1.o [1]
-  .iar.init_table    const    0x009bef    0x12  - Linker created -
-  .near_func.text    ro code  0x009c01    0x20  sc7a20.o [1]
-  .near_func.text    ro code  0x009c21    0x1f  delay.o [1]
-  .near_func.text    ro code  0x009c40    0x1f  i2c_analog.o [1]
-  .near_func.text    ro code  0x009c5f    0x1e  init_small.o [4]
-  .near_func.text    ro code  0x009c7d    0x1a  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009c97    0x19  i2c_analog.o [1]
-  .near_func.text    ro code  0x009cb0    0x19  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009cc9    0x18  dc_util.o [4]
-  .near_func.text    ro code  0x009ce1    0x14  init.o [4]
-  .near_func.text    ro code  0x009cf5    0x14  __dbg_xxexit.o [3]
-  .near_func.text    ro code  0x009d09    0x13  stm8s_gpio.o [1]
-  .near_func.text    ro code  0x009d1c    0x13  cstartup.o [4]
-  .near_func.text    ro code  0x009d2f    0x10  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009d3f     0xe  stm8s_clk.o [1]
-  .near_func.text    ro code  0x009d4d     0xe  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x009d5b     0xe  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x009d69     0xe  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009d77     0xe  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009d85     0xe  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009d93     0xe  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009da1     0xe  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009daf     0xe  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009dbd     0xe  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009dcb     0xd  i2c_analog.o [1]
-  .near_func.text    ro code  0x009dd8     0xd  led.o [1]
-  .near_func.text    ro code  0x009de5     0xd  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009df2     0x9  stm8s_tim1.o [1]
-  .near_func.text    ro code  0x009dfb     0x9  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009e04     0x9  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009e0d     0x9  stm8s_tim2.o [1]
-  .near_func.text    ro code  0x009e16     0x9  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009e1f     0x9  stm8s_tim4.o [1]
-  .near_func.text    ro code  0x009e28     0x8  stm8s_gpio.o [1]
-  .near_func.text    ro code  0x009e30     0x7  led.o [1]
-  .near_func.text    ro code  0x009e37     0x7  stm8s_gpio.o [1]
-  .near_func.text    ro code  0x009e3e     0x7  stm8s_gpio.o [1]
-  .near_func.text    ro code  0x009e45     0x6  char.o [4]
-  .near_func.text    ro code  0x009e4b     0x5  led.o [1]
-  .near_func.text    ro code  0x009e50     0x5  cexit.o [4]
-  Initializer bytes  const    0x009e55     0x5  <for P2-1>
-  .near_func.text    ro code  0x009e5a     0x3  interrupt.o [4]
-  .near_func.text    ro code  0x009e5d     0x3  low_level_init.o [4]
-  .near_func.text    ro code  0x009e60     0x3  exit.o [4]
-  .near_func.text    ro code  0x009e63     0x3  unhandled_exception.o [4]
-  .near_func.text    ro code  0x009e66     0x2  main.o [1]
-  .near_func.text    ro code  0x009e68     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e69     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e6a     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e6b     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e6c     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e6d     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e6e     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e6f     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e70     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e71     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e72     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e73     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e74     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e75     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e76     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e77     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e78     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e79     0x1  stm8s_it.o [1]
-  .near_func.text    ro code  0x009e7a     0x1  __dbg_break.o [3]
-                            - 0x009e7b  0x1dfb
+  .near_func.text    ro code  0x008a68   0x10d  tasks.o [1]
+  .near_func.text    ro code  0x008b75   0x10a  key.o [1]
+  .near_func.text    ro code  0x008c7f    0xf5  system_task_handling.o [1]
+  .near_func.text    ro code  0x008d74    0xd3  led.o [1]
+  .near_func.text    ro code  0x008e47    0xce  tasks.o [1]
+  .near_func.text    ro code  0x008f15    0xbf  led.o [1]
+  .near_func.text    ro code  0x008fd4    0x9d  sc7a20.o [1]
+  .near_func.text    ro code  0x009071    0x99  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x00910a    0x99  system_task_handling.o [1]
+  .near_func.text    ro code  0x0091a3    0x96  sc7a20.o [1]
+  .near_func.text    ro code  0x009239    0x94  i2c_analog.o [1]
+  .near_func.text    ro code  0x0092cd    0x8e  stm8s_gpio.o [1]
+  .near_func.text    ro code  0x00935b    0x8d  system_task_handling.o [1]
+  .near_func.text    ro code  0x0093e8    0x78  stm8s_exti.o [1]
+  .near_func.text    ro code  0x009460    0x6f  led.o [1]
+  .near_func.text    ro code  0x0094cf    0x6b  i2c_analog.o [1]
+  .near_func.text    ro code  0x00953a    0x69  led.o [1]
+  .near_func.text    ro code  0x0095a3    0x66  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x009609    0x62  math.o [1]
+  .near_func.text    ro code  0x00966b    0x5b  stm8s_clk.o [1]
+  .near_func.text    ro code  0x0096c6    0x59  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x00971f    0x51  sc7a20.o [1]
+  .near_func.text    ro code  0x009770    0x50  math.o [1]
+  .near.rodata       const    0x0097c0    0x4c  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x00980c    0x4a  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x009856    0x4a  short.o [4]
+  .near_func.text    ro code  0x0098a0    0x49  stm8s_it.o [1]
+  .near_func.text    ro code  0x0098e9    0x48  main.o [1]
+  .near_func.text    ro code  0x009931    0x42  long_util.o [4]
+  .near_func.text    ro code  0x009973    0x37  hw_init.o [1]
+  .near_func.text    ro code  0x0099aa    0x36  stm8s_clk.o [1]
+  .near_func.text    ro code  0x0099e0    0x31  stm8s_adc1.o [1]
+  .near_func.text    ro code  0x009a11    0x31  stm8s_clk.o [1]
+  .near_func.text    ro code  0x009a42    0x31  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009a73    0x31  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009aa4    0x31  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009ad5    0x2f  led.o [1]
+  .near_func.text    ro code  0x009b04    0x2f  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x009b33    0x2c  sc7a20.o [1]
+  .near_func.text    ro code  0x009b5f    0x28  init_small.o [4]
+  .near_func.text    ro code  0x009b87    0x27  i2c_analog.o [1]
+  .near_func.text    ro code  0x009bae    0x26  led.o [1]
+  .near_func.text    ro code  0x009bd4    0x24  stm8s_it.o [1]
+  .near_func.text    ro code  0x009bf8    0x24  stm8s_tim1.o [1]
+  .iar.init_table    const    0x009c1c    0x12  - Linker created -
+  .near_func.text    ro code  0x009c2e    0x20  sc7a20.o [1]
+  .near_func.text    ro code  0x009c4e    0x1f  delay.o [1]
+  .near_func.text    ro code  0x009c6d    0x1f  i2c_analog.o [1]
+  .near_func.text    ro code  0x009c8c    0x1e  init_small.o [4]
+  .near_func.text    ro code  0x009caa    0x1a  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009cc4    0x19  i2c_analog.o [1]
+  .near_func.text    ro code  0x009cdd    0x19  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009cf6    0x18  dc_util.o [4]
+  .near_func.text    ro code  0x009d0e    0x14  init.o [4]
+  .near_func.text    ro code  0x009d22    0x14  __dbg_xxexit.o [3]
+  .near_func.text    ro code  0x009d36    0x13  stm8s_gpio.o [1]
+  .near_func.text    ro code  0x009d49    0x13  cstartup.o [4]
+  .near_func.text    ro code  0x009d5c    0x10  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009d6c     0xe  stm8s_clk.o [1]
+  .near_func.text    ro code  0x009d7a     0xe  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x009d88     0xe  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x009d96     0xe  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009da4     0xe  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009db2     0xe  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009dc0     0xe  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009dce     0xe  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009ddc     0xe  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009dea     0xe  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009df8     0xd  i2c_analog.o [1]
+  .near_func.text    ro code  0x009e05     0xd  led.o [1]
+  .near_func.text    ro code  0x009e12     0xd  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009e1f     0xc  led.o [1]
+  .near_func.text    ro code  0x009e2b     0x9  stm8s_tim1.o [1]
+  .near_func.text    ro code  0x009e34     0x9  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009e3d     0x9  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009e46     0x9  stm8s_tim2.o [1]
+  .near_func.text    ro code  0x009e4f     0x9  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009e58     0x9  stm8s_tim4.o [1]
+  .near_func.text    ro code  0x009e61     0x8  stm8s_gpio.o [1]
+  .near_func.text    ro code  0x009e69     0x7  stm8s_gpio.o [1]
+  .near_func.text    ro code  0x009e70     0x7  stm8s_gpio.o [1]
+  .near.rodata       const    0x009e77     0x6  led.o [1]
+  .near_func.text    ro code  0x009e7d     0x6  char.o [4]
+  .near_func.text    ro code  0x009e83     0x5  led.o [1]
+  .near_func.text    ro code  0x009e88     0x5  cexit.o [4]
+  Initializer bytes  const    0x009e8d     0x5  <for P2-1>
+  .near_func.text    ro code  0x009e92     0x3  interrupt.o [4]
+  .near_func.text    ro code  0x009e95     0x3  low_level_init.o [4]
+  .near_func.text    ro code  0x009e98     0x3  exit.o [4]
+  .near_func.text    ro code  0x009e9b     0x3  unhandled_exception.o [4]
+  .near_func.text    ro code  0x009e9e     0x2  main.o [1]
+  .near_func.text    ro code  0x009ea0     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea1     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea2     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea3     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea4     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea5     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea6     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea7     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea8     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ea9     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eaa     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eab     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eac     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009ead     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eae     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eaf     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eb0     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eb1     0x1  stm8s_it.o [1]
+  .near_func.text    ro code  0x009eb2     0x1  __dbg_break.o [3]
+                            - 0x009eb3  0x1e33
 
 
 *******************************************************************************
@@ -288,7 +289,7 @@ Zero (__iar_zero_init2)
 
 Copy (__iar_copy_init2)
     1 source range, total size 0x5:
-          0x009e55   0x5
+          0x009e8d   0x5
     1 destination range, total size 0x5:
           0x000010   0x5
 
@@ -305,8 +306,8 @@ C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\Obj: [1]
     hw_init.o                   405
     i2c_analog.o                363
     key.o                       266                 8
-    led.o                       669        2       18
-    main.o                       79                 5
+    led.o                       733        8       18
+    main.o                       74                 5
     math.o                      178
     sc7a20.o                    464
     stm8s_adc1.o                 49
@@ -318,9 +319,9 @@ C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\Obj: [1]
     stm8s_tim2.o                349
     stm8s_tim4.o                110
     system_task_handling.o      539                20
-    tasks.o                   1 901        3       80
+    tasks.o                   1 892        3       80
     -------------------------------------------------
-    Total:                    6 490       81      131
+    Total:                    6 540       87      131
 
 command line: [2]
     -------------------------------------------------
@@ -353,7 +354,7 @@ dlstm8smn.a: [4]
 
     Linker created                        18      256
 -----------------------------------------------------
-    Grand Total:              7 576      227      403
+    Grand Total:              7 626      233      403
 
 
 *******************************************************************************
@@ -362,8 +363,8 @@ dlstm8smn.a: [4]
 
 Entry                    Address   Size  Type      Object
 -----                    -------   ----  ----      ------
-.iar.init_table$$Base   0x009bef          --   Gb  - Linker created -
-.iar.init_table$$Limit  0x009c01          --   Gb  - Linker created -
+.iar.init_table$$Base   0x009c1c          --   Gb  - Linker created -
+.iar.init_table$$Limit  0x009c2e          --   Gb  - Linker created -
 ?add32_l0_l0_0x         0x008624         Code  Gb  long.o [4]
 ?add32_l0_l0_dl         0x00861c         Code  Gb  long.o [4]
 ?add32_l0_l0_l1         0x008621         Code  Gb  long.o [4]
@@ -383,8 +384,8 @@ Entry                    Address   Size  Type      Object
 ?b7                     0x000007         Data  Gb  vregs.o [4]
 ?b8                     0x000008         Data  Gb  vregs.o [4]
 ?b9                     0x000009         Data  Gb  vregs.o [4]
-?dc32_l1                0x009cc9         Code  Gb  dc_util.o [4]
-?dc32_px                0x009cd6         Code  Gb  dc_util.o [4]
+?dc32_l1                0x009cf6         Code  Gb  dc_util.o [4]
+?dc32_px                0x009d03         Code  Gb  dc_util.o [4]
 ?e0                     0x000001         Data  Gb  vregs.o [4]
 ?e1                     0x000005         Data  Gb  vregs.o [4]
 ?e2                     0x000009         Data  Gb  vregs.o [4]
@@ -399,11 +400,11 @@ Entry                    Address   Size  Type      Object
 ?l1                     0x000004         Data  Gb  vregs.o [4]
 ?l2                     0x000008         Data  Gb  vregs.o [4]
 ?l3                     0x00000c         Data  Gb  vregs.o [4]
-?load32_0x_l0           0x009921         Code  Gb  long_util.o [4]
-?load32_0x_l1           0x00992f         Code  Gb  long_util.o [4]
-?load32_0x_l2           0x00993d         Code  Gb  long_util.o [4]
-?load32_l0_0x           0x009909         Code  Gb  long_util.o [4]
-?load32_l1_0x           0x009915         Code  Gb  long_util.o [4]
+?load32_0x_l0           0x009949         Code  Gb  long_util.o [4]
+?load32_0x_l1           0x009957         Code  Gb  long_util.o [4]
+?load32_0x_l2           0x009965         Code  Gb  long_util.o [4]
+?load32_l0_0x           0x009931         Code  Gb  long_util.o [4]
+?load32_l1_0x           0x00993d         Code  Gb  long_util.o [4]
 ?mov_e0_e1              0x008a03         Code  Gb  vreg_util.o [4]
 ?mov_e0_e2              0x008a10         Code  Gb  vreg_util.o [4]
 ?mov_e0_e3              0x008a1d         Code  Gb  vreg_util.o [4]
@@ -429,7 +430,7 @@ Entry                    Address   Size  Type      Object
 ?mov_w5_w1              0x008a54         Code  Gb  vreg_util.o [4]
 ?mov_w6_w4              0x0089f9         Code  Gb  vreg_util.o [4]
 ?mov_w7_w1              0x008a61         Code  Gb  vreg_util.o [4]
-?mul16_x_x_w0           0x009876         Code  Gb  short.o [4]
+?mul16_x_x_w0           0x009856         Code  Gb  short.o [4]
 ?mul32_l0_l0_0x         0x00865a         Code  Gb  long.o [4]
 ?mul32_l0_l0_dl         0x008657         Code  Gb  long.o [4]
 ?mul32_l0_l0_l1         0x008663         Code  Gb  long.o [4]
@@ -448,20 +449,20 @@ Entry                    Address   Size  Type      Object
 ?push_w4                0x008948         Code  Gb  vreg_util.o [4]
 ?push_w6                0x00894d         Code  Gb  vreg_util.o [4]
 ?scmp32_c_l0_l1         0x0087b2         Code  Gb  long.o [4]
-?sdiv16_x_x_y           0x009894         Code  Gb  short.o [4]
+?sdiv16_x_x_y           0x009874         Code  Gb  short.o [4]
 ?sdiv32_l0_l0_l1        0x008751         Code  Gb  long.o [4]
 ?sext32_l0_x            0x0087da         Code  Gb  long.o [4]
-?sll16_x_x_a            0x0098ad         Code  Gb  short.o [4]
-?sll8_a_a_5             0x009e46         Code  Gb  char.o [4]
-?sll8_a_a_6             0x009e45         Code  Gb  char.o [4]
+?sll16_x_x_a            0x00988d         Code  Gb  short.o [4]
+?sll8_a_a_5             0x009e7e         Code  Gb  char.o [4]
+?sll8_a_a_6             0x009e7d         Code  Gb  char.o [4]
 ?smod32_l1_l0_l1        0x008751         Code  Gb  long.o [4]
-?srl16_x_x_10           0x0098b5         Code  Gb  short.o [4]
-?srl16_x_x_4            0x0098bb         Code  Gb  short.o [4]
-?srl16_x_x_5            0x0098ba         Code  Gb  short.o [4]
-?srl16_x_x_6            0x0098b9         Code  Gb  short.o [4]
-?srl16_x_x_7            0x0098b8         Code  Gb  short.o [4]
-?srl16_x_x_8            0x0098b7         Code  Gb  short.o [4]
-?srl16_x_x_9            0x0098b6         Code  Gb  short.o [4]
+?srl16_x_x_10           0x009895         Code  Gb  short.o [4]
+?srl16_x_x_4            0x00989b         Code  Gb  short.o [4]
+?srl16_x_x_5            0x00989a         Code  Gb  short.o [4]
+?srl16_x_x_6            0x009899         Code  Gb  short.o [4]
+?srl16_x_x_7            0x009898         Code  Gb  short.o [4]
+?srl16_x_x_8            0x009897         Code  Gb  short.o [4]
+?srl16_x_x_9            0x009896         Code  Gb  short.o [4]
 ?srl32_0x_0x_a          0x0087cc         Code  Gb  long.o [4]
 ?srl32_l0_l0_a          0x0087c9         Code  Gb  long.o [4]
 ?sub32_l0_l0_0x         0x00863f         Code  Gb  long.o [4]
@@ -479,9 +480,9 @@ Entry                    Address   Size  Type      Object
 ?w5                     0x00000a         Data  Gb  vregs.o [4]
 ?w6                     0x00000c         Data  Gb  vregs.o [4]
 ?w7                     0x00000e         Data  Gb  vregs.o [4]
-ADC1_DeInit             0x0099b8   0x31  Code  Gb  stm8s_adc1.o [1]
-ADC1_IRQHandler         0x009ba7   0x24  Code  Gb  stm8s_it.o [1]
-ADC_CH_Init             0x00994b   0x37  Code  Gb  hw_init.o [1]
+ADC1_DeInit             0x0099e0   0x31  Code  Gb  stm8s_adc1.o [1]
+ADC1_IRQHandler         0x009bd4   0x24  Code  Gb  stm8s_it.o [1]
+ADC_CH_Init             0x009973   0x37  Code  Gb  hw_init.o [1]
 AD_Chg                  0x00007b    0x2  Data  Gb  tasks.o [1]
 AD_ChgFltSum            0x00004f    0x4  Data  Gb  tasks.o [1]
 AD_FinishFlag           0x00008c    0x1  Data  Gb  tasks.o [1]
@@ -490,7 +491,7 @@ AD_LightFltSum          0x00004b    0x4  Data  Gb  tasks.o [1]
 AD_Value                0x00007d    0x2  Data  Gb  tasks.o [1]
 AD_Vin                  0x000077    0x2  Data  Gb  tasks.o [1]
 AD_VinFltSum            0x000047    0x4  Data  Gb  tasks.o [1]
-AWU_IRQHandler          0x009e6a    0x1  Code  Gb  stm8s_it.o [1]
+AWU_IRQHandler          0x009ea2    0x1  Code  Gb  stm8s_it.o [1]
 AccAvg_x                0x00007f    0x2  Data  Gb  tasks.o [1]
 AccAvg_y                0x000081    0x2  Data  Gb  tasks.o [1]
 AccAvg_z                0x000083    0x2  Data  Gb  tasks.o [1]
@@ -504,54 +505,55 @@ AutoOffTimeCnt          0x000063    0x4  Data  Gb  tasks.o [1]
 Bat_Soc                 0x000014    0x1  Data  Gb  tasks.o [1]
 BreakFlag               0x000089    0x1  Data  Gb  tasks.o [1]
 BrightlessLevel         0x000010    0x2  Data  Gb  led.o [1]
-CLK_DeInit              0x009982   0x36  Code  Gb  stm8s_clk.o [1]
-CLK_HSICmd              0x009d3f    0xe  Code  Gb  stm8s_clk.o [1]
-CLK_IRQHandler          0x009e6b    0x1  Code  Gb  stm8s_it.o [1]
+BrightlessLevelPulse    0x009e77    0x6  Data  Gb  led.o [1]
+CLK_DeInit              0x0099aa   0x36  Code  Gb  stm8s_clk.o [1]
+CLK_HSICmd              0x009d6c    0xe  Code  Gb  stm8s_clk.o [1]
+CLK_IRQHandler          0x009ea3    0x1  Code  Gb  stm8s_it.o [1]
 CLK_PeripheralClockConfig
-                        0x00963e   0x5b  Code  Gb  stm8s_clk.o [1]
-CLK_SYSCLKConfig        0x0099e9   0x31  Code  Gb  stm8s_clk.o [1]
+                        0x00966b   0x5b  Code  Gb  stm8s_clk.o [1]
+CLK_SYSCLKConfig        0x009a11   0x31  Code  Gb  stm8s_clk.o [1]
 CSTACK$$Base            0x000300          --   Gb  - Linker created -
 CSTACK$$Limit           0x000400          --   Gb  - Linker created -
 Chg_Flag                0x00008b    0x1  Data  Gb  tasks.o [1]
-Delay_5us               0x009dcb    0xd  Code  Gb  i2c_analog.o [1]
-Delay_ms                0x009c21   0x1f  Code  Gb  delay.o [1]
-EEPROM_EEC_IRQHandler   0x009e79    0x1  Code  Gb  stm8s_it.o [1]
-EXTI_PORTA_IRQHandler   0x009e6c    0x1  Code  Gb  stm8s_it.o [1]
-EXTI_PORTB_IRQHandler   0x009e6d    0x1  Code  Gb  stm8s_it.o [1]
-EXTI_PORTC_IRQHandler   0x009e6e    0x1  Code  Gb  stm8s_it.o [1]
-EXTI_PORTD_IRQHandler   0x009e6f    0x1  Code  Gb  stm8s_it.o [1]
-EXTI_PORTE_IRQHandler   0x009e70    0x1  Code  Gb  stm8s_it.o [1]
+Delay_5us               0x009df8    0xd  Code  Gb  i2c_analog.o [1]
+Delay_ms                0x009c4e   0x1f  Code  Gb  delay.o [1]
+EEPROM_EEC_IRQHandler   0x009eb1    0x1  Code  Gb  stm8s_it.o [1]
+EXTI_PORTA_IRQHandler   0x009ea4    0x1  Code  Gb  stm8s_it.o [1]
+EXTI_PORTB_IRQHandler   0x009ea5    0x1  Code  Gb  stm8s_it.o [1]
+EXTI_PORTC_IRQHandler   0x009ea6    0x1  Code  Gb  stm8s_it.o [1]
+EXTI_PORTD_IRQHandler   0x009ea7    0x1  Code  Gb  stm8s_it.o [1]
+EXTI_PORTE_IRQHandler   0x009ea8    0x1  Code  Gb  stm8s_it.o [1]
 EXTI_SetExtIntSensitivity
-                        0x0093c0   0x78  Code  Gb  stm8s_exti.o [1]
+                        0x0093e8   0x78  Code  Gb  stm8s_exti.o [1]
 Flag_1MS                0x000087    0x1  Data  Gb  main.o [1]
-GPIO_DeInit             0x009d09   0x13  Code  Gb  stm8s_gpio.o [1]
-GPIO_Init               0x0092a5   0x8e  Code  Gb  stm8s_gpio.o [1]
-GPIO_ReadInputPin       0x009e3e    0x7  Code  Gb  stm8s_gpio.o [1]
-GPIO_WriteHigh          0x009e37    0x7  Code  Gb  stm8s_gpio.o [1]
-GPIO_WriteLow           0x009e28    0x8  Code  Gb  stm8s_gpio.o [1]
+GPIO_DeInit             0x009d36   0x13  Code  Gb  stm8s_gpio.o [1]
+GPIO_Init               0x0092cd   0x8e  Code  Gb  stm8s_gpio.o [1]
+GPIO_ReadInputPin       0x009e70    0x7  Code  Gb  stm8s_gpio.o [1]
+GPIO_WriteHigh          0x009e69    0x7  Code  Gb  stm8s_gpio.o [1]
+GPIO_WriteLow           0x009e61    0x8  Code  Gb  stm8s_gpio.o [1]
 Global_Timing_Counter   0x000043    0x4  Data  Gb  main.o [1]
 HW_Init                 0x0087e5  0x15e  Code  Gb  hw_init.o [1]
-I2CC_Init               0x009c97   0x19  Code  Gb  i2c_analog.o [1]
-I2C_IRQHandler          0x009e78    0x1  Code  Gb  stm8s_it.o [1]
-I2C_RecvByte            0x009438   0x6b  Code  Gb  i2c_analog.o [1]
-I2C_SendByte            0x009211   0x94  Code  Gb  i2c_analog.o [1]
-I2C_Start               0x009b5a   0x27  Code  Gb  i2c_analog.o [1]
-I2C_Stop                0x009c40   0x1f  Code  Gb  i2c_analog.o [1]
+I2CC_Init               0x009cc4   0x19  Code  Gb  i2c_analog.o [1]
+I2C_IRQHandler          0x009eb0    0x1  Code  Gb  stm8s_it.o [1]
+I2C_RecvByte            0x0094cf   0x6b  Code  Gb  i2c_analog.o [1]
+I2C_SendByte            0x009239   0x94  Code  Gb  i2c_analog.o [1]
+I2C_Start               0x009b87   0x27  Code  Gb  i2c_analog.o [1]
+I2C_Stop                0x009c6d   0x1f  Code  Gb  i2c_analog.o [1]
 INTVEC$$Base            0x008000          --   Gb  - Linker created -
 INTVEC$$Limit           0x008080          --   Gb  - Linker created -
 KeyPressResult          0x000088    0x1  Data  Gb  tasks.o [1]
-KeyProcess              0x008b7e  0x10a  Code  Gb  key.o [1]
-LedChg_SetColor         0x00950d   0x69  Code  Gb  led.o [1]
+KeyProcess              0x008b75  0x10a  Code  Gb  key.o [1]
+LedChg_SetColor         0x00953a   0x69  Code  Gb  led.o [1]
 LedMode                 0x000013    0x1  Data  Gb  tasks.o [1]
 LedSoc_PeriodCnt        0x000075    0x2  Data  Gb  led.o [1]
-Led_BatSoc_Display      0x008e4b   0xbf  Code  Gb  led.o [1]
-Led_ModeProcess         0x008d7d   0xce  Code  Gb  tasks.o [1]
-Light_DisplayBreak      0x009b81   0x26  Code  Gb  led.o [1]
-Light_DisplayMode1      0x0094a3   0x6a  Code  Gb  led.o [1]
-Light_DisplayMode2      0x008f0a   0xa2  Code  Gb  led.o [1]
-Light_DisplayMode3      0x009b08   0x2a  Code  Gb  led.o [1]
-Light_DisplayMode4      0x009e30    0x7  Code  Gb  led.o [1]
-Light_DisplayOff        0x009e4b    0x5  Code  Gb  led.o [1]
+Led_BatSoc_Display      0x008f15   0xbf  Code  Gb  led.o [1]
+Led_ModeProcess         0x008e47   0xce  Code  Gb  tasks.o [1]
+Light_DisplayBreak      0x009bae   0x26  Code  Gb  led.o [1]
+Light_DisplayMode1      0x009460   0x6f  Code  Gb  led.o [1]
+Light_DisplayMode2      0x008d74   0xd3  Code  Gb  led.o [1]
+Light_DisplayMode3      0x009ad5   0x2f  Code  Gb  led.o [1]
+Light_DisplayMode4      0x009e1f    0xc  Code  Gb  led.o [1]
+Light_DisplayOff        0x009e83    0x5  Code  Gb  led.o [1]
 Light_Level             0x00008a    0x1  Data  Gb  tasks.o [1]
 Light_Mode1_Count       0x00006f    0x2  Data  Gb  led.o [1]
 Light_Mode1_PeriodCnt   0x000067    0x2  Data  Gb  led.o [1]
@@ -561,101 +563,101 @@ Light_Mode3_PeriodCnt   0x00006b    0x2  Data  Gb  led.o [1]
 Light_Mode4_PeriodCnt   0x00006d    0x2  Data  Gb  led.o [1]
 Light_ModeBreak_PeriodCnt
                         0x000073    0x2  Data  Gb  led.o [1]
-Light_SetBrightless     0x009dd8    0xd  Code  Gb  led.o [1]
-Math_GetAvg             0x009743   0x50  Code  Gb  math.o [1]
-Math_GetStd             0x0095dc   0x62  Code  Gb  math.o [1]
+Light_SetBrightless     0x009e05    0xd  Code  Gb  led.o [1]
+Math_GetAvg             0x009770   0x50  Code  Gb  math.o [1]
+Math_GetStd             0x009609   0x62  Code  Gb  math.o [1]
 OnFlag                  0x000012    0x1  Data  Gb  tasks.o [1]
 Power_Off               0x00841a  0x1ef  Code  Gb  tasks.o [1]
-Region$$Table$$Base     0x009bef          --   Gb  - Linker created -
-Region$$Table$$Limit    0x009c01          --   Gb  - Linker created -
-SC7A20_GetInfo          0x00917b   0x96  Code  Gb  sc7a20.o [1]
-SC7A20_Get_ACCD         0x008fac   0x9d  Code  Gb  sc7a20.o [1]
-SC7A20_Init             0x0096f2   0x51  Code  Gb  sc7a20.o [1]
-SC7A20_Read_Byte        0x009adc   0x2c  Code  Gb  sc7a20.o [1]
-SC7A20_Write_Byte       0x009c01   0x20  Code  Gb  sc7a20.o [1]
-SPI_IRQHandler          0x009e71    0x1  Code  Gb  stm8s_it.o [1]
+Region$$Table$$Base     0x009c1c          --   Gb  - Linker created -
+Region$$Table$$Limit    0x009c2e          --   Gb  - Linker created -
+SC7A20_GetInfo          0x0091a3   0x96  Code  Gb  sc7a20.o [1]
+SC7A20_Get_ACCD         0x008fd4   0x9d  Code  Gb  sc7a20.o [1]
+SC7A20_Init             0x00971f   0x51  Code  Gb  sc7a20.o [1]
+SC7A20_Read_Byte        0x009b33   0x2c  Code  Gb  sc7a20.o [1]
+SC7A20_Write_Byte       0x009c2e   0x20  Code  Gb  sc7a20.o [1]
+SPI_IRQHandler          0x009ea9    0x1  Code  Gb  stm8s_it.o [1]
 ShakeTimeCnt            0x00005f    0x4  Data  Gb  tasks.o [1]
 TIM1_CAP_COM_IRQHandler
-                        0x009e73    0x1  Code  Gb  stm8s_it.o [1]
-TIM1_CCxCmd             0x00982c   0x4a  Code  Gb  stm8s_tim1.o [1]
-TIM1_Cmd                0x009d4d    0xe  Code  Gb  stm8s_tim1.o [1]
-TIM1_CtrlPWMOutputs     0x009aad   0x2f  Code  Gb  stm8s_tim1.o [1]
-TIM1_DeInit             0x009049   0x99  Code  Gb  stm8s_tim1.o [1]
-TIM1_OC1Init            0x009576   0x66  Code  Gb  stm8s_tim1.o [1]
-TIM1_OC1PreloadConfig   0x009d5b    0xe  Code  Gb  stm8s_tim1.o [1]
-TIM1_SetCompare1        0x009df2    0x9  Code  Gb  stm8s_tim1.o [1]
-TIM1_TimeBaseInit       0x009bcb   0x24  Code  Gb  stm8s_tim1.o [1]
+                        0x009eab    0x1  Code  Gb  stm8s_it.o [1]
+TIM1_CCxCmd             0x00980c   0x4a  Code  Gb  stm8s_tim1.o [1]
+TIM1_Cmd                0x009d7a    0xe  Code  Gb  stm8s_tim1.o [1]
+TIM1_CtrlPWMOutputs     0x009b04   0x2f  Code  Gb  stm8s_tim1.o [1]
+TIM1_DeInit             0x009071   0x99  Code  Gb  stm8s_tim1.o [1]
+TIM1_OC1Init            0x0095a3   0x66  Code  Gb  stm8s_tim1.o [1]
+TIM1_OC1PreloadConfig   0x009d88    0xe  Code  Gb  stm8s_tim1.o [1]
+TIM1_SetCompare1        0x009e2b    0x9  Code  Gb  stm8s_tim1.o [1]
+TIM1_TimeBaseInit       0x009bf8   0x24  Code  Gb  stm8s_tim1.o [1]
 TIM1_UPD_OVF_TRG_BRK_IRQHandler
-                        0x009e72    0x1  Code  Gb  stm8s_it.o [1]
-TIM2_ARRPreloadConfig   0x009d77    0xe  Code  Gb  stm8s_tim2.o [1]
+                        0x009eaa    0x1  Code  Gb  stm8s_it.o [1]
+TIM2_ARRPreloadConfig   0x009da4    0xe  Code  Gb  stm8s_tim2.o [1]
 TIM2_CAP_COM_IRQHandler
-                        0x009e75    0x1  Code  Gb  stm8s_it.o [1]
-TIM2_Cmd                0x009d69    0xe  Code  Gb  stm8s_tim2.o [1]
-TIM2_DeInit             0x009699   0x59  Code  Gb  stm8s_tim2.o [1]
-TIM2_OC1Init            0x009a1a   0x31  Code  Gb  stm8s_tim2.o [1]
-TIM2_OC1PreloadConfig   0x009d85    0xe  Code  Gb  stm8s_tim2.o [1]
-TIM2_OC2Init            0x009a4b   0x31  Code  Gb  stm8s_tim2.o [1]
-TIM2_OC2PreloadConfig   0x009d93    0xe  Code  Gb  stm8s_tim2.o [1]
-TIM2_OC3Init            0x009a7c   0x31  Code  Gb  stm8s_tim2.o [1]
-TIM2_OC3PreloadConfig   0x009da1    0xe  Code  Gb  stm8s_tim2.o [1]
-TIM2_SetCompare1        0x009dfb    0x9  Code  Gb  stm8s_tim2.o [1]
-TIM2_SetCompare2        0x009e04    0x9  Code  Gb  stm8s_tim2.o [1]
-TIM2_SetCompare3        0x009e0d    0x9  Code  Gb  stm8s_tim2.o [1]
-TIM2_TimeBaseInit       0x009d2f   0x10  Code  Gb  stm8s_tim2.o [1]
+                        0x009ead    0x1  Code  Gb  stm8s_it.o [1]
+TIM2_Cmd                0x009d96    0xe  Code  Gb  stm8s_tim2.o [1]
+TIM2_DeInit             0x0096c6   0x59  Code  Gb  stm8s_tim2.o [1]
+TIM2_OC1Init            0x009a42   0x31  Code  Gb  stm8s_tim2.o [1]
+TIM2_OC1PreloadConfig   0x009db2    0xe  Code  Gb  stm8s_tim2.o [1]
+TIM2_OC2Init            0x009a73   0x31  Code  Gb  stm8s_tim2.o [1]
+TIM2_OC2PreloadConfig   0x009dc0    0xe  Code  Gb  stm8s_tim2.o [1]
+TIM2_OC3Init            0x009aa4   0x31  Code  Gb  stm8s_tim2.o [1]
+TIM2_OC3PreloadConfig   0x009dce    0xe  Code  Gb  stm8s_tim2.o [1]
+TIM2_SetCompare1        0x009e34    0x9  Code  Gb  stm8s_tim2.o [1]
+TIM2_SetCompare2        0x009e3d    0x9  Code  Gb  stm8s_tim2.o [1]
+TIM2_SetCompare3        0x009e46    0x9  Code  Gb  stm8s_tim2.o [1]
+TIM2_TimeBaseInit       0x009d5c   0x10  Code  Gb  stm8s_tim2.o [1]
 TIM2_UPD_OVF_BRK_IRQHandler
-                        0x009e74    0x1  Code  Gb  stm8s_it.o [1]
-TIM4_ARRPreloadConfig   0x009dbd    0xe  Code  Gb  stm8s_tim4.o [1]
-TIM4_ClearFlag          0x009e16    0x9  Code  Gb  stm8s_tim4.o [1]
-TIM4_ClearITPendingBit  0x009e1f    0x9  Code  Gb  stm8s_tim4.o [1]
-TIM4_Cmd                0x009daf    0xe  Code  Gb  stm8s_tim4.o [1]
-TIM4_DeInit             0x009cb0   0x19  Code  Gb  stm8s_tim4.o [1]
-TIM4_ITConfig           0x009c7d   0x1a  Code  Gb  stm8s_tim4.o [1]
-TIM4_TimeBaseInit       0x009de5    0xd  Code  Gb  stm8s_tim4.o [1]
+                        0x009eac    0x1  Code  Gb  stm8s_it.o [1]
+TIM4_ARRPreloadConfig   0x009dea    0xe  Code  Gb  stm8s_tim4.o [1]
+TIM4_ClearFlag          0x009e4f    0x9  Code  Gb  stm8s_tim4.o [1]
+TIM4_ClearITPendingBit  0x009e58    0x9  Code  Gb  stm8s_tim4.o [1]
+TIM4_Cmd                0x009ddc    0xe  Code  Gb  stm8s_tim4.o [1]
+TIM4_DeInit             0x009cdd   0x19  Code  Gb  stm8s_tim4.o [1]
+TIM4_ITConfig           0x009caa   0x1a  Code  Gb  stm8s_tim4.o [1]
+TIM4_TimeBaseInit       0x009e12    0xd  Code  Gb  stm8s_tim4.o [1]
 TIM4_UPD_OVF_IRQHandler
-                        0x0098c0   0x49  Code  Gb  stm8s_it.o [1]
-TLI_IRQHandler          0x009e69    0x1  Code  Gb  stm8s_it.o [1]
-TRAP_IRQHandler         0x009e68    0x1  Code  Gb  stm8s_it.o [1]
+                        0x0098a0   0x49  Code  Gb  stm8s_it.o [1]
+TLI_IRQHandler          0x009ea1    0x1  Code  Gb  stm8s_it.o [1]
+TRAP_IRQHandler         0x009ea0    0x1  Code  Gb  stm8s_it.o [1]
 Tasks                   0x000015   0x14  Data  Gb  system_task_handling.o [1]
-UART1_RX_IRQHandler     0x009e77    0x1  Code  Gb  stm8s_it.o [1]
-UART1_TX_IRQHandler     0x009e76    0x1  Code  Gb  stm8s_it.o [1]
-__DebugBreak            0x009e7a    0x1  Code  Gb  __dbg_break.o [3]
-__exit                  0x009cf5   0x14  Code  Gb  __dbg_xxexit.o [3]
-__iar_copy_init2        0x009b32         Code  Gb  init_small.o [4]
-__iar_data_init2        0x009ce1   0x14  Code  Gb  init.o [4]
-__iar_program_start     0x009d1c         Code  Gb  cstartup.o [4]
+UART1_RX_IRQHandler     0x009eaf    0x1  Code  Gb  stm8s_it.o [1]
+UART1_TX_IRQHandler     0x009eae    0x1  Code  Gb  stm8s_it.o [1]
+__DebugBreak            0x009eb2    0x1  Code  Gb  __dbg_break.o [3]
+__exit                  0x009d22   0x14  Code  Gb  __dbg_xxexit.o [3]
+__iar_copy_init2        0x009b5f         Code  Gb  init_small.o [4]
+__iar_data_init2        0x009d0e   0x14  Code  Gb  init.o [4]
+__iar_program_start     0x009d49         Code  Gb  cstartup.o [4]
 __iar_unhandled_exception
-                        0x009e63         Code  Gb  unhandled_exception.o [4]
-__iar_zero_init2        0x009c5f         Code  Gb  init_small.o [4]
+                        0x009e9b         Code  Gb  unhandled_exception.o [4]
+__iar_zero_init2        0x009c8c         Code  Gb  init_small.o [4]
 __intvec                0x008000         Data  Gb  interrupt.o [4]
-__low_level_init        0x009e5d    0x3  Code  Gb  low_level_init.o [4]
-_exit                   0x009e50         Code  Gb  cexit.o [4]
-_interrupt_1            0x009e68         Code  Gb  stm8s_it.o [1]
-_interrupt_12           0x009e71         Code  Gb  stm8s_it.o [1]
-_interrupt_13           0x009e72         Code  Gb  stm8s_it.o [1]
-_interrupt_14           0x009e73         Code  Gb  stm8s_it.o [1]
-_interrupt_15           0x009e74         Code  Gb  stm8s_it.o [1]
-_interrupt_16           0x009e75         Code  Gb  stm8s_it.o [1]
-_interrupt_19           0x009e76         Code  Gb  stm8s_it.o [1]
-_interrupt_2            0x009e69         Code  Gb  stm8s_it.o [1]
-_interrupt_20           0x009e77         Code  Gb  stm8s_it.o [1]
-_interrupt_21           0x009e78         Code  Gb  stm8s_it.o [1]
-_interrupt_24           0x009ba7         Code  Gb  stm8s_it.o [1]
-_interrupt_25           0x0098c0         Code  Gb  stm8s_it.o [1]
-_interrupt_26           0x009e79         Code  Gb  stm8s_it.o [1]
-_interrupt_3            0x009e6a         Code  Gb  stm8s_it.o [1]
-_interrupt_4            0x009e6b         Code  Gb  stm8s_it.o [1]
-_interrupt_5            0x009e6c         Code  Gb  stm8s_it.o [1]
-_interrupt_6            0x009e6d         Code  Gb  stm8s_it.o [1]
-_interrupt_7            0x009e6e         Code  Gb  stm8s_it.o [1]
-_interrupt_8            0x009e6f         Code  Gb  stm8s_it.o [1]
-_interrupt_9            0x009e70         Code  Gb  stm8s_it.o [1]
-assert_failed           0x009e66    0x2  Code  Gb  main.o [1]
-configTask              0x009333   0x8d  Code  Gb  system_task_handling.o [1]
-exit                    0x009e60    0x3  Code  Gb  exit.o [4]
+__low_level_init        0x009e95    0x3  Code  Gb  low_level_init.o [4]
+_exit                   0x009e88         Code  Gb  cexit.o [4]
+_interrupt_1            0x009ea0         Code  Gb  stm8s_it.o [1]
+_interrupt_12           0x009ea9         Code  Gb  stm8s_it.o [1]
+_interrupt_13           0x009eaa         Code  Gb  stm8s_it.o [1]
+_interrupt_14           0x009eab         Code  Gb  stm8s_it.o [1]
+_interrupt_15           0x009eac         Code  Gb  stm8s_it.o [1]
+_interrupt_16           0x009ead         Code  Gb  stm8s_it.o [1]
+_interrupt_19           0x009eae         Code  Gb  stm8s_it.o [1]
+_interrupt_2            0x009ea1         Code  Gb  stm8s_it.o [1]
+_interrupt_20           0x009eaf         Code  Gb  stm8s_it.o [1]
+_interrupt_21           0x009eb0         Code  Gb  stm8s_it.o [1]
+_interrupt_24           0x009bd4         Code  Gb  stm8s_it.o [1]
+_interrupt_25           0x0098a0         Code  Gb  stm8s_it.o [1]
+_interrupt_26           0x009eb1         Code  Gb  stm8s_it.o [1]
+_interrupt_3            0x009ea2         Code  Gb  stm8s_it.o [1]
+_interrupt_4            0x009ea3         Code  Gb  stm8s_it.o [1]
+_interrupt_5            0x009ea4         Code  Gb  stm8s_it.o [1]
+_interrupt_6            0x009ea5         Code  Gb  stm8s_it.o [1]
+_interrupt_7            0x009ea6         Code  Gb  stm8s_it.o [1]
+_interrupt_8            0x009ea7         Code  Gb  stm8s_it.o [1]
+_interrupt_9            0x009ea8         Code  Gb  stm8s_it.o [1]
+assert_failed           0x009e9e    0x2  Code  Gb  main.o [1]
+configTask              0x00935b   0x8d  Code  Gb  system_task_handling.o [1]
+exit                    0x009e98    0x3  Code  Gb  exit.o [4]
 g_key                   0x000029    0x8  Data  Gb  key.o [1]
-main                    0x009793   0x4d  Code  Gb  main.o [1]
-startTask               0x0090e2   0x99  Code  Gb  system_task_handling.o [1]
-taskA                   0x008a68  0x116  Code  Gb  tasks.o [1]
+main                    0x0098e9   0x48  Code  Gb  main.o [1]
+startTask               0x00910a   0x99  Code  Gb  system_task_handling.o [1]
+taskA                   0x008a68  0x10d  Code  Gb  tasks.o [1]
 taskB                   0x008080  0x39a  Code  Gb  tasks.o [1]
 taskB{14}{15}::Acc_z_Old
                         0x000085    0x2  Data  Lc  tasks.o [1]
@@ -667,7 +669,7 @@ taskB{1}{2}::AvgCnt2    0x00008f    0x1  Data  Lc  tasks.o [1]
 taskB{1}{2}::AvgCnt3    0x000090    0x1  Data  Lc  tasks.o [1]
 taskB{1}{2}::Bat_Soc_New
                         0x000091    0x1  Data  Lc  tasks.o [1]
-taskHandler             0x008c88   0xf5  Code  Gb  system_task_handling.o [1]
+taskHandler             0x008c7f   0xf5  Code  Gb  system_task_handling.o [1]
 
 
 [1] = C:\Users\hero\Desktop\Taillight_Code\stm8_prj\code_iar\Debug\Obj
@@ -675,8 +677,8 @@ taskHandler             0x008c88   0xf5  Code  Gb  system_task_handling.o [1]
 [3] = dbgstm8smd.a
 [4] = dlstm8smn.a
 
-  7 576 bytes of readonly  code memory
-    227 bytes of readonly  data memory
+  7 626 bytes of readonly  code memory
+    233 bytes of readonly  data memory
     403 bytes of readwrite data memory
 
 Errors: none

+ 4 - 4
settings/tail_light_stm8.dnx

@@ -63,6 +63,10 @@
     <watch_formats>
         <Fmt0>{W}42:Bat_Soc	3	0</Fmt0>
     </watch_formats>
+    <TermIOLog>
+        <LoggingEnabled>_ 0</LoggingEnabled>
+        <LogFile>_ ""</LogFile>
+    </TermIOLog>
     <DataSample>
         <LogEnabled>0</LogEnabled>
         <GraphEnabled>0</GraphEnabled>
@@ -73,10 +77,6 @@
         <LogFile>_ ""</LogFile>
         <Category>_ 0</Category>
     </LogFile>
-    <TermIOLog>
-        <LoggingEnabled>_ 0</LoggingEnabled>
-        <LogFile>_ ""</LogFile>
-    </TermIOLog>
     <Breakpoints>
         <Count>0</Count>
     </Breakpoints>

File diff suppressed because it is too large
+ 12 - 12
settings/tail_light_stm8.wsdt


File diff suppressed because it is too large
+ 382 - 382
tail_light_stm8.dep


+ 0 - 5
usr/inc/led.h

@@ -3,11 +3,6 @@
 
 #include "stm8s.h"
 
- //ÁÁ¶ÈµÈ¼¶
-#define BrightLessLevel_Low  (uint16_t)30
-#define BrightLessLevel_Norm (uint16_t)100
-#define BrightLessLevel_High (uint16_t)250
-
 //È«¾Ö±äÁ¿
 extern uint16_t Light_Mode1_PeriodCnt, Light_Mode2_PeriodCnt, Light_Mode3_PeriodCnt, Light_Mode4_PeriodCnt, Light_ModeBreak_PeriodCnt;
 extern uint16_t Light_Mode1_Count, Light_Mode2_Count;

+ 15 - 7
usr/src/led.c

@@ -8,7 +8,8 @@ uint16_t Light_Mode1_Count = 0;
 uint16_t Light_Mode2_Count = 0;
 uint16_t Light_ModeBreak_PeriodCnt = 0;
 uint16_t LedSoc_PeriodCnt = 0;
-uint16_t BrightlessLevel = BrightLessLevel_Norm;
+uint16_t BrightlessLevel = 2;
+const uint16_t BrightlessLevelPulse[3] = {25, 50, 100};
 
 /*
 设置亮度
@@ -51,7 +52,7 @@ void Light_DisplayMode1(uint16_t LightSensor)
     Light_Mode1_PeriodCnt++;
     if(Light_Mode1_PeriodCnt <= 200)
     {
-      Light_SetBrightless(BrightlessLevel);
+      Light_SetBrightless(BrightlessLevelPulse[BrightlessLevel - 1]);
     }
     else if(Light_Mode1_PeriodCnt <= 400)
     {
@@ -72,13 +73,20 @@ void Light_DisplayMode1(uint16_t LightSensor)
 void Light_DisplayMode2(uint16_t LightSensor)
 {
   uint8_t OffFlag = 0;
+  uint16_t LevelPluse = 0;
+  
+  //设定亮度
+  if(BrightlessLevel == 1) LevelPluse = 25;
+  else if(BrightlessLevel == 2) LevelPluse = 50;
+  else if(BrightlessLevel == 3) LevelPluse = 100;
+  
   //根据光感强度和震动状态确定是否自动关闭,仅光暗和震动时自动关闭功能开启
   if(LightSensor < 4)
     OffFlag = 0;
   else if(LightSensor > 8)
     OffFlag = 1;
   //自动关闭时在模式切换时亮三次
-  if((OffFlag == 1)&&(Light_Mode2_Count >= 2))
+  if((OffFlag == 1) && (Light_Mode2_Count >= 2))
   {
     Light_SetBrightless(0);
   }	
@@ -87,11 +95,11 @@ void Light_DisplayMode2(uint16_t LightSensor)
     Light_Mode2_PeriodCnt++;
     if(Light_Mode2_PeriodCnt <= 1000)
     {
-      Light_SetBrightless((uint32_t)Light_Mode2_PeriodCnt * BrightlessLevel / 1000);
+      Light_SetBrightless((uint32_t)Light_Mode2_PeriodCnt * LevelPluse / 1000 + 15);
     }
     else if(Light_Mode2_PeriodCnt <= 2000)
     {
-      Light_SetBrightless((uint32_t)(2000 - Light_Mode2_PeriodCnt) * BrightlessLevel / 2000);
+      Light_SetBrightless((uint32_t)(2000 - Light_Mode2_PeriodCnt) * LevelPluse / 2000 + 15);
     }
     else
     {
@@ -110,7 +118,7 @@ void Light_DisplayMode3(void)
   Light_Mode3_PeriodCnt++;
   if(Light_Mode3_PeriodCnt <= 50)
   {
-    Light_SetBrightless(BrightlessLevel);
+    Light_SetBrightless(BrightlessLevelPulse[BrightlessLevel - 1]);
   }
   else if(Light_Mode3_PeriodCnt <= 1000)
   {
@@ -128,7 +136,7 @@ void Light_DisplayMode3(void)
 */
 void Light_DisplayMode4(void)
 {
-  Light_SetBrightless(BrightlessLevel);
+  Light_SetBrightless(BrightlessLevelPulse[BrightlessLevel - 1]);
 }
 
 /*

+ 1 - 1
usr/src/main.c

@@ -61,7 +61,7 @@ void main(void)
   startTask(Task_01, 1);
   
   /* Power off */
-  Power_Off(0x03);//按键和充电唤醒
+  //Power_Off(0x03);//按键和充电唤醒,执行会导致电池亏电状态充电无法唤醒
 
   /* Iwdg Init */
   #if (IWDG_ENABLE == 1)

+ 8 - 9
usr/src/tasks.c

@@ -159,16 +159,14 @@ void taskA(void)//1ms
       else LedMode = 1;
       ShakeTimeCnt = Global_Timing_Counter;
       AutoOffTimeCnt = Global_Timing_Counter;
-      KeyPressResult = 0;
     }
     else if(KeyPressResult == 2) //双击切换亮度
     {
-      if(BrightlessLevel == BrightLessLevel_Low) BrightlessLevel = BrightLessLevel_Norm;
-      else if(BrightlessLevel == BrightLessLevel_Norm) BrightlessLevel = BrightLessLevel_High;
-      else if(BrightlessLevel == BrightLessLevel_High) BrightlessLevel = BrightLessLevel_Low;
+      if(BrightlessLevel == 1) BrightlessLevel = 2;
+      else if(BrightlessLevel == 2) BrightlessLevel = 3;
+      else if(BrightlessLevel == 3) BrightlessLevel = 1;
       ShakeTimeCnt = Global_Timing_Counter;
       AutoOffTimeCnt = Global_Timing_Counter;
-      KeyPressResult = 0;
     }
     else if(KeyPressResult == 3) //长按关机
     {
@@ -176,10 +174,11 @@ void taskA(void)//1ms
       Power_Off(0x03);//按键唤醒,充电唤醒
       //唤醒后进入模式1
       LedMode = 1;
-      //按键标志清零
-      KeyPressResult = 0;
     }
+    //按键标志清零
+    KeyPressResult = 0;
   }
+  
   //尾灯控制
   if(OnFlag == 1)
     Led_ModeProcess(LedMode, &BreakFlag, Light_Level, Chg_Flag);
@@ -269,7 +268,7 @@ void taskB(void)//100ms
         else if(AD_Vin <= 685) Bat_Soc_New = 0;   //3.25V
         else Bat_Soc_New = ((uint32_t)(AD_Vin - 685) * 604) >> 10;
         //电量增减处理
-        if((Bat_Soc_New < Bat_Soc) || ((Bat_Soc_New - Bat_Soc) > 10) || (Bat_Soc_New >= 95))
+        if((Bat_Soc_New < Bat_Soc) || (Bat_Soc_New - Bat_Soc > 10) || (Chg_Flag == 1))
           Bat_Soc = Bat_Soc_New;
         break;
       }
@@ -404,7 +403,7 @@ void Power_Off(uint8_t WakeMode)
         ENA_XYZ |= 0x0C;
       if((AccAvg_z < 100) && (AccAvg_z > -100))  //Z轴水平,打开Z轴中断
         ENA_XYZ |= 0x30;
-      if((ENA_XYZ & 0x3F) == 0x00) //XYZ都不水平,开启XYZ中断,并设置阈值为800
+      if((ENA_XYZ & 0x3F) == 0x00) //XYZ都不水平,开启XYZ中断,并设置阈值为900
       {
         ENA_XYZ |= 0x7F;
         SC7A20_Write_Byte(SC7A20_REG_CTRL_INT1,ENA_XYZ);  //或中断,6D检测,YZ使能

Some files were not shown because too many files changed in this diff