Refs #1000. Remap vector table base address at the start of main.c() instead of having to modify the generated system_stm32g0xx.c.

git-svn-id: https://svn.code.sf.net/p/openblt/code/trunk@743 5dc33758-31d5-4daf-9ae8-b24bf3d40d73
This commit is contained in:
Frank Voorburg 2020-02-14 17:03:32 +00:00
parent 5111034cec
commit 71efc13166
17 changed files with 1489 additions and 1411 deletions

View File

@ -13,9 +13,9 @@ S315080020A0AD260008AD260008AD260008AD260008B6
S315080020B0AD260008AD260008AD260008EE11AA5583
S315080020C010B5064C2378002B07D1054B002B02D000
S315080020D0044800E000BF0123237010BD3804002027
S315080020E00000000014470008044B10B5002B03D06D
S315080020E00000000024470008044B10B5002B03D05D
S315080020F00349044800E000BF10BDC04600000000C8
S315080021003C04002014470008002243088B4274D37D
S315080021003C04002024470008002243088B4274D36D
S3150800211003098B425FD3030A8B4244D3030B8B42DA
S3150800212028D3030C8B420DD3FF22090212BA030CE3
S315080021308B4202D31212090265D0030B8B4219D3C4
@ -70,9 +70,9 @@ S31508002430000A08391B09984201D30009043902A287
S31508002440105C40187047C0460403020201010101EE
S31508002450000000000000000070B50C4D0C4E761B05
S31508002460B61005D0002408CD01349847A642FAD103
S3150800247002F050F9074D084E761BB61005D0002419
S3150800248008CD01349847A642FAD170BD984700088E
S315080024909847000898470008A0470008F0B50500C7
S3150800247002F058F9074D084E761BB61005D0002411
S3150800248008CD01349847A642FAD170BDA84700087E
S31508002490A8470008A8470008B0470008F0B5050097
S315080024A083074AD0541E002A44D0CEB20300032222
S315080024B002E00135013C3DD301332E701342F8D1B9
S315080024C0032C2FD9FF220A40150215432A04154367
@ -87,8 +87,8 @@ S315080025402700E0E7034B10B5002B02D0024800F045
S3150800255005F810BD000000006D25000810B5010043
S3150800256000230022002000F019F810BD70B5074DB1
S31508002570074C641BA41005D0013CA300EB589847F0
S31508002580002CF9D102F0CCF870BDC046A04700086F
S31508002590A44700087047C0467047C046F0B5DE46F7
S31508002580002CF9D102F0D4F870BDC046B047000857
S31508002590B44700087047C0467047C046F0B5DE46E7
S315080025A045464E465746E0B52A4C83B00500206896
S315080025B090469B460E00FFF7EDFF274B1B680193DD
S315080025C0A423019A5B00D258002A38D053682068A1
@ -100,13 +100,13 @@ S315080026109C400968A24621438C46414664460C60A4
S3150800262084214C465F4649006750022DD4D11100DB
S3150800263055468D31FF310C6825430D60CCE7019A6C
S3150800264001994D32FF32CA50C0E7FFF7A5FF0120B6
S315080026504042C9E7280400202C4700080D48854653
S315080026504042C9E7280400203C4700080D48854643
S31508002660002103E00C4B5B58435004310B480C4BDC
S3150800267042189A42F6D30B4A02E00023136004324A
S31508002680094B9A42F9D300F013F8FFF7E5FE01F07B
S3150800269021FFFEE700900020A44700080000002064
S3150800269021FFFEE700900020B44700080000002054
S315080026A0380400203804002058050020FEE7000002
S315080026B0014B024A9A60704700ED00E000200008CE
S315080026B0024B802212059A607047C04600ED00E082
S315080026C010B5144A136814490B400343136080225B
S315080026D092000023904201D0180010BD0F4B1B68D2
S315080026E05800C01840000E49FFF70EFD0130094B8F
@ -232,10 +232,10 @@ S31508002E5081460A4F07260C4B98463B683340AB42DF
S31508002E60CED001F0B9F94B46C01A4045F5D9032032
S31508002E70E2E70120E0E70120DEE7C0460020024045
S31508002E8000100240FFF0FFFF88130000FF8FFFFFCE
S31508002E90304700082C04002034040020014B186831
S31508002E90404700082C04002034040020014B186821
S31508002EA07047C0462C040020064B9B685B045B0FEA
S31508002EB09B00054A9B581F221340044A1068D840B5
S31508002EC07047C04600100240704700082C040020D6
S31508002EC07047C04600100240804700082C040020C6
S31508002ED070B5002814DB8408A400144B9C4664448F
S31508002EE0C026B600A55903221040C000FF231A00C9
S31508002EF08240954389010B4083401D43A55170BD0F
@ -538,7 +538,7 @@ S315080041700120002BEFD1032CEDD80022210040426C
S31508004180FEF7A6FE034B1C600020E4E7300400207F
S315080041902C0400203404002010B5084A1168802336
S315080041A05B000B4313600020FFF7CEFF041E02D00E
S315080041B00124200010BD00F0E3F9FAE700200240D0
S315080041B00124200010BD00F0EBF9FAE700200240C8
S315080041C0034A1368034909685B1813607047C046B9
S315080041D05405002030040020014B18687047C0467B
S315080041E054050020F0B5CE46474680B583B0040096
@ -588,56 +588,56 @@ S31508004490C31AF422FF3293420ED90D4B1B78002B18
S315080044A00BD10B4BF33AFF3A1A70A0202021C00516
S315080044B0FEF740FE054B1C6010BD054B00221A7026
S315080044C0A0202021C005FEF735FEF3E7580400209A
S315080044D05404002000B5A1B0FFF75EFE3822002183
S315080044E012A8FDF7DBFF1022002101A8FDF7D6FF71
S315080044F03422002105A8FDF7D1FF80208000FEF7B1
S31508004500DFF8022312938022520015920022169297
S315080045104032179219931A932E331B931C928023B9
S315080045209B021D9380239B041E93C023DB051F93C8
S3150800453012A8FEF7F7F8002800D0FEE70723019334
S315080045400221029100230393049301A8FEF7D4FBEA
S31508004550002800D0FEE7022305930023079305A849
S31508004560FFF740FE002800D0FEE7FFF765FFFFF7DC
S3150800457080FF00F055F8FFF785FF00F079F8FAE7B5
S31508004580F0B58BB0254B1A6C012422431A641A6CB9
S3150800459022400192019A5A6B22435A635A6B22406F
S315080045A00292029A5A6B022632435A635A6B324077
S315080045B00392039ADA6B802189020A43DA63DB6B7A
S315080045C00B400493049B0520002200214042FEF77D
S315080045D07FFC0220002200214042FEF779FC0120E0
S315080045E0002200214042FEF773FC2023059306941F
S315080045F0002507950895A027FF0505A93800FEF7A9
S31508004600CBFC0C230593069607950895099405A9EE
S315080046103800FEF7C1FC0BB0F0BDC04600100240E2
S3150800462010B50A480A4B0360E1231B0243600023C6
S315080046308360C360036183610C224261C361802287
S31508004640120102624362FFF747FD10BD5C040020B9
S3150800465000440040BFF34F8F034B044ADA60BFF3B0
S315080046604F8FC046FDE7C04600ED00E00400FA059E
S3150800467010B5234B1B78002B17D10122214922485C
S31508004680FFF744FC002800D010BD1E4B1B78013BE9
S315080046903F2BF9D8FFF7E3FE1C4B1860184B012295
S315080046A01A701B4B00221A70EEE7194B1B78013360
S315080046B01449C918002301221348FFF727FC0028CC
S315080046C013D1134A13780133DBB213700D4A1278EB
S315080046D09A42D9D10A4A002111700A4A5278FF2A09
S315080046E0D2D1022BD0D1FFF7B5FFFFF7B8FE074BA3
S315080046F01B6864339842C7D9014B00221A70C3E776
S3150800470029050020E80400205C0400202C05002070
S315080047102A050020F8B5C046F8BC08BC9E46704776
S31108004720F8B5C046F8BC08BC9E467047B9
S3150800472C000000200000000000000000000000004F
S3150800473C000000000000000000000000000000005F
S3150800474C0000000001000000020000000300000049
S3150800475C0400000006000000070000000800000026
S3150800476C0900000000000000000000000000000026
S3150800477C0000000001000000020000000300000019
S3090800478C0400000017
S30D08004790D0DAFF7F01000000EA
S30D0800479845250008E920000888
S309080047A0C12000081E
S315080047A400000000EC02002054030020BC03002093
S315080047B400000000000000000000000000000000E7
S315080044D05404002000B5A1B02B4A2C4B9A60FFF774
S315080044E05BFE3822002112A8FDF7D8FF1022002112
S315080044F001A8FDF7D3FF3422002105A8FDF7CEFF5A
S3150800450080208000FEF7DCF80223129380225200F6
S315080045101592002216924032179219931A932E3347
S315080045201B931C9280239B021D9380239B041E933E
S31508004530C023DB051F9312A8FEF7F4F8002800D065
S31508004540FEE70723019302210291002303930493B4
S3150800455001A8FEF7D1FB002800D0FEE70223059349
S315080045600023079305A8FFF73DFE002800D0FEE7C5
S31508004570FFF762FFFFF77DFF00F05AF8FFF782FFAB
S3150800458000F07EF8FAE7C0460020000800ED00E0DB
S31508004590F0B58BB0254B1A6C012422431A641A6CA9
S315080045A022400192019A5A6B22435A635A6B22405F
S315080045B00292029A5A6B022632435A635A6B324067
S315080045C00392039ADA6B802189020A43DA63DB6B6A
S315080045D00B400493049B0520002200214042FEF76D
S315080045E077FC0220002200214042FEF771FC0120E0
S315080045F0002200214042FEF76BFC20230593069417
S31508004600002507950895A027FF0505A93800FEF798
S31508004610C3FC0C230593069607950895099405A9E6
S315080046203800FEF7B9FC0BB0F0BDC04600100240DA
S3150800463010B50A480A4B0360E1231B0243600023B6
S315080046408360C360036183610C224261C361802277
S31508004650120102624362FFF73FFD10BD5C040020B1
S3150800466000440040BFF34F8F034B044ADA60BFF3A0
S315080046704F8FC046FDE7C04600ED00E00400FA058E
S3150800468010B5234B1B78002B17D10122214922484C
S31508004690FFF73CFC002800D010BD1E4B1B78013BE1
S315080046A03F2BF9D8FFF7DBFE1C4B1860184B01228D
S315080046B01A701B4B00221A70EEE7194B1B78013350
S315080046C01449C918002301221348FFF71FFC0028C4
S315080046D013D1134A13780133DBB213700D4A1278DB
S315080046E09A42D9D10A4A002111700A4A5278FF2AF9
S315080046F0D2D1022BD0D1FFF7B5FFFFF7B0FE074B9B
S315080047001B6864339842C7D9014B00221A70C3E765
S3150800471029050020E80400205C0400202C05002060
S315080047202A050020F8B5C046F8BC08BC9E46704766
S31108004730F8B5C046F8BC08BC9E467047A9
S3150800473C000000200000000000000000000000003F
S3150800474C000000000000000000000000000000004F
S3150800475C0000000001000000020000000300000039
S3150800476C0400000006000000070000000800000016
S3150800477C0900000000000000000000000000000016
S3150800478C0000000001000000020000000300000009
S3090800479C0400000007
S30D080047A0C0DAFF7F01000000EA
S30D080047A845250008E920000878
S309080047B0C12000080E
S315080047B400000000EC02002054030020BC03002083
S315080047C400000000000000000000000000000000D7
S315080047D400000000000000000000000000000000C7
S315080047E400000000000000000000000000000000B7
@ -646,9 +646,9 @@ S315080048040000000000000000000000000000000096
S315080048140000000000000000000000000000000086
S315080048240000000000000000000000000000000076
S315080048340000000000000000000000000000000066
S315080048440000000000000000010000000000000055
S315080048540E33CDAB34126DE6ECDE05000B0000001A
S315080048640000000000000000000000000000000036
S315080048440000000000000000000000000000000056
S315080048540000000000000000010000000000000045
S315080048640E33CDAB34126DE6ECDE05000B0000000A
S315080048740000000000000000000000000000000026
S315080048840000000000000000000000000000000016
S315080048940000000000000000000000000000000006
@ -702,6 +702,7 @@ S31508004B840000000000000000000000000000000013
S31508004B940000000000000000000000000000000003
S31508004BA400000000000000000000000000000000F3
S31508004BB400000000000000000000000000000000E3
S31508004BC40000000000000000300500200024F40066
S30D08004BD40100000004000000C6
S31508004BC400000000000000000000000000000000D3
S31508004BD40000000000000000300500200024F40056
S30D08004BE40100000004000000B6
S7050800265D6F

View File

@ -114,12 +114,7 @@
/*!< Uncomment the following line if you need to relocate your vector Table in
Internal SRAM. */
/* #define VECT_TAB_SRAM */
/* Vector table offset was changed, because the first part in flash is occupied
* by the OpenBLT bootloader. Therefore we need to remap the vector table base
* address. Note that this value needs adjustment, if more space in flash is
* reserved for the bootloader.
*/
#define VECT_TAB_OFFSET 0x2000U /*!< Vector Table base offset field.
#define VECT_TAB_OFFSET 0x0U /*!< Vector Table base offset field.
This value must be a multiple of 0x100. */
/******************************************************************************/
/**

View File

@ -37,6 +37,7 @@
****************************************************************************************/
static void Init(void);
static void SystemClock_Config(void);
static void VectorBase_Config(void);
/************************************************************************************//**
@ -73,6 +74,8 @@ int main(void)
****************************************************************************************/
static void Init(void)
{
/* configure the vector table base address. */
VectorBase_Config();
/* reset of all peripherals, initializes the Flash interface and the Systick. */
HAL_Init();
/* configure the system clock. */
@ -84,6 +87,27 @@ static void Init(void)
} /*** end of Init ***/
/************************************************************************************//**
** \brief Vector base address configuration. It should no longer be at the start of
** flash memory but moved forward because the first part of flash is
** reserved for the bootloader. Note that this is already done by the
** bootloader before starting this program. Unfortunately, function
** SystemInit() overwrites this change again.
** \return none.
**
****************************************************************************************/
static void VectorBase_Config(void)
{
/* The constant array with vectors of the vector table is declared externally in the
* c-startup code.
*/
extern const unsigned long g_pfnVectors[];
/* Remap the vector table to where the vector table is located for this program. */
SCB->VTOR = (unsigned long)&g_pfnVectors[0];
} /*** end of VectorBase_Config ***/
/************************************************************************************//**
** \brief System Clock Configuration. This code was created by CubeMX and configures
** the system clock.

View File

@ -1,16 +1,16 @@
S01A000064656D6F70726F675F73746D3332673037312E7372656396
S31508002000F0040020893F0008272E00080B36000838
S31508002000F00400209D3F0008272E00080B36000824
S3150800201000000000000000000000000000000000B2
S315080020200000000000000000000000000F36000855
S315080020300000000000000000BF360008573D0008F9
S31508002040773D0008233E0008673F0008733F0008F5
S31508002050D13F0008D33F0008D53F0008D73F000806
S31508002060D93F0008DB3F0008DD3F0008DF3F0008D6
S31508002070E13F0008E33F0008E53F0008E73F0008A6
S31508002080E93F0008EB3F0008ED3F0008EF3F000876
S31508002090F13F0008F33F0008F53F0008F73F000846
S315080020A0F93F0008FB3F0008FD3F0008FF3F000816
S315080020B0014000080340000805400008EE11AA5533
S315080020300000000000000000BF3600086B3D0008E5
S315080020408B3D0008373E00087B3F0008873F0008A5
S31508002050E53F0008E73F0008E93F0008EB3F0008B6
S31508002060ED3F0008EF3F0008F13F0008F33F000886
S31508002070F53F0008F73F0008F93F0008FB3F000856
S31508002080FD3F0008FF3F0008014000080340000824
S315080020900540000807400008094000080B400008F2
S315080020A00D4000080F4000081140000813400008C2
S315080020B0154000081740000819400008EE11AA55F7
S315080020C038B5040015D025007C356868002804D189
S315080020D000202870200000F0A5FE242068602068F3
S315080020E00168012291430160200000F0CBF8012825
@ -327,8 +327,8 @@ S3150800344002D1FA20C00130BD002030BD0E48006808
S31508003450704710B5FFF7FAFF0400FFF7EBFC0E49BB
S31508003460000B8000085CC006C00EC440200010BDDA
S31508003470FFFFFEEE00200240FFF0FFFF00100240B3
S31508003480FF8FFFFF243E00080C00002004000020E8
S315080034900024F40000127A001C3F00080022030AE8
S31508003480FF8FFFFF383E00080C00002004000020D4
S315080034900024F40000127A00303F00080022030AD4
S315080034A08B420BD203098B4219D243088B422ED288
S315080034B0411A00D20146524110467047FF220902BE
S315080034C03FD012068B4205D3121209028B4201D352
@ -421,95 +421,96 @@ S31508003A20A027FF05B94201D1002460E70B4FB94230
S31508003A3000D15CE70A4CA14200D054E7022456E7BD
S31508003A40FFBC7047002A01D08161704781627047C8
S31508003A50000C005080180240601802400004005014
S31508003A600008005080B500F007F800F0AAF800F04A
S31508003A7025F900F0AAF8FAE780B500F041F900F058
S31508003A8005F800F051F900F011F901BD30B59FB005
S31508003A903822002104A800F064F9102200216846A3
S31508003AA000F05FF93422002112A800F05AF98020AC
S31508003AB0800000F061F902240494E00107900025D3
S31508003AC00895402009900B940C9430210D910E9086
S31508003AD0C0020F90000210904806119004A8FFF744
S31508003AE0B1F9002800D0FEE707200090019402955E
S31508003AF0039521466846FFF7AFFB002800D0FEE78E
S31508003B001294149512A8FFF7DBFD002800D0FEE7F3
S31508003B101FB030BDF8B586B024480124C1682143DA
S31508003B20C160C16821400091009901682143016084
S31508003B30016821400091009902260168314301601D
S31508003B400168314000910099610482680A438260E5
S31508003B508068014000910098002211460420C04365
S31508003B60FFF78DFD002211460120C043FFF787FDB0
S31508003B70002211460020C043FFF781FD2020019056
S31508003B800294002503950495A027FF0501A938008E
S31508003B90FFF7A2FE0C200190029603950495059462
S31508003BA001A93800FFF798FE07B0F0BD34100240AF
S31508003BB0BFF34F8F384839490860BFF34F8F00BFAE
S31508003BC0FDE780B500F009F801BD80B500F01BF8E7
S31508003BD001BD80B5FFF7ECFF01BD80B5304831491E
S31508003BE00160E1210902416000218160C160016133
S31508003BF081610C224261C161802212010262416226
S31508003C00FEF75EFA01BD38B5274D2C0044346078BE
S31508003C10002811D1280000F034F8012830D128787E
S31508003C2000282DD041282BDA00F091F86060012099
S31508003C3060700020207031BD681C4421695C401802
S31508003C4000F01FF8012813D14420285C401C20707E
S31508003C5001002A78C9B2914212D1002161706978AF
S31508003C60FF290DD1C0B202280AD1FFF7B2FF31BD34
S31508003C7000F06DF861686431814201D200206070FD
S31508003C8031BD80B50100002301220548FEF74EFA32
S31508003C90401E8041C00F02BD0400FA050CED00E08D
S31508003CA010000020004400409C00002080B500223F
S31508003CB02021A020C005FFF7C5FE01BD38B500F0DC
S31508003CC046F805000D4C6068281AFA214900884212
S31508003CD012D3A020C0052178002906D10121217020
S31508003CE00A462021FFF7AEFE05E0002121700A46AC
S31508003CF02021FFF7A7FE656031BD0000E80000201F
S31508003D0010B5002407480168820D0A430260204660
S31508003D10FFF750FC002801D0012401E0FFF7FAFE66
S31508003D20200010BD0020024080B5FFF78FFBFA2166
S31508003D308900FFF7B3FBFFF7A6FC0420FFF7A7FCF3
S31508003D40002211460020C043FFF799FC01BD80B54B
S31508003D50FFF76AF802BD80B500F034F8FFF7A3FC58
S31508003D6001BD10B50400080011000200200000F093
S31508003D7031F8200010BDFEE710B50E4C21680E4A3A
S31508003D800A4002432260610D884211D10B4800683F
S31508003D904100081840000A49FFF780FB401C00E074
S31508003DA0401E6169490503D50028F9D1032010BDD5
S31508003DB0002010BD00700040FFF9FFFF0C00002036
S31508003DC040420F00024801688268891801607047FE
S31508003DD0000000201206130A1A43130C1A4300BFE8
S31508003DE0094205D0830705D00270401C491EF9D147
S31508003DF0704700001300103906D330B414001500BC
S31508003E0010393CC0FCD230BC490700D30CC000D5E1
S31508003E1004C0890002D30280801C002900D50270E4
S31508003E207047FEE7000000000000000000000000E8
S31508003E300000000000000000000000000000000074
S31508003E40000000000100000002000000030000005E
S31508003E50040000000600000007000000080000003B
S31508003E600900000070B40123002413E00168001D56
S31508003E70194202D04D466D1E49190C60091D121FC4
S31508003E80042AFAD20D00960701D50C80AD1C1A40FB
S31508003E9000D02C700268001D002AE7D170BC70475C
S31508003EA030B401220EE00368C3184468083014428F
S31508003EB002D04D466D1E64191D6825601B1D241D04
S31508003EC0091FF9D10168001D0029ECD130BC7047E3
S31508003ED010B5074979441831064C7C44163404E079
S31508003EE0081D0A68891888470100A142F8D110BD43
S31508003EF008000000280000006DFFFFFFE00000003A
S31508003F00100000200000000099FFFFFF10000000CD
S31508003F10A4000000000000200000000000000000CF
S31508003F200000000000000000000000000100000082
S31508003F3002000000030000000400000000F00DF875
S31508003F40002801D0FFF7C4FF00BF00BF002000BF54
S31508003F5000BFFFF787FD00F002F80120704780B523
S31508003F6000F002F801BDFEE70746384600F002F801
S31508003F70FBE7FEE780B500BF00BF024A1100182024
S31508003F80ABBEFBE726000200034880F30888034817
S31508003F908047034800470000F0040020A53F0008BA
S31508003FA0C53F00080148024908607047002000081C
S31508003FB008ED00E000000000040000000100000019
S31508003FC00024F40000BF00BF00BF00BFFFF7B6FF24
S31508003FD0FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE7AB
S31508003FE0FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE79B
S31508003A600008005080B500F007F800F0B4F800F040
S31508003A702FF900F0B4F8FAE780B500F009F800F07D
S31508003A8049F900F009F800F059F900F019F901BDF3
S31508003A9049484A490860704730B59FB03822002126
S31508003AA004A800F068F910220021684600F063F9BE
S31508003AB03422002112A800F05EF98020800000F070
S31508003AC065F902240494E001079000250895402032
S31508003AD009900B940C9430210D910E90C0020F9012
S31508003AE0000210904806119004A8FFF7ABF90028C9
S31508003AF000D0FEE707200090019402950395214621
S31508003B006846FFF7A9FB002800D0FEE71294149533
S31508003B1012A8FFF7D5FD002800D0FEE71FB030BD7C
S31508003B20F8B586B026480124C1682143C160C1683A
S31508003B3021400091009901682143016001682140F4
S31508003B4000910099022601683143016001683140FD
S31508003B5000910099610482680A4382608068014086
S31508003B6000910098002211460420C043FFF787FD04
S31508003B70002211460120C043FFF781FD00221146AD
S31508003B800020C043FFF77BFD20200190029400250A
S31508003B9003950495A027FF0501A93800FFF79CFEA9
S31508003BA00C200190029603950495059401A9380006
S31508003BB0FFF792FE07B0F0BD0020000808ED00E010
S31508003BC034100240BFF34F8F384839490860BFF3B5
S31508003BD04F8F00BFFDE780B500F009F801BD80B53D
S31508003BE000F01BF801BD80B5FFF7ECFF01BD80B5FD
S31508003BF0304831490160E1210902416000218160B4
S31508003C00C160016181610C224261C1618022120199
S31508003C1002624162FEF754FA01BD38B5274D2C0001
S31508003C2044346078002811D1280000F034F80128BF
S31508003C3030D1287800282DD041282BDA00F091F8C9
S31508003C406060012060700020207031BD681C44212E
S31508003C50695C401800F01FF8012813D14420285C3D
S31508003C60401C207001002A78C9B2914212D1002165
S31508003C7061706978FF290DD1C0B202280AD1FFF711
S31508003C80B2FF31BD00F06DF861686431814201D23E
S31508003C900020607031BD80B501000023012205486F
S31508003CA0FEF744FA401E8041C00F02BD0400FA0523
S31508003CB00CED00E010000020004400409C000020AD
S31508003CC080B500222021A020C005FFF7BBFE01BD5C
S31508003CD038B500F046F805000D4C6068281AFA2138
S31508003CE04900884212D3A020C0052178002906D1B0
S31508003CF0012121700A462021FFF7A4FE05E00021D4
S31508003D0021700A462021FFF79DFE656031BD00003F
S31508003D10E800002010B5002407480168820D0A4310
S31508003D2002602046FFF746FC002801D0012401E086
S31508003D30FFF7F6FE200010BD0020024080B5FFF711
S31508003D4085FBFA218900FFF7A9FBFFF79CFC0420F5
S31508003D50FFF79DFC002211460020C043FFF78FFCA9
S31508003D6001BD80B5FFF760F802BD80B500F034F8F4
S31508003D70FFF799FC01BD10B5040008001100020008
S31508003D80200000F031F8200010BDFEE710B50E4CFB
S31508003D9021680E4A0A4002432260610D884211D109
S31508003DA00B4800684100081840000A49FFF776FBEF
S31508003DB0401C00E0401E6169490503D50028F9D179
S31508003DC0032010BD002010BD00700040FFF9FFFF62
S31508003DD00C00002040420F000248016882688918DA
S31508003DE001607047000000201206130A1A43130CDC
S31508003DF01A4300BF094205D0830705D00270401C4C
S31508003E00491EF9D1704700001300103906D330B4A3
S31508003E101400150010393CC0FCD230BC490700D349
S31508003E200CC000D504C0890002D30280801C00297A
S31508003E3000D502707047FEE7000000000000000091
S31508003E400000000000000000000000000000000064
S31508003E500000000000000000010000000200000051
S31508003E600300000004000000060000000700000030
S31508003E70080000000900000070B40123002413E0C4
S31508003E800168001D194202D04D466D1E49190C6085
S31508003E90091D121F042AFAD20D00960701D50C80B7
S31508003EA0AD1C1A4000D02C700268001D002AE7D10C
S31508003EB070BC704730B401220EE00368C31844682A
S31508003EC00830144202D04D466D1E64191D682560DF
S31508003ED01B1D241D091FF9D10168001D0029ECD1FD
S31508003EE030BC704710B5074979441831064C7C44F4
S31508003EF0163404E0081D0A68891888470100A1429B
S31508003F00F8D110BD08000000280000006DFFFFFF73
S31508003F10E0000000100000200000000099FFFFFFED
S31508003F2010000000A40000000000002000000000AF
S31508003F300000000000000000000000000000000073
S31508003F400100000002000000030000000400000059
S31508003F5000F00DF8002801D0FFF7C4FF00BF00BF2E
S31508003F60002000BF00BFFFF77DFD00F002F801202A
S31508003F70704780B500F002F801BDFEE707463846EF
S31508003F8000F002F8FBE7FEE780B500BF00BF024A73
S31508003F9011001820ABBEFBE726000200034880F399
S31508003FA0088803488047034800470000F0040020BB
S31508003FB0B93F0008D93F000880200005014908607C
S31508003FC07047000008ED00E0000000000400000053
S31508003FD0010000000024F40000BF00BF00BF00BFBE
S31508003FE0FFF7B6FFFEE7FEE7FEE7FEE7FEE7FEE7BA
S31508003FF0FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE78B
S30B08004000FEE7FEE7FEE7FD
S70508003FC5EE
S31508004000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE77A
S30F08004010FEE7FEE7FEE7FEE7FEE71F
S70508003FD9DA

View File

@ -114,12 +114,7 @@
/*!< Uncomment the following line if you need to relocate your vector Table in
Internal SRAM. */
/* #define VECT_TAB_SRAM */
/* Vector table offset was changed, because the first part in flash is occupied
* by the OpenBLT bootloader. Therefore we need to remap the vector table base
* address. Note that this value needs adjustment, if more space in flash is
* reserved for the bootloader.
*/
#define VECT_TAB_OFFSET 0x2000U /*!< Vector Table base offset field.
#define VECT_TAB_OFFSET 0x0U /*!< Vector Table base offset field.
This value must be a multiple of 0x100. */
/******************************************************************************/
/**

View File

@ -37,6 +37,7 @@
****************************************************************************************/
static void Init(void);
static void SystemClock_Config(void);
static void VectorBase_Config(void);
/************************************************************************************//**
@ -70,6 +71,8 @@ void main(void)
****************************************************************************************/
static void Init(void)
{
/* configure the vector table base address. */
VectorBase_Config();
/* reset of all peripherals, initializes the Flash interface and the Systick. */
HAL_Init();
/* configure the system clock. */
@ -81,6 +84,27 @@ static void Init(void)
} /*** end of Init ***/
/************************************************************************************//**
** \brief Vector base address configuration. It should no longer be at the start of
** flash memory but moved forward because the first part of flash is
** reserved for the bootloader. Note that this is already done by the
** bootloader before starting this program. Unfortunately, function
** SystemInit() overwrites this change again.
** \return none.
**
****************************************************************************************/
static void VectorBase_Config(void)
{
/* The constant array with vectors of the vector table is declared externally in the
* c-startup code.
*/
extern const unsigned long __vector_table[];
/* Remap the vector table to where the vector table is located for this program. */
SCB->VTOR = (unsigned long)&__vector_table[0];
} /*** end of VectorBase_Config ***/
/************************************************************************************//**
** \brief System Clock Configuration. This code was created by CubeMX and configures
** the system clock.

View File

@ -1,7 +1,7 @@
S315080020005007002065210008712100087321000887
S3150800201000000000000000000000000000000000B2
S315080020200000000000000000000000007521000804
S315080020300000000000000000772100088D3300082A
S315080020300000000000000000772100089133000826
S315080020407B2100087B2100087B2100087B210008F2
S315080020507B2100087B2100087B2100087B210008E2
S315080020607B2100087B2100087B2100087B210008D2
@ -13,16 +13,16 @@ S315080020B07B2100087B2100087B210008EE11AA5528
S315080020C000F002F800F03EF80CA030C808382418D2
S315080020D02D18A246671EAB4654465D46AC4201D152
S315080020E000F030F87E460F3E0FCCB6460126334246
S315080020F000D0FB1AA246AB46334318477C1F0000A4
S315080021009C1F0000103A02D378C878C1FAD8520743
S315080020F000D0FB1AA246AB4633431847941F00008C
S31508002100B41F0000103A02D378C878C1FAD852072B
S3150800211001D330C830C101D504680C60704700008F
S315080021200023002400250026103A01D378C1FBD8E5
S31508002130520700D330C100D50B6070471FB51FBDCD
S3150800214010B510BD00F07FF91146FFF7F7FF01F053
S315080021505AFF00F097F903B4FFF7F2FF03BC00F04B
S3150800215065FF00F097F903B4FFF7F2FF03BC00F040
S315080021609DF9000008498D460848804708480047F9
S31508002170FEE7FEE7FEE7FEE7FEE7FEE70548064957
S31508002180064A074B70470000500700201D34000818
S31508002180064A074B70470000500700202134000814
S31508002190C1200008500100205007002050030020ED
S315080021A050030020FEB5054610460C46184373D06A
S315080021B0AE468C460020AD1A01469C4167D366465A
@ -76,10 +76,10 @@ S315080024A0ABBEFEE72600020070470000BFF34F8F61
S315080024B004490348C860BFF34F8F00BFFDE700001B
S315080024C00400FA0500ED00E010B500F005F810BDAF
S315080024D010B500F03BF810BD70B51A4C00256078B1
S315080024E0194E00280ED020783018401C00F03EFF08
S315080024F0012817D000F09AFF61686431884200D934
S31508002500657070BD104800F031FF0128F9D13078A8
S31508002510401E3F28F5D800F089FF606001206070F2
S315080024E0194E00280ED020783018401C00F040FF06
S315080024F0012817D000F09CFF61686431884200D932
S31508002500657070BD104800F033FF0128F9D13078A6
S31508002510401E3F28F5D800F08BFF606001206070F0
S31508002520257070BD2078401CC0B220703178814279
S31508002530F7D165707178FF29F3D10228F1D1FFF739
S31508002540B5FF0000100000202000002010B50B4841
@ -124,7 +124,7 @@ S315080027A01146901E00F020F800221146501E00F037
S315080027B01BF820200290039400250495059505270B
S315080027C03F0702A93846FFF7DBFE0C200290039666
S315080027D004950595069402A93846FFF7D1FE07B079
S315080027E0F0BD00004010024010B500F09DFD10BD80
S315080027E0F0BD00004010024010B500F09FFD10BD7E
S315080027F010B50F4C21680322520291430143216010
S31508002800C11FFF39FA390ED10A4806210068484324
S315080028100949FFF768FD401C02E0002805D0401E64
@ -184,11 +184,11 @@ S31508002B60A842F1D12078400706D5B16807200003AE
S31508002B708143E0680143B16000F036F8B1683C2251
S31508002B8089091140084A515CC906C90EC840074957
S31508002B90086007480068FFF7B5FDF8BD0020024049
S31508002BA088130000001002401840000800000020AA
S31508002BA08813000000100240304000080000002092
S31508002BB0040000200148006870470000000000205B
S31508002BC000B5FFF7F7FF0649896807221203114087
S31508002BD0090B044A8900515CC906C90EC84000BDE4
S31508002BE0001002405840000810B5244CA068244A3A
S31508002BE0001002407040000810B5244CA068244A22
S31508002BF08006400F16D0A0688006410F50100129A4
S31508002C000FD0A1688906490F022914D0A06880064A
S31508002C10400F04282CD0A0688006400F03282AD02D
@ -269,16 +269,16 @@ S315080030B003D00120FEBD0120FEBD0020FEBD00009C
S315080030C004220549042803D008699043086170471B
S315080030D0086910430861704700E000E07047000087
S315080030E010B50949401E884201D9012010BD074C78
S315080030F060610321081F00F017F90020A06107206E
S315080030F060610321081F00F019F90020A06107206C
S315080031002061002010BD0000FFFFFF0000E000E086
S3150800311010B5FFF7E3FF10BD70B50446002C06D0C6
S315080031202046803005460068002802D007E00120C6
S3150800313070BD00217C200155204600F028F8242087
S31508003140286020680168490849000160204600F0A7
S315080031501DFA012819D0A06A002802D0204600F0DE
S315080031607BF9206841680922D202914341602068B0
S315080031501FFA012819D0A06A002802D0204600F0DC
S315080031607DF9206841680922D202914341602068AE
S3150800317081682A22914381602068016801221143EF
S315080031800160204600F0CEF970BD012070BD704781
S315080031800160204600F0D0F970BD012070BD70477F
S31508003190FFB585B005460F4616462846803004908A
S315080031A04068202802D0022009B0F0BD002F0AD0BE
S315080031B0002E08D00120A9680003814209D1286998
@ -293,233 +293,234 @@ S3150800323009D03F2222840AE02E69002E01D0238479
S3150800324005E0228403E0238401E000222284228C04
S315080032500292884202D12869002802D03E460027F9
S3150800326018E0002616E0089800900022202128463B
S31508003270019B00F095FE002801D0032094E7002E5C
S31508003270019B00F097FE002801D0032094E7002E5A
S3150800328012D02868416A029801403170761CE08B9A
S31508003290401EE083E08B0028E5D104982021416098
S315080032A00399002008777FE72868406A0299084052
S315080032B03880BF1CEBE70000FF01000010B5FFF7E0
S315080032C00DFA00F069F800F0B5F800F001F810BD45
S315080032D010B50520002220210007FFF7EBF910BDE5
S315080032E070B500F0A3F804460E4DFF216868F53165
S315080032F0201A88420CD3287805231B07002808D0F3
S3150800330000202870002220211846FFF7D3F96C60A8
S3150800331070BD01202870012220211846FFF7CAF93E
S31508003320F5E70000180000208307FF22DB0E9A400D
S315080033308907090E994000280BDA0007000F08389C
S31508003340830808489B001818C36993430B43C36155
S315080033507047830804489B001818036893430B4377
S315080033600360704700ED00E000E400E010B5014698
S31508003370002301220448FFF70BFF002801D0002094
S3150800338010BD012010BD00006400002010B5FFF735
S315080033909DF9FFF7BDFE10BD30B59FB0382111A8C5
S315080033A0FEF79FFF00240D940E940F941094342179
S315080033B06846FEF796FF01204002FFF719FA022534
S315080033C01195E801149015944020169018951995B2
S315080033D030211A911B90C0021C9000021D904806CD
S315080033E01E9011A8FFF74EFC002800D0FEE7072024
S315080033F00D900E950F94109402210DA8FFF720FB4F
S31508003400002800D0FEE7009502946846FFF716FAF2
S31508003410002800D0FEE71FB030BD00000249014871
S31508003420886070470020000800ED00E010B5FFF73F
S3150800343047F910BD10B5FFF7BDFB7D21C900FEF7A2
S3150800344052FFFFF74DFE0420FFF73AFE0022114611
S31508003450501EFFF7C9F910BD10B5018DC90707D071
S3150800346001684A6801235B049A43C36A1A434A609F
S31508003470018D890707D501684A6801231B049A4309
S31508003480036B1A434A60018D490707D501684A68E4
S3150800349001239B049A43436B1A434A60018D09072B
S315080034A007D501684A680123DB039A43836B1A43ED
S315080034B04A60018DC90607D501688A6801231B037E
S315080034C09A43C36B1A438A60018D890607D501683A
S315080034D08A6801235B039A43036C1A438A60018D49
S315080034E0490612D501684B6801221205446C9343BC
S315080034F023434B60416C914207D101684A68032314
S315080035005B059A43836C1A434A60018D090607D501
S3150800351001684A680123DB04C06C9A4302434A6087
S3150800352010BD0000FEB50446254600268035AE606F
S31508003530FFF7C6F8019020680068134F00070BD5FF
S3150800354001210097002249052046019B00F028FD2D
S31508003550002801D00320FEBD2068006840070BD56F
S3150800356001210097002289052046019B00F018FDDD
S31508003570002801D00320FEBD202028606860603442
S3150800358026770020FEBD0000FFFFFF01F8B50446C0
S315080035900027002500202168A3682269E6691343ED
S315080035A0626932431343626E1A430B68FD4E334019
S315080035B013430B6021684A6803231B039A43E36895
S315080035C01A434A60A169F84B22689A4201D0236AD5
S315080035D019439368F54E33400B4393602168CA6AD2
S315080035E0636A120912011A43CA62F14B2168F14A49
S315080035F0994213D152699207920F07D0012A09D02E
S31508003600022A05D0032A07D0102642E0002640E009
S3150800361002263EE004263CE008263AE0E64B9942BC
S3150800362013D152690C231A4007D0042A09D0082A54
S3150800363005D00C2A07D010262BE0002629E0022602
S3150800364027E0042625E0082623E0DC4B994201D131
S3150800365000261EE0DA4B994201D1002619E0D24B2A
S31508003660994215D1526903239B021A400AD00B15B9
S31508003670D21A0BD0D21A07D09A4201D1082608E0EE
S31508003680102606E0002604E0022602E0042600E0F2
S315080036901026C54A91426ED1002E14D0022E4CD067
S315080036A0042E69D0082E68D0012500280AD0616842
S315080036B000914A008918814203D80099090381427A
S315080036C070D201252FE2FFF77BFA0246606A0028CE
S315080036D01AD001281AD002281AD003281AD004288A
S315080036E01AD005281AD006281AD007281AD008286A
S315080036F01AD009281AD00A281AD00B281AD001215C
S315080037001046FEF7F0FDD0E70121F9E70221F7E7B9
S315080037100421F5E70621F3E70821F1E70A21EFE797
S315080037200C21EDE71021EBE72021E9E74021E7E747
S315080037308021E5E7FF210131E2E7606A00281DD014
S3150800374001281DD002281DD003281DD004281DD00D
S3150800375005281DD006281DD007281DD008281DD0ED
S3150800376009281DD00A281ED00B281ED001219548ED
S31508003770FEF7B9FD99E7D7E11AE053E00121F6E72C
S315080037800221F4E70421F2E70621F0E70821EEE733
S315080037900A21ECE70C21EAE71021E8E72021E6E711
S315080037A04021E4E776E08021E1E7FF210131DEE709
S315080037B0FFF71AFA0246606A00281AD001281AD0BA
S315080037C002281AD003281AD004281AD005281AD095
S315080037D006281AD007281AD008281AD009281AD075
S315080037E00A281AD00B281AD001211046FEF77BFDAD
S315080037F05BE70121F9E70221F7E70421F5E706214E
S31508003800F3E70821F1E70A21EFE70C21EDE710219C
S31508003810EBE72021E9E74021E7E78021E5E7FF21FB
S315080038200131E2E7606A00281BD001281BD0022874
S315080038301BD003281BD004281BD005281BD006281C
S315080038401BD007281BD008281BD009281BD00A28FC
S315080038501BD00B281BD001210120C003FEF743FD16
S3150800386023E70121F8E70221F6E70421F4E7062118
S31508003870F2E70821F0E70A21EEE70C21ECE7102130
S31508003880EAE72021E8E74021E6E78021E4E7FF218F
S315080038900131E1E7002E0FD0022E54D0042E7DD040
S315080038A0082E7CD00125032000024749381A884291
S315080038B076D82068C76069E3FFF782F90026626A4E
S315080038C03146002A26D0012A26D0022A26D0032AE3
S315080038D026D0042A26D0052A26D0062A26D0072A44
S315080038E026D0082A26D0092A26D00A2A26D00B2A24
S315080038F026D001220023FEF755FC020E09021143C9
S31508003900626803025008181871410023FEF74AFC42
S315080039100746C8E70122EDE70222EBE70422E9E7BA
S315080039200622E7E70822E5E70A22E3E70C22E1E7B1
S315080039301022DFE72022DDE74022DBE78022D9E7F5
S31508003940FF220132D6E7606A002843D0012843D017
S31508003950022843D0032843D0042843D0052843D05F
S31508003960062843D0072843D0082843D0092843D03F
S315080039700A2843D00B2843D0012200263346114893
S315080039803146FEF70FFC020E0902114302020098A7
S315080039904008101871410023009A17E033E079E0D7
S315080039A0C0E00000F369FFCF00800040FFF4FF117C
S315080039B000380140401002400044004000480040E2
S315080039C0004C00400024F400FFFC0F00FEF7EAFB61
S315080039D0074668E70122D0E70222CEE70422CCE7B1
S315080039E00622CAE70822C8E70A22C6E70C22C4E765
S315080039F01022C2E72022C0E74022BEE78022BCE7A9
S31508003A00FF220132B9E7FFF7EFF80026626A31466E
S31508003A10002A26D0012A26D0022A26D0032A26D012
S31508003A20042A26D0052A26D0062A26D0072A26D0F2
S31508003A30082A26D0092A26D00A2A26D00B2A26D0D2
S31508003A4001220023FEF7AEFB020E0902114362684B
S31508003A5003025008181871410023FEF7A3FB074616
S31508003A6021E70122EDE70222EBE70422E9E7062235
S31508003A70E7E70822E5E70A22E3E70C22E1E7102256
S31508003A80DFE72022DDE74022DBE78022D9E7FF22B5
S31508003A900132D6E7606A00282BD001282BD00228ED
S31508003AA02BD003282BD004282BD005282BD006286A
S31508003AB02BD007282BD008282BD009282BD00A284A
S31508003AC02BD00B282BD00122002601203346C00319
S31508003AD03146FEF767FB020E0902114302020098FF
S31508003AE00023400810187141009AFEF75BFB074651
S31508003AF0D9E60122E8E70222E6E70422E4E70622FD
S31508003B00E2E70822E0E70A22DEE70C22DCE71022D9
S31508003B10DAE72022D8E74022D6E78022D4E7FF2238
S31508003B200132D1E7012531E20120E169C003814272
S31508003B307CD1002E14D0022E53D0042E77D0082E16
S31508003B4076D001253846FF491038884271D838465C
S31508003B50491C08403907490F01432068C16015E22E
S31508003B60FFF72EF80246606A002821D0012821D0E6
S31508003B70022821D0032821D0042821D0052821D0C5
S31508003B80062821D0072821D0082821D0092821D0A5
S31508003B900A2821D00B2821D001211046FEF7A3FBC5
S31508003BA0616840004A088018FEF79DFB87B2C9E79E
S31508003BB00121F2E70221F0E70421EEE70621ECE70E
S31508003BC00821EAE70A21E8E70C21E6E71021E4E7FD
S31508003BD02021E2E74021E0E78021DEE7FF210131ED
S31508003BE0DBE7606A002825D0012825D0022825D0E1
S31508003BF0032825D0042825D0052825D0062825D031
S31508003C00072825D0082825D0092825D00A2825D010
S31508003C100B2825D00121CC48FEF765FB61684000DA
S31508003C204A088018FEF75FFB87B28BE79BE01AE02D
S31508003C305AE096E00121EEE70221ECE70421EAE7E3
S31508003C400621E8E70821E6E70A21E4E70C21E2E78E
S31508003C501021E0E72021DEE74021DCE78021DAE7D2
S31508003C60FF210131D7E7FEF7BFFF0246606A002849
S31508003C7021D0012821D0022821D0032821D00428C8
S31508003C8021D0052821D0062821D0072821D00828A8
S31508003C9021D0092821D00A2821D00B2821D001219A
S31508003CA01046FEF720FB616840004A088018FEF7B8
S31508003CB01AFB87B246E70121F2E70221F0E7042161
S31508003CC0EEE70621ECE70821EAE70A21E8E70C21F6
S31508003CD0E6E71021E4E72021E2E74021E0E780213A
S31508003CE0DEE7FF210131DBE7616A002920D00129DF
S31508003CF020D0022920D0032920D0042920D0052944
S31508003D0020D0062920D0072920D0082920D0092923
S31508003D1020D00A2920D00B2920D00121FEF7E3FA6A
S31508003D20616840004A088018FEF7DDFA87B209E79D
S31508003D300121F3E70221F1E70421EFE70621EDE788
S31508003D400821EBE70A21E9E70C21E7E71021E5E777
S31508003D502021E3E74021E1E78021DFE7FF21013168
S31508003D60DCE7012512E1002E0ED0022E4CD0042EDF
S31508003D7070D0082E6FD0012538467249103888420F
S31508003D806AD82068C76001E1FEF71AFF0246606A32
S31508003D90002820D0012820D0022820D0032820D0AF
S31508003DA0042820D0052820D0062820D0072820D08F
S31508003DB0082820D0092820D00A2820D00B2820D06F
S31508003DC001211046FEF78FFA61684A088018FEF747
S31508003DD08AFA87B2D0E70121F3E70221F1E7042145
S31508003DE0EFE70621EDE70821EBE70A21E9E70C21D1
S31508003DF0E7E71021E5E72021E3E74021E1E7802115
S31508003E00DFE7FF210131DCE7606A002820D00128BE
S31508003E1023D0022823D0032823D0042823D005281A
S31508003E2023D0062823D0072823D0082823D00928FA
S31508003E3023D00A2823D00B2823D001214248FEF795
S31508003E4052FA61684A088018FEF74DFA87B293E776
S31508003E500121F3E718E057E097E00221EEE7042195
S31508003E60ECE70621EAE70821E8E70A21E6E70C215C
S31508003E70E4E71021E2E72021E0E74021DEE78021A0
S31508003E80DCE7FF210131D9E7FEF7AEFE0246606A9C
S31508003E90002820D0012820D0022820D0032820D0AE
S31508003EA0042820D0052820D0062820D0072820D08E
S31508003EB0082820D0092820D00A2820D00B2820D06E
S31508003EC001211046FEF70FFA61684A088018FEF7C6
S31508003ED00AFA87B250E70121F3E70221F1E7042144
S31508003EE0EFE70621EDE70821EBE70A21E9E70C21D0
S31508003EF0E7E71021E5E72021E3E74021E1E7802114
S31508003F00DFE7FF210131DCE7616A002924D00129B6
S31508003F1024D0022924D0032924D0042924D0052911
S31508003F2024D0062924D0072924D0082924D00929F1
S31508003F3024D00A2924D00B2924D00121FEF7D3F94D
S31508003F40616803E0EFFF00000024F4004A088018C7
S31508003F50FEF7C9F987B20FE70121EFE70221EDE77E
S31508003F600421EBE70621E9E70821E7E70A21E5E767
S31508003F700C21E3E71021E1E72021DFE74021DDE717
S31508003F808021DBE7FF210131D8E701250121204601
S31508003F904030418501850020E06620672846F8BD47
S31508003FA0FFB581B004460E4617460A9D09E0681C0F
S31508003FB007D0FEF785FB0499401AA8420CD8002DB5
S31508003FC00AD02068C169304688431AD00020B84212
S31508003FD0EDD0002005B0F0BD20680168FF22A132AF
S31508003FE09143016020688168490849008160202161
S31508003FF0204680300160416000206034207703202D
S31508004000E8E70120E3E7FFF759F9FEF761FAFFF75A
S3150800401067F9FEF759FAFAE7000000000000000009
S315080040200000000000000000000000000000000082
S31508004030000000000000000001000000020000006F
S31508004040030000000400000006000000070000004E
S315080040500800000009000000000000000000000041
S31508004060000000000000000001000000020000003F
S31508004070030000000400000098400008000000202B
S315080040802000000004210008B84000082000002095
S3150800409030070000202100080024F4000400000076
S315080040A00100000000000000000000000000000001
S30D080040B00000000000000000FA
S315080032B03880BF1CEBE70000FF01000010B500F0E6
S315080032C0A5FEFFF70BFA00F069F800F0B5F800F074
S315080032D001F810BD10B50520002220210007FFF7D0
S315080032E0E9F910BD70B500F0A3F804460E4DFF21AC
S315080032F06868F531201A88420CD3287805231B07FD
S31508003300002808D000202870002220211846FFF740
S31508003310D1F96C6070BD0120287001222021184661
S31508003320FFF7C8F9F5E70000180000208307FF2219
S31508003330DB0E9A408907090E994000280BDA000728
S31508003340000F0838830808489B001818C369934378
S315080033500B43C3617047830804489B001818036829
S3150800336093430B430360704700ED00E000E400E080
S3150800337010B50146002301220448FFF709FF00287B
S3150800338001D0002010BD012010BD000064000020FF
S3150800339010B5FFF79BF9FFF7BBFE10BD30B59FB020
S315080033A0382111A8FEF79DFF00240D940E940F9462
S315080033B0109434216846FEF794FF01204002FFF777
S315080033C017FA02251195E8011490159440201690D5
S315080033D01895199530211A911B90C0021C9000026D
S315080033E01D9048061E9011A8FFF74CFC002800D037
S315080033F0FEE707200D900E950F94109402210DA854
S31508003400FFF71EFB002800D0FEE7009502946846E9
S31508003410FFF714FA002800D0FEE71FB030BD000001
S3150800342001200249C00688607047000000ED00E0F0
S3150800343010B5FFF745F910BD10B5FFF7BBFB7D21A9
S31508003440C900FEF750FFFFF74BFE0420FFF738FED2
S3150800345000221146501EFFF7C7F910BD10B5018DA1
S31508003460C90707D001684A6801235B049A43C36AFF
S315080034701A434A60018D890707D501684A680123FE
S315080034801B049A43036B1A434A60018D490707D503
S3150800349001684A6801239B049A43436B1A434A60AE
S315080034A0018D090707D501684A680123DB039A439A
S315080034B0836B1A434A60018DC90607D501688A6875
S315080034C001231B039A43C36B1A438A60018D89063D
S315080034D007D501688A6801235B039A43036C1A437C
S315080034E08A60018D490612D501684B6801221205CA
S315080034F0446C934323434B60416C914207D1016866
S315080035004A6803235B059A43836C1A434A60018D14
S31508003510090607D501684A680123DB04C06C9A438B
S3150800352002434A6010BD0000FEB504462546002643
S315080035308035AE60FFF7C4F8019020680068134F25
S3150800354000070BD501210097002249052046019B5B
S3150800355000F028FD002801D00320FEBD2068006881
S3150800356040070BD501210097002289052046019BBB
S3150800357000F018FD002801D00320FEBD2020286099
S315080035806860603426770020FEBD0000FFFFFF015B
S31508003590F8B504460027002500202168A36822699B
S315080035A0E6691343626932431343626E1A430B6832
S315080035B0FD4E334013430B6021684A6803231B03FF
S315080035C09A43E3681A434A60A169F84B22689A420B
S315080035D001D0236A19439368F54E33400B43936031
S315080035E02168CA6A636A120912011A43CA62F14B50
S315080035F02168F14A994213D152699207920F07D06E
S31508003600012A09D0022A05D0032A07D0102642E04B
S31508003610002640E002263EE004263CE008263AE082
S31508003620E64B994213D152690C231A4007D0042A53
S3150800363009D0082A05D00C2A07D010262BE0002628
S3150800364029E0022627E0042625E0082623E0DC4BAD
S31508003650994201D100261EE0DA4B994201D1002693
S3150800366019E0D24B994215D1526903239B021A409D
S315080036700AD00B15D21A0BD0D21A07D09A4201D10A
S31508003680082608E0102606E0002604E0022602E0E6
S31508003690042600E01026C54A91426ED1002E14D0A9
S315080036A0022E4CD0042E69D0082E68D00125002899
S315080036B00AD0616800914A008918814203D80099A6
S315080036C00903814270D201252FE2FFF779FA0246F3
S315080036D0606A00281AD001281AD002281AD00328AE
S315080036E01AD004281AD005281AD006281AD007286E
S315080036F01AD008281AD009281AD00A281AD00B284E
S315080037001AD001211046FEF7EEFDD0E70121F9E7B0
S315080037100221F7E70421F5E70621F3E70821F1E797
S315080037200A21EFE70C21EDE71021EBE72021E9E775
S315080037304021E7E78021E5E7FF210131E2E7606AFA
S3150800374000281DD001281DD002281DD003281DD011
S3150800375004281DD005281DD006281DD007281DD0F1
S3150800376008281DD009281DD00A281ED00B281ED0CF
S3150800377001219548FEF7B7FD99E7D7E11AE053E02E
S315080037800121F6E70221F4E70421F2E70621F0E732
S315080037900821EEE70A21ECE70C21EAE71021E8E721
S315080037A02021E6E74021E4E776E08021E1E7FF21F2
S315080037B00131DEE7FFF718FA0246606A00281AD0D8
S315080037C001281AD002281AD003281AD004281AD099
S315080037D005281AD006281AD007281AD008281AD079
S315080037E009281AD00A281AD00B281AD001211046FF
S315080037F0FEF779FD5BE70121F9E70221F7E70421E6
S31508003800F5E70621F3E70821F1E70A21EFE70C219E
S31508003810EDE71021EBE72021E9E74021E7E78021E2
S31508003820E5E7FF210131E2E7606A00281BD001289D
S315080038301BD002281BD003281BD004281BD0052820
S315080038401BD006281BD007281BD008281BD0092800
S315080038501BD00A281BD00B281BD001210120C0032E
S31508003860FEF741FD23E70121F8E70221F6E70421E7
S31508003870F4E70621F2E70821F0E70A21EEE70C2132
S31508003880ECE71021EAE72021E8E74021E6E7802176
S31508003890E4E7FF210131E1E7002E0FD0022E54D0D4
S315080038A0042E7DD0082E7CD001250320000247492E
S315080038B0381A884276D82068C76069E3FFF780F926
S315080038C00026626A3146002A26D0012A26D0022A14
S315080038D026D0032A26D0042A26D0052A26D0062A48
S315080038E026D0072A26D0082A26D0092A26D00A2A28
S315080038F026D00B2A26D001220023FEF753FC020EFF
S31508003900090211436268030250081818714100231E
S31508003910FEF748FC0746C8E70122EDE70222EBE777
S315080039200422E9E70622E7E70822E5E70A22E3E7B1
S315080039300C22E1E71022DFE72022DDE74022DBE761
S315080039408022D9E7FF220132D6E7606A002843D0F1
S31508003950012843D0022843D0032843D0042843D063
S31508003960052843D0062843D0072843D0082843D043
S31508003970092843D00A2843D00B2843D00122002621
S31508003980334611483146FEF70DFC020E0902114373
S31508003990020200984008101871410023009A17E0A7
S315080039A033E079E0C0E00000F369FFCF0080004013
S315080039B0FFF4FF1100380140401002400044004067
S315080039C000480040004C00400024F400FFFC0F00B3
S315080039D0FEF7E8FB074668E70122D0E70222CEE7B2
S315080039E00422CCE70622CAE70822C8E70A22C6E765
S315080039F00C22C4E71022C2E72022C0E74022BEE715
S31508003A008022BCE7FF220132B9E7FFF7EDF800266E
S31508003A10626A3146002A26D0012A26D0022A26D0F2
S31508003A20032A26D0042A26D0052A26D0062A26D0F6
S31508003A30072A26D0082A26D0092A26D00A2A26D0D6
S31508003A400B2A26D001220023FEF7ACFB020E090240
S31508003A501143626803025008181871410023FEF7E3
S31508003A60A1FB074621E70122EDE70222EBE7042244
S31508003A70E9E70622E7E70822E5E70A22E3E70C2258
S31508003A80E1E71022DFE72022DDE74022DBE780229C
S31508003A90D9E7FF220132D6E7606A00282BD0012831
S31508003AA02BD002282BD003282BD004282BD005286E
S31508003AB02BD006282BD007282BD008282BD009284E
S31508003AC02BD00A282BD00B282BD001220026012028
S31508003AD03346C0033146FEF765FB020E0902114361
S31508003AE0020200980023400810187141009AFEF758
S31508003AF059FB0746D9E60122E8E70222E6E704224F
S31508003B00E4E70622E2E70822E0E70A22DEE70C22DB
S31508003B10DCE71022DAE72022D8E74022D6E780221F
S31508003B20D4E7FF220132D1E7012531E20120E1691C
S31508003B30C00381427CD1002E14D0022E53D0042E0D
S31508003B4077D0082E76D001253846FF4910388842A6
S31508003B5071D83846491C08403907490F014320687F
S31508003B60C16015E2FFF72CF80246606A002821D0EA
S31508003B70012821D0022821D0032821D0042821D0C9
S31508003B80052821D0062821D0072821D0082821D0A9
S31508003B90092821D00A2821D00B2821D00121104636
S31508003BA0FEF7A1FB616840004A088018FEF79BFBF8
S31508003BB087B2C9E70121F2E70221F0E70421EEE71F
S31508003BC00621ECE70821EAE70A21E8E70C21E6E7FF
S31508003BD01021E4E72021E2E74021E0E78021DEE743
S31508003BE0FF210131DBE7606A002825D0012825D0AE
S31508003BF0022825D0032825D0042825D0052825D035
S31508003C00062825D0072825D0082825D0092825D014
S31508003C100A2825D00B2825D00121CC48FEF763FBBE
S31508003C20616840004A088018FEF75DFB87B28BE79B
S31508003C309BE01AE05AE096E00121EEE70221ECE764
S31508003C400421EAE70621E8E70821E6E70A21E4E78E
S31508003C500C21E2E71021E0E72021DEE74021DCE73E
S31508003C608021DAE7FF210131D7E7FEF7BDFF0246DB
S31508003C70606A002821D0012821D0022821D00328F3
S31508003C8021D0042821D0052821D0062821D00728AC
S31508003C9021D0082821D0092821D00A2821D00B288C
S31508003CA021D001211046FEF71EFB616840004A0834
S31508003CB08018FEF718FB87B246E70121F2E70221D2
S31508003CC0F0E70421EEE70621ECE70821EAE70A21F6
S31508003CD0E8E70C21E6E71021E4E72021E2E74021A6
S31508003CE0E0E78021DEE7FF210131DBE7616A002991
S31508003CF020D0012920D0022920D0032920D0042948
S31508003D0020D0052920D0062920D0072920D0082927
S31508003D1020D0092920D00A2920D00B2920D001211A
S31508003D20FEF7E1FA616840004A088018FEF7DBFAF8
S31508003D3087B209E70121F3E70221F1E70421EFE75A
S31508003D400621EDE70821EBE70A21E9E70C21E7E779
S31508003D501021E5E72021E3E74021E1E78021DFE7BD
S31508003D60FF210131DCE7012512E1002E0ED0022EDB
S31508003D704CD0042E70D0082E6FD0012538467249D3
S31508003D80103888426AD82068C76001E1FEF718FF34
S31508003D900246606A002820D0012820D0022820D0B8
S31508003DA0032820D0042820D0052820D0062820D093
S31508003DB0072820D0082820D0092820D00A2820D073
S31508003DC00B2820D001211046FEF78DFA61684A08B3
S31508003DD08018FEF788FA87B2D0E70121F3E70221B7
S31508003DE0F1E70421EFE70621EDE70821EBE70A21D1
S31508003DF0E9E70C21E7E71021E5E72021E3E7402181
S31508003E00E1E78021DFE7FF210131DCE7606A00286E
S31508003E1020D0012823D0022823D0032823D0042821
S31508003E2023D0052823D0062823D0072823D00828FE
S31508003E3023D0092823D00A2823D00B2823D00121F0
S31508003E404248FEF750FA61684A088018FEF74BFAAE
S31508003E5087B293E70121F3E718E057E097E00221DC
S31508003E60EEE70421ECE70621EAE70821E8E70A215C
S31508003E70E6E70C21E4E71021E2E72021E0E740210C
S31508003E80DEE78021DCE7FF210131D9E7FEF7ACFE4A
S31508003E900246606A002820D0012820D0022820D0B7
S31508003EA0032820D0042820D0052820D0062820D092
S31508003EB0072820D0082820D0092820D00A2820D072
S31508003EC00B2820D001211046FEF70DFA61684A0832
S31508003ED08018FEF708FA87B250E70121F3E70221B6
S31508003EE0F1E70421EFE70621EDE70821EBE70A21D0
S31508003EF0E9E70C21E7E71021E5E72021E3E7402180
S31508003F00E1E78021DFE7FF210131DCE7616A00296B
S31508003F1024D0012924D0022924D0032924D0042915
S31508003F2024D0052924D0062924D0072924D00829F5
S31508003F3024D0092924D00A2924D00B2924D00121E8
S31508003F40FEF7D1F9616803E0EFFF00000024F400F2
S31508003F504A088018FEF7C7F987B20FE70121EFE78D
S31508003F600221EDE70421EBE70621E9E70821E7E767
S31508003F700A21E5E70C21E3E71021E1E72021DFE745
S31508003F804021DDE78021DBE7FF210131D8E7012564
S31508003F90012120464030418501850020E0662067E2
S31508003FA02846F8BDFFB581B004460E4617460A9D59
S31508003FB009E0681C07D0FEF783FB0499401AA8425B
S31508003FC00CD8002D0AD02068C169304688431AD01B
S31508003FD00020B842EDD0002005B0F0BD2068016889
S31508003FE0FF22A1329143016020688168490849008F
S31508003FF081602021204680300160416000206034C5
S3150800400020770320E8E70120E3E70000024901489A
S31508004010886070470020000800ED00E0FFF74EF9C1
S31508004020FEF756FAFFF75EF9FEF74EFAFAE70000D2
S315080040300000000000000000000000000000000072
S315080040400000000000000000000000000000000062
S315080040500100000002000000030000000400000048
S315080040600600000007000000080000000900000024
S315080040700000000000000000000000000000000032
S315080040800100000002000000030000000400000018
S31508004090B0400008000000202000000004210008AD
S315080040A0D04000082000002030070000202100082A
S315080040B00024F400040000000100000000000000D5
S315080040C000000000000000000000000000000000E2
S705080020C111

View File

@ -114,12 +114,7 @@
/*!< Uncomment the following line if you need to relocate your vector Table in
Internal SRAM. */
/* #define VECT_TAB_SRAM */
/* Vector table offset was changed, because the first part in flash is occupied
* by the OpenBLT bootloader. Therefore we need to remap the vector table base
* address. Note that this value needs adjustment, if more space in flash is
* reserved for the bootloader.
*/
#define VECT_TAB_OFFSET 0x2000U /*!< Vector Table base offset field.
#define VECT_TAB_OFFSET 0x0U /*!< Vector Table base offset field.
This value must be a multiple of 0x100. */
/******************************************************************************/
/**

View File

@ -37,6 +37,7 @@
****************************************************************************************/
static void Init(void);
static void SystemClock_Config(void);
static void VectorBase_Config(void);
/************************************************************************************//**
@ -73,6 +74,8 @@ int main(void)
****************************************************************************************/
static void Init(void)
{
/* configure the vector table base address. */
VectorBase_Config();
/* reset of all peripherals, initializes the Flash interface and the Systick. */
HAL_Init();
/* configure the system clock. */
@ -84,6 +87,27 @@ static void Init(void)
} /*** end of Init ***/
/************************************************************************************//**
** \brief Vector base address configuration. It should no longer be at the start of
** flash memory but moved forward because the first part of flash is
** reserved for the bootloader. Note that this is already done by the
** bootloader before starting this program. Unfortunately, function
** SystemInit() overwrites this change again.
** \return none.
**
****************************************************************************************/
static void VectorBase_Config(void)
{
/* The constant array with vectors of the vector table is declared externally in the
* c-startup code.
*/
extern const unsigned long __Vectors[];
/* Remap the vector table to where the vector table is located for this program. */
SCB->VTOR = (unsigned long)&__Vectors[0];
} /*** end of VectorBase_Config ***/
/************************************************************************************//**
** \brief System Clock Configuration. This code was created by CubeMX and configures
** the system clock.

View File

@ -1,21 +1,21 @@
S01A000064656D6F70726F675F73746D3332673037312E7372656396
S3150800200000900020D143000821440008214400081C
S3150800200000900020E54300083544000835440008E0
S3150800201000000000000000000000000000000000B2
S315080020200000000000000000000000002144000835
S315080020300000000000000000214400085144000888
S3150800204021440008214400082144000821440008CE
S3150800205021440008214400082144000821440008BE
S3150800206021440008214400082144000821440008AE
S31508002070214400082144000821440008214400089E
S31508002080214400082144000821440008214400088E
S31508002090214400082144000821440008214400087E
S315080020A0214400082144000821440008214400086E
S315080020B0214400082144000821440008EE11AA55CD
S315080020200000000000000000000000003544000821
S315080020300000000000000000354400086544000860
S31508002040354400083544000835440008354400087E
S31508002050354400083544000835440008354400086E
S31508002060354400083544000835440008354400085E
S31508002070354400083544000835440008354400084E
S31508002080354400083544000835440008354400083E
S31508002090354400083544000835440008354400082E
S315080020A0354400083544000835440008354400081E
S315080020B0354400083544000835440008EE11AA5591
S315080020C010B5064C2378002B07D1054B002B02D000
S315080020D0044800E000BF0123237010BD0C00002057
S315080020E000000000B4440008044B10B5002B03D0D0
S315080020E000000000C8440008044B10B5002B03D0BC
S315080020F00349044800E000BF10BDC04600000000C8
S3150800210010000020B4440008002243088B4274D310
S3150800210010000020C8440008002243088B4274D3FC
S3150800211003098B425FD3030A8B4244D3030B8B42DA
S3150800212028D3030C8B420DD3FF22090212BA030CE3
S315080021308B4202D31212090265D0030B8B4219D3C4
@ -76,16 +76,16 @@ S31508002490BFF34F8F034A044BDA60BFF34F8FC04632
S315080024A0FDE7C0460400FA0500ED00E010B5214B33
S315080024B01B78002B16D12048FFF7D6FF012800D03D
S315080024C010BD1D4B1B78013BDBB23F2BF8D801F042
S315080024D0BBFF1A4B18600122164B1A700022184BC4
S315080024D0C5FF1A4B18600122164B1A700022184BBA
S315080024E01A70EDE7164B1B7801331348C018FFF72F
S315080024F0BBFF01280AD001F0A7FF104B1B68643305
S315080024F0BBFF01280AD001F0B1FF104B1B686433FB
S315080025009842DDD900220B4B1A70D9E70C4A13788A
S315080025100133DBB21370084A12789342D0D10021F6
S31508002520044A1170044A5278FF2AC9D1022BC7D12E
S31508002530FFF7AEFFF5000020B4000020F8000020E9
S31508002540F600002010B5FFF7B1FF10BD10B5002248
S315080025502021A020C00500F099F910BD10B501F0A2
S3150800256073FF04000F4B1B68C31AF422FF32934211
S315080025607DFF04000F4B1B68C31AF422FF32934207
S315080025700ED90D4B1B78002B0BD1F33AFF3A0A4BB9
S315080025801A702021A020C00500F080F9054B1C60B8
S3150800259010BD0022044B1A702021A020C00500F0AF
@ -97,7 +97,7 @@ S315080025E02100013800F032F8044B1C600020E4E7B3
S315080025F00120E2E700000020080000200400002077
S3150800260010B5084A116880235B000B43136000204D
S31508002610FFF7CCFF041E02D00124200010BD01F0F4
S3150800262087FEFAE700200240034A1368034909684F
S3150800262091FEFAE700200240034A13680349096845
S315080026305B1813607047C0460401002000000020A4
S31508002640014B18687047C0460401002070B5002881
S3150800265011DB8308144DC0339B005C5903221040DC
@ -254,10 +254,10 @@ S31508002FB0FFF746FB0600094B1A68072313409D4294
S31508002FC0D2D0FFF73DFB801B074B9842F3D903206D
S31508002FD0E7E70120E5E70120E3E7C04600200240D5
S31508002FE000100240FFF0FFFF88130000FF8FFFFF6D
S31508002FF0CC4400080800002004000020014B186893
S31508002FF0E04400080800002004000020014B18687F
S315080030007047C0460800002010B5FFF7F7FF064BCB
S315080030109A68120B072313409B00044A9A581F23E9
S315080030201340D84010BDC046001002400C450008A9
S315080030201340D84010BDC046001002402045000895
S31508003030F0B583B0040003689B0360D5804BDB6B57
S31508003040DB001ED47E4AD16B802040050143D16344
S31508003050D36B03400193019B01267A4A11688023AA
@ -549,53 +549,54 @@ S3150800422053680E490B405360226893682A218B43D2
S3150800423093602268136829390B4313602000FFF73F
S315080042409FFF10BD00227C33C254FFF713F8D6E750
S315080042502000FFF741FEE2E70120F2E7FFB7FFFF84
S31508004260014A024B9A6070470020000800ED00E002
S3150800427000B5A1B03822002112A800F013F91022C7
S3150800428000210EA800F00EF93422002101A800F042
S3150800429009F980208000FEF7FFFA02231293802294
S315080042A052001592002216924032179219931A93C9
S315080042B02E331B931C9280239B021D9380239B0401
S315080042C01E93C023DB051F9312A8FEF70FFB0028D9
S315080042D000D0FEE707230E93053B0F9300231093A8
S315080042E0119302210EA8FEF7C3FD002800D0FEE7B1
S315080042F0022301930023039301A8FEF799FE0028E1
S3150800430000D0FEE721B000BD10B5FEF779F9FFF73A
S31508004310AFFF00F086F8FEF719F910BD10B5FFF7E4
S31508004320F3FFFEF7B1F8FEF719F9FEF70BF9FAE70E
S31508004330F0B58BB0254B1A6C012422431A641A6C0B
S3150800434022400192019A5A6B22435A635A6B2240C1
S315080043500292029A5A6B022632435A635A6B3240C9
S315080043600392039ADA6B802189020A43DA63DB6BCC
S315080043700B400493049B0022002105204042FEF7CF
S3150800438065F90022002102204042FEF75FF900226B
S31508004390002101204042FEF759F92023059306948F
S315080043A0002507950895A027FF0505A93800FEF7FB
S315080043B0B1F90C230593069607950895099405A95E
S315080043C03800FEF7A7F90BB0F0BDC0460010024052
S315080043D00D488546002103E00C4B5B5843500431D9
S315080043E00B480C4B42189A42F6D30B4A02E00023BC
S315080043F013600432094B9A42F9D3FFF731FF00F0F4
S315080044002DF8FFF78BFFFEE7009000203C450008DB
S31508004410000000200C0000200C00002008010020ED
S31508004420FEE710B5FEF7EAFDFA218900FDF76CFEF6
S31508004430FEF73EF90420FEF757F900220021012075
S315080044404042FEF703F910BD10B5FEF7F9F810BDA6
S3150800445010B5FEF7E9F8FEF758F910BD70B5002655
S315080044600C4D0D4C641BA410A64209D1002600F081
S3150800447021F80A4D0A4C641BA410A64205D170BD4A
S31508004480B300EB5898470136EEE7B300EB58984768
S315080044900136F2E73445000834450008344500087B
S315080044A03845000803008218934200D170471970F6
S315080044B00133F9E7F8B5C046F8BC08BC9E46704714
S311080044C0F8B5C046F8BC08BC9E4670471C
S315080044CC00000000000000000000000000000000D2
S315080044DC00000000000000000000000000000000C2
S315080044EC01000000020000000300000004000000A8
S315080044FC0600000007000000080000000900000084
S3150800450C0000000000000000000000000000000091
S3150800451C0100000002000000030000000400000077
S30D0800452C34DDFF7F01000000E9
S30908004534E920000864
S30908004538C120000888
S3110800453C01000000040000000024F40048
S705080043D1DE
S3150800426080221205014B9A607047C04600ED00E0B7
S31508004270014B024A9A60704700ED00E000200008F2
S3150800428000B5A1B03822002112A800F015F91022B5
S3150800429000210EA800F010F93422002101A800F030
S315080042A00BF980208000FEF7F7FA0223129380228A
S315080042B052001592002216924032179219931A93B9
S315080042C02E331B931C9280239B021D9380239B04F1
S315080042D01E93C023DB051F9312A8FEF707FB0028D1
S315080042E000D0FEE707230E93053B0F930023109398
S315080042F0119302210EA8FEF7BBFD002800D0FEE7A9
S31508004300022301930023039301A8FEF791FE0028D8
S3150800431000D0FEE721B000BD10B5FFF7A9FFFEF7F4
S315080043206FF9FFF7ADFF00F086F8FEF70FF910BD3D
S3150800433010B5FFF7F1FFFEF7A7F8FEF70FF9FEF73E
S3150800434001F9FAE7F0B58BB0254B1A6C0124224324
S315080043501A641A6C22400192019A5A6B22435A63D4
S315080043605A6B22400292029A5A6B022632435A63C9
S315080043705A6B32400392039ADA6B802189020A4308
S31508004380DA63DB6B0B400493049B002200210520B3
S315080043904042FEF75BF90022002102204042FEF768
S315080043A055F90022002101204042FEF74FF920234B
S315080043B005930694002507950895A027FF0505A9E6
S315080043C03800FEF7A7F90C23059306960795089576
S315080043D0099405A93800FEF79DF90BB0F0BDC04653
S315080043E0001002400D488546002103E00C4B5B583F
S315080043F0435004310B480C4B42189A42F6D30B4AE9
S3150800440002E0002313600432094B9A42F9D3FFF7FE
S3150800441027FF00F02DF8FFF78BFFFEE7009000203E
S3150800442050450008000000200C0000200C00002069
S3150800443008010020FEE710B5FEF7E0FDFA21890025
S31508004440FDF762FEFEF734F90420FEF74DF9002267
S31508004450002101204042FEF7F9F810BD10B5FEF71D
S31508004460EFF810BD10B5FEF7DFF8FEF74EF910BDF0
S3150800447070B500260C4D0D4C641BA410A64209D13C
S31508004480002600F021F80A4D0A4C641BA410A64227
S3150800449005D170BDB300EB5898470136EEE7B30077
S315080044A0EB5898470136F2E74845000848450008A2
S315080044B0484500084C45000803008218934200D17D
S315080044C0704719700133F9E7F8B5C046F8BC08BC5F
S315080044D09E467047F8B5C046F8BC08BC9E4670476D
S315080044E000000000000000000000000000000000BE
S315080044F000000000000000000000000000000000AE
S315080045000100000002000000030000000400000093
S31508004510060000000700000008000000090000006F
S31508004520000000000000000000000000000000007D
S315080045300100000002000000030000000400000063
S30D0800454020DDFF7F01000000E9
S30908004548E920000850
S3090800454CC120000874
S3110800455001000000040000000024F40034
S705080043E5CA

View File

@ -114,12 +114,7 @@
/*!< Uncomment the following line if you need to relocate your vector Table in
Internal SRAM. */
/* #define VECT_TAB_SRAM */
/* Vector table offset was changed, because the first part in flash is occupied
* by the OpenBLT bootloader. Therefore we need to remap the vector table base
* address. Note that this value needs adjustment, if more space in flash is
* reserved for the bootloader.
*/
#define VECT_TAB_OFFSET 0x2000U /*!< Vector Table base offset field.
#define VECT_TAB_OFFSET 0x0U /*!< Vector Table base offset field.
This value must be a multiple of 0x100. */
/******************************************************************************/
/**

View File

@ -37,6 +37,7 @@
****************************************************************************************/
static void Init(void);
static void SystemClock_Config(void);
static void VectorBase_Config(void);
/************************************************************************************//**
@ -73,6 +74,8 @@ int main(void)
****************************************************************************************/
static void Init(void)
{
/* configure the vector table base address. */
VectorBase_Config();
/* reset of all peripherals, initializes the Flash interface and the Systick. */
HAL_Init();
/* configure the system clock. */
@ -84,6 +87,27 @@ static void Init(void)
} /*** end of Init ***/
/************************************************************************************//**
** \brief Vector base address configuration. It should no longer be at the start of
** flash memory but moved forward because the first part of flash is
** reserved for the bootloader. Note that this is already done by the
** bootloader before starting this program. Unfortunately, function
** SystemInit() overwrites this change again.
** \return none.
**
****************************************************************************************/
static void VectorBase_Config(void)
{
/* The constant array with vectors of the vector table is declared externally in the
* c-startup code.
*/
extern const unsigned long g_pfnVectors[];
/* Remap the vector table to where the vector table is located for this program. */
SCB->VTOR = (unsigned long)&g_pfnVectors[0];
} /*** end of VectorBase_Config ***/
/************************************************************************************//**
** \brief System Clock Configuration. This code was created by CubeMX and configures
** the system clock.