在linux下最简单的stm32gcc程序

在linux下最简单的stm32gcc程序

ID:8815366

大小:14.51 KB

页数:3页

时间:2018-04-08

在linux下最简单的stm32gcc程序_第1页
在linux下最简单的stm32gcc程序_第2页
在linux下最简单的stm32gcc程序_第3页
资源描述:

《在linux下最简单的stm32gcc程序》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、在linux下最简单的STM32gcc程序,需要三个文件分别为main.cmakefile和stm32-linux.ld:main.c:intmain(void){return0;}makefile:TARGET=mainOBJS=main.oCC=arm-none-eabi-gccLD=arm-none-eabi-ldOBJCP=arm-none-eabi-objcopyCFLAGS=-mcpu=cortex-m3-mthumb-nostartfilesLFLAGS=-Tstm32-linux.ldCPFLAGS=-ObinaryTARGET_

2、ELF=$(TARGET).elfTARGET_BIN=$(TARGET).bin$(TARGET_BIN):$(TARGET_ELF)$(OBJCP)$(CPFLAGS)$<$@$(TARGET_ELF):$(OBJS)$(LD)$(LFLAGS)-o$@$<$(OBJS):main.c$(CC)$(CFLAGS)$<$(LFLAGS)-o$@clean:rm-f$(TARGET)*.ostm32-linux.ld:MEMORY{rom(rx):ORIGIN=0,LENGTH=2Mram(rwx):ORIGIN=0x20000000,LENGT

3、H=4M}SECTIONS{.=0x0;.text:{*(vectors)*(.text)*(.rodata)}.=0x20000000;.data:{*(.data)}.bss:{*(.bss)}}编译过程:[root@localhostsrc]#[root@localhostsrc]#lsmain.cmakefilestm32-linux.ld[root@localhostsrc]#makearm-none-eabi-gcc-mcpu=cortex-m3-mthumb-Wall-g-O0-nostartfilesmain.c-Tstm32-l

4、inux.ld-omain.oarm-none-eabi-ld-Tstm32-linux.ld-omain.elfmain.oarm-none-eabi-objcopy-Obinarymain.elfmain.bin[root@localhostsrc]#arm-none-eabi-objdump-Smain.elfmain.elf:fileformatelf32-littlearmDisassemblyofsection.text:00000000

:(void*)STACK_TOP,(void*)main};intmain(void

5、){0:b480push{r7}2:af00addr7,sp,#0return0;4:f04f0300mov.wr3,#0}8:4618movr0,r3a:46bdmovsp,r7c:bc80pop{r7}e:4770bxlr[root@localhostsrc]#makecleanrm-fmain*.o*.elf*.bin[root@localhostsrc]#

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。