diff --git a/.cproject b/.cproject index 859487e..c0ed7fb 100644 --- a/.cproject +++ b/.cproject @@ -1,5 +1,4 @@ - - + @@ -358,4 +357,4 @@ - + \ No newline at end of file diff --git a/Debug/car.elf b/Debug/car.elf index 2459a46..037b62c 100755 Binary files a/Debug/car.elf and b/Debug/car.elf differ diff --git a/Debug/car.hex b/Debug/car.hex index adaf66e..a28536d 100644 --- a/Debug/car.hex +++ b/Debug/car.hex @@ -1,35 +1,35 @@ :020000040800F2 -:100000000050002021020008D5230008D923000851 -:10001000DD230008E1230008E523000800000000BC -:10002000000000000000000000000000E9230008BC -:10003000ED23000800000000F1230008F52300086C -:10004000251F0008251F0008251F0008251F000880 -:10005000251F0008251F0008251F0008251F000870 -:10006000251F0008251F0008251F0008251F000860 -:10007000251F0008251F0008251F0008251F000850 -:10008000251F0008251F0008251F0008251F000840 -:10009000251F0008251F0008251F0008251F000830 -:1000A000251F0008251F0008251F0008251F000820 -:1000B000251F0008251F0008251F0008251F000810 -:1000C000251F0008251F0008251F0008251F000800 -:1000D000251F0008251F0008251F0008251F0008F0 -:1000E000251F0008251F0008251F0008000000002C +:100000000050002021020008D9240008DD24000847 +:10001000E1240008E5240008E924000800000000AD +:10002000000000000000000000000000ED240008B7 +:10003000F124000800000000F5240008F92400085D +:10004000FD1F0008FD1F0008FD1F0008FD1F000820 +:10005000FD1F0008FD1F0008FD1F0008FD1F000810 +:10006000FD1F0008FD1F0008FD1F0008FD1F000800 +:10007000FD1F0008FD1F0008FD1F0008FD1F0008F0 +:10008000FD1F0008FD1F0008FD1F0008FD1F0008E0 +:10009000FD1F0008FD1F0008FD1F0008FD1F0008D0 +:1000A000FD1F0008FD1F0008FD1F0008FD1F0008C0 +:1000B000FD1F0008FD1F0008FD1F0008FD1F0008B0 +:1000C000FD1F0008FD1F0008FD1F0008FD1F0008A0 +:1000D000FD1F0008FD1F0008FD1F0008FD1F000890 +:1000E000FD1F0008FD1F0008FD1F000800000000A4 :1000F0000000000000000000000000000000000000 :1001000000000000000000005FF808F100B583B0B7 -:1001100001F0F8FE304B314A1360314A1360314B25 +:1001100001F064FF304B314A1360314A1360314BB8 :10012000314A03E011681960043304322F498B42CD :10013000F8D32A4B1A682E4B9A4204D1284B1A68DE :100140002C4B9A4200D0FEE7234B2B4A13602B4ADC :1001500013602B4B02E000221A600433294A9342B9 :10016000F9D3254B1B6813B9244B1B6803B1FEE779 -:1001700001F0D4FE694601A801F0BCFE224C234BDD +:1001700001F040FF694601A801F028FF224C234B03 :100180001C1BA410002504E01F4B53F82530984792 :100190000135AC42F8DC1E4C1E4B1C1BA410002584 :1001A00004E01B4B53F8253098470135AC42F8DC8E -:1001B0000099019802F04AF80546174C174B1C1B92 +:1001B0000099019802F0C0F80546174C174B1C1B1C :1001C000A41004E0013C144B53F824309847002C51 -:1001D000F8DC284601F08CFEBABADECA0000002026 -:1001E0001000002000000020B826000814000020A5 +:1001D000F8DC284601F0F8FEBABADECA00000020BA +:1001E000100000200000002010280008140000204B :1001F00078563412325476981400002034020020CD :100200001400002038020020BC020008BC020008D4 :10021000BC020008BC020008BC020008BC020008C6 @@ -41,62 +41,62 @@ :10027000074A104700BEFEE700BEFEE700BEFEE7ED :1002800000BEFEE770470000410200085D02000862 :0402900075020008EB -:10029400B82600080000002014000020B82600083A +:100294001028000800000020140000201028000886 :1002A40000000000000000001400002038020020BC :0802B400000000000000000042 :1002BC0010B5044600F0A8FF064BA3FB00308009E4 :1002CC0000F098F8002221464FF0FF3000F050F873 :1002DC00002010BDD34D621008B5074A136843F0D7 :1002EC0010031360032000F025F80020FFF7E0FF57 -:1002FC0001F0BCFF002008BD00200240024A136838 +:1002FC0002F032F8002008BD00200240024A1368C8 :10030C0001331360704700BF18000020014B1868C0 :10031C00704700BF1800002010B582B00190FFF7A5 :10032C00F5FF0446FFF7F2FF001B019B9842F9D33F :10033C0002B010BD10B50446C31E042B03D9BA215C -:10034C00094801F091FF094AD36823F4E0631B04C8 +:10034C00094802F007F8094AD36823F4E0631B0458 :10035C001B0C240204F4E064234343F0BF6343F416 -:10036C000033D36010BD00BF7C25000800ED00E019 +:10036C000033D36010BD00BFD426000800ED00E0C0 :10037C0070B504460E4615460F2A03D9D2211A48E9 -:10038C0001F072FF0F2E03D9D321174801F06CFF37 +:10038C0001F0E8FF0F2E03D9D321174801F0E2FF4B :10039C00164BDA68C2F30222C2F10701042928BF06 :1003AC000421131D062B01D9033A00E0002201237E :1003BC0003FA01F101393140914003FA02F2013A9A :1003CC002A400A43002C06DA04F00F041201D2B2C0 :1003DC00074B1A5570BD1201D2B204F1604404F5FA -:1003EC00614484F8002370BD7C25000800ED00E01A +:1003EC00614484F8002370BDD426000800ED00E0C1 :1003FC0014ED00E00138B0F1807F0AD2064B586052 :10040C00F021064A82F823100020986007221A6017 :10041C0070470120704700BF10E000E000ED00E0E5 :10042C0010B50446042805D020B14FF4DF710848FC -:10043C0001F01AFF042C05D1064A136843F004039B +:10043C0001F090FF042C05D1064A136843F0040325 :10044C00136010BD034A136823F00403136010BD3E -:10045C007C25000810E000E008B501F0E9FF08BDBC +:10045C00D426000810E000E008B502F06BF808BDE7 :10046C002DE9F04383B080460F46AE4B984213D033 :10047C0003F5806398420FD003F5806398420BD04C :10048C0003F58063984207D003F58063984203D04C -:10049C00CF21A54801F0E8FE3B881BB9D021A2482A -:1004AC0001F0E2FE7B68012B22D9112B20D0022B0C +:10049C00CF21A54801F05EFF3B881BB9D021A248B3 +:1004AC0001F058FF7B68012B22D9112B20D0022B95 :1004BC001ED0122B1CD09D4A934219D002F58012EB :1004CC00934215D002F58012934211D0A2F5F81286 :1004DC0093420DD002F58012934209D002F580129E -:1004EC00934205D0032B03D0D1218F4801F0BCFEE1 +:1004EC00934205D0032B03D0D1218F4801F032FF6A :1004FC004FF000094E462BE10125B5403C682C40DD :10050C00A54240F02481874B984513D003F58063B6 :10051C0098450FD003F5806398450BD003F58063A5 :10052C00984507D003F58063984503D0DF217E48BA -:10053C0001F09AFE7B68122B49D00CD8022B3AD0D2 +:10053C0001F010FF7B68122B49D00CD8022B3AD05B :10054C0004D8002B4FD0012B1ED067E0032B60D0BA :10055C00112B24D062E0764A934244D008D8A2F5FD :10056C00801293423FD002F58032934256D13AE04A :10057C00704A934237D002F58032934233D0A2F5C1 :10058C00801293424AD12EE0FB68013B022B03D927 -:10059C00E721654801F068FED7F80C903EE0FB6857 -:1005AC00013B022B03D9EE215F4801F05DFEFB6895 +:10059C00E721654801F0DEFED7F80C903EE0FB68E1 +:1005AC00013B022B03D9EE215F4801F0D3FEFB681F :1005BC0003F1040932E0FB68013B022B03D9F5215E -:1005CC00594801F051FEFB6803F1080926E0FB686D -:1005DC00013B022B03D9FC21534801F045FEFB687B +:1005CC00594801F0C7FEFB6803F1080926E0FB68F7 +:1005DC00013B022B03D9FC21534801F0BBFEFB6805 :1005EC0003F10C091AE0BB68022B04D940F2091183 -:1005FC004D4801F039FEBB6873B1012B04D1C8F82A +:1005FC004D4801F0AFFEBB6873B1012B04D1C8F8B4 :10060C0010504FF0080909E0C8F814504FF00809D1 :10061C0004E04FF0000901E04FF00409FF2C01D871 :10062C00404601E008F10400FF2C01D8B30002E0C1 @@ -115,20 +115,20 @@ :1006FC00040353607B6813F4801F04D0104A936882 :10070C002343936004E00E4A936823EA0403936046 :10071C007B6813F4001F15D0094AD3681C43D460BE -:10072C0015E000BF00080140AC25000800001110C6 +:10072C0015E000BF0008014004270008000011106C :10073C0000002110000031100010024000000140A8 :10074C0000040140054AD36823EA0404D46001364E :10075C000F2E7FF6D1AE03B0BDE8F083000401404C :10076C0070B5064615460C4621B94FF4F27108488F -:10077C0001F07AFD012D04D940F2E511044801F095 -:10078C0073FD0DB1346170BD2404346170BD00BFC4 -:10079C00AC25000838B504460D4621B94FF4FD715F -:1007AC00034801F061FDE1686940E16038BD00BFBC -:1007BC00AC25000830B583B0044620B94FF48771DE -:1007CC00B94801F051FD23683BB113F00F0F04D170 -:1007DC0040F20F11B44801F047FD236813F0010FEC +:10077C0001F0F0FD012D04D940F2E511044801F01F +:10078C00E9FD0DB1346170BD2404346170BD00BF4E +:10079C000427000838B504460D4621B94FF4FD7105 +:1007AC00034801F0D7FDE1686940E16038BD00BF46 +:1007BC000427000830B583B0044620B94FF4877184 +:1007CC00B94801F0C7FD23683BB113F00F0F04D1FA +:1007DC0040F20F11B44801F0BDFD236813F0010F76 :1007EC0000F0A380636853B1B3F5803F07D0B3F535 -:1007FC00A02F04D040F21511AB4801F035FDAB4BE6 +:1007FC00A02F04D040F21511AB4801F0ABFDAB4B70 :10080C005B6803F00C03042B0AD0A84B5B6803F065 :10081C000C03082B1BD1A54B5B6813F4803F16D03F :10082C004FF4003393FAA3F3A04B1A684FF4003340 @@ -149,8 +149,8 @@ :10091C004FF4003393FAA3F3B3FA83F303F01F03FA :10092C0022FA03F313F0010FE6D1236813F0020F40 :10093C0000F0A0802369012B04D940F249115A48D8 -:10094C0001F092FC63691F2B04D94FF4A571564832 -:10095C0001F08AFC554B5B6813F00C0F0AD0534B1B +:10094C0001F008FD63691F2B04D94FF4A5715648BB +:10095C0001F000FD554B5B6813F00C0F0AD0534BA4 :10096C005B6803F00C03082B27D1504B5B6813F426 :10097C00803F22D1022393FAA3F34C4B1A68022333 :10098C0093FAA3F3B3FA83F303F01F0322FA03F3EE @@ -169,9 +169,9 @@ :100A5C002482022393FAA3F3144B1A68022393FA09 :100A6C00A3F3B3FA83F303F01F0322FA03F313F097 :100A7C00010FE8D1236813F0080F5CD0A369012B98 -:100A8C0004D94FF4C571084801F0EEFBA3696BB3B0 +:100A8C0004D94FF4C571084801F064FCA3696BB339 :100A9C00012292FAA2F3B3FA83F3054941F8232019 -:100AAC00FFF734FC05460BE0F0250008001002406F +:100AAC00FFF734FC05460BE0482700080010024015 :100ABC0080044242FFF72AFC401B022800F2EF811F :100ACC00022393FAA3F293FAA3F2A44A526A93FA7A :100ADC00A3F3B3FA83F303F01F0322FA03F313F027 @@ -182,7 +182,7 @@ :100B2C0093FAA3F3B3FA83F303F01F0322FA03F34C :100B3C0013F0010FE7D1236813F0040F00F0AB8022 :100B4C00E368012B06D9052B04D040F2B711854878 -:100B5C0001F08AFB814BDA6942F08052DA61DB6981 +:100B5C0001F000FC814BDA6942F08052DA61DB690A :100B6C0003F080530193019B7F4A136843F4807315 :100B7C001360FFF7CBFB054605E0FFF7C7FB401BF7 :100B8C00642800F29081784B1B6813F4807FF4D0BA @@ -203,24 +203,24 @@ :100C7C00022B02D1394B1A6A01E0384B5A6A022313 :100C8C0093FAA3F3B3FA83F303F01F0322FA03F3EB :100C9C0013F0010FD9D1E369022B04D940F247219B -:100CAC00304801F0E1FAE369002B00F002812B4A95 +:100CAC00304801F057FBE369002B00F002812B4A1E :100CBC00526802F00C02082A00F0FD80022B40F072 :100CCC00B780236A3BB1B3F5803F04D04FF4147165 -:100CDC00244801F0C9FA636A73B3B3F5802F2BD0A3 +:100CDC00244801F03FFB636A73B3B3F5802F2BD02C :100CEC00B3F5002F28D0B3F5402F25D0B3F5801FD6 :100CFC0022D0B3F5A01F1FD0B3F5C01F1CD0B3F585 :100D0C00E01F19D0B3F5001F16D0B3F5101F13D088 :100D1C00B3F5201F10D0B3F5301F0DD0B3F5401F25 :100D2C000AD0B3F5501F07D0B3F5601F04D040F2C2 -:100D3C0051210C4801F098FA4FF0807393FAA3F309 +:100D3C0051210C4801F00EFB4FF0807393FAA3F392 :100D4C00B3FA83F39B0003F1844303F5840300227D :100D5C001A60FFF7DBFA05460EE000BF00100240F8 -:100D6C0080044242F025000800700040FFF7CEFAE4 +:100D6C00800442424827000800700040FFF7CEFA8A :100D7C00401B022800F2A1804FF0007393FAA3F3FA :100D8C00514B1A684FF0007393FAA3F3B3FA83F341 :100D9C0003F01F0322FA03F313F0010FE6D1236AC9 :100DAC00B3F5803F10D1A3683BB1B3F5003F04D03D -:100DBC0040F26721454801F057FA43494B6823F448 +:100DBC0040F26721454801F0CDFA43494B6823F4D2 :100DCC000032A36813434B603F48436823F474110B :100DDC00236A626A13430B4343604FF0807393FAA8 :100DEC00A3F3B3FA83F39B0003F1844303F5840369 @@ -237,7 +237,7 @@ :100E9C0018E0012016E0032014E0032012E00320E8 :100EAC0010E003200EE003200CE003200AE00320F6 :100EBC0008E0002006E0012004E0032002E003200B -:100ECC0000E0032003B030BD00100240F025000804 +:100ECC0000E0032003B030BD0010024048270008AA :100EDC0030B486B01F4D02AC28686968AA68EB680C :100EEC000FC42B8AADF804301B4B5B6803F00C026B :100EFC00082A2AD103F470114FF4701292FAA2F25C @@ -246,19 +246,19 @@ :100F2C00003393FAA3F3B3FA83F321FA03F306A97C :100F3C000B4413F8140C094BB3FBF0F000FB02F05C :100F4C0004E0074800FB02F000E0044806B030BCA7 -:100F5C00704700BFDC2500080010024000127A0028 +:100F5C00704700BF342700080010024000127A00CE :100F6C0000093D0070B50D46044620B94FF42F71B1 -:100F7C00A04801F079F9236813F00F0F04D140F267 -:100F8C00BD219C4801F070F9022D04D940F2BE211C -:100F9C00984801F069F9984B1B6803F007039D42D0 +:100F7C00A04801F0EFF9236813F00F0F04D140F2F1 +:100F8C00BD219C4801F0E6F9022D04D940F2BE21A6 +:100F9C00984801F0DFF9984B1B6803F007039D425A :100FAC000BD9954A136823F007032B43136013687E :100FBC0003F007039D4240F00D81236813F0020FEC :100FCC001DD0A368A3B1802B12D0902B10D0A02BD6 :100FDC000ED0B02B0CD0C02B0AD0D02B08D0E02BCD -:100FEC0006D0F02B04D040F2D721824801F03CF916 +:100FEC0006D0F02B04D040F2D721824801F0B2F9A0 :100FFC0082494B6823F0F002A36813434B602368CB :10100C0013F0010F00F081806368022B04D940F2C9 -:10101C00DE21784801F028F96268012A13D14FF4D7 +:10101C00DE21784801F09EF96268012A13D14FF461 :10102C00003393FAA3F3754B19684FF4003393FA1A :10103C00A3F3B3FA83F303F01F0321FA03F313F0C2 :10104C00010F28D1C8E0022A13D14FF0007393FA94 @@ -278,43 +278,43 @@ :10112C001360136803F007039D4261D1236813F029 :10113C00040F19D0E36883B1B3F5806F0DD0B3F50C :10114C00A06F0AD0B3F5C06F07D0B3F5E06F04D031 -:10115C0040F23231274801F087F828494B6823F4D4 +:10115C0040F23231274801F0FDF828494B6823F45E :10116C00E062E36813434B60236813F0080F1AD056 :10117C00236983B1B3F5806F0DD0B3F5A06F0AD09E :10118C00B3F5C06F07D0B3F5E06F04D040F239313E -:10119C00184801F069F8194A536823F4605321691F +:10119C00184801F0DFF8194A536823F460532169A9 :1011AC0043EAC1035360FFF793FE144B5B6803F0F3 :1011BC00F002F02393FAA3F3B3FA83F322FA03F3C6 :1011CC000F4AD35CD8400F4B18600020FFF770F823 :1011DC00002070BD012070BD012070BD012070BDCC :1011EC00012070BD032070BD032070BD032070BDB5 -:1011FC00012070BDF02500080020024000100240C4 -:10120C00A82600080C000020014B1868704700BF8E +:1011FC00012070BD4827000800200240001002406A +:10120C00002800080C000020014B1868704700BF34 :10121C000C000020002800F0B88010B504460368CC :10122C005B4A934207D0A2F57842934203D06B21DC -:10123C00584801F019F8636833B1B3F5827F03D0D5 -:10124C006C21544801F010F8A3684BB1B3F5806FD2 -:10125C0006D0B3F5004F03D06D214E4801F004F8D1 -:10126C00E368B3F5006F04D01BB16E21494800F060 -:10127C00FBFF23692BB1022B03D06F21454800F0F3 -:10128C00F3FF6369012B03D97021424800F0ECFF96 +:10123C00584801F08FF8636833B1B3F5827F03D05F +:10124C006C21544801F086F8A3684BB1B3F5806F5C +:10125C0006D0B3F5004F03D06D214E4801F07AF85B +:10126C00E368B3F5006F04D01BB16E21494801F05F +:10127C0071F823692BB1022B03D06F21454801F083 +:10128C0069F86369012B03D97021424801F062F8B7 :10129C00A369B3F5007F07D033B1B3F5802F03D02A -:1012AC0071213C4800F0E0FFE3698BB1082B0FD0B3 +:1012AC0071213C4801F056F8E3698BB1082B0FD043 :1012BC00102B0DD0182B0BD0202B09D0282B07D09E -:1012CC00302B05D0382B03D07221324800F0CCFFE4 -:1012DC00236A2BB1802B03D073212E4800F0C4FF5E -:1012EC00636A1BB174212B4800F0BEFFA36A33B1B3 -:1012FC00B3F5005F03D07521264800F0B5FFE36A13 -:10130C00013B4FF6FE72934203D97621214800F03F -:10131C00ABFF94F8513013F0FF0F02D1204600F0D0 -:10132C00EDFF022384F851302268136823F0400348 +:1012CC00302B05D0382B03D07221324801F042F874 +:1012DC00236A2BB1802B03D073212E4801F03AF8EE +:1012EC00636A1BB174212B4801F034F8A36A33B143 +:1012FC00B3F5005F03D07521264801F02BF8E36AA3 +:10130C00013B4FF6FE72934203D97621214801F03E +:10131C0021F894F8513013F0FF0F02D1204601F060 +:10132C0063F8022384F851302268136823F04003D9 :10133C00136021686268A3681A43E3681A4323693F :10134C001A4363691A43A36903F400731343E269F4 :10135C001343226A1343A26A1A430A602168638BFF :10136C0003F00402636A13434B602368E26A1A6158 :10137C002268D36923F40063D3610020064B1870F4 :10138C006065012384F8513010BD0120704700BF07 -:10139C00003001401C2600081C00002010B4036A19 +:10139C0000300140742700081C00002010B4036AC0 :1013AC00046A24F001040462846924F0F00444EA21 :1013BC00021223F00A0319438261016210BC7047C8 :1013CC0010B4036A23F0100303628469036A24F4E3 @@ -325,36 +325,36 @@ :10141C002DE9F04104460D46036A23F001030362F3 :10142C00066AD0F80480876927F073030F681F439E :10143C0026F002038E681E431C4B98420ED1CB68DB -:10144C0033B1082B04D041F21521194800F00CFFE0 +:10144C0033B1082B04D041F21521194800F082FF6A :10145C0026F00806EB681E4326F00406134B9C424C :10146C001BD1AB69B3F5007F05D023B141F222212A -:10147C000F4800F0F9FE6B69B3F5807F05D023B1FE -:10148C0041F223210A4800F0EFFE28F440786B6902 +:10147C000F4800F06FFF6B69B3F5807F05D023B187 +:10148C0041F223210A4800F065FF28F440786B698B :10149C0048EA0308AB6948EA0308C4F80480A7616A :1014AC006B6863632662BDE8F08100BF002C0140CD -:1014BC004C2600082DE9F04104460E46036A23F43D +:1014BC00A42700082DE9F04104460E46036A23F4E4 :1014CC0080730362056AD0F80480C76927F0730340 :1014DC000F681F4325F400738D6843EA05251D4BE7 :1014EC0098420FD1CB6833B1082B04D041F2AA211A -:1014FC00194800F0B9FE25F40065F36845EA0325A8 +:1014FC00194800F02FFF25F40065F36845EA032531 :10150C0025F48065134B9C421BD1B369B3F5007F66 -:10151C0005D023B141F2B7210F4800F0A5FE736945 +:10151C0005D023B141F2B7210F4800F01BFF7369CE :10152C00B3F5807F05D023B141F2B8210A4800F011 -:10153C009BFE28F44058736948EA0318B36948EADB +:10153C0011FF28F44058736948EA0318B36948EA64 :10154C000318C4F80480E7617368E3632562BDE89F -:10155C00F08100BF002C01404C2600082DE9F04121 +:10155C00F08100BF002C0140A42700082DE9F041C8 :10156C0004460F46036A23F480530362056AD0F8DD :10157C000480C66926F4E6430E6843EA062625F481 :10158C0000538D6843EA05350C4B98420ED14B69DC :10159C00B3F5807F05D023B141F2F521084800F066 -:1015AC0063FE28F480487B6948EA8318C4F80480F9 +:1015AC00D9FE28F480487B6948EA8318C4F8048083 :1015BC00E6617B6823642562BDE8F081002C014064 -:1015CC004C260008704700BF38B590F83830012B16 +:1015CC00A4270008704700BF38B590F83830012BBD :1015DC0000F005820D460446012380F838300223C2 :1015EC0080F839300B68B3F5805F16D0B3F5005F27 :1015FC0013D093B1102B10D0202B0ED0302B0CD03D :10160C00402B0AD0502B08D0602B06D0702B04D066 -:10161C0040F64B71A04800F027FE2268936823F433 +:10161C0040F64B71A04800F09DFE2268936823F4BD :10162C007F4323F0770393602B68402B00F03881C5 :10163C000ED8102B00F0828103D8002B00F06581AE :10164C00C6E1202B00F09381302B00F0A981BFE183 @@ -362,60 +362,60 @@ :10166C00E580B5E1B3F5805F03D0B3F5005F61D0E1 :10167C00AEE12368894A93420FD0B3F1804F0CD06E :10168C00A2F59432934208D002F58062934204D0C2 -:10169C0040F65771804800F0E7FD2268936823F00C +:10169C0040F65771804800F05DFE2268936823F095 :1016AC000703936094E123687C4A93420FD0B3F113 :1016BC00804F0CD0A2F59432934208D002F5806290 -:1016CC00934204D04FF47661734800F0CDFDAB68C3 +:1016CC00934204D04FF47661734800F043FEAB684C :1016DC006BB1B3F5805F0AD0B3F5005F07D0B3F5FB -:1016EC00405F04D040F663716B4800F0BDFD6B6841 +:1016EC00405F04D040F663716B4800F033FE6B68CA :1016FC00B3F5004F0AD04BB143B1022B06D00A2BE5 -:10170C0004D040F66471644800F0AEFDEB680F2B1A -:10171C0004D940F66571604800F0A6FDEB686A6874 +:10170C0004D040F66471644800F024FEEB680F2BA3 +:10171C0004D940F66571604800F01CFEEB686A68FD :10172C00A9682068FFF768FE2268936843F0770386 :10173C0093604DE12368594A93420FD0B3F1804F27 :10174C000CD0A2F59432934208D002F580629342F9 -:10175C0004D040F67A71504800F086FDAB686BB14E +:10175C0004D040F67A71504800F0FCFDAB686BB1D8 :10176C00B3F5805F0AD0B3F5005F07D0B3F5405FE7 -:10177C0004D040F67D71484800F076FD6B68B3F5F7 +:10177C0004D040F67D71484800F0ECFD6B68B3F581 :10178C00004F0AD04BB143B1022B06D00A2B04D028 -:10179C0040F67E71404800F067FDEB680F2B04D9D2 -:1017AC0040F67F713C4800F05FFDEB686A68A96801 +:10179C0040F67E71404800F0DDFDEB680F2B04D95C +:1017AC0040F67F713C4800F0D5FDEB686A68A9688B :1017BC002068FFF721FE2268936843F4804393600E :1017CC0006E12368354A93420FD0B3F1804F0CD019 :1017DC00A2F59432934208D002F58062934204D071 -:1017EC0040F68E712C4800F03FFD6B68B3F5004F4E +:1017EC0040F68E712C4800F0B5FD6B68B3F5004FD8 :1017FC000AD04BB143B1022B06D00A2B04D040F6D1 -:10180C009171254800F030FDEB680F2B04D940F6A0 -:10181C009271214800F028FDEA6869682068FFF79A +:10180C009171254800F0A6FDEB680F2B04D940F62A +:10181C009271214800F09EFDEA6869682068FFF724 :10182C00BDFD50212068FFF7DFFDD1E023681B4A86 :10183C0093420FD0B3F1804F0CD0A2F59432934267 :10184C0008D002F58062934204D040F69D71124894 -:10185C0000F00AFD6B68B3F5004F0AD04BB143B1F1 +:10185C0000F080FD6B68B3F5004F0AD04BB143B17B :10186C00022B06D00A2B04D04FF47A610A4800F000 -:10187C00FBFCEB680F2B04D940F6A171064800F075 -:10188C00F3FCEA6869682068FFF79AFD602120681C -:10189C00FFF7AAFD9CE000BF4C260008002C01407D +:10187C0071FDEB680F2B04D940F6A171064800F0FE +:10188C0069FDEA6869682068FFF79AFD60212068A5 +:10189C00FFF7AAFD9CE000BFA4270008002C014024 :1018AC002368504A93420FD0B3F1804F0CD0A2F56D :1018BC009432934208D002F58062934204D040F6F1 -:1018CC00AC71494800F0D0FC6B68B3F5004F0AD0FE +:1018CC00AC71494800F046FD6B68B3F5004F0AD087 :1018DC004BB143B1022B06D00A2B04D040F6AF71AA -:1018EC00414800F0C1FCEB680F2B04D94FF47B612D -:1018FC003D4800F0B9FCEA6869682068FFF74EFDC6 +:1018EC00414800F037FDEB680F2B04D94FF47B61B6 +:1018FC003D4800F02FFDEA6869682068FFF74EFD4F :10190C0040212068FFF770FD62E02368354A93425E :10191C000FD0B3F1804F0CD0A2F59432934208D083 :10192C0002F58062934204D040F6BB712E4800F061 -:10193C009BFC00212068FFF757FD49E02368294AEA +:10193C0011FD00212068FFF757FD49E02368294A73 :10194C0093420FD0B3F1804F0CD0A2F59432934256 :10195C0008D002F58062934204D040F6C37122484D -:10196C0000F082FC10212068FFF73EFD30E0236878 +:10196C0000F0F8FC10212068FFF73EFD30E0236802 :10197C001C4A93420FD0B3F1804F0CD0A2F5943295 :10198C00934208D002F58062934204D040F6CB71AA -:10199C00154800F069FC20212068FFF725FD17E0B1 +:10199C00154800F0DFFC20212068FFF725FD17E03B :1019AC002368104A93420FD0B3F1804F0CD0A2F5AC :1019BC009432934208D002F58062934204D040F6F0 -:1019CC00D371094800F050FC30212068FFF70CFD62 +:1019CC00D371094800F0C6FC30212068FFF70CFDEC :1019DC00012384F83930002084F8380038BD022007 -:1019EC0038BD00BF002C01404C2600080368184A83 +:1019EC0038BD00BF002C0140A42700080368184A2A :1019FC0090420AD0B0F1804F07D0A2F594329042B9 :101A0C0003D002F58062904203D123F070034A6840 :101A1C0013430F4A90420AD0B0F1804F07D0A2F581 @@ -425,202 +425,224 @@ :101A5C00002C0140002845D010B504460368224AEA :101A6C0093420ED0B3F1804F0BD0A2F59432934237 :101A7C0007D002F58062934203D0D7211B4800F0B7 -:101A8C00F3FBA3685BB1102B09D0202B07D0402BA4 -:101A9C0005D0602B03D0D821144800F0E5FB236956 +:101A8C0069FCA3685BB1102B09D0202B07D0402B2D +:101A9C0005D0602B03D0D821144800F05BFC2369DF :101AAC004BB1B3F5807F06D0B3F5007F03D0D921BD -:101ABC000E4800F0D9FB94F8393013F0FF0F05D124 -:101ACC00002384F83830204600F044FC022384F8CC +:101ABC000E4800F04FFC94F8393013F0FF0F05D1AD +:101ACC00002384F83830204600F0BAFC022384F856 :101ADC003930211D2068FFF789FF012384F8393044 -:101AEC00002010BD01207047002C01404C2600083E +:101AEC00002010BD01207047002C0140A4270008E5 :101AFC00002848D010B504460368244A93420FD0FE :101B0C00B3F1804F0CD0A2F59432934208D002F579 -:101B1C008062934204D040F2E2311D4800F0A4FBF5 +:101B1C008062934204D040F2E2311D4800F01AFC7E :101B2C00A36863B1102B0AD0202B08D0402B06D011 -:101B3C00602B04D040F2E331154800F095FB23698B +:101B3C00602B04D040F2E331154800F00BFC236914 :101B4C0053B1B3F5807F07D0B3F5007F04D04FF4C9 -:101B5C0079710F4800F088FB94F8393013F0FF0FBF +:101B5C0079710F4800F0FEFB94F8393013F0FF0F49 :101B6C0005D1002384F838302046FFF72BFD0223E3 :101B7C0084F83930211D2068FFF738FF012384F8E1 :101B8C003930002010BD0120704700BF002C0140EF -:101B9C004C2600082DE9F04104460F46036A23F059 +:101B9C00A42700082DE9F04104460F46036A23F000 :101BAC0010030362056AD0F80480866926F4E643C4 :101BBC000E6843EA062625F020038D6843EA0515D6 :101BCC001C4B98420FD1CB6833B1082B04D041F297 -:101BDC005F21194800F048FB25F08005FB6845EAB9 +:101BDC005F21194800F0BEFB25F08005FB6845EA43 :101BEC00031525F04005134B9C421BD1BB69B3F583 -:101BFC00007F05D023B141F26D210F4800F034FB7A +:101BFC00007F05D023B141F26D210F4800F0AAFB04 :101C0C007B69B3F5807F05D023B141F26E210A4880 -:101C1C0000F02AFB28F440687B6948EA8308BB691A +:101C1C0000F0A0FB28F440687B6948EA8308BB69A4 :101C2C0048EA8308C4F80480A6617B68A363256234 -:101C3C00BDE8F081002C01404C26000890F83830AB +:101C3C00BDE8F081002C0140A427000890F8383052 :101C4C00012B00F0E88070B516460D4604460123C2 :101C5C0080F8383062B1042A0AD0082A08D00C2A3D -:101C6C0006D0182A04D040F60D416C4800F0FCFA5E +:101C6C0006D0182A04D040F60D416C4800F072FBE7 :101C7C002B68602B06D0702B04D040F60E416748C1 -:101C8C0000F0F2FAAB6833B1022B04D040F60F41EE -:101C9C00624800F0E9FA2B6933B1042B04D04FF4FD -:101CAC0041615E4800F0E0FA022384F839300C2ED2 +:101C8C0000F068FBAB6833B1022B04D040F60F4177 +:101C9C00624800F05FFB2B6933B1042B04D04FF486 +:101CAC0041615E4800F056FB022384F839300C2E5B :101CBC0000F2AA80DFE806F007A8A8A82FA8A8A819 :101CCC0058A8A8A880002368554A93420FD0B3F1B6 :101CDC00804F0CD0A2F59432934208D002F580626A -:101CEC00934204D040F618414C4800F0BDFA294606 +:101CEC00934204D040F618414C4800F033FB29468F :101CFC002068FFF78DFB2268936943F0080393611A :101D0C002268936923F004039361226891692B691B :101D1C000B43936178E02368414A93420FD0B3F1AF :101D2C00804F0CD0A2F59432934208D002F5806219 -:101D3C00934204D040F62741384800F095FA2946E2 +:101D3C00934204D040F62741384800F00BFB29466B :101D4C002068FFF727FF2268936943F400639361CF :101D5C002268936923F480639361226893692969EB :101D6C0043EA012393614FE023682D4A93420FD03D :101D7C00B3F1804F0CD0A2F59432934208D002F507 -:101D8C008062934204D040F63641244800F06CFA4D +:101D8C008062934204D040F63641244800F0E2FAD7 :101D9C0029462068FFF78EFB2268D36943F00803BD :101DAC00D3612268D36923F00403D3612268D1691B :101DBC002B690B43D36127E02368194A93420FD058 :101DCC00B3F1804F0CD0A2F59432934208D002F5B7 -:101DDC008062934204D040F64541104800F044FA2A +:101DDC008062934204D040F64541104800F0BAFAB4 :101DEC0029462068FFF7BAFB2268D36943F40063E5 :101DFC00D3612268D36923F48063D3612268D369E9 :101E0C00296943EA0123D361012384F83930002086 -:101E1C0084F8380070BD0220704700BF4C260008C3 -:101E2C00002C014038B504460D4603682B4A9342FA -:101E3C000FD0B3F1804F0CD0A2F59432934208D05E -:101E4C0002F58062934204D040F28C61244800F089 -:101E5C000BFA2B6893B1102B10D0202B0ED0302BFB -:101E6C000CD0402B0AD0502B08D0602B06D0702BF6 -:101E7C0004D040F28D611A4800F0F6F96B68802BA3 -:101E8C0005D023B140F28E61154800F0EDF994F8BD -:101E9C003830012B1FD0012284F83820022384F81B -:101EAC00393021684B6823F070034B602168486817 -:101EBC002B6803434B6021688B6823F080038B6095 -:101ECC00216888686B6803438B6084F83920002094 -:101EDC0084F8380038BD022038BD00BF002C01400A -:101EEC0078260008FEE700BF01230360014B0B605E -:101EFC00704700BF0400002008B500F00FF8024B3B -:101F0C00024A9A6008BD00BF00ED00E00000000826 -:101F1C0008B500F029F808BDFEE700000F4B1A6861 -:101F2C0042F001021A6059680D4A0A405A601A6858 -:101F3C0022F0847222F480321A601A6822F4802211 -:101F4C001A605A6822F4FE025A604FF41F029A601B -:101F5C004FF00062034B9A60704700BF00100240C4 -:101F6C000000FFF800ED00E01F4B5B6803F00C0372 -:101F7C00042B06D0082B08D03BBB1C4A1C4B1A6008 -:101F8C0026E01A4A1A4B1A6022E0174A5368526824 -:101F9C00C3F38343023312F4803F05D1154A02FB8D -:101FAC0003F3134A136013E00F4A526812F4003F14 -:101FBC0005D0104A02FB03F30D4A136008E00B4AEC -:101FCC0002FB03F30A4A136002E0084A084B1A604A -:101FDC00054B5B68C3F30313074AD15C044A1368CF -:101FEC00CB401360704700BF0010024000127A0013 -:101FFC000C00002000093D00A826000810B588B090 -:10200C00174B9A6942F010029A619A6902F0100219 -:10201C000192019A9A6942F020029A619A6902F03F -:10202C0020020292029A9A6942F004029A619B6918 -:10203C0003F004030393039B0A4C00224FF4C041AA -:10204C002046FEF78DFB4FF4C04304930123059308 -:10205C000223079304A92046FEF702FA08B010BD2C -:10206C00001002400010014008B500F0E5F9FEE751 -:10207C0008B50E480E4B03604FF482734360002387 -:10208C008360C36002220261012242614FF400723C -:10209C0082611822C2610362436283620A23C362B3 -:1020AC00FFF7B8F808B1FFF7DFFF08BD60000020AC -:1020BC000030014000B587B01448154B0360242351 -:1020CC004360002383604FF47A72C2600361436102 -:1020DC00FFF7C0FC08B1FFF7C7FF06A94FF4805308 -:1020EC0041F8103D0948FFF76FFA08B1FFF7BCFF44 -:1020FC0000230093019369460448FFF793FE08B14F -:10210C00FFF7B2FF07B05DF804FB00BF240000200E -:10211C00002C014000B58FB02A484FF0804303607B -:10212C00002343608360C3600361FFF793FC08B135 -:10213C00FFF79AFF0EA94FF4805341F8103D214848 -:10214C00FFF742FA08B1FFF78FFF1E48FFF7D0FCEC -:10215C0008B1FFF789FF00230893099308A91948D0 -:10216C00FFF760FE08B1FFF77FFF602301930022A9 -:10217C0002920392059201A91248FFF75FFD08B184 -:10218C00FFF772FF04220DEB02010E48FFF756FD1C -:10219C0008B1FFF769FF082201A90A48FFF74EFDB5 -:1021AC0008B1FFF761FF0C2201A90648FFF746FDB5 -:1021BC0008B1FFF759FF034800F0F0F80FB05DF8D5 -:1021CC0004FB00BFB800002000B591B001230693BA -:1021DC004FF4803307930022089202220D920E9343 -:1021EC004FF4E0130F9306A8FEF7E4FA08B1FFF7DB -:1021FC003BFF0F23019302210291002303934FF421 -:10220C0080620492059301A8FEF7ACFE08B1FFF7BB -:10221C002BFFFEF7F9FF094BA3FB00308009FEF7FB -:10222C00E9F80420FEF7FCF8002211464FF0FF30CD -:10223C00FEF79EF811B05DF804FB00BFD34D6210A1 -:10224C0008B500F0EDF8FEF747F8FFF7BDFFFFF714 -:10225C00D5FEFFF70DFFFFF72DFFFFF75BFF00F03B -:10226C00F5F800F0E1F8FCE7704700BF00B583B06B -:10227C00204B9A6942F001029A619B6903F00103B9 -:10228C000193019B0320FEF755F8002211466FF0D5 -:10229C000B00FEF76DF8002211466FF00A00FEF7F6 -:1022AC0067F8002211466FF00900FEF761F8002272 -:1022BC0011466FF00400FEF75BF8002211466FF038 -:1022CC000300FEF755F8002211466FF00100FEF7EF -:1022DC004FF8002211464FF0FF30FEF749F8064A3E -:1022EC00536823F0E06343F00073536003B05DF870 -:1022FC0004FB00BF00100240000001400268134BB9 -:10230C009A4222D110B586B003F560439A6942F423 -:10231C0080529A619B6903F480530193019BA02323 -:10232C0002930223039303230593094C02A920462D -:10233C00FEF796F84023029300230393049302A91B -:10234C002046FEF78DF806B010BD704700300140F6 -:10235C000008014082B003680E4A93420AD10E4B2A -:10236C009A6942F400629A619B6903F400630093DA -:10237C00009B0DE0B3F1804F0AD103F50433DA6909 -:10238C0042F00102DA61DB6903F001030193019B66 -:10239C0002B07047002C0140001002400368B3F1FA -:1023AC00804F0DD100B585B00F230093022301930C -:1023BC00039369460348FEF753F805B05DF804FB38 -:1023CC00704700BF00080140704700BFFEE700BF28 -:1023DC00FEE700BFFEE700BFFEE700BF704700BF8F -:1023EC00704700BF704700BF08B5FDF787FFFEF7C9 -:1023FC0033F808BD08B54FF400510248FEF7CAF98E -:10240C0008BD00BF0010014008B54FF47A730022DC -:10241C001146024800F036F808BD00BF0124000840 -:10242C0008B500F017F808BD08B500F04BF808BD6A -:10243C0008B500F073F808BD08B501224FF48041CF -:10244C000148FEF78DF908BD0010014008B5FFF7F3 -:10245C00DBFF08BD30B400230EE0094C9900CA180C -:10246C00950060190022625142600272C2602846D7 -:10247C00204402610133DBB20F2BEED930BC704724 -:10248C00F4000020F0B5002417E0274604EB840686 -:10249C00B5000B4E3544ED686DB934464FEA870EE6 -:1024AC000EEB0705AE00A519A2516B6000232B7231 -:1024BC00E8602961F0BD0134E4B20F2CE5D9F0BD20 -:1024CC00F400002070B5002422E004EB8402930099 -:1024DC00114A1344DB68CBB104EB840293000E4A1F -:1024EC0013441B7A93B1A10021448A000A4E16446E -:1024FC00013B3372F36830699847736833B904EB66 -:10250C008405AB00044A13440022DA600134E4B2BF -:10251C000F2CDAD970BD00BFF400002070B400237A -:10252C001FE003EB8300820010480244D268B2B172 -:10253C0003EB830082000D48825852B904469A007E -:10254C00D518A80025186E682650287A411C2972C7 -:10255C0005E003EB83018800013A04490A5001337A -:10256C00DBB20F2BDDD970BC704700BFF40000202C -:10257C002E2E2F73797374656D2F7372632F737492 -:10258C006D3332663178782F73746D3332663178EF -:10259C00785F68616C5F636F727465782E6300009E -:1025AC002E2E2F73797374656D2F7372632F737462 -:1025BC006D3332663178782F73746D3332663178BF -:1025CC00785F68616C5F6770696F2E630000000054 -:1025DC0002030405060708090A0B0C0D0E0F101058 -:1025EC00010200002E2E2F73797374656D2F737298 -:1025FC00632F73746D3332663178782F73746D3347 -:10260C0032663178785F68616C5F7263632E630049 -:10261C002E2E2F73797374656D2F7372632F7374F1 -:10262C006D3332663178782F73746D33326631784E -:10263C00785F68616C5F7370695F65782E6300000A -:10264C002E2E2F73797374656D2F7372632F7374C1 -:10265C006D3332663178782F73746D33326631781E -:10266C00785F68616C5F74696D2E63002E2E2F731A -:10267C00797374656D2F7372632F73746D33326657 -:10268C003178782F73746D3332663178785F686186 -:10269C006C5F74696D5F65782E630000000000004C -:0C26AC00000000000102030406070809FA -:1026B80078563412200000200000000000A24A04CE -:0426C800325476987A +:101E1C0084F8380070BD0220704700BFA42700086A +:101E2C00002C014070B504460E461546164B9842E0 +:101E3C000FD0B0F1804F0CD0A3F59433984208D05A +:101E4C0003F58063984204D041F2EB410F4800F057 +:101E5C0081FA66B1042E0AD0082E08D00C2E06D0BA +:101E6C00182E04D041F2EC41084800F073FA01231B +:101E7C0003FA06F2236A23EA02032362236AB540BB +:101E8C001D43256270BD00BF002C0140A427000833 +:101E9C0038B504460D460368164A93420AD0B3F18E +:101EAC00804F07D0A2F59432934203D002F58062A2 +:101EBC00934206D155B1042D08D0082D06D00C2D17 +:101ECC0004D04FF488610C4800F044FA01222946F2 +:101EDC002068FFF7A7FF2368064A934203D15A6C88 +:101EEC0042F400425A642268136843F00103136001 +:101EFC00002038BD002C0140A427000838B504464A +:101F0C000D4603682B4A93420FD0B3F1804F0CD08F +:101F1C00A2F59432934208D002F58062934204D029 +:101F2C0040F28C61244800F015FA2B6893B1102B09 +:101F3C0010D0202B0ED0302B0CD0402B0AD0502B95 +:101F4C0008D0602B06D0702B04D040F28D611A485B +:101F5C0000F000FA6B68802B05D023B140F28E6143 +:101F6C00154800F0F7F994F83830012B1FD00122F6 +:101F7C0084F83820022384F8393021684B6823F028 +:101F8C0070034B60216848682B6803434B602168E1 +:101F9C008B6823F080038B60216888686B6803432F +:101FAC008B6084F83920002084F8380038BD02207A +:101FBC0038BD00BF002C0140D0270008FEE700BF51 +:101FCC0001230360014B0B60704700BF040000202D +:101FDC0008B500F00FF8024B024A9A6008BD00BF2A +:101FEC0000ED00E00000000808B500F029F808BD7D +:101FFC00FEE700000F4B1A6842F001021A605968A4 +:10200C000D4A0A405A601A6822F0847222F4803217 +:10201C001A601A6822F480221A605A6822F4FE02AE +:10202C005A604FF41F029A604FF00062034B9A60A3 +:10203C00704700BF001002400000FFF800ED00E008 +:10204C001F4B5B6803F00C03042B06D0082B08D045 +:10205C003BBB1C4A1C4B1A6026E01A4A1A4B1A60EE +:10206C0022E0174A53685268C3F38343023312F4D5 +:10207C00803F05D1154A02FB03F3134A136013E0AA +:10208C000F4A526812F4003F05D0104A02FB03F3CA +:10209C000D4A136008E00B4A02FB03F30A4A136073 +:1020AC0002E0084A084B1A60054B5B68C3F3031344 +:1020BC00074AD15C044A1368CB401360704700BFD9 +:1020CC000010024000127A000C00002000093D00B4 +:1020DC000028000810B588B01C4B9A6942F0100219 +:1020EC009A619A6902F010020092009A9A6942F081 +:1020FC0020029A619A6902F020020192019A9A696F +:10210C0042F004029A619A6902F004020292029A65 +:10211C009A6942F008029A619B6903F008030393E1 +:10212C00039B0B4C00224FF4C0412046FEF718FBDA +:10213C004FF4C0430493012305930223079304A98E +:10214C002046FEF78DF908B010BD00BF001002400C +:10215C000010014008B500F0F1F9FEE708B50E4893 +:10216C000E4B03604FF48273436000238360C360A3 +:10217C0002220261012242614FF400728261182234 +:10218C00C2610362436283620A23C362FFF742F8AF +:10219C0008B1FFF7DFFF08BD9C00002000300140B4 +:1021AC0000B587B01448154B03602423436000230B +:1021BC0083604FF47A72C26003614361FFF74AFC9B +:1021CC0008B1FFF7C7FF06A94FF4805341F8103D43 +:1021DC000948FFF7F9F908B1FFF7BCFF002300939A +:1021EC00019369460448FFF789FE08B1FFF7B2FF77 +:1021FC0007B05DF804FB00BF60000020002C01401C +:10220C0000B58FB029482A4B0360002343608360DC +:10221C00C3600361FFF71EFC08B1FFF79BFF0EA91B +:10222C004FF4805341F8103D2048FFF7CDF908B129 +:10223C00FFF790FF1D48FFF75BFC08B1FFF78AFF23 +:10224C0000230893099308A91848FFF757FE08B113 +:10225C00FFF780FF60230193002202920392059204 +:10226C0001A91248FFF7EAFC08B1FFF773FF04223B +:10227C000DEB02010D48FFF7E1FC08B1FFF76AFF17 +:10228C00082201A90948FFF7D9FC08B1FFF762FF42 +:10229C000C2201A90548FFF7D1FC08B1FFF75AFF42 +:1022AC00024800F0F3F80FB05DF804FB24000020A6 +:1022BC000004004000B591B0012306934FF4803325 +:1022CC0007930022089202220D920E934FF4E01312 +:1022DC000F9306A8FEF76EFA08B1FFF73BFF0F232A +:1022EC00019302210291002303934FF48062049224 +:1022FC00059301A8FEF736FE08B1FFF72BFFFEF79A +:10230C0083FF094BA3FB00308009FEF773F8042010 +:10231C00FEF786F8002211464FF0FF30FEF728F842 +:10232C0011B05DF804FB00BFD34D621008B500F08E +:10233C00F9F8FDF7D1FFFFF7BDFFFFF7CBFEFFF775 +:10234C000DFFFFF72DFFFFF75BFF00F001F900F029 +:10235C00EDF8FCE7704700BF00B583B0204B9A69DD +:10236C0042F001029A619B6903F001030193019B06 +:10237C000320FDF7DFFF002211466FF00B00FDF785 +:10238C00F7FF002211466FF00A00FDF7F1FF002263 +:10239C0011466FF00900FDF7EBFF002211466FF0BC +:1023AC000400FDF7E5FF002211466FF00300FDF776 +:1023BC00DFFF002211466FF00100FDF7D9FF00226C +:1023CC0011464FF0FF30FDF7D3FF064A536823F058 +:1023DC00E06343F00073536003B05DF804FB00BF8F +:1023EC0000100240000001400268134B9A4222D1B7 +:1023FC0010B586B003F560439A6942F480529A6135 +:10240C009B6903F480530193019BA0230293022345 +:10241C00039303230593094C02A92046FEF720F8E9 +:10242C004023029300230393049302A92046FEF752 +:10243C0017F806B010BD704700300140000801408D +:10244C0082B003680E4A93420AD10E4B9A6942F449 +:10245C0000629A619B6903F400630093009B0CE09B +:10246C00094A934209D1074BDA6942F00202DA6158 +:10247C00DB6903F002030193019B02B0704700BFBC +:10248C00002C0140001002400004004002680C4B7C +:10249C009A4214D100B585B03323009302230193E3 +:1024AC00039369460748FDF7DBFF074A536823F49B +:1024BC00406343F40063536005B05DF804FB704760 +:1024CC0000040040000C014000000140704700BFB8 +:1024DC00FEE700BFFEE700BFFEE700BFFEE700BF60 +:1024EC00704700BF704700BF704700BF08B5FDF7CD +:1024FC0005FFFDF7B1FF08BD08B54FF400510248C8 +:10250C00FEF748F908BD00BF0010014008B54FF4B4 +:10251C007A7300221146024800F060F808BD00BF33 +:10252C000525000808B500F041F808BD08B500F015 +:10253C0075F808BD08B500F09DF808BD08B5012276 +:10254C004FF480410148FEF70BF908BD0010014023 +:10255C0008B5FFF7DBFF00F001F808BD10B5124C11 +:10256C00236842F21072DA62E260C8225A630021D8 +:10257C002046FFF78DFC23684FF47A729A6304218E +:10258C002046FFF785FC23684FF4FA62DA630821D2 +:10259C002046FFF77DFC23684FF4FA521A640C2195 +:1025AC002046FFF775FC10BD2400002030B400233A +:1025BC000EE0094C9900CA1895006019002262516E +:1025CC0042600272C2602846204402610133DBB2D1 +:1025DC000F2BEED930BC7047F4000020F0B500246E +:1025EC0017E0274604EB8406B5000B4E3544ED6826 +:1025FC006DB934464FEA870E0EEB0705AE00A519F0 +:10260C00A2516B6000232B72E8602961F0BD01348C +:10261C00E4B20F2CE5D9F0BDF400002070B5002415 +:10262C0022E004EB84029300114A1344DB68CBB123 +:10263C0004EB840293000E4A13441B7A93B1A1005D +:10264C0021448A000A4E1644013B3372F368306908 +:10265C009847736833B904EB8405AB00044A134400 +:10266C000022DA600134E4B20F2CDAD970BD00BF5D +:10267C00F400002070B400231FE003EB8300820001 +:10268C0010480244D268B2B103EB830082000D48BB +:10269C00825852B904469A00D518A80025186E68BD +:1026AC002650287A411C297205E003EB830188002F +:1026BC00013A04490A500133DBB20F2BDDD970BC4F +:1026CC00704700BFF40000202E2E2F7379737465B1 +:1026DC006D2F7372632F73746D3332663178782F6C +:1026EC0073746D3332663178785F68616C5F636FD9 +:1026FC00727465782E6300002E2E2F7379737465B7 +:10270C006D2F7372632F73746D3332663178782F3B +:10271C0073746D3332663178785F68616C5F6770A3 +:10272C00696F2E6300000000020304050607080908 +:10273C000A0B0C0D0E0F1010010200002E2E2F7321 +:10274C00797374656D2F7372632F73746D33326686 +:10275C003178782F73746D3332663178785F6861B5 +:10276C006C5F7263632E63002E2E2F737973746506 +:10277C006D2F7372632F73746D3332663178782FCB +:10278C0073746D3332663178785F68616C5F737027 +:10279C00695F65782E6300002E2E2F737973746534 +:1027AC006D2F7372632F73746D3332663178782F9B +:1027BC0073746D3332663178785F68616C5F7469FD +:1027CC006D2E63002E2E2F73797374656D2F7372BB +:1027DC00632F73746D3332663178782F73746D3365 +:1027EC0032663178785F68616C5F74696D5F6578AB +:1027FC002E63000000000000000000000102030432 +:04280C0006070809AA +:1028100078563412200000200000000000A24A0474 +:042820003254769820 :040000050800010DE1 :00000001FF diff --git a/Debug/car.map b/Debug/car.map index a9a5a9e..e4bf0b9 100644 --- a/Debug/car.map +++ b/Debug/car.map @@ -13,9 +13,9 @@ Common symbol size file tasks 0x140 ./hottislib/PontCoopScheduler.o errno 0x4 ./system/src/newlib/_syscalls.o pFlash 0x20 ./system/src/stm32f1xx/stm32f1xx_hal_flash.o +htim3 0x3c ./src/main.o htim1 0x3c ./src/main.o hspi1 0x58 ./src/main.o -htim2 0x3c ./src/main.o Discarded input sections @@ -1875,8 +1875,6 @@ Discarded input sections 0x0000000000000000 0x1c0 ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .text.HAL_TIM_OnePulse_ConfigChannel 0x0000000000000000 0x1c0 ./system/src/stm32f1xx/stm32f1xx_hal_tim.o - .text.TIM_CCxChannelCmd - 0x0000000000000000 0x6c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .text.HAL_TIM_OC_Start 0x0000000000000000 0x6c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .text.HAL_TIM_OC_Stop @@ -1889,8 +1887,6 @@ Discarded input sections 0x0000000000000000 0x14c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .text.HAL_TIM_OC_Stop_DMA 0x0000000000000000 0xe0 ./system/src/stm32f1xx/stm32f1xx_hal_tim.o - .text.HAL_TIM_PWM_Start - 0x0000000000000000 0x6c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .text.HAL_TIM_PWM_Stop 0x0000000000000000 0x9c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .text.HAL_TIM_PWM_Start_IT @@ -2936,7 +2932,7 @@ Discarded input sections .text.HAL_SPI_MspDeInit 0x0000000000000000 0x2c ./src/stm32f1xx_hal_msp.o .text.HAL_TIM_Base_MspDeInit - 0x0000000000000000 0x30 ./src/stm32f1xx_hal_msp.o + 0x0000000000000000 0x34 ./src/stm32f1xx_hal_msp.o .debug_macro 0x0000000000000000 0x886 ./src/stm32f1xx_hal_msp.o .debug_macro 0x0000000000000000 0x22 ./src/stm32f1xx_hal_msp.o .debug_macro 0x0000000000000000 0x18c ./src/stm32f1xx_hal_msp.o @@ -3332,6 +3328,120 @@ Discarded input sections .debug_macro 0x0000000000000000 0x83e ./my_src/main2.o .debug_macro 0x0000000000000000 0x11 ./my_src/main2.o .debug_macro 0x0000000000000000 0x7c ./my_src/main2.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .group 0x0000000000000000 0x8 ./my_src/pwm.o + .text 0x0000000000000000 0x0 ./my_src/pwm.o + .data 0x0000000000000000 0x0 ./my_src/pwm.o + .bss 0x0000000000000000 0x0 ./my_src/pwm.o + .text.pwmExec 0x0000000000000000 0x4 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x886 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x22 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x18c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x2e ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x22 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x34e ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x34 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x34 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0xb8e ./my_src/pwm.o + .debug_macro 0x0000000000000000 0xf2f7 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x43 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x3383 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x22 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x4c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x8d ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x35 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x9c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x16 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x4a ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x97 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x30d ./my_src/pwm.o + .debug_macro 0x0000000000000000 0xfd ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x10 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x52 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x1f ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x43 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x20 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x187 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x10 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x5e ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x1c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x52 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x40 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x10 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x40 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0xd7 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x16 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x189 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x57 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x778 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x28b ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x141 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x197 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x1ae ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x2d ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x3c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x57 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x8c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x242 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x143 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x1f4 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x83e ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x11 ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x7c ./my_src/pwm.o + .debug_macro 0x0000000000000000 0x10 ./my_src/pwm.o .group 0x0000000000000000 0x8 ./hottislib/PontCoopScheduler.o .group 0x0000000000000000 0x8 ./hottislib/PontCoopScheduler.o .group 0x0000000000000000 0x8 ./hottislib/PontCoopScheduler.o @@ -3465,6 +3575,7 @@ LOAD ./src/stm32f1xx_hal_msp.o LOAD ./src/stm32f1xx_it.o LOAD ./my_src/blinky.o LOAD ./my_src/main2.o +LOAD ./my_src/pwm.o LOAD ./hottislib/PontCoopScheduler.o LOAD /usr/lib/gcc/arm-none-eabi/5.4.1/../../../arm-none-eabi/lib/armv7-m/libstdc++_nano.a LOAD /usr/lib/gcc/arm-none-eabi/5.4.1/../../../arm-none-eabi/lib/armv7-m/libm.a @@ -3508,10 +3619,10 @@ END GROUP .inits 0x0000000008000294 0x28 0x0000000008000294 __data_regions_array_start = . - 0x0000000008000294 0x4 LONG 0x80026b8 LOADADDR (.data) + 0x0000000008000294 0x4 LONG 0x8002810 LOADADDR (.data) 0x0000000008000298 0x4 LONG 0x20000000 ADDR (.data) 0x000000000800029c 0x4 LONG 0x20000014 (ADDR (.data) + SIZEOF (.data)) - 0x00000000080002a0 0x4 LONG 0x80026b8 LOADADDR (.data_CCMRAM) + 0x00000000080002a0 0x4 LONG 0x8002810 LOADADDR (.data_CCMRAM) 0x00000000080002a4 0x4 LONG 0x0 ADDR (.data_CCMRAM) 0x00000000080002a8 0x4 LONG 0x0 (ADDR (.data_CCMRAM) + SIZEOF (.data_CCMRAM)) 0x00000000080002ac __data_regions_array_end = . @@ -3543,7 +3654,7 @@ END GROUP .flashtext *(.flashtext .flashtext.*) -.text 0x00000000080002bc 0x23fc +.text 0x00000000080002bc 0x2554 *(.text .text.*) .text.HAL_InitTick 0x00000000080002bc 0x28 ./system/src/stm32f1xx/stm32f1xx_hal.o @@ -3634,220 +3745,228 @@ END GROUP .text.HAL_TIM_PWM_ConfigChannel 0x0000000008001c48 0x1e8 ./system/src/stm32f1xx/stm32f1xx_hal_tim.o 0x0000000008001c48 HAL_TIM_PWM_ConfigChannel + .text.TIM_CCxChannelCmd + 0x0000000008001e30 0x6c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o + 0x0000000008001e30 TIM_CCxChannelCmd + .text.HAL_TIM_PWM_Start + 0x0000000008001e9c 0x6c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o + 0x0000000008001e9c HAL_TIM_PWM_Start .text.HAL_TIMEx_MasterConfigSynchronization - 0x0000000008001e30 0xc0 ./system/src/stm32f1xx/stm32f1xx_hal_tim_ex.o - 0x0000000008001e30 HAL_TIMEx_MasterConfigSynchronization - .text._exit 0x0000000008001ef0 0x4 ./system/src/newlib/_exit.o - 0x0000000008001ef0 _exit + 0x0000000008001f08 0xc0 ./system/src/stm32f1xx/stm32f1xx_hal_tim_ex.o + 0x0000000008001f08 HAL_TIMEx_MasterConfigSynchronization + .text._exit 0x0000000008001fc8 0x4 ./system/src/newlib/_exit.o + 0x0000000008001fc8 _exit .text.__initialize_args - 0x0000000008001ef4 0x10 ./system/src/newlib/_syscalls.o - 0x0000000008001ef4 __initialize_args + 0x0000000008001fcc 0x10 ./system/src/newlib/_syscalls.o + 0x0000000008001fcc __initialize_args .text.__initialize_hardware_early - 0x0000000008001f04 0x18 ./system/src/cortexm/_initialize_hardware.o - 0x0000000008001f04 __initialize_hardware_early + 0x0000000008001fdc 0x18 ./system/src/cortexm/_initialize_hardware.o + 0x0000000008001fdc __initialize_hardware_early .text.__initialize_hardware - 0x0000000008001f1c 0x8 ./system/src/cortexm/_initialize_hardware.o - 0x0000000008001f1c __initialize_hardware + 0x0000000008001ff4 0x8 ./system/src/cortexm/_initialize_hardware.o + 0x0000000008001ff4 __initialize_hardware .text.Default_Handler - 0x0000000008001f24 0x2 ./system/src/cmsis/startup_stm32f103xb.o - 0x0000000008001f24 RTC_Alarm_IRQHandler - 0x0000000008001f24 EXTI2_IRQHandler - 0x0000000008001f24 TIM1_CC_IRQHandler - 0x0000000008001f24 PVD_IRQHandler - 0x0000000008001f24 EXTI3_IRQHandler - 0x0000000008001f24 EXTI0_IRQHandler - 0x0000000008001f24 I2C2_EV_IRQHandler - 0x0000000008001f24 ADC1_2_IRQHandler - 0x0000000008001f24 SPI1_IRQHandler - 0x0000000008001f24 TAMPER_IRQHandler - 0x0000000008001f24 DMA1_Channel4_IRQHandler - 0x0000000008001f24 USART3_IRQHandler - 0x0000000008001f24 RTC_IRQHandler - 0x0000000008001f24 DMA1_Channel7_IRQHandler - 0x0000000008001f24 CAN1_RX1_IRQHandler - 0x0000000008001f24 TIM4_IRQHandler - 0x0000000008001f24 I2C1_EV_IRQHandler - 0x0000000008001f24 DMA1_Channel6_IRQHandler - 0x0000000008001f24 TIM3_IRQHandler - 0x0000000008001f24 RCC_IRQHandler - 0x0000000008001f24 TIM1_TRG_COM_IRQHandler - 0x0000000008001f24 DMA1_Channel1_IRQHandler - 0x0000000008001f24 Default_Handler - 0x0000000008001f24 EXTI15_10_IRQHandler - 0x0000000008001f24 EXTI9_5_IRQHandler - 0x0000000008001f24 SPI2_IRQHandler - 0x0000000008001f24 DMA1_Channel5_IRQHandler - 0x0000000008001f24 EXTI4_IRQHandler - 0x0000000008001f24 USB_LP_CAN1_RX0_IRQHandler - 0x0000000008001f24 USB_HP_CAN1_TX_IRQHandler - 0x0000000008001f24 DMA1_Channel3_IRQHandler - 0x0000000008001f24 TIM1_UP_IRQHandler - 0x0000000008001f24 WWDG_IRQHandler - 0x0000000008001f24 TIM2_IRQHandler - 0x0000000008001f24 TIM1_BRK_IRQHandler - 0x0000000008001f24 EXTI1_IRQHandler - 0x0000000008001f24 USART2_IRQHandler - 0x0000000008001f24 I2C2_ER_IRQHandler - 0x0000000008001f24 DMA1_Channel2_IRQHandler - 0x0000000008001f24 CAN1_SCE_IRQHandler - 0x0000000008001f24 FLASH_IRQHandler - 0x0000000008001f24 USART1_IRQHandler - 0x0000000008001f24 I2C1_ER_IRQHandler - 0x0000000008001f24 USBWakeUp_IRQHandler - *fill* 0x0000000008001f26 0x2 + 0x0000000008001ffc 0x2 ./system/src/cmsis/startup_stm32f103xb.o + 0x0000000008001ffc RTC_Alarm_IRQHandler + 0x0000000008001ffc EXTI2_IRQHandler + 0x0000000008001ffc TIM1_CC_IRQHandler + 0x0000000008001ffc PVD_IRQHandler + 0x0000000008001ffc EXTI3_IRQHandler + 0x0000000008001ffc EXTI0_IRQHandler + 0x0000000008001ffc I2C2_EV_IRQHandler + 0x0000000008001ffc ADC1_2_IRQHandler + 0x0000000008001ffc SPI1_IRQHandler + 0x0000000008001ffc TAMPER_IRQHandler + 0x0000000008001ffc DMA1_Channel4_IRQHandler + 0x0000000008001ffc USART3_IRQHandler + 0x0000000008001ffc RTC_IRQHandler + 0x0000000008001ffc DMA1_Channel7_IRQHandler + 0x0000000008001ffc CAN1_RX1_IRQHandler + 0x0000000008001ffc TIM4_IRQHandler + 0x0000000008001ffc I2C1_EV_IRQHandler + 0x0000000008001ffc DMA1_Channel6_IRQHandler + 0x0000000008001ffc TIM3_IRQHandler + 0x0000000008001ffc RCC_IRQHandler + 0x0000000008001ffc TIM1_TRG_COM_IRQHandler + 0x0000000008001ffc DMA1_Channel1_IRQHandler + 0x0000000008001ffc Default_Handler + 0x0000000008001ffc EXTI15_10_IRQHandler + 0x0000000008001ffc EXTI9_5_IRQHandler + 0x0000000008001ffc SPI2_IRQHandler + 0x0000000008001ffc DMA1_Channel5_IRQHandler + 0x0000000008001ffc EXTI4_IRQHandler + 0x0000000008001ffc USB_LP_CAN1_RX0_IRQHandler + 0x0000000008001ffc USB_HP_CAN1_TX_IRQHandler + 0x0000000008001ffc DMA1_Channel3_IRQHandler + 0x0000000008001ffc TIM1_UP_IRQHandler + 0x0000000008001ffc WWDG_IRQHandler + 0x0000000008001ffc TIM2_IRQHandler + 0x0000000008001ffc TIM1_BRK_IRQHandler + 0x0000000008001ffc EXTI1_IRQHandler + 0x0000000008001ffc USART2_IRQHandler + 0x0000000008001ffc I2C2_ER_IRQHandler + 0x0000000008001ffc DMA1_Channel2_IRQHandler + 0x0000000008001ffc CAN1_SCE_IRQHandler + 0x0000000008001ffc FLASH_IRQHandler + 0x0000000008001ffc USART1_IRQHandler + 0x0000000008001ffc I2C1_ER_IRQHandler + 0x0000000008001ffc USBWakeUp_IRQHandler + *fill* 0x0000000008001ffe 0x2 .text.SystemInit - 0x0000000008001f28 0x4c ./system/src/cmsis/system_stm32f1xx.o - 0x0000000008001f28 SystemInit + 0x0000000008002000 0x4c ./system/src/cmsis/system_stm32f1xx.o + 0x0000000008002000 SystemInit .text.SystemCoreClockUpdate - 0x0000000008001f74 0x94 ./system/src/cmsis/system_stm32f1xx.o - 0x0000000008001f74 SystemCoreClockUpdate + 0x000000000800204c 0x94 ./system/src/cmsis/system_stm32f1xx.o + 0x000000000800204c SystemCoreClockUpdate .text.MX_GPIO_Init - 0x0000000008002008 0x6c ./src/main.o + 0x00000000080020e0 0x80 ./src/main.o .text.Error_Handler - 0x0000000008002074 0x8 ./src/main.o - 0x0000000008002074 Error_Handler + 0x0000000008002160 0x8 ./src/main.o + 0x0000000008002160 Error_Handler .text.MX_SPI1_Init - 0x000000000800207c 0x44 ./src/main.o + 0x0000000008002168 0x44 ./src/main.o .text.MX_TIM1_Init - 0x00000000080020c0 0x60 ./src/main.o - .text.MX_TIM2_Init - 0x0000000008002120 0xb4 ./src/main.o + 0x00000000080021ac 0x60 ./src/main.o + .text.MX_TIM3_Init + 0x000000000800220c 0xb4 ./src/main.o .text.SystemClock_Config - 0x00000000080021d4 0x78 ./src/main.o - 0x00000000080021d4 SystemClock_Config - .text.main 0x000000000800224c 0x28 ./src/main.o - 0x000000000800224c main + 0x00000000080022c0 0x78 ./src/main.o + 0x00000000080022c0 SystemClock_Config + .text.main 0x0000000008002338 0x28 ./src/main.o + 0x0000000008002338 main .text.assert_failed - 0x0000000008002274 0x4 ./src/main.o - 0x0000000008002274 assert_failed + 0x0000000008002360 0x4 ./src/main.o + 0x0000000008002360 assert_failed .text.HAL_MspInit - 0x0000000008002278 0x90 ./src/stm32f1xx_hal_msp.o - 0x0000000008002278 HAL_MspInit + 0x0000000008002364 0x90 ./src/stm32f1xx_hal_msp.o + 0x0000000008002364 HAL_MspInit .text.HAL_SPI_MspInit - 0x0000000008002308 0x58 ./src/stm32f1xx_hal_msp.o - 0x0000000008002308 HAL_SPI_MspInit + 0x00000000080023f4 0x58 ./src/stm32f1xx_hal_msp.o + 0x00000000080023f4 HAL_SPI_MspInit .text.HAL_TIM_Base_MspInit - 0x0000000008002360 0x48 ./src/stm32f1xx_hal_msp.o - 0x0000000008002360 HAL_TIM_Base_MspInit + 0x000000000800244c 0x4c ./src/stm32f1xx_hal_msp.o + 0x000000000800244c HAL_TIM_Base_MspInit .text.HAL_TIM_MspPostInit - 0x00000000080023a8 0x2c ./src/stm32f1xx_hal_msp.o - 0x00000000080023a8 HAL_TIM_MspPostInit + 0x0000000008002498 0x40 ./src/stm32f1xx_hal_msp.o + 0x0000000008002498 HAL_TIM_MspPostInit .text.NMI_Handler - 0x00000000080023d4 0x4 ./src/stm32f1xx_it.o - 0x00000000080023d4 NMI_Handler + 0x00000000080024d8 0x4 ./src/stm32f1xx_it.o + 0x00000000080024d8 NMI_Handler .text.HardFault_Handler - 0x00000000080023d8 0x4 ./src/stm32f1xx_it.o - 0x00000000080023d8 HardFault_Handler + 0x00000000080024dc 0x4 ./src/stm32f1xx_it.o + 0x00000000080024dc HardFault_Handler .text.MemManage_Handler - 0x00000000080023dc 0x4 ./src/stm32f1xx_it.o - 0x00000000080023dc MemManage_Handler + 0x00000000080024e0 0x4 ./src/stm32f1xx_it.o + 0x00000000080024e0 MemManage_Handler .text.BusFault_Handler - 0x00000000080023e0 0x4 ./src/stm32f1xx_it.o - 0x00000000080023e0 BusFault_Handler + 0x00000000080024e4 0x4 ./src/stm32f1xx_it.o + 0x00000000080024e4 BusFault_Handler .text.UsageFault_Handler - 0x00000000080023e4 0x4 ./src/stm32f1xx_it.o - 0x00000000080023e4 UsageFault_Handler + 0x00000000080024e8 0x4 ./src/stm32f1xx_it.o + 0x00000000080024e8 UsageFault_Handler .text.SVC_Handler - 0x00000000080023e8 0x4 ./src/stm32f1xx_it.o - 0x00000000080023e8 SVC_Handler + 0x00000000080024ec 0x4 ./src/stm32f1xx_it.o + 0x00000000080024ec SVC_Handler .text.DebugMon_Handler - 0x00000000080023ec 0x4 ./src/stm32f1xx_it.o - 0x00000000080023ec DebugMon_Handler + 0x00000000080024f0 0x4 ./src/stm32f1xx_it.o + 0x00000000080024f0 DebugMon_Handler .text.PendSV_Handler - 0x00000000080023f0 0x4 ./src/stm32f1xx_it.o - 0x00000000080023f0 PendSV_Handler + 0x00000000080024f4 0x4 ./src/stm32f1xx_it.o + 0x00000000080024f4 PendSV_Handler .text.SysTick_Handler - 0x00000000080023f4 0xc ./src/stm32f1xx_it.o - 0x00000000080023f4 SysTick_Handler + 0x00000000080024f8 0xc ./src/stm32f1xx_it.o + 0x00000000080024f8 SysTick_Handler .text.blinkyExec - 0x0000000008002400 0x14 ./my_src/blinky.o - 0x0000000008002400 blinkyExec + 0x0000000008002504 0x14 ./my_src/blinky.o + 0x0000000008002504 blinkyExec .text.blinkyInit - 0x0000000008002414 0x18 ./my_src/blinky.o - 0x0000000008002414 blinkyInit + 0x0000000008002518 0x18 ./my_src/blinky.o + 0x0000000008002518 blinkyInit .text.my_setup_1 - 0x000000000800242c 0x8 ./my_src/main2.o - 0x000000000800242c my_setup_1 - .text.my_loop 0x0000000008002434 0x8 ./my_src/main2.o - 0x0000000008002434 my_loop + 0x0000000008002530 0x8 ./my_src/main2.o + 0x0000000008002530 my_setup_1 + .text.my_loop 0x0000000008002538 0x8 ./my_src/main2.o + 0x0000000008002538 my_loop .text.HAL_SYSTICK_Callback - 0x000000000800243c 0x8 ./my_src/main2.o - 0x000000000800243c HAL_SYSTICK_Callback + 0x0000000008002540 0x8 ./my_src/main2.o + 0x0000000008002540 HAL_SYSTICK_Callback .text.my_errorHandler - 0x0000000008002444 0x14 ./my_src/main2.o - 0x0000000008002444 my_errorHandler + 0x0000000008002548 0x14 ./my_src/main2.o + 0x0000000008002548 my_errorHandler .text.my_setup_2 - 0x0000000008002458 0x8 ./my_src/main2.o - 0x0000000008002458 my_setup_2 - .text.schInit 0x0000000008002460 0x30 ./hottislib/PontCoopScheduler.o - 0x0000000008002460 schInit - .text.schAdd 0x0000000008002490 0x40 ./hottislib/PontCoopScheduler.o - 0x0000000008002490 schAdd - .text.schExec 0x00000000080024d0 0x58 ./hottislib/PontCoopScheduler.o - 0x00000000080024d0 schExec + 0x000000000800255c 0xc ./my_src/main2.o + 0x000000000800255c my_setup_2 + .text.pwmInit 0x0000000008002568 0x50 ./my_src/pwm.o + 0x0000000008002568 pwmInit + .text.schInit 0x00000000080025b8 0x30 ./hottislib/PontCoopScheduler.o + 0x00000000080025b8 schInit + .text.schAdd 0x00000000080025e8 0x40 ./hottislib/PontCoopScheduler.o + 0x00000000080025e8 schAdd + .text.schExec 0x0000000008002628 0x58 ./hottislib/PontCoopScheduler.o + 0x0000000008002628 schExec .text.schUpdate - 0x0000000008002528 0x54 ./hottislib/PontCoopScheduler.o - 0x0000000008002528 schUpdate + 0x0000000008002680 0x54 ./hottislib/PontCoopScheduler.o + 0x0000000008002680 schUpdate *(.rodata .rodata.* .constdata .constdata.*) .rodata.str1.4 - 0x000000000800257c 0x2f ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o - *fill* 0x00000000080025ab 0x1 + 0x00000000080026d4 0x2f ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o + *fill* 0x0000000008002703 0x1 .rodata.str1.4 - 0x00000000080025ac 0x2d ./system/src/stm32f1xx/stm32f1xx_hal_gpio.o - *fill* 0x00000000080025d9 0x3 - .rodata 0x00000000080025dc 0x12 ./system/src/stm32f1xx/stm32f1xx_hal_rcc.o - *fill* 0x00000000080025ee 0x2 + 0x0000000008002704 0x2d ./system/src/stm32f1xx/stm32f1xx_hal_gpio.o + *fill* 0x0000000008002731 0x3 + .rodata 0x0000000008002734 0x12 ./system/src/stm32f1xx/stm32f1xx_hal_rcc.o + *fill* 0x0000000008002746 0x2 .rodata.str1.4 - 0x00000000080025f0 0x2c ./system/src/stm32f1xx/stm32f1xx_hal_rcc.o + 0x0000000008002748 0x2c ./system/src/stm32f1xx/stm32f1xx_hal_rcc.o .rodata.str1.4 - 0x000000000800261c 0x2f ./system/src/stm32f1xx/stm32f1xx_hal_spi_ex.o - *fill* 0x000000000800264b 0x1 + 0x0000000008002774 0x2f ./system/src/stm32f1xx/stm32f1xx_hal_spi_ex.o + *fill* 0x00000000080027a3 0x1 .rodata.str1.4 - 0x000000000800264c 0x2c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o + 0x00000000080027a4 0x2c ./system/src/stm32f1xx/stm32f1xx_hal_tim.o .rodata.str1.4 - 0x0000000008002678 0x30 ./system/src/stm32f1xx/stm32f1xx_hal_tim_ex.o + 0x00000000080027d0 0x30 ./system/src/stm32f1xx/stm32f1xx_hal_tim_ex.o 0x2f (size before relaxing) .rodata.AHBPrescTable - 0x00000000080026a8 0x10 ./system/src/cmsis/system_stm32f1xx.o - 0x00000000080026a8 AHBPrescTable + 0x0000000008002800 0x10 ./system/src/cmsis/system_stm32f1xx.o + 0x0000000008002800 AHBPrescTable *(vtable) *(.eh_frame*) *(.glue_7) - .glue_7 0x00000000080026b8 0x0 linker stubs + .glue_7 0x0000000008002810 0x0 linker stubs *(.glue_7t) - .glue_7t 0x00000000080026b8 0x0 linker stubs + .glue_7t 0x0000000008002810 0x0 linker stubs -.vfp11_veneer 0x00000000080026b8 0x0 - .vfp11_veneer 0x00000000080026b8 0x0 linker stubs +.vfp11_veneer 0x0000000008002810 0x0 + .vfp11_veneer 0x0000000008002810 0x0 linker stubs -.v4_bx 0x00000000080026b8 0x0 - .v4_bx 0x00000000080026b8 0x0 linker stubs +.v4_bx 0x0000000008002810 0x0 + .v4_bx 0x0000000008002810 0x0 linker stubs -.iplt 0x00000000080026b8 0x0 - .iplt 0x00000000080026b8 0x0 ./system/src/stm32f1xx/stm32f1xx_hal.o +.iplt 0x0000000008002810 0x0 + .iplt 0x0000000008002810 0x0 ./system/src/stm32f1xx/stm32f1xx_hal.o -.rel.dyn 0x00000000080026b8 0x0 - .rel.iplt 0x00000000080026b8 0x0 ./system/src/stm32f1xx/stm32f1xx_hal.o +.rel.dyn 0x0000000008002810 0x0 + .rel.iplt 0x0000000008002810 0x0 ./system/src/stm32f1xx/stm32f1xx_hal.o .ARM.extab *(.ARM.extab* .gnu.linkonce.armextab.*) - 0x00000000080026b8 . = ALIGN (0x4) - 0x00000000080026b8 __exidx_start = . + 0x0000000008002810 . = ALIGN (0x4) + 0x0000000008002810 __exidx_start = . .ARM.exidx *(.ARM.exidx* .gnu.linkonce.armexidx.*) - 0x00000000080026b8 __exidx_end = . - 0x00000000080026b8 . = ALIGN (0x4) - 0x00000000080026b8 _etext = . - 0x00000000080026b8 __etext = . + 0x0000000008002810 __exidx_end = . + 0x0000000008002810 . = ALIGN (0x4) + 0x0000000008002810 _etext = . + 0x0000000008002810 __etext = . -.data_CCMRAM 0x0000000000000000 0x0 load address 0x00000000080026b8 +.data_CCMRAM 0x0000000000000000 0x0 load address 0x0000000008002810 FILL mask 0xff *(.data.CCMRAM .data.CCMRAM.*) 0x0000000000000000 . = ALIGN (0x4) - 0x00000000080026b8 _sidata = LOADADDR (.data) + 0x0000000008002810 _sidata = LOADADDR (.data) -.data 0x0000000020000000 0x14 load address 0x00000000080026b8 +.data 0x0000000020000000 0x14 load address 0x0000000008002810 FILL mask 0xff 0x0000000020000000 _sdata = . 0x0000000020000000 __data_start__ = . @@ -3865,7 +3984,7 @@ END GROUP 0x0000000020000014 _edata = . 0x0000000020000014 __data_end__ = . -.igot.plt 0x0000000020000014 0x0 load address 0x00000000080026cc +.igot.plt 0x0000000020000014 0x0 load address 0x0000000008002824 .igot.plt 0x0000000020000014 0x0 ./system/src/stm32f1xx/stm32f1xx_hal.o .bss_CCMRAM 0x0000000000000000 0x0 @@ -3887,9 +4006,9 @@ END GROUP *(COMMON) *fill* 0x0000000020000021 0x3 COMMON 0x0000000020000024 0xd0 ./src/main.o - 0x0000000020000024 htim1 - 0x0000000020000060 hspi1 - 0x00000000200000b8 htim2 + 0x0000000020000024 htim3 + 0x0000000020000060 htim1 + 0x000000002000009c hspi1 COMMON 0x00000000200000f4 0x140 ./hottislib/PontCoopScheduler.o 0x00000000200000f4 tasks *(.bss_end .bss_end.*) @@ -3979,6 +4098,7 @@ END GROUP .comment 0x000000000000002b 0x2c ./src/stm32f1xx_it.o .comment 0x000000000000002b 0x2c ./my_src/blinky.o .comment 0x000000000000002b 0x2c ./my_src/main2.o + .comment 0x000000000000002b 0x2c ./my_src/pwm.o .comment 0x000000000000002b 0x2c ./hottislib/PontCoopScheduler.o .ARM.attributes @@ -4022,7 +4142,9 @@ END GROUP .ARM.attributes 0x0000000000000384 0x33 ./my_src/main2.o .ARM.attributes - 0x00000000000003b7 0x33 ./hottislib/PontCoopScheduler.o + 0x00000000000003b7 0x33 ./my_src/pwm.o + .ARM.attributes + 0x00000000000003ea 0x33 ./hottislib/PontCoopScheduler.o .debug *(.debug) @@ -4036,7 +4158,7 @@ END GROUP .debug_sfnames *(.debug_sfnames) -.debug_aranges 0x0000000000000000 0xa20 +.debug_aranges 0x0000000000000000 0xa48 *(.debug_aranges) .debug_aranges 0x0000000000000000 0xb0 ./system/src/stm32f1xx/stm32f1xx_hal.o @@ -4077,12 +4199,14 @@ END GROUP .debug_aranges 0x00000000000009a0 0x40 ./my_src/main2.o .debug_aranges - 0x00000000000009e0 0x40 ./hottislib/PontCoopScheduler.o + 0x00000000000009e0 0x28 ./my_src/pwm.o + .debug_aranges + 0x0000000000000a08 0x40 ./hottislib/PontCoopScheduler.o .debug_pubnames *(.debug_pubnames) -.debug_info 0x0000000000000000 0xc8ac +.debug_info 0x0000000000000000 0xce5d *(.debug_info .gnu.linkonce.wi.*) .debug_info 0x0000000000000000 0x683 ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_info 0x0000000000000683 0xced ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o @@ -4098,14 +4222,15 @@ END GROUP .debug_info 0x0000000000009bdb 0x281 ./system/src/cortexm/exception_handlers.o .debug_info 0x0000000000009e5c 0x6f ./system/src/cmsis/startup_stm32f103xb.o .debug_info 0x0000000000009ecb 0x3bc ./system/src/cmsis/system_stm32f1xx.o - .debug_info 0x000000000000a287 0x117f ./src/main.o - .debug_info 0x000000000000b406 0xcff ./src/stm32f1xx_hal_msp.o - .debug_info 0x000000000000c105 0x169 ./src/stm32f1xx_it.o - .debug_info 0x000000000000c26e 0x1bf ./my_src/blinky.o - .debug_info 0x000000000000c42d 0x22f ./my_src/main2.o - .debug_info 0x000000000000c65c 0x250 ./hottislib/PontCoopScheduler.o + .debug_info 0x000000000000a287 0x119c ./src/main.o + .debug_info 0x000000000000b423 0xcff ./src/stm32f1xx_hal_msp.o + .debug_info 0x000000000000c122 0x169 ./src/stm32f1xx_it.o + .debug_info 0x000000000000c28b 0x1bf ./my_src/blinky.o + .debug_info 0x000000000000c44a 0x243 ./my_src/main2.o + .debug_info 0x000000000000c68d 0x580 ./my_src/pwm.o + .debug_info 0x000000000000cc0d 0x250 ./hottislib/PontCoopScheduler.o -.debug_abbrev 0x0000000000000000 0x1dcb +.debug_abbrev 0x0000000000000000 0x1f60 *(.debug_abbrev) .debug_abbrev 0x0000000000000000 0x21f ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_abbrev 0x000000000000021f 0x2d4 ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o @@ -4126,9 +4251,10 @@ END GROUP .debug_abbrev 0x00000000000019c5 0xbb ./src/stm32f1xx_it.o .debug_abbrev 0x0000000000001a80 0x10b ./my_src/blinky.o .debug_abbrev 0x0000000000001b8b 0x118 ./my_src/main2.o - .debug_abbrev 0x0000000000001ca3 0x128 ./hottislib/PontCoopScheduler.o + .debug_abbrev 0x0000000000001ca3 0x195 ./my_src/pwm.o + .debug_abbrev 0x0000000000001e38 0x128 ./hottislib/PontCoopScheduler.o -.debug_line 0x0000000000000000 0x829b +.debug_line 0x0000000000000000 0x87c2 *(.debug_line) .debug_line 0x0000000000000000 0x628 ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_line 0x0000000000000628 0x695 ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o @@ -4144,14 +4270,15 @@ END GROUP .debug_line 0x0000000000005f80 0x3b5 ./system/src/cortexm/exception_handlers.o .debug_line 0x0000000000006335 0x86 ./system/src/cmsis/startup_stm32f103xb.o .debug_line 0x00000000000063bb 0x17b ./system/src/cmsis/system_stm32f1xx.o - .debug_line 0x0000000000006536 0x5c1 ./src/main.o - .debug_line 0x0000000000006af7 0x544 ./src/stm32f1xx_hal_msp.o - .debug_line 0x000000000000703b 0x556 ./src/stm32f1xx_it.o - .debug_line 0x0000000000007591 0x519 ./my_src/blinky.o - .debug_line 0x0000000000007aaa 0x56c ./my_src/main2.o - .debug_line 0x0000000000008016 0x285 ./hottislib/PontCoopScheduler.o + .debug_line 0x0000000000006536 0x5c2 ./src/main.o + .debug_line 0x0000000000006af8 0x545 ./src/stm32f1xx_hal_msp.o + .debug_line 0x000000000000703d 0x556 ./src/stm32f1xx_it.o + .debug_line 0x0000000000007593 0x519 ./my_src/blinky.o + .debug_line 0x0000000000007aac 0x576 ./my_src/main2.o + .debug_line 0x0000000000008022 0x51b ./my_src/pwm.o + .debug_line 0x000000000000853d 0x285 ./hottislib/PontCoopScheduler.o -.debug_frame 0x0000000000000000 0x199c +.debug_frame 0x0000000000000000 0x19d4 *(.debug_frame) .debug_frame 0x0000000000000000 0x168 ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_frame 0x0000000000000168 0x144 ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o @@ -4171,9 +4298,10 @@ END GROUP .debug_frame 0x0000000000001788 0xa8 ./src/stm32f1xx_it.o .debug_frame 0x0000000000001830 0x40 ./my_src/blinky.o .debug_frame 0x0000000000001870 0x88 ./my_src/main2.o - .debug_frame 0x00000000000018f8 0xa4 ./hottislib/PontCoopScheduler.o + .debug_frame 0x00000000000018f8 0x38 ./my_src/pwm.o + .debug_frame 0x0000000000001930 0xa4 ./hottislib/PontCoopScheduler.o -.debug_str 0x0000000000000000 0x8e56a +.debug_str 0x0000000000000000 0x8e592 *(.debug_str) .debug_str 0x0000000000000000 0x899a6 ./system/src/stm32f1xx/stm32f1xx_hal.o 0x89e90 (size before relaxing) @@ -4209,9 +4337,11 @@ END GROUP 0x89840 (size before relaxing) .debug_str 0x000000000008e493 0x65 ./my_src/blinky.o 0x8980d (size before relaxing) - .debug_str 0x000000000008e4f8 0x2c ./my_src/main2.o - 0x8994d (size before relaxing) - .debug_str 0x000000000008e524 0x46 ./hottislib/PontCoopScheduler.o + .debug_str 0x000000000008e4f8 0x3c ./my_src/main2.o + 0x8995d (size before relaxing) + .debug_str 0x000000000008e534 0x18 ./my_src/pwm.o + 0x89b6d (size before relaxing) + .debug_str 0x000000000008e54c 0x46 ./hottislib/PontCoopScheduler.o 0x5dbd (size before relaxing) .debug_loc 0x0000000000000000 0x4bec @@ -4246,7 +4376,7 @@ END GROUP *(.debug_varnames) OUTPUT(car.elf elf32-littlearm) -.debug_ranges 0x0000000000000000 0x900 +.debug_ranges 0x0000000000000000 0x918 .debug_ranges 0x0000000000000000 0xa0 ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_ranges 0x00000000000000a0 0x80 ./system/src/stm32f1xx/stm32f1xx_hal_cortex.o .debug_ranges 0x0000000000000120 0x48 ./system/src/stm32f1xx/stm32f1xx_hal_gpio.o @@ -4266,9 +4396,10 @@ OUTPUT(car.elf elf32-littlearm) .debug_ranges 0x0000000000000838 0x50 ./src/stm32f1xx_it.o .debug_ranges 0x0000000000000888 0x18 ./my_src/blinky.o .debug_ranges 0x00000000000008a0 0x30 ./my_src/main2.o - .debug_ranges 0x00000000000008d0 0x30 ./hottislib/PontCoopScheduler.o + .debug_ranges 0x00000000000008d0 0x18 ./my_src/pwm.o + .debug_ranges 0x00000000000008e8 0x30 ./hottislib/PontCoopScheduler.o -.debug_macro 0x0000000000000000 0x19fa3 +.debug_macro 0x0000000000000000 0x1a27a .debug_macro 0x0000000000000000 0x2de ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_macro 0x00000000000002de 0x886 ./system/src/stm32f1xx/stm32f1xx_hal.o .debug_macro 0x0000000000000b64 0x22 ./system/src/stm32f1xx/stm32f1xx_hal.o @@ -4360,6 +4491,7 @@ OUTPUT(car.elf elf32-littlearm) .debug_macro 0x00000000000195d0 0x2c4 ./src/stm32f1xx_it.o .debug_macro 0x0000000000019894 0x2cd ./my_src/blinky.o .debug_macro 0x0000000000019b61 0x10 ./my_src/blinky.o - .debug_macro 0x0000000000019b71 0x2fc ./my_src/main2.o - .debug_macro 0x0000000000019e6d 0x1c ./my_src/main2.o - .debug_macro 0x0000000000019e89 0x11a ./hottislib/PontCoopScheduler.o + .debug_macro 0x0000000000019b71 0x306 ./my_src/main2.o + .debug_macro 0x0000000000019e77 0x1c ./my_src/main2.o + .debug_macro 0x0000000000019e93 0x2cd ./my_src/pwm.o + .debug_macro 0x000000000001a160 0x11a ./hottislib/PontCoopScheduler.o diff --git a/Debug/my_src/main2.d b/Debug/my_src/main2.d index 0ff6f5e..16fe205 100644 --- a/Debug/my_src/main2.d +++ b/Debug/my_src/main2.d @@ -23,7 +23,8 @@ my_src/main2.o: ../my_src/main2.c \ ../system/include/stm32f1xx/stm32f1xx_hal_pwr.h \ ../system/include/stm32f1xx/stm32f1xx_hal_spi.h \ ../system/include/stm32f1xx/stm32f1xx_hal_tim.h \ - ../system/include/stm32f1xx/stm32f1xx_hal_tim_ex.h ../my_src/blinky.h + ../system/include/stm32f1xx/stm32f1xx_hal_tim_ex.h ../my_src/blinky.h \ + ../my_src/pwm.h /home/wn/workspace-stm32/car/hottislib/PontCoopScheduler.h: @@ -78,3 +79,5 @@ my_src/main2.o: ../my_src/main2.c \ ../system/include/stm32f1xx/stm32f1xx_hal_tim_ex.h: ../my_src/blinky.h: + +../my_src/pwm.h: diff --git a/Debug/my_src/main2.o b/Debug/my_src/main2.o index 336c697..0bfda8b 100644 Binary files a/Debug/my_src/main2.o and b/Debug/my_src/main2.o differ diff --git a/Debug/my_src/pwm.d b/Debug/my_src/pwm.d new file mode 100644 index 0000000..95737b1 --- /dev/null +++ b/Debug/my_src/pwm.d @@ -0,0 +1,80 @@ +my_src/pwm.o: ../my_src/pwm.c ../my_src/pwm.h \ + ../system/include/stm32f1xx/stm32f1xx_hal.h \ + ../include/stm32f1xx_hal_conf.h ../include/mxconstants.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_rcc.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_def.h \ + ../system/include/cmsis/device/stm32f1xx.h \ + ../system/include/cmsis/device/stm32f103xb.h \ + ../system/include/cmsis/core_cm3.h \ + ../system/include/cmsis/core_cmInstr.h \ + ../system/include/cmsis/cmsis_gcc.h \ + ../system/include/cmsis/core_cmFunc.h \ + ../system/include/cmsis/device/system_stm32f1xx.h \ + ../system/include/stm32f1xx/Legacy/stm32_hal_legacy.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_rcc_ex.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_gpio.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_gpio_ex.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_dma.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_dma_ex.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_cortex.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_flash.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_flash_ex.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_pwr.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_spi.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_tim.h \ + ../system/include/stm32f1xx/stm32f1xx_hal_tim_ex.h \ + /home/wn/workspace-stm32/car/hottislib/PontCoopScheduler.h + +../my_src/pwm.h: + +../system/include/stm32f1xx/stm32f1xx_hal.h: + +../include/stm32f1xx_hal_conf.h: + +../include/mxconstants.h: + +../system/include/stm32f1xx/stm32f1xx_hal_rcc.h: + +../system/include/stm32f1xx/stm32f1xx_hal_def.h: + +../system/include/cmsis/device/stm32f1xx.h: + +../system/include/cmsis/device/stm32f103xb.h: + +../system/include/cmsis/core_cm3.h: + +../system/include/cmsis/core_cmInstr.h: + +../system/include/cmsis/cmsis_gcc.h: + +../system/include/cmsis/core_cmFunc.h: + +../system/include/cmsis/device/system_stm32f1xx.h: + +../system/include/stm32f1xx/Legacy/stm32_hal_legacy.h: + +../system/include/stm32f1xx/stm32f1xx_hal_rcc_ex.h: + +../system/include/stm32f1xx/stm32f1xx_hal_gpio.h: + +../system/include/stm32f1xx/stm32f1xx_hal_gpio_ex.h: + +../system/include/stm32f1xx/stm32f1xx_hal_dma.h: + +../system/include/stm32f1xx/stm32f1xx_hal_dma_ex.h: + +../system/include/stm32f1xx/stm32f1xx_hal_cortex.h: + +../system/include/stm32f1xx/stm32f1xx_hal_flash.h: + +../system/include/stm32f1xx/stm32f1xx_hal_flash_ex.h: + +../system/include/stm32f1xx/stm32f1xx_hal_pwr.h: + +../system/include/stm32f1xx/stm32f1xx_hal_spi.h: + +../system/include/stm32f1xx/stm32f1xx_hal_tim.h: + +../system/include/stm32f1xx/stm32f1xx_hal_tim_ex.h: + +/home/wn/workspace-stm32/car/hottislib/PontCoopScheduler.h: diff --git a/Debug/my_src/pwm.o b/Debug/my_src/pwm.o new file mode 100644 index 0000000..19af87e Binary files /dev/null and b/Debug/my_src/pwm.o differ diff --git a/Debug/my_src/subdir.mk b/Debug/my_src/subdir.mk index 04a98fa..d785979 100644 --- a/Debug/my_src/subdir.mk +++ b/Debug/my_src/subdir.mk @@ -5,15 +5,18 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ ../my_src/blinky.c \ -../my_src/main2.c +../my_src/main2.c \ +../my_src/pwm.c OBJS += \ ./my_src/blinky.o \ -./my_src/main2.o +./my_src/main2.o \ +./my_src/pwm.o C_DEPS += \ ./my_src/blinky.d \ -./my_src/main2.d +./my_src/main2.d \ +./my_src/pwm.d # Each subdirectory must supply rules for building sources it contributes diff --git a/Debug/src/main.o b/Debug/src/main.o index b970eae..6f86539 100644 Binary files a/Debug/src/main.o and b/Debug/src/main.o differ diff --git a/Debug/src/stm32f1xx_hal_msp.o b/Debug/src/stm32f1xx_hal_msp.o index 1f59ada..5ea5c6a 100644 Binary files a/Debug/src/stm32f1xx_hal_msp.o and b/Debug/src/stm32f1xx_hal_msp.o differ diff --git a/cubemx/car/Src/main.c b/cubemx/car/Src/main.c index 006ab9e..c28dbca 100644 --- a/cubemx/car/Src/main.c +++ b/cubemx/car/Src/main.c @@ -41,7 +41,7 @@ SPI_HandleTypeDef hspi1; TIM_HandleTypeDef htim1; -TIM_HandleTypeDef htim2; +TIM_HandleTypeDef htim3; /* USER CODE BEGIN PV */ /* Private variables ---------------------------------------------------------*/ @@ -54,7 +54,7 @@ void Error_Handler(void); static void MX_GPIO_Init(void); static void MX_SPI1_Init(void); static void MX_TIM1_Init(void); -static void MX_TIM2_Init(void); +static void MX_TIM3_Init(void); void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim); @@ -87,7 +87,7 @@ int main(void) MX_GPIO_Init(); MX_SPI1_Init(); MX_TIM1_Init(); - MX_TIM2_Init(); + MX_TIM3_Init(); /* USER CODE BEGIN 2 */ @@ -200,38 +200,38 @@ static void MX_TIM1_Init(void) } -/* TIM2 init function */ -static void MX_TIM2_Init(void) +/* TIM3 init function */ +static void MX_TIM3_Init(void) { TIM_ClockConfigTypeDef sClockSourceConfig; TIM_MasterConfigTypeDef sMasterConfig; TIM_OC_InitTypeDef sConfigOC; - htim2.Instance = TIM2; - htim2.Init.Prescaler = 0; - htim2.Init.CounterMode = TIM_COUNTERMODE_UP; - htim2.Init.Period = 0; - htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - if (HAL_TIM_Base_Init(&htim2) != HAL_OK) + htim3.Instance = TIM3; + htim3.Init.Prescaler = 0; + htim3.Init.CounterMode = TIM_COUNTERMODE_UP; + htim3.Init.Period = 0; + htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + if (HAL_TIM_Base_Init(&htim3) != HAL_OK) { Error_Handler(); } sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; - if (HAL_TIM_ConfigClockSource(&htim2, &sClockSourceConfig) != HAL_OK) + if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_Init(&htim2) != HAL_OK) + if (HAL_TIM_PWM_Init(&htim3) != HAL_OK) { Error_Handler(); } sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK) + if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK) { Error_Handler(); } @@ -240,27 +240,27 @@ static void MX_TIM2_Init(void) sConfigOC.Pulse = 0; sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_2) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_4) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_4) != HAL_OK) { Error_Handler(); } - HAL_TIM_MspPostInit(&htim2); + HAL_TIM_MspPostInit(&htim3); } @@ -280,6 +280,7 @@ static void MX_GPIO_Init(void) __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOD_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); + __HAL_RCC_GPIOB_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOC, LED_Pin|ERROR_Pin, GPIO_PIN_RESET); diff --git a/cubemx/car/Src/stm32f1xx_hal_msp.c b/cubemx/car/Src/stm32f1xx_hal_msp.c index 5155b9d..3eebe9f 100644 --- a/cubemx/car/Src/stm32f1xx_hal_msp.c +++ b/cubemx/car/Src/stm32f1xx_hal_msp.c @@ -150,16 +150,16 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) /* USER CODE END TIM1_MspInit 1 */ } - else if(htim_base->Instance==TIM2) + else if(htim_base->Instance==TIM3) { - /* USER CODE BEGIN TIM2_MspInit 0 */ + /* USER CODE BEGIN TIM3_MspInit 0 */ - /* USER CODE END TIM2_MspInit 0 */ + /* USER CODE END TIM3_MspInit 0 */ /* Peripheral clock enable */ - __HAL_RCC_TIM2_CLK_ENABLE(); - /* USER CODE BEGIN TIM2_MspInit 1 */ + __HAL_RCC_TIM3_CLK_ENABLE(); + /* USER CODE BEGIN TIM3_MspInit 1 */ - /* USER CODE END TIM2_MspInit 1 */ + /* USER CODE END TIM3_MspInit 1 */ } } @@ -168,26 +168,28 @@ void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) { GPIO_InitTypeDef GPIO_InitStruct; - if(htim->Instance==TIM2) + if(htim->Instance==TIM3) { - /* USER CODE BEGIN TIM2_MspPostInit 0 */ + /* USER CODE BEGIN TIM3_MspPostInit 0 */ - /* USER CODE END TIM2_MspPostInit 0 */ + /* USER CODE END TIM3_MspPostInit 0 */ - /**TIM2 GPIO Configuration - PA0-WKUP ------> TIM2_CH1 - PA1 ------> TIM2_CH2 - PA2 ------> TIM2_CH3 - PA3 ------> TIM2_CH4 + /**TIM3 GPIO Configuration + PB0 ------> TIM3_CH3 + PB1 ------> TIM3_CH4 + PB4 ------> TIM3_CH1 + PB5 ------> TIM3_CH2 */ - GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3; + GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_4|GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - /* USER CODE BEGIN TIM2_MspPostInit 1 */ + __HAL_AFIO_REMAP_TIM3_PARTIAL(); - /* USER CODE END TIM2_MspPostInit 1 */ + /* USER CODE BEGIN TIM3_MspPostInit 1 */ + + /* USER CODE END TIM3_MspPostInit 1 */ } } @@ -206,16 +208,16 @@ void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base) /* USER CODE END TIM1_MspDeInit 1 */ } - else if(htim_base->Instance==TIM2) + else if(htim_base->Instance==TIM3) { - /* USER CODE BEGIN TIM2_MspDeInit 0 */ + /* USER CODE BEGIN TIM3_MspDeInit 0 */ - /* USER CODE END TIM2_MspDeInit 0 */ + /* USER CODE END TIM3_MspDeInit 0 */ /* Peripheral clock disable */ - __HAL_RCC_TIM2_CLK_DISABLE(); - /* USER CODE BEGIN TIM2_MspDeInit 1 */ + __HAL_RCC_TIM3_CLK_DISABLE(); + /* USER CODE BEGIN TIM3_MspDeInit 1 */ - /* USER CODE END TIM2_MspDeInit 1 */ + /* USER CODE END TIM3_MspDeInit 1 */ } } diff --git a/cubemx/car/car.ioc b/cubemx/car/car.ioc index 77e37af..1753d1a 100644 --- a/cubemx/car/car.ioc +++ b/cubemx/car/car.ioc @@ -7,26 +7,26 @@ Mcu.IP1=RCC Mcu.IP2=SPI1 Mcu.IP3=SYS Mcu.IP4=TIM1 -Mcu.IP5=TIM2 +Mcu.IP5=TIM3 Mcu.IPNb=6 Mcu.Name=STM32F103C(8-B)Tx Mcu.Package=LQFP48 Mcu.Pin0=PC13-TAMPER-RTC Mcu.Pin1=PC14-OSC32_IN -Mcu.Pin10=PA7 -Mcu.Pin11=PA13 -Mcu.Pin12=PA14 +Mcu.Pin10=PA14 +Mcu.Pin11=PB4 +Mcu.Pin12=PB5 Mcu.Pin13=VP_SYS_VS_Systick Mcu.Pin14=VP_TIM1_VS_ClockSourceINT -Mcu.Pin15=VP_TIM2_VS_ClockSourceINT +Mcu.Pin15=VP_TIM3_VS_ClockSourceINT Mcu.Pin2=PD0-OSC_IN Mcu.Pin3=PD1-OSC_OUT -Mcu.Pin4=PA0-WKUP -Mcu.Pin5=PA1 -Mcu.Pin6=PA2 -Mcu.Pin7=PA3 -Mcu.Pin8=PA5 -Mcu.Pin9=PA6 +Mcu.Pin4=PA5 +Mcu.Pin5=PA6 +Mcu.Pin6=PA7 +Mcu.Pin7=PB0 +Mcu.Pin8=PB1 +Mcu.Pin9=PA13 Mcu.PinsNb=16 Mcu.UserConstants= Mcu.UserName=STM32F103C8Tx @@ -42,20 +42,20 @@ NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true -PA0-WKUP.Signal=S_TIM2_CH1_ETR -PA1.Signal=S_TIM2_CH2 PA13.Mode=Serial_Wire PA13.Signal=SYS_JTMS-SWDIO PA14.Mode=Serial_Wire PA14.Signal=SYS_JTCK-SWCLK -PA2.Signal=S_TIM2_CH3 -PA3.Signal=S_TIM2_CH4 PA5.Mode=Full_Duplex_Master PA5.Signal=SPI1_SCK PA6.Mode=Full_Duplex_Master PA6.Signal=SPI1_MISO PA7.Mode=Full_Duplex_Master PA7.Signal=SPI1_MOSI +PB0.Signal=S_TIM3_CH3 +PB1.Signal=S_TIM3_CH4 +PB4.Signal=S_TIM3_CH1 +PB5.Signal=S_TIM3_CH2 PC13-TAMPER-RTC.GPIOParameters=PinState,GPIO_Label PC13-TAMPER-RTC.GPIO_Label=LED PC13-TAMPER-RTC.Locked=true @@ -100,7 +100,7 @@ ProjectManager.StackSize=0x400 ProjectManager.TargetToolchain=SW4STM32 ProjectManager.ToolChainLocation=/home/wn/workspace-stm32/car/cubemx/car ProjectManager.UnderRoot=true -ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false,2-MX_SPI1_Init-SPI1-false,3-MX_TIM1_Init-TIM1-false,4-MX_TIM2_Init-TIM2-false +ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false,2-MX_SPI1_Init-SPI1-false,3-MX_TIM1_Init-TIM1-false,4-MX_TIM3_Init-TIM3-false RCC.ADCFreqValue=12000000 RCC.ADCPresc=RCC_ADCPCLK2_DIV6 RCC.AHBFreq_Value=72000000 @@ -124,14 +124,14 @@ RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK RCC.TimSysFreq_Value=72000000 RCC.USBFreq_Value=72000000 RCC.VCOOutput2Freq_Value=8000000 -SH.S_TIM2_CH1_ETR.0=TIM2_CH1,PWM Generation1 CH1 -SH.S_TIM2_CH1_ETR.ConfNb=1 -SH.S_TIM2_CH2.0=TIM2_CH2,PWM Generation2 CH2 -SH.S_TIM2_CH2.ConfNb=1 -SH.S_TIM2_CH3.0=TIM2_CH3,PWM Generation3 CH3 -SH.S_TIM2_CH3.ConfNb=1 -SH.S_TIM2_CH4.0=TIM2_CH4,PWM Generation4 CH4 -SH.S_TIM2_CH4.ConfNb=1 +SH.S_TIM3_CH1.0=TIM3_CH1,PWM Generation1 CH1 +SH.S_TIM3_CH1.ConfNb=1 +SH.S_TIM3_CH2.0=TIM3_CH2,PWM Generation2 CH2 +SH.S_TIM3_CH2.ConfNb=1 +SH.S_TIM3_CH3.0=TIM3_CH3,PWM Generation3 CH3 +SH.S_TIM3_CH3.ConfNb=1 +SH.S_TIM3_CH4.0=TIM3_CH4,PWM Generation4 CH4 +SH.S_TIM3_CH4.ConfNb=1 SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_16 SPI1.CLKPhase=SPI_PHASE_2EDGE SPI1.CLKPolarity=SPI_POLARITY_HIGH @@ -141,14 +141,14 @@ SPI1.Mode=SPI_MODE_MASTER TIM1.IPParameters=Prescaler,Period TIM1.Period=1000 TIM1.Prescaler=36 -TIM2.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2 -TIM2.Channel-PWM\ Generation3\ CH3=TIM_CHANNEL_3 -TIM2.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4 -TIM2.IPParameters=Channel-PWM Generation2 CH2,Channel-PWM Generation3 CH3,Channel-PWM Generation4 CH4 +TIM3.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2 +TIM3.Channel-PWM\ Generation3\ CH3=TIM_CHANNEL_3 +TIM3.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4 +TIM3.IPParameters=Channel-PWM Generation2 CH2,Channel-PWM Generation3 CH3,Channel-PWM Generation4 CH4 VP_SYS_VS_Systick.Mode=SysTick VP_SYS_VS_Systick.Signal=SYS_VS_Systick VP_TIM1_VS_ClockSourceINT.Mode=Internal VP_TIM1_VS_ClockSourceINT.Signal=TIM1_VS_ClockSourceINT -VP_TIM2_VS_ClockSourceINT.Mode=Internal -VP_TIM2_VS_ClockSourceINT.Signal=TIM2_VS_ClockSourceINT +VP_TIM3_VS_ClockSourceINT.Mode=Internal +VP_TIM3_VS_ClockSourceINT.Signal=TIM3_VS_ClockSourceINT board=car diff --git a/my_src/main2.c b/my_src/main2.c index d53af80..6f5c087 100644 --- a/my_src/main2.c +++ b/my_src/main2.c @@ -21,6 +21,7 @@ #include "stm32f1xx_hal.h" #include "blinky.h" +#include "pwm.h" void my_setup_1() { @@ -42,6 +43,7 @@ void my_errorHandler() { void my_setup_2() { blinkyInit(); + pwmInit(); } diff --git a/my_src/pwm.c b/my_src/pwm.c new file mode 100644 index 0000000..82222f4 --- /dev/null +++ b/my_src/pwm.c @@ -0,0 +1,39 @@ +/* + * pwm.c + * + * Created on: Jan 16, 2018 + * Author: wn + */ + +#include "pwm.h" +#include "stm32f1xx_hal.h" +#include + + +extern TIM_HandleTypeDef htim3; + + +void pwmExec(void *handle) { + +} + +void pwmInit() { +// schAdd(pwmExec, NULL, 0, 1000); + + __HAL_TIM_SET_AUTORELOAD(&htim3, 10000); + + __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_1, 200); + HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_1); + + __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_2, 1000); + HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_2); + + __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_3, 2000); + HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_3); + + __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_4, 8000); + HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_4); + +} + + diff --git a/my_src/pwm.h b/my_src/pwm.h new file mode 100644 index 0000000..b24f8c9 --- /dev/null +++ b/my_src/pwm.h @@ -0,0 +1,15 @@ +/* + * pwm.h + * + * Created on: Jan 16, 2018 + * Author: wn + */ + +#ifndef PWM_H_ +#define PWM_H_ + + +void pwmInit(); + + +#endif /* PWM_H_ */ diff --git a/src/main.c b/src/main.c index 3f8a94c..6c51032 100644 --- a/src/main.c +++ b/src/main.c @@ -34,7 +34,7 @@ #include "stm32f1xx_hal.h" /* USER CODE BEGIN Includes */ -#include "main2.h" +#include "main2.h"; /* USER CODE END Includes */ @@ -42,7 +42,7 @@ SPI_HandleTypeDef hspi1; TIM_HandleTypeDef htim1; -TIM_HandleTypeDef htim2; +TIM_HandleTypeDef htim3; /* USER CODE BEGIN PV */ /* Private variables ---------------------------------------------------------*/ @@ -55,7 +55,7 @@ void Error_Handler(void); static void MX_GPIO_Init(void); static void MX_SPI1_Init(void); static void MX_TIM1_Init(void); -static void MX_TIM2_Init(void); +static void MX_TIM3_Init(void); void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim); @@ -89,7 +89,7 @@ int main(void) MX_GPIO_Init(); MX_SPI1_Init(); MX_TIM1_Init(); - MX_TIM2_Init(); + MX_TIM3_Init(); /* USER CODE BEGIN 2 */ my_setup_2(); @@ -204,38 +204,38 @@ static void MX_TIM1_Init(void) } -/* TIM2 init function */ -static void MX_TIM2_Init(void) +/* TIM3 init function */ +static void MX_TIM3_Init(void) { TIM_ClockConfigTypeDef sClockSourceConfig; TIM_MasterConfigTypeDef sMasterConfig; TIM_OC_InitTypeDef sConfigOC; - htim2.Instance = TIM2; - htim2.Init.Prescaler = 0; - htim2.Init.CounterMode = TIM_COUNTERMODE_UP; - htim2.Init.Period = 0; - htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - if (HAL_TIM_Base_Init(&htim2) != HAL_OK) + htim3.Instance = TIM3; + htim3.Init.Prescaler = 0; + htim3.Init.CounterMode = TIM_COUNTERMODE_UP; + htim3.Init.Period = 0; + htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + if (HAL_TIM_Base_Init(&htim3) != HAL_OK) { Error_Handler(); } sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; - if (HAL_TIM_ConfigClockSource(&htim2, &sClockSourceConfig) != HAL_OK) + if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_Init(&htim2) != HAL_OK) + if (HAL_TIM_PWM_Init(&htim3) != HAL_OK) { Error_Handler(); } sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK) + if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK) { Error_Handler(); } @@ -244,27 +244,27 @@ static void MX_TIM2_Init(void) sConfigOC.Pulse = 0; sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_2) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_4) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_4) != HAL_OK) { Error_Handler(); } - HAL_TIM_MspPostInit(&htim2); + HAL_TIM_MspPostInit(&htim3); } @@ -284,6 +284,7 @@ static void MX_GPIO_Init(void) __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOD_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); + __HAL_RCC_GPIOB_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOC, LED_Pin|ERROR_Pin, GPIO_PIN_RESET); diff --git a/src/main.c-bak b/src/main.c-bak index 006ab9e..c28dbca 100644 --- a/src/main.c-bak +++ b/src/main.c-bak @@ -41,7 +41,7 @@ SPI_HandleTypeDef hspi1; TIM_HandleTypeDef htim1; -TIM_HandleTypeDef htim2; +TIM_HandleTypeDef htim3; /* USER CODE BEGIN PV */ /* Private variables ---------------------------------------------------------*/ @@ -54,7 +54,7 @@ void Error_Handler(void); static void MX_GPIO_Init(void); static void MX_SPI1_Init(void); static void MX_TIM1_Init(void); -static void MX_TIM2_Init(void); +static void MX_TIM3_Init(void); void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim); @@ -87,7 +87,7 @@ int main(void) MX_GPIO_Init(); MX_SPI1_Init(); MX_TIM1_Init(); - MX_TIM2_Init(); + MX_TIM3_Init(); /* USER CODE BEGIN 2 */ @@ -200,38 +200,38 @@ static void MX_TIM1_Init(void) } -/* TIM2 init function */ -static void MX_TIM2_Init(void) +/* TIM3 init function */ +static void MX_TIM3_Init(void) { TIM_ClockConfigTypeDef sClockSourceConfig; TIM_MasterConfigTypeDef sMasterConfig; TIM_OC_InitTypeDef sConfigOC; - htim2.Instance = TIM2; - htim2.Init.Prescaler = 0; - htim2.Init.CounterMode = TIM_COUNTERMODE_UP; - htim2.Init.Period = 0; - htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - if (HAL_TIM_Base_Init(&htim2) != HAL_OK) + htim3.Instance = TIM3; + htim3.Init.Prescaler = 0; + htim3.Init.CounterMode = TIM_COUNTERMODE_UP; + htim3.Init.Period = 0; + htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + if (HAL_TIM_Base_Init(&htim3) != HAL_OK) { Error_Handler(); } sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; - if (HAL_TIM_ConfigClockSource(&htim2, &sClockSourceConfig) != HAL_OK) + if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_Init(&htim2) != HAL_OK) + if (HAL_TIM_PWM_Init(&htim3) != HAL_OK) { Error_Handler(); } sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK) + if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK) { Error_Handler(); } @@ -240,27 +240,27 @@ static void MX_TIM2_Init(void) sConfigOC.Pulse = 0; sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_2) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) { Error_Handler(); } - if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_4) != HAL_OK) + if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_4) != HAL_OK) { Error_Handler(); } - HAL_TIM_MspPostInit(&htim2); + HAL_TIM_MspPostInit(&htim3); } @@ -280,6 +280,7 @@ static void MX_GPIO_Init(void) __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOD_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); + __HAL_RCC_GPIOB_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOC, LED_Pin|ERROR_Pin, GPIO_PIN_RESET); diff --git a/src/stm32f1xx_hal_msp.c b/src/stm32f1xx_hal_msp.c index 5155b9d..3eebe9f 100644 --- a/src/stm32f1xx_hal_msp.c +++ b/src/stm32f1xx_hal_msp.c @@ -150,16 +150,16 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) /* USER CODE END TIM1_MspInit 1 */ } - else if(htim_base->Instance==TIM2) + else if(htim_base->Instance==TIM3) { - /* USER CODE BEGIN TIM2_MspInit 0 */ + /* USER CODE BEGIN TIM3_MspInit 0 */ - /* USER CODE END TIM2_MspInit 0 */ + /* USER CODE END TIM3_MspInit 0 */ /* Peripheral clock enable */ - __HAL_RCC_TIM2_CLK_ENABLE(); - /* USER CODE BEGIN TIM2_MspInit 1 */ + __HAL_RCC_TIM3_CLK_ENABLE(); + /* USER CODE BEGIN TIM3_MspInit 1 */ - /* USER CODE END TIM2_MspInit 1 */ + /* USER CODE END TIM3_MspInit 1 */ } } @@ -168,26 +168,28 @@ void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) { GPIO_InitTypeDef GPIO_InitStruct; - if(htim->Instance==TIM2) + if(htim->Instance==TIM3) { - /* USER CODE BEGIN TIM2_MspPostInit 0 */ + /* USER CODE BEGIN TIM3_MspPostInit 0 */ - /* USER CODE END TIM2_MspPostInit 0 */ + /* USER CODE END TIM3_MspPostInit 0 */ - /**TIM2 GPIO Configuration - PA0-WKUP ------> TIM2_CH1 - PA1 ------> TIM2_CH2 - PA2 ------> TIM2_CH3 - PA3 ------> TIM2_CH4 + /**TIM3 GPIO Configuration + PB0 ------> TIM3_CH3 + PB1 ------> TIM3_CH4 + PB4 ------> TIM3_CH1 + PB5 ------> TIM3_CH2 */ - GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3; + GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_4|GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - /* USER CODE BEGIN TIM2_MspPostInit 1 */ + __HAL_AFIO_REMAP_TIM3_PARTIAL(); - /* USER CODE END TIM2_MspPostInit 1 */ + /* USER CODE BEGIN TIM3_MspPostInit 1 */ + + /* USER CODE END TIM3_MspPostInit 1 */ } } @@ -206,16 +208,16 @@ void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base) /* USER CODE END TIM1_MspDeInit 1 */ } - else if(htim_base->Instance==TIM2) + else if(htim_base->Instance==TIM3) { - /* USER CODE BEGIN TIM2_MspDeInit 0 */ + /* USER CODE BEGIN TIM3_MspDeInit 0 */ - /* USER CODE END TIM2_MspDeInit 0 */ + /* USER CODE END TIM3_MspDeInit 0 */ /* Peripheral clock disable */ - __HAL_RCC_TIM2_CLK_DISABLE(); - /* USER CODE BEGIN TIM2_MspDeInit 1 */ + __HAL_RCC_TIM3_CLK_DISABLE(); + /* USER CODE BEGIN TIM3_MspDeInit 1 */ - /* USER CODE END TIM2_MspDeInit 1 */ + /* USER CODE END TIM3_MspDeInit 1 */ } }