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

📄 makefile

📁 ATMEL公司的demo程序,USB驱动程序,与识别片上flash,并进行枚举和操作.
💻
字号:
# makefile DEMO_FS_MS
# example command line : nmake TARGET=AT91SAM7S256 all
# TARGET = AT91SAM7S64 AT91SAM7S128 AT91SAM7S256 AT91SAM7A3
# USE_LED=1     if present,  USE_LED=0     else
# PULL_UP_USB=1 if present,  PULL_UP_USB=0 else
# NO_TRACE=1    if no trace, NO_TRACE=0    else
# COMPIL=IAR430A for compile with IAR version 4.30A
# COMPIL=IAR420A for compile with IAR version 4.20A

!IF "$(COMPIL)" != "IAR420A" && "$(COMPIL)" != "IAR430A"
!MESSAGE Invalid configuration "$(COMPIL)" specified.
!ERROR An invalid configuration is specified.
!ENDIF 

!IF "$(COMPIL)" == "IAR420A"
COMPILER=C:\Progra~1\IARSYS~1\EMBEDD~1.0KI
VER_IAR=IAR420A
!ENDIF

!IF "$(COMPIL)" == "IAR430A"
COMPILER=C:\Progra~1\IARSYS~1\EMBEDD~1.30K
VER_IAR=IAR430A
!IF "$(TARGET)" == "AT91SAM7A3"
VER_IAR=7SA3_IAR430A
!ENDIF
!ENDIF

# IAR Universal Library Builder V1.03K 
# IAR Universal Library Builder V1.03L
LD=$(COMPILER)\common\bin\xar.exe

# IAR Universal Linker V4.59J/386 
# IAR Universal Linker V4.59N/386
LINK=$(COMPILER)\common\bin\xlink.exe

# IAR ARM ANSI C/C++ Compiler V4.20A/W32 KICKSTART
# IAR ARM ANSI C/C++ Compiler V4.30A/W32 KICKSTART
THUMB_CC=$(COMPILER)\arm\bin\iccarm.exe
ARM_CC=$(COMPILER)\arm\bin\iccarm.exe

# IAR ARM Assembler V4.20A/W32
# IAR ARM Assembler V4.30A/W32
ASS=$(COMPILER)\arm\bin\aarm.exe

# dir /X
INCL1 = -I$(COMPILER)\arm\INC 
INCLIB= $(COMPILER)\arm\LIB
INCL2 = -I..\$(TARGET) 
INCL3 = -Iinc -I ..\COMMON_FS_MS

OBJ = tempo\$(TARGET)

CC=$(THUMB_CC)

# CPU and compile option

!IF $(NO_TRACE)
# ************************
!IF $(USE_LED)
CCFLAGCPU = --cpu_mode thumb -DUSE_LED -DPO_TRACE_LEVEL=0
!IF $(PULL_UP_USB)
CCFLAGCPU = --cpu_mode thumb -DUSE_LED -DPULL_UP_USB -DPO_TRACE_LEVEL=0
!ENDIF
!ELSE
CCFLAGCPU = --cpu_mode thumb -DPO_TRACE_LEVEL=0
!IF $(PULL_UP_USB)
CCFLAGCPU = --cpu_mode thumb -DPULL_UP_USB -DPO_TRACE_LEVEL=0
!ENDIF
!ENDIF
# ************************
!ELSE
# We use the LEVEL of TRACE define in the file po_trace.h
!IF $(USE_LED)
CCFLAGCPU = --cpu_mode thumb -DUSE_LED
!IF $(PULL_UP_USB)
CCFLAGCPU = --cpu_mode thumb -DUSE_LED -DPULL_UP_USB
!ENDIF
!ELSE
CCFLAGCPU = --cpu_mode thumb
!IF $(PULL_UP_USB)
CCFLAGCPU = --cpu_mode thumb -DPULL_UP_USB
!ENDIF
!ENDIF
# ************************
!ENDIF

#CCFLAGCPU = --cpu_mode arm

CCFLAGS2 = --remarks -z9 --endian little --cpu ARM7TDMI --stack_align 4 --interwork -e --fpu None --library_module 
#CCFLAGS3 = --dlib_config \arm\LIB\dl4tptinl8f.h
CCFLAGS3 = --dlib_config $(COMPILER)\arm\LIB\dl4tptinl8f.h

# ************************
# ************************

L_INC1=..\COMMON_FS_MS\$(OBJ)\$(TARGET)_lib_common_fs_ms.r79 $(OBJ)\Cstartup.r79 $(OBJ)\Cstartup_SAM7.r79 
L_INC2=$(OBJ)\main.r79  ..\FILESYSTEM\$(OBJ)\$(TARGET)_lib_filesystem.r79 ..\MASSSTORAGE\$(OBJ)\$(TARGET)_lib_mass.r79

!IF "$(TARGET)" == "AT91SAM7X128" || "$(TARGET)" == "AT91SAM7X256"
RESSOURCE=7X_IAR430A\resource\$(TARGET)_NoRemap.xcl
!ELSE
!IF "$(TARGET)" == "AT91SAM7A3"
RESSOURCE=7SA3_IAR430A\resource\$(TARGET)_NoRemap.xcl
!ELSE
RESSOURCE=$(COMPIL)\resource\$(TARGET)_NoRemap.xcl
!ENDIF
!ENDIF

all: $(TARGET)demo_fs_ms
    @if exist *.axf echo Build completed

rebuild: clean all

clean:
    if exist *.r79 del *.r79

$(TARGET)demo_fs_ms: Cstartup 
    $(LINK) $(L_INC1) $(L_INC2) -o $(OBJ)\demo_fs_ms.d79 -l $(OBJ)\demo_fs_ms.map -xmsn -I$(INCLIB) -f $(RESSOURCE) -e_PrintfTiny=_Printf -e_ScanfSmall=_Scanf -rt $(INCLIB)\dl4tptinl8f.r79 -Ompds-code=$(OBJ)\$(TARGET)demo_fs_ms.bin  

!IF "$(TARGET)" == "AT91SAM7X128" || "$(TARGET)" == "AT91SAM7X256"
Cstartup: 7X_IAR430A\Cstartup.s79 Cstartup_SAM7 main
    $(ASS) -s+ -w+ -D$(TARGET) $(INCL2) --cpu ARM7TDMI --fpu None 7X_IAR430A\Cstartup.s79 -o $(OBJ)\Cstartup.r79  
#-M<> #PROBLEME !!!
!ELSE
Cstartup: $(VER_IAR)\Cstartup.s79 Cstartup_SAM7 main
    $(ASS) -s+ -w+ -D$(TARGET) $(INCL2) --cpu ARM7TDMI --fpu None $(VER_IAR)\Cstartup.s79 -o $(OBJ)\Cstartup.r79  
#-M<> #PROBLEME !!!
!ENDIF

Cstartup_SAM7: Cstartup_SAM7.c 
    $(CC) $(INCL1) $(INCL2) $(INCL3) -D$(TARGET) $(CCFLAGCPU) $(CCFLAGS2) $(CCFLAGS3) -o $(OBJ) Cstartup_SAM7.c

main: main.c 
    $(CC) $(INCL1) $(INCL2) $(INCL3) -D$(TARGET) $(CCFLAGCPU) $(CCFLAGS2) $(CCFLAGS3) -o $(OBJ) main.c

⌨️ 快捷键说明

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