Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Logger USART2 #2

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion hwdefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@

//#define HWCONFIG_TUMANAKO_KIWIAC
//#define HWCONFIG_OLIMEX_H107
#define HWCONFIG_OLIMEX
//#define HWCONFIG_OLIMEX
#define HWCONFIG_LOGGER

#ifdef HWCONFIG_TUMANAKO_KIWIAC
#define RCC_CLOCK_SETUP rcc_clock_setup_in_hse_16mhz_out_72mhz
Expand All @@ -22,6 +23,15 @@
#define USART_DMA_CHAN 3
#endif

#ifdef HWCONFIG_LOGGER
#define RCC_CLOCK_SETUP rcc_clock_setup_in_hse_8mhz_out_72mhz

#define TERM_USART USART2
#define TERM_USART_TXPIN GPIO_USART2_TX
#define TERM_USART_TXPORT GPIOA
#define USART_DMA_CHAN 6
#endif

#ifdef HWCONFIG_OLIMEX_H107
#define RCC_CLOCK_SETUP rcc_clock_setup_in_hse_25mhz_out_72mhz

Expand Down
1,360 changes: 1,360 additions & 0 deletions linker.map

Large diffs are not rendered by default.

Binary file added stm32_loader
Binary file not shown.
Binary file added stm32_loader.bin
Binary file not shown.
5 changes: 4 additions & 1 deletion stm32_loader.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,9 @@ static void clock_setup(void)
#ifdef HWCONFIG_OLIMEX
rcc_peripheral_enable_clock(&RCC_APB1ENR, RCC_APB1ENR_USART3EN);
#endif
#ifdef HWCONFIG_LOGGER
rcc_peripheral_enable_clock(&RCC_APB1ENR, RCC_APB1ENR_USART2EN);
#endif
#ifdef HWCONFIG_OLIMEX_H107
rcc_periph_clock_enable(RCC_AFIO);
rcc_peripheral_enable_clock(&RCC_APB1ENR, RCC_APB1ENR_USART3EN);
Expand Down Expand Up @@ -100,7 +103,7 @@ static void usart_setup(void)
static void dma_setup(void *data, uint32_t len)
{
dma_disable_channel(DMA1, USART_DMA_CHAN);
dma_set_peripheral_address(DMA1, USART_DMA_CHAN, (uint32_t)&USART3_DR);
dma_set_peripheral_address(DMA1, USART_DMA_CHAN, (uint32_t)&USART2_DR);
dma_set_memory_address(DMA1, USART_DMA_CHAN, (uint32_t)data);
dma_set_number_of_data(DMA1, USART_DMA_CHAN, len * 4);
dma_set_peripheral_size(DMA1, USART_DMA_CHAN, DMA_CCR_PSIZE_8BIT);
Expand Down
177 changes: 177 additions & 0 deletions stm32_loader.hex
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
:020000040800F2
:10000000005000201D0A0008190A0008170A0008FD
:10001000170A0008170A0008170A00080000000065
:10002000000000000000000000000000190A0008A5
:10003000190A000800000000190A0008190A00083F
:10004000170A0008170A0008170A0008170A00080C
:10005000170A0008170A0008170A0008170A0008FC
:10006000170A0008170A0008170A0008170A0008EC
:10007000170A0008170A0008170A0008170A0008DC
:10008000170A0008170A0008170A0008170A0008CC
:10009000170A0008170A0008170A0008170A0008BC
:1000A000170A0008170A0008170A0008170A0008AC
:1000B000170A0008170A0008170A0008170A00089C
:1000C000170A0008170A0008170A0008170A00088C
:1000D000170A0008170A0008170A0008170A00087C
:1000E000170A0008170A0008170A0008170A00086C
:1000F000170A0008170A0008170A0008170A00085C
:10010000170A0008170A0008170A0008170A00084B
:10011000170A0008170A0008170A0008170A00083B
:10012000170A0008170A0008170A0008170A00082B
:10013000170A0008170A0008170A0008170A00081B
:10014000170A0008170A0008170A0008170A00080B
:1001500070B506460D46174C0621204600F0CEF934
:1001600020460621144A00F0D2F9324620460621E4
:1001700000F0D6F9AA002046062192B200F0D9F983
:1001800020460022062100F09AF90022204606218E
:1001900000F088F92046062100F09EF9204606214D
:1001A00000F0A3F92046BDE870400222062100F0CD
:1001B00069B900BF00000240044400404FF48013BE
:1001C00082B00193019B0BB902B07047019B013BC8
:1001D000F7E700002DE9F047ADF6080D00F078FBD9
:1001E000062000F0F5FA0421904800F0B5FB082144
:1001F0008E4800F0B1FB10218C4800F0ADFB2021AF
:100200008A4800F0A9FB4FF40031894800F0A4FBB4
:100210000121884800F0A0FB4021864800F09CFBAB
:10022000062000F0CDFA4FF4FA6000F06DFA00F00D
:100230005BFA00F021F9804C14210444A40220460A
:1002400000F00CF9236D984214D104F15005206898
:1002500080B1A17900296DD000220321A38800F08C
:1002600011FAE3791BB1A188206800F03AFA08344A
:10027000A542ECD1042302220321704800F002FAC7
:100280004FF4E1316E4800F06BFB08216C4800F040
:100290007BFB4FF400516A4800F07FFB0C2168485B
:1002A00000F087FB0021664800F07DFB00216448D8
:1002B00000F085FB624800F09DFB614800F085FB83
:1002C0004FF4807102A8FFF743FF32215C48FFF72B
:1002D00075FF00F084FB5A48FFF770FF00F093FBB6
:1002E000C0B2AA2811D15321554800F078FB5448D8
:1002F000FFF764FF00F087FB0026C4B200F09CF912
:10030000504D4F4FC4B900F0A3F944214C4800F0C0
:1003100066FB4B48FFF752FF00F05CFB4FF0E0211B
:10032000484B5A68C1F8083D904700200DF6080D6B
:10033000BDE8F087022291E70023019300F086F8E0
:1003400002AB03EB86094FF480714846FFF700FFCC
:100350005021384600F043FB4FF40018DFF8E8A0C6
:1003600002220621504600F093F8002843D04FF4B3
:100370008071484600F072F80121804601A8FFF71D
:10038000E7FE4321384600F02AFBDFF8BC9002224A
:100390000621484600F07CF80028F8D0019B434530
:1003A0003ED1B6F5807F01D0012C35D1284600F032
:1003B00009F905F5806002464FF0FF3305F5006846
:1003C00052F8041B424503EA0103F9D1013301D07D
:1003D00000F0F8F800260DF10809A81959F8041BD7
:1003E000043600F043F9B6F5006FF6D10026013C63
:1003F0004546E4B286E7B8F101080AD14FF48071AE
:100400004846FFF7A5FE5421384600F0E8FA4FF4BD
:10041000001800F0A1F9A3E7A84606F58076E6E704
:100420004521384600F0DBFA6CE700BF18100240A7
:100430001C10024014100240FDFF41000008014062
:10044000004400400010000800000240024A936887
:1004500043F001039360704700300240002310B561
:10046000044A8B4201DB106810BD50F82340013371
:100470001460F6E700300240014BB3F8E007704724
:1004800000F0FF1F0139890002FA01F14160704755
:1004900001390368890002FA01F1194214BF0120F1
:1004A00000207047142301395943083010B50C5807
:1004B00024F440640C500B5813430B5010BD14230C
:1004C00001395943083010B50C5824F440740C50CD
:1004D0000B5813430B5010BD1423013959430830F6
:1004E0000B5843F080030B507047142301395943D4
:1004F00008300B5843F001030B50704714230139A7
:10050000594308300B5823F001030B507047142354
:10051000013903FB01008368DB0758BF02617047A4
:100520001423013903FB01008368DB0758BF4261D4
:1005300070471423013959430C300A5070470000AA
:1005400038B5064DEC68FFF797FFB0F5007F84BF24
:10055000E86C044304F0350038BD00BF00200240C1
:1005600038B504460D4600F07BF8FFF785FFB0F57F
:10057000007F124B17D9124A944214D91A6D42F0D7
:1005800001021A65258000F06BF8FFF775FFB0F5E2
:10059000007F0A4B0CD90A4A944209D91A6D22F0FD
:1005A00001021A6538BD1A6942F001021A61E9E7D1
:1005B0001A6922F001021A61F4E700BF002002402C
:1005C000FFFF070810B5044600F04AF8FFF754FF94
:1005D000B0F5007F164B1BD9164A944218D91A6DF4
:1005E00042F002021A655C651A6D42F040021A651B
:1005F00000F036F8FFF740FFB0F5007F0C4B11D943
:100600000C4A94420ED91A6D22F002021A6510BDEE
:100610001A6942F002021A615C611A6942F04002F2
:100620001A61E5E71A6922F002021A61EFE700BFDA
:1006300000200240FFFF0708034B044A5A6002F102
:1006400088325A60704700BF00200240230167458E
:10065000024A136943F0800313617047002002408F
:1006600008B5FFF76DFFC307FBD408BD38B50546D5
:100670000C4689B2FFF774FF210CA81CBDE8384076
:10068000FFF76EBF2DE9F04100264FF00F0E9C469C
:10069000036847684CFA06F4E4071BD5072E94BF9D
:1006A0009846B846B4B24FEA84048ABF203CA4B24C
:1006B000A4B20EFA04F528EA0508A51CADB202FAA8
:1006C00005F501FA04F42C4344EA0804072E94BF0C
:1006D000234627460136102EDCD103604760BDE873
:1006E000F0810161704700004CF6CC42014B1A606A
:1006F000704700BF00300040024BD868C0F3400094
:10070000704700BF00300040C000012838BF012002
:10071000002208B5411E5FEA113CD3B202F101028A
:1007200015D1062B84BF40F6FF710623094AD06815
:10073000C007FCD445F2555010605360FFF7DCFF52
:100740000028FBD145F255531360916008BD400865
:10075000E0E700BF003000404AF6AA22014B1A60D1
:10076000704700BF00300040062824D8DFE800F0C2
:1007700004090E13181D2000104B1868C0F34060C8
:1007800070470E4B1868C0F3C06070470B4B186879
:10079000C0F340707047094B1868C0F34040704781
:1007A000064B1868C0F340007047044B186AF9E71D
:1007B000024B586AF6E70020704700BF0010024065
:1007C000024608B51046FFF7CFFF0028FAD008BD53
:1007D00006282AD8DFE800F0040A0F14191E2400A6
:1007E000124A136843F08073136070470F4A13680E
:1007F00043F08063F8E70D4A136843F08053F3E752
:100800000A4A136843F48033EEE7084A136843F05A
:100810000103E9E7054A136A43F0010313627047D5
:10082000024A536A43F001035362704700100240CA
:10083000034A536823F0030303435360704700BF28
:1008400000100240034A536823F4701343EA8043C4
:100850005360704700100240034A536823F480330A
:1008600043EA00435360704700100240034A536854
:1008700023F4003343EA40435360704700100240C2
:10088000034A536823F4404343EA8033536070477C
:1008900000100240034A536823F4605343EAC02324
:1008A0005360704700100240034A536823F4E0632A
:1008B00043EA00235360704700100240034A536824
:1008C00023F0F00343EA0013536070470010024026
:1008D00008B50420FFF77CFFFFF772FF0020FFF749
:1008E000A7FF0320FFF774FFFFF76AFF0120FFF760
:1008F0009FFF0020FFF7E2FF0320FFF7C1FF042066
:10090000FFF7D2FF0020FFF7C5FF022000F0D0F86C
:100910000720FFF797FF0120FFF79EFF0020FFF75A
:10092000A5FFFFF755FFFFF74BFF0220FFF780FF02
:10093000044B054A05491360054A1160054A1360D6
:1009400008BD00BF00A24A0400000020005125029B
:10095000040000200800002003680B430360704778
:10096000064A074B90421B6804BF064B1B6803EB0B
:100970005103B3FBF1F38360704700BF00380140BF
:100980000400002008000020C36808290CBF23F4DD
:10099000805343F48053C3607047036923F440538A
:1009A0000B4303617047C36823F4C0630B43C36008
:1009B0007047C36823F00C030B43C360704743695F
:1009C00023F440730B4343617047C36843F40053FF
:1009D000C3607047C36823F40053C360704738B5E1
:1009E00004460D4600F013F829462046BDE838407D
:1009F00000F005B8436943F0400343617047C1F319
:100A00000801416070474068C0F308007047036800
:100A10001B06FCD57047FEE77047000038B51A4A40
:100A20001A4B1B498B421AD300211A4A93421BD3FB
:100A30004FF0E022D2F8143D174C43F40073174DE9
:100A4000C2F8143DAC4212D3154C164DAC4212D331
:100A5000FFF7C0FB144C154DAC4210D338BD52F813
:100A6000040B43F8040BDDE743F8041BDEE754F8FE
:100A7000043B9847E6E754F8043B9847E6E754F808
:100A8000043B9847E8E700BFC40A000800000020C4
:100A90000C0000200C000020C40A0008C40A000852
:100AA000C40A0008C40A0008C40A0008C40A0008EE
:100AB000034A136823F0070303431360704700BF22
:040AC00000200240D0
:0C0AC40000127A0000127A0000127A0082
:0400000508000A1DC8
:00000001FF
Binary file added stm32_loader.o
Binary file not shown.