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

📄 mcs51.rules

📁 Develop Zigbee network real-time Os
💻 RULES
字号:
define MCS51_HELP  MCS51 extras:   clean   : includes original clean and removes Keil temporaries   inline  : compiles using the University of Utah CIL inlinerendefHELP += $(MCS51_HELP)NCC = nccBUILDDIR = build/$(PLATFORM)MAIN_EXE = $(BUILDDIR)/APPMAIN_SREC = $(BUILDDIR)/main.srecMAIN_IHEX = $(BUILDDIR)/app.hexAPP_C = $(BUILDDIR)/app.cAPP_C_TMP = $(BUILDDIR)/app.orig.cINSTALL_SREC = $(MAIN_SREC).out$(if $(NODEID),-$(NODEID),)VOLUMEFILE = volumes-at45db.xmlCFLAGS += -I$(CONTRIBROOT)/diku/mcs51/tos/platforms/$(PLATFORM)NESC_FLAGS += -conlyPFLAGS += -Wall -Wshadow -DDEF_TOS_AM_GROUP=$(DEFAULT_LOCAL_GROUP) $(NESC_FLAGS)PFLAGS += -target=$(PLATFORM) -fnesc-cfile=$(APP_C) -board=$(SENSORBOARD)ifdef MSG_SIZEPFLAGS += -DTOSH_DATA_LENGTH=$(MSG_SIZE)endifBUILDLESS_DEPS += bytesMCS51_MAKE_PATH = $(CONTRIBROOT)/diku/mcs51/support/makeifndef BUILD_DEPS  ifeq ($(filter $(BUILDLESS_DEPS),$(GOALS)),)    BUILD_DEPS = exe  endifendififndef MCS51_COMPILER	MCS51_COMPILER=keilendififndef MCS51_IAR_PATH	MCS51_IAR_PATH=Program\ Files/IAR\ Systems/Embedded\ Workbench\ 4.0\ Evaluation\ version/common/bin/endifOSNAME = $(shell uname)ifeq ($(findstring CYGWIN,$(OSNAME)),CYGWIN)	MCS51_IAR_PATH=/cygdrive/c/$(MCS51_IAR_PATH)else	MCS51_IAR_PATH:=C:$(MCS51_IAR_PATH)	ifndef MCS51_WINE_IAR_PATH	       MCS51_WINE_IAR_PATH := $(HOME)/.wine.iar	endif	ifndef MCS51_WINE_KEIL_PATH	       MCS51_WINE_KEIL_PATH := $(HOME)/.wine.keil	endif        MCS51_WINE_IAR=env WINEPREFIX=$(MCS51_WINE_IAR_PATH) LC_ALL=en_US wine        MCS51_WINE_KEIL=env WINEPREFIX=$(MCS51_WINE_KEIL_PATH) LC_ALL=en_US wine wcmd /cendif###### $(APP_C) moves to app.preMangle.c# mangles to app.ctosimage: ihex FORCE	@:ihex: exe FORCE	@:######## Common ncc rulesexe: ncc $(POST_NCC_DEPS) mangle $(MCS51_COMPILER) FORCE.PHONY: nccncc: builddir $(BUILD_EXTRA_DEPS)	@echo "    compiling $(COMPONENT) to a $(PLATFORM) binary"	$(NCC) -S $(OPTFLAGS) $(CFLAGS) $(PFLAGS) $(WIRING_CHECK_FLAGS) $(COMPONENT).nc 2>&1 | \		grep -v "attribute directive ignored"ifdef WIRING_CHECK_FILE	@nescc-wiring $(WIRING_CHECK_FILE)endif	@echo "    compiled $(COMPONENT) to $(APP_C)".PHONY: manglemangle: ncc	mv $(APP_C) $(BUILDDIR)/app.preMangle.c	perl -w $(MCS51_MAKE_PATH)/mcs51/mangleAppC.pl --$(MCS51_COMPILER) --file=$(BUILDDIR)/app.preMangle.c > $(APP_C)######## IAR rulesiar: mangle builddir	cp $(MCS51_MAKE_PATH)/mcs51/iar* $(BUILDDIR)	cd $(BUILDDIR) && $(MCS51_WINE_IAR) $(MCS51_IAR_PATH)/iarbuild.exe iar-app-project.ewp -build Debug	@grep "SEGMENTS IN ADDRESS ORDER" -B 3 -A 20 $(BUILDDIR)/Debug/List/iar-app-project.map	@grep "END OF CROSS REFERENCE" -A 8 $(BUILDDIR)/Debug/List/iar-app-project.map | grep memory ######## SDCC rules.PHONY: sdccsdcc: mangle	sdcc -mmcs51 $(APP_C) -o$(BUILDDIR)/app	@echo "Segment sizes"	@grep -A 1 "OSEG" $(BUILDDIR)/app.sym	@grep -A 1 "SSEG" $(BUILDDIR)/app.sym	@grep -A 1 "DSEG" $(BUILDDIR)/app.sym	@grep -A 1 "CSEG" $(BUILDDIR)/app.sym	@grep -A 1 "XSEG" $(BUILDDIR)/app.sym	@grep -A 1 "CONST" $(BUILDDIR)/app.sym	@grep -A 1 "HOME" $(BUILDDIR)/app.sym	@grep -A 1 "GSFINAL" $(BUILDDIR)/app.sym	@echo "Memory usage"	@grep "Stack starts at" $(BUILDDIR)/app.mem	@grep "Other memory" -A 5 $(BUILDDIR)/app.mem######## Keil rules# Build to .hex using $(MCS51_KEIL_SCRIPT) from# env WINEPREFIX=$(HOME)/.wine.keil LC_ALL=en_US wine wcmd /ckeil: mangle $(BUILDDIR)/startup.OBJ $(BUILDDIR)/$(KEIL_BAT_SCRIPT)	cd $(BUILDDIR) $(OSTYPE) &&   $(MCS51_WINE_KEIL) ./$(MCS51_KEIL_SCRIPT)	@bash -c "if [ -f $(COMPONENT).s ]; then mv $(COMPONENT).s build/$(PLATFORM)/; fi"	@echo "    compiled $(COMPONENT) to a $(PLATFORM) binary"	@echo "Code size of app.o"	@grep -A 7 "MODULE INFORMATION:   STATIC OVERLAYABLE" $(BUILDDIR)/app.lst	@echo "Total sizes"	@grep "Program Size:" $(BUILDDIR)/app.map.PHONY: $(BUILDDIR)/$(KEIL_BAT_SCRIPT)$(BUILDDIR)/$(KEIL_BAT_SCRIPT):	cp $(MCS51_MAKE_PATH)/mcs51/$(MCS51_KEIL_SCRIPT) $(BUILDDIR)$(BUILDDIR)/startup.OBJ: $(MCS51_MAKE_PATH)/mcs51/startup.a51	cp $(MCS51_MAKE_PATH)/mcs51/startup.a51 $(BUILDDIR)	cp $(MCS51_MAKE_PATH)/mcs51/startup.bat $(BUILDDIR)	cd $(BUILDDIR) && $(MCS51_WINE_KEIL) ./startup.batbuilddir: FORCE	mkdir -p $(BUILDDIR)

⌨️ 快捷键说明

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