⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 FreeRTOS is a portable, open source, mini Real Time Kernel - a free to download and royalty free RTO
💻
📖 第 1 页 / 共 2 页
字号:
else	@echoendif# Perform a flash chip erase..PHONY: eraseerase:ifeq ($(filter chiperase program,$(MAKECMDGOALS)),)	@echo	@echo $(MSG_ERASING)	$(VERBOSE_CMD)$(PROGRAM) erase $(FLASH:%=-f%)ifneq ($(call LastWord,$(filter cpuinfo erase secureflash reset debug run readregs,$(MAKECMDGOALS))),erase)	@$(SLEEP) $(SLEEPUSB)else	@echoendifelse	@:endif# Program MCU memory from ELF output file..PHONY: programprogram: all	@echo	@echo $(MSG_PROGRAMMING)	$(VERBOSE_CMD)$(PROGRAM) program $(FLASH:%=-f%) $(PROG_CLOCK:%=-c%) -e -v -R $(if $(findstring run,$(MAKECMDGOALS)),-r) $(TARGET)ifneq ($(call LastWord,$(filter cpuinfo chiperase program secureflash debug readregs,$(MAKECMDGOALS))),program)	@$(SLEEP) $(SLEEPUSB)else	@echoendif# Protect chip by setting security bit..PHONY: secureflashsecureflash:	@echo	@echo $(MSG_SECURING_FLASH)	$(VERBOSE_CMD)$(PROGRAM) secureflashifneq ($(call LastWord,$(filter cpuinfo chiperase erase program secureflash reset debug run readregs,$(MAKECMDGOALS))),secureflash)	@$(SLEEP) $(SLEEPUSB)else	@echoendif# Reset MCU..PHONY: resetreset:ifeq ($(filter program run,$(MAKECMDGOALS)),)	@echo	@echo $(MSG_RESETTING)	$(VERBOSE_CMD)$(PROGRAM) resetifneq ($(call LastWord,$(filter cpuinfo chiperase erase secureflash reset debug readregs,$(MAKECMDGOALS))),reset)	@$(SLEEP) $(SLEEPUSB)else	@echoendifelse	@:endif# Open a debug connection with the MCU..PHONY: debugdebug:	@echo	@echo $(MSG_DEBUGGING)	$(VERBOSE_CMD)$(DBGPROXY) $(FLASH:%=-f%)ifneq ($(call LastWord,$(filter cpuinfo halt chiperase erase program secureflash reset debug run readregs,$(MAKECMDGOALS))),debug)	@$(SLEEP) $(SLEEPUSB)else	@echoendif# Start CPU execution..PHONY: runrun:ifeq ($(findstring program,$(MAKECMDGOALS)),)	@echo	@echo $(MSG_RUNNING)	$(VERBOSE_CMD)$(PROGRAM) run $(if $(findstring reset,$(MAKECMDGOALS)),-R)ifneq ($(call LastWord,$(filter cpuinfo chiperase erase secureflash debug run readregs,$(MAKECMDGOALS))),run)	@$(SLEEP) $(SLEEPUSB)else	@echoendifelse	@:endif# Read CPU registers..PHONY: readregsreadregs:	@echo	@echo $(MSG_READING_CPU_REGS)	$(VERBOSE_CMD)$(PROGRAM) readregsifneq ($(call LastWord,$(filter cpuinfo chiperase erase program secureflash reset debug run readregs,$(MAKECMDGOALS))),readregs)	@$(SLEEP) $(SLEEPUSB)else	@echoendifelse# Perform a flash chip erase..PHONY: eraseerase:ifeq ($(findstring program,$(MAKECMDGOALS)),)	@echo	@echo $(MSG_ERASING)	$(VERBOSE_CMD)$(ISP) $(ISPFLAGS) erase f memory flash blankcheckifeq ($(call LastWord,$(filter erase secureflash debug run,$(MAKECMDGOALS))),erase)	@echoendifelse	@:endif# Program MCU memory from ELF output file..PHONY: programprogram: all	@echo	@echo $(MSG_PROGRAMMING)	$(VERBOSE_CMD)$(ISP) $(ISPFLAGS) erase f memory flash blankcheck loadbuffer $(TARGET) program verify $(if $(findstring run,$(MAKECMDGOALS)),$(if $(findstring secureflash,$(MAKECMDGOALS)),,start $(if $(findstring reset,$(MAKECMDGOALS)),,no)reset 0))ifeq ($(call LastWord,$(filter program secureflash debug,$(MAKECMDGOALS))),program)	@echoendif# Protect chip by setting security bit..PHONY: secureflashsecureflash:	@echo	@echo $(MSG_SECURING_FLASH)	$(VERBOSE_CMD)$(ISP) $(ISPFLAGS) memory security addrange 0x0 0x0 fillbuffer 0x01 program $(if $(findstring run,$(MAKECMDGOALS)),start $(if $(findstring reset,$(MAKECMDGOALS)),,no)reset 0)ifeq ($(call LastWord,$(filter erase program secureflash debug,$(MAKECMDGOALS))),secureflash)	@echoendif# Reset MCU..PHONY: resetreset:	@:# Open a debug connection with the MCU..PHONY: debugdebug:	@echo	@echo $(MSG_DEBUGGING)	$(VERBOSE_CMD)$(DBGPROXY) $(FLASH:%=-f%)ifeq ($(call LastWord,$(filter erase program secureflash debug run,$(MAKECMDGOALS))),debug)	@echoendif# Start CPU execution..PHONY: runrun:ifeq ($(filter program secureflash,$(MAKECMDGOALS)),)	@echo	@echo $(MSG_RUNNING)	$(VERBOSE_CMD)$(ISP) $(ISPFLAGS) start $(if $(findstring reset,$(MAKECMDGOALS)),,no)reset 0ifeq ($(call LastWord,$(filter erase debug run,$(MAKECMDGOALS))),run)	@echoendifelse	@:endifendifendif# Build the documentation..PHONY: docdoc:	@echo	@echo $(MSG_GENERATING_DOC)	$(VERBOSE_CMD)cd $(dir $(DOC_CFG)) && $(DOCGEN) $(notdir $(DOC_CFG))	@echo# Clean up the documentation..PHONY: cleandoccleandoc:	@echo $(MSG_CLEANING_DOC)	-$(VERBOSE_CMD)$(RM) $(DOC_PATH)	$(VERBOSE_NL)# Rebuild the documentation..PHONY: rebuilddocrebuilddoc: cleandoc doc# Display main executed commands..PHONY: verboseifeq ($(filter-out isp verbose,$(MAKECMDGOALS)),)verbose: allelseverbose:	@:endififneq ($(findstring verbose,$(MAKECMDGOALS)),)# Prefix displaying the following command if and only if verbose is a goal.VERBOSE_CMD =# New line displayed if and only if verbose is a goal.VERBOSE_NL  = @echoelseVERBOSE_CMD = @VERBOSE_NL  =endif# ** ** COMPILATION RULES ** **# Include silently the dependency files.-include $(DPNDFILES)# The dependency files are not built alone but along with first generation files.$(DPNDFILES):# First generation files depend on make files.$(CPPFILES) $(ASFILES) $(OBJFILES): Makefile $(MAKECFG)ifeq ($(TGTTYPE),.elf)# Files resulting from linking depend on linker script.$(TARGET): $(LINKER_SCRIPT)endif# Preprocess: create preprocessed files from C source files.%.i: %.c %.d	@echo $(MSG_PREPROCESSING)	$(VERBOSE_CMD)$(CPP) $(CPPFLAGS) -MD -MP -MT '$*.i $*.x $*.o' -o $@ $<	@touch $*.d	@touch $@	$(VERBOSE_NL)# Preprocess & compile: create assembler files from C source files.%.x: %.c %.d	@echo $(MSG_COMPILING)	$(VERBOSE_CMD)$(CC) -S $(CPPFLAGS) -MD -MP -MT '$*.i $*.o' $(CFLAGS) -o $@ $<	@touch $*.d	@touch $@	$(VERBOSE_NL)# Preprocess: create preprocessed files from assembler source files.%.x: %.S %.d	@echo $(MSG_PREPROCESSING)	$(VERBOSE_CMD)$(CPP) $(CPPFLAGS) -MD -MP -MT '$*.x $*.o' -o $@ $<	@touch $*.d	@touch $@	$(VERBOSE_NL)# Preprocess, compile & assemble: create object files from C source files.%.o: %.c %.d	@echo $(MSG_COMPILING)	$(VERBOSE_CMD)$(CC) -c $(CPPFLAGS) -MD -MP -MT '$*.i $*.x' $(CFLAGS) -o $@ $<	@touch $*.d	@touch $@	$(VERBOSE_NL)# Preprocess & assemble: create object files from assembler source files.%.o: %.S %.d	@echo $(MSG_ASSEMBLING)	$(VERBOSE_CMD)$(CC) -c $(CPPFLAGS) -MD -MP -MT '$*.x' $(ASFLAGS) -o $@ $<	@touch $*.d	@touch $@	$(VERBOSE_NL).PRECIOUS: $(OBJFILES)ifeq ($(TGTTYPE),.a)# Archive: create A output file from object files..SECONDARY: $(TARGET)$(TARGET): $(OBJFILES)	@echo $(MSG_ARCHIVING)	$(VERBOSE_CMD)$(AR) $(ARFLAGS) $@ $(filter %.o,$+)	$(VERBOSE_NL)elseifeq ($(TGTTYPE),.elf)# Link: create ELF output file from object files..SECONDARY: $(TARGET)$(TARGET): $(OBJFILES)	@echo $(MSG_LINKING)	$(VERBOSE_CMD)$(CC) $(LDFLAGS) $(filter %.o,$+) $(LOADLIBES) $(LDLIBS) -o $@	$(VERBOSE_NL)endifendif# Create extended listing from target output file.$(LSS): $(TARGET)	@echo $(MSG_EXTENDED_LISTING)	$(VERBOSE_CMD)$(OBJDUMP) -h -S $< > $@	$(VERBOSE_NL)# Create symbol table from target output file.$(SYM): $(TARGET)	@echo $(MSG_SYMBOL_TABLE)	$(VERBOSE_CMD)$(NM) -n $< > $@	$(VERBOSE_NL)ifeq ($(TGTTYPE),.elf)# Create Intel HEX image from ELF output file.$(HEX): $(TARGET)	@echo $(MSG_IHEX_IMAGE)	$(VERBOSE_CMD)$(OBJCOPY) -O ihex $< $@	$(VERBOSE_NL)# Create binary image from ELF output file.$(BIN): $(TARGET)	@echo $(MSG_BINARY_IMAGE)	$(VERBOSE_CMD)$(OBJCOPY) -O binary $< $@	$(VERBOSE_NL)endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -