Skip to content
includes = $(wildcard )
as_includes = $(wildcard )
AS = a51.bat
ASFLAGS_EXT =
ASFLAGS = XR GEN DB EP NOMOD51 $(ASFLAGS_EXT)
CC = c51.bat
CFLAGS_EXT =
CFLAGS = DB OE BR Small OPTIMIZE(11, SIZE) DEFINE(SILABS_PLATFORM_WMB912) DEFINE(SILABS_WMCU_SI106x) $(CFLAGS_EXT)
LINK = bl51.bat
LDFLAGS_EXT =
LDFLAGS = CODE REMOVEUNUSED CLASSES(BIT(0x20.0-0x2F.7), DATA(D:0-D:0x7F), IDATA(I:0-I:0xFF), XDATA(X:0-X:0xFFF), CODE(C:0-C:0xFBFF), CONST(C:0-C:0xFBFF)) $(LDFLAGS_EXT)
HEXGEN = C:\Keil\C51\BIN\ohx51.EXE
GREP = @find
ECHO = @echo
RM = del
NULL = nul
PLATFORM =
OUTDIR = ..\out
PROG = ..\out\WMB912_Si106x_Si446x_CustomPacketTX_Keil
OBJS = ..\src\drivers\STARTUP.obj ..\src\application\isr.obj ..\src\application\main.obj ..\src\drivers\control_IO.obj ..\src\drivers\hmi.obj ..\src\drivers\pca.obj ..\src\drivers\spi.obj ..\src\drivers\timer.obj ..\src\application\sample_code_func.obj ..\src\application\radio.obj ..\src\drivers\radio\radio_comm.obj ..\src\drivers\radio\radio_hal.obj ..\src\drivers\uart.obj ..\src\drivers\radio\Si446x\si446x_api_lib.obj ..\src\drivers\ascii5x7.obj ..\src\drivers\dog_glcd.obj ..\src\drivers\pictures.obj ..\src\drivers\smbus.obj
LIBS =
all: $(PROG)
$(WINE) $(HEXGEN) $(PROG)
$(PROG): $(OBJS) $(LIBS)
$(WINE) $(LINK) ..\src\drivers\STARTUP.obj,..\src\application\isr.obj,..\src\application\main.obj,..\src\drivers\control_IO.obj,..\src\drivers\hmi.obj,..\src\drivers\pca.obj,..\src\drivers\spi.obj,..\src\drivers\timer.obj,..\src\application\sample_code_func.obj,..\src\application\radio.obj,..\src\drivers\radio\radio_comm.obj,..\src\drivers\radio\radio_hal.obj,..\src\drivers\uart.obj,..\src\drivers\radio\Si446x\si446x_api_lib.obj,..\src\drivers\ascii5x7.obj,..\src\drivers\dog_glcd.obj,..\src\drivers\pictures.obj,..\src\drivers\smbus.obj TO $(PROG) $(LDFLAGS)
$(GREP) " RadioConfiguration" $(PROG).MAP > $(OUTDIR)\EzArray$(PLATFORM).loc
$(GREP) " RadioConfiguration" $(PROG).MAP
$(ECHO) -------------------------------------------------------------------------------
..\src\drivers\STARTUP.obj: ..\src\drivers\STARTUP.A51 $(as_includes)
$(WINE) $(AS) ..\src\drivers\STARTUP.A51 $(ASFLAGS)
..\src\application\isr.obj: ..\src\application\isr.c $(includes)
$(WINE) $(CC) ..\src\application\isr.c $(CFLAGS)
..\src\application\main.obj: ..\src\application\main.c $(includes)
$(WINE) $(CC) ..\src\application\main.c $(CFLAGS)
..\src\drivers\control_IO.obj: ..\src\drivers\control_IO.c $(includes)
$(WINE) $(CC) ..\src\drivers\control_IO.c $(CFLAGS)
..\src\drivers\hmi.obj: ..\src\drivers\hmi.c $(includes)
$(WINE) $(CC) ..\src\drivers\hmi.c $(CFLAGS)
..\src\drivers\pca.obj: ..\src\drivers\pca.c $(includes)
$(WINE) $(CC) ..\src\drivers\pca.c $(CFLAGS)
..\src\drivers\spi.obj: ..\src\drivers\spi.c $(includes)
$(WINE) $(CC) ..\src\drivers\spi.c $(CFLAGS)
..\src\drivers\timer.obj: ..\src\drivers\timer.c $(includes)
$(WINE) $(CC) ..\src\drivers\timer.c $(CFLAGS)
..\src\application\sample_code_func.obj: ..\src\application\sample_code_func.c $(includes)
$(WINE) $(CC) ..\src\application\sample_code_func.c $(CFLAGS)
..\src\application\radio.obj: ..\src\application\radio.c $(includes)
$(WINE) $(CC) ..\src\application\radio.c $(CFLAGS)
..\src\drivers\radio\radio_comm.obj: ..\src\drivers\radio\radio_comm.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\radio_comm.c $(CFLAGS)
..\src\drivers\radio\radio_hal.obj: ..\src\drivers\radio\radio_hal.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\radio_hal.c $(CFLAGS)
..\src\drivers\uart.obj: ..\src\drivers\uart.c $(includes)
$(WINE) $(CC) ..\src\drivers\uart.c $(CFLAGS)
..\src\drivers\radio\Si446x\si446x_api_lib.obj: ..\src\drivers\radio\Si446x\si446x_api_lib.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\Si446x\si446x_api_lib.c $(CFLAGS)
..\src\drivers\ascii5x7.obj: ..\src\drivers\ascii5x7.c $(includes)
$(WINE) $(CC) ..\src\drivers\ascii5x7.c $(CFLAGS)
..\src\drivers\dog_glcd.obj: ..\src\drivers\dog_glcd.c $(includes)
$(WINE) $(CC) ..\src\drivers\dog_glcd.c $(CFLAGS)
..\src\drivers\pictures.obj: ..\src\drivers\pictures.c $(includes)
$(WINE) $(CC) ..\src\drivers\pictures.c $(CFLAGS)
..\src\drivers\smbus.obj: ..\src\drivers\smbus.c $(includes)
$(WINE) $(CC) ..\src\drivers\smbus.c $(CFLAGS)
debug: all
$(WINE) "C:\Silabs\MCU\ide.exe" "WMB912_Si106x_Si446x_CustomPacketTX_Keil.wsp"
download: all
$(WINE) "C:\Silabs\MCU\Utilities\FLASH Programming\Static Programmers\Command-Line\FlashUtilCL.exe" downloadusb -R "$(PROG).hex" "" 0 1
@echo Download finished
clean:
$(RM) $(PROG).* $(OBJS) cyglink.txt tmp.out 2> $(NULL)
$(RM) ..\src\drivers\STARTUP.lst ..\src\drivers\STARTUP.m51 ..\src\drivers\STARTUP.__i ..\src\drivers\STARTUP.map ..\src\drivers\STARTUP.i ..\src\drivers\STARTUP.sbr ..\src\drivers\STARTUP.plg ..\src\drivers\STARTUP.sym ..\src\drivers\STARTUP.rel ..\src\drivers\STARTUP.rst ..\src\drivers\STARTUP.adb ..\src\drivers\STARTUP.mem ..\src\drivers\STARTUP.cdb ..\src\drivers\STARTUP.lnk ..\src\drivers\STARTUP.lk 2> $(NULL)
$(RM) ..\src\application\isr.a51 ..\src\application\isr.asm ..\src\application\isr.lst ..\src\application\isr.m51 ..\src\application\isr.__i ..\src\application\isr.map ..\src\application\isr.i ..\src\application\isr.sbr ..\src\application\isr.plg ..\src\application\isr.sym ..\src\application\isr.rel ..\src\application\isr.rst ..\src\application\isr.adb ..\src\application\isr.mem ..\src\application\isr.cdb ..\src\application\isr.lnk ..\src\application\isr.lk 2> $(NULL)
$(RM) ..\src\application\main.a51 ..\src\application\main.asm ..\src\application\main.lst ..\src\application\main.m51 ..\src\application\main.__i ..\src\application\main.map ..\src\application\main.i ..\src\application\main.sbr ..\src\application\main.plg ..\src\application\main.sym ..\src\application\main.rel ..\src\application\main.rst ..\src\application\main.adb ..\src\application\main.mem ..\src\application\main.cdb ..\src\application\main.lnk ..\src\application\main.lk 2> $(NULL)
$(RM) ..\src\drivers\control_IO.a51 ..\src\drivers\control_IO.asm ..\src\drivers\control_IO.lst ..\src\drivers\control_IO.m51 ..\src\drivers\control_IO.__i ..\src\drivers\control_IO.map ..\src\drivers\control_IO.i ..\src\drivers\control_IO.sbr ..\src\drivers\control_IO.plg ..\src\drivers\control_IO.sym ..\src\drivers\control_IO.rel ..\src\drivers\control_IO.rst ..\src\drivers\control_IO.adb ..\src\drivers\control_IO.mem ..\src\drivers\control_IO.cdb ..\src\drivers\control_IO.lnk ..\src\drivers\control_IO.lk 2> $(NULL)
$(RM) ..\src\drivers\hmi.a51 ..\src\drivers\hmi.asm ..\src\drivers\hmi.lst ..\src\drivers\hmi.m51 ..\src\drivers\hmi.__i ..\src\drivers\hmi.map ..\src\drivers\hmi.i ..\src\drivers\hmi.sbr ..\src\drivers\hmi.plg ..\src\drivers\hmi.sym ..\src\drivers\hmi.rel ..\src\drivers\hmi.rst ..\src\drivers\hmi.adb ..\src\drivers\hmi.mem ..\src\drivers\hmi.cdb ..\src\drivers\hmi.lnk ..\src\drivers\hmi.lk 2> $(NULL)
$(RM) ..\src\drivers\pca.a51 ..\src\drivers\pca.asm ..\src\drivers\pca.lst ..\src\drivers\pca.m51 ..\src\drivers\pca.__i ..\src\drivers\pca.map ..\src\drivers\pca.i ..\src\drivers\pca.sbr ..\src\drivers\pca.plg ..\src\drivers\pca.sym ..\src\drivers\pca.rel ..\src\drivers\pca.rst ..\src\drivers\pca.adb ..\src\drivers\pca.mem ..\src\drivers\pca.cdb ..\src\drivers\pca.lnk ..\src\drivers\pca.lk 2> $(NULL)
$(RM) ..\src\drivers\spi.a51 ..\src\drivers\spi.asm ..\src\drivers\spi.lst ..\src\drivers\spi.m51 ..\src\drivers\spi.__i ..\src\drivers\spi.map ..\src\drivers\spi.i ..\src\drivers\spi.sbr ..\src\drivers\spi.plg ..\src\drivers\spi.sym ..\src\drivers\spi.rel ..\src\drivers\spi.rst ..\src\drivers\spi.adb ..\src\drivers\spi.mem ..\src\drivers\spi.cdb ..\src\drivers\spi.lnk ..\src\drivers\spi.lk 2> $(NULL)
$(RM) ..\src\drivers\timer.a51 ..\src\drivers\timer.asm ..\src\drivers\timer.lst ..\src\drivers\timer.m51 ..\src\drivers\timer.__i ..\src\drivers\timer.map ..\src\drivers\timer.i ..\src\drivers\timer.sbr ..\src\drivers\timer.plg ..\src\drivers\timer.sym ..\src\drivers\timer.rel ..\src\drivers\timer.rst ..\src\drivers\timer.adb ..\src\drivers\timer.mem ..\src\drivers\timer.cdb ..\src\drivers\timer.lnk ..\src\drivers\timer.lk 2> $(NULL)
$(RM) ..\src\application\sample_code_func.a51 ..\src\application\sample_code_func.asm ..\src\application\sample_code_func.lst ..\src\application\sample_code_func.m51 ..\src\application\sample_code_func.__i ..\src\application\sample_code_func.map ..\src\application\sample_code_func.i ..\src\application\sample_code_func.sbr ..\src\application\sample_code_func.plg ..\src\application\sample_code_func.sym ..\src\application\sample_code_func.rel ..\src\application\sample_code_func.rst ..\src\application\sample_code_func.adb ..\src\application\sample_code_func.mem ..\src\application\sample_code_func.cdb ..\src\application\sample_code_func.lnk ..\src\application\sample_code_func.lk 2> $(NULL)
$(RM) ..\src\application\radio.a51 ..\src\application\radio.asm ..\src\application\radio.lst ..\src\application\radio.m51 ..\src\application\radio.__i ..\src\application\radio.map ..\src\application\radio.i ..\src\application\radio.sbr ..\src\application\radio.plg ..\src\application\radio.sym ..\src\application\radio.rel ..\src\application\radio.rst ..\src\application\radio.adb ..\src\application\radio.mem ..\src\application\radio.cdb ..\src\application\radio.lnk ..\src\application\radio.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\radio_comm.a51 ..\src\drivers\radio\radio_comm.asm ..\src\drivers\radio\radio_comm.lst ..\src\drivers\radio\radio_comm.m51 ..\src\drivers\radio\radio_comm.__i ..\src\drivers\radio\radio_comm.map ..\src\drivers\radio\radio_comm.i ..\src\drivers\radio\radio_comm.sbr ..\src\drivers\radio\radio_comm.plg ..\src\drivers\radio\radio_comm.sym ..\src\drivers\radio\radio_comm.rel ..\src\drivers\radio\radio_comm.rst ..\src\drivers\radio\radio_comm.adb ..\src\drivers\radio\radio_comm.mem ..\src\drivers\radio\radio_comm.cdb ..\src\drivers\radio\radio_comm.lnk ..\src\drivers\radio\radio_comm.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\radio_hal.a51 ..\src\drivers\radio\radio_hal.asm ..\src\drivers\radio\radio_hal.lst ..\src\drivers\radio\radio_hal.m51 ..\src\drivers\radio\radio_hal.__i ..\src\drivers\radio\radio_hal.map ..\src\drivers\radio\radio_hal.i ..\src\drivers\radio\radio_hal.sbr ..\src\drivers\radio\radio_hal.plg ..\src\drivers\radio\radio_hal.sym ..\src\drivers\radio\radio_hal.rel ..\src\drivers\radio\radio_hal.rst ..\src\drivers\radio\radio_hal.adb ..\src\drivers\radio\radio_hal.mem ..\src\drivers\radio\radio_hal.cdb ..\src\drivers\radio\radio_hal.lnk ..\src\drivers\radio\radio_hal.lk 2> $(NULL)
$(RM) ..\src\drivers\uart.a51 ..\src\drivers\uart.asm ..\src\drivers\uart.lst ..\src\drivers\uart.m51 ..\src\drivers\uart.__i ..\src\drivers\uart.map ..\src\drivers\uart.i ..\src\drivers\uart.sbr ..\src\drivers\uart.plg ..\src\drivers\uart.sym ..\src\drivers\uart.rel ..\src\drivers\uart.rst ..\src\drivers\uart.adb ..\src\drivers\uart.mem ..\src\drivers\uart.cdb ..\src\drivers\uart.lnk ..\src\drivers\uart.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\Si446x\si446x_api_lib.a51 ..\src\drivers\radio\Si446x\si446x_api_lib.asm ..\src\drivers\radio\Si446x\si446x_api_lib.lst ..\src\drivers\radio\Si446x\si446x_api_lib.m51 ..\src\drivers\radio\Si446x\si446x_api_lib.__i ..\src\drivers\radio\Si446x\si446x_api_lib.map ..\src\drivers\radio\Si446x\si446x_api_lib.i ..\src\drivers\radio\Si446x\si446x_api_lib.sbr ..\src\drivers\radio\Si446x\si446x_api_lib.plg ..\src\drivers\radio\Si446x\si446x_api_lib.sym ..\src\drivers\radio\Si446x\si446x_api_lib.rel ..\src\drivers\radio\Si446x\si446x_api_lib.rst ..\src\drivers\radio\Si446x\si446x_api_lib.adb ..\src\drivers\radio\Si446x\si446x_api_lib.mem ..\src\drivers\radio\Si446x\si446x_api_lib.cdb ..\src\drivers\radio\Si446x\si446x_api_lib.lnk ..\src\drivers\radio\Si446x\si446x_api_lib.lk 2> $(NULL)
$(RM) ..\src\drivers\ascii5x7.a51 ..\src\drivers\ascii5x7.asm ..\src\drivers\ascii5x7.lst ..\src\drivers\ascii5x7.m51 ..\src\drivers\ascii5x7.__i ..\src\drivers\ascii5x7.map ..\src\drivers\ascii5x7.i ..\src\drivers\ascii5x7.sbr ..\src\drivers\ascii5x7.plg ..\src\drivers\ascii5x7.sym ..\src\drivers\ascii5x7.rel ..\src\drivers\ascii5x7.rst ..\src\drivers\ascii5x7.adb ..\src\drivers\ascii5x7.mem ..\src\drivers\ascii5x7.cdb ..\src\drivers\ascii5x7.lnk ..\src\drivers\ascii5x7.lk 2> $(NULL)
$(RM) ..\src\drivers\dog_glcd.a51 ..\src\drivers\dog_glcd.asm ..\src\drivers\dog_glcd.lst ..\src\drivers\dog_glcd.m51 ..\src\drivers\dog_glcd.__i ..\src\drivers\dog_glcd.map ..\src\drivers\dog_glcd.i ..\src\drivers\dog_glcd.sbr ..\src\drivers\dog_glcd.plg ..\src\drivers\dog_glcd.sym ..\src\drivers\dog_glcd.rel ..\src\drivers\dog_glcd.rst ..\src\drivers\dog_glcd.adb ..\src\drivers\dog_glcd.mem ..\src\drivers\dog_glcd.cdb ..\src\drivers\dog_glcd.lnk ..\src\drivers\dog_glcd.lk 2> $(NULL)
$(RM) ..\src\drivers\pictures.a51 ..\src\drivers\pictures.asm ..\src\drivers\pictures.lst ..\src\drivers\pictures.m51 ..\src\drivers\pictures.__i ..\src\drivers\pictures.map ..\src\drivers\pictures.i ..\src\drivers\pictures.sbr ..\src\drivers\pictures.plg ..\src\drivers\pictures.sym ..\src\drivers\pictures.rel ..\src\drivers\pictures.rst ..\src\drivers\pictures.adb ..\src\drivers\pictures.mem ..\src\drivers\pictures.cdb ..\src\drivers\pictures.lnk ..\src\drivers\pictures.lk 2> $(NULL)
$(RM) ..\src\drivers\smbus.a51 ..\src\drivers\smbus.asm ..\src\drivers\smbus.lst ..\src\drivers\smbus.m51 ..\src\drivers\smbus.__i ..\src\drivers\smbus.map ..\src\drivers\smbus.i ..\src\drivers\smbus.sbr ..\src\drivers\smbus.plg ..\src\drivers\smbus.sym ..\src\drivers\smbus.rel ..\src\drivers\smbus.rst ..\src\drivers\smbus.adb ..\src\drivers\smbus.mem ..\src\drivers\smbus.cdb ..\src\drivers\smbus.lnk ..\src\drivers\smbus.lk 2> $(NULL)
includes = $(wildcard )
as_includes = $(wildcard )
AS = a51.bat
ASFLAGS_EXT =
ASFLAGS = XR GEN DB EP NOMOD51 $(ASFLAGS_EXT)
CC = c51.bat
CFLAGS_EXT =
CFLAGS = DB OE BR Small OPTIMIZE(11, SIZE) DEFINE(SILABS_PLATFORM_WMB912) DEFINE(SILABS_WMCU_SI108x) $(CFLAGS_EXT)
LINK = bl51.bat
LDFLAGS_EXT =
LDFLAGS = CODE REMOVEUNUSED CLASSES(BIT(0x20.0-0x2F.7), DATA(D:0-D:0x7F), IDATA(I:0-I:0xFF), XDATA(X:0-X:0x2FF), CODE(C:0-C:0x3BFF), CONST(C:0-C:0x3BFF)) $(LDFLAGS_EXT)
HEXGEN = C:\Keil\C51\BIN\ohx51.EXE
GREP = @find
ECHO = @echo
RM = del
NULL = nul
PLATFORM =
OUTDIR = ..\out
PROG = ..\out\WMB912_Si108x_Si446x_CustomPacketTX_Keil
OBJS = ..\src\drivers\STARTUP.obj ..\src\application\isr.obj ..\src\application\main.obj ..\src\drivers\control_IO.obj ..\src\drivers\hmi.obj ..\src\drivers\pca.obj ..\src\drivers\spi.obj ..\src\drivers\timer.obj ..\src\application\sample_code_func.obj ..\src\application\radio.obj ..\src\drivers\radio\radio_comm.obj ..\src\drivers\radio\radio_hal.obj ..\src\drivers\uart.obj ..\src\drivers\radio\Si446x\si446x_api_lib.obj ..\src\drivers\ascii5x7.obj ..\src\drivers\dog_glcd.obj ..\src\drivers\pictures.obj ..\src\drivers\smbus.obj
LIBS =
all: $(PROG)
$(WINE) $(HEXGEN) $(PROG)
$(PROG): $(OBJS) $(LIBS)
$(WINE) $(LINK) ..\src\drivers\STARTUP.obj,..\src\application\isr.obj,..\src\application\main.obj,..\src\drivers\control_IO.obj,..\src\drivers\hmi.obj,..\src\drivers\pca.obj,..\src\drivers\spi.obj,..\src\drivers\timer.obj,..\src\application\sample_code_func.obj,..\src\application\radio.obj,..\src\drivers\radio\radio_comm.obj,..\src\drivers\radio\radio_hal.obj,..\src\drivers\uart.obj,..\src\drivers\radio\Si446x\si446x_api_lib.obj,..\src\drivers\ascii5x7.obj,..\src\drivers\dog_glcd.obj,..\src\drivers\pictures.obj,..\src\drivers\smbus.obj TO $(PROG) $(LDFLAGS)
$(GREP) " RadioConfiguration" $(PROG).MAP > $(OUTDIR)\EzArray$(PLATFORM).loc
$(GREP) " RadioConfiguration" $(PROG).MAP
$(ECHO) -------------------------------------------------------------------------------
..\src\drivers\STARTUP.obj: ..\src\drivers\STARTUP.A51 $(as_includes)
$(WINE) $(AS) ..\src\drivers\STARTUP.A51 $(ASFLAGS)
..\src\application\isr.obj: ..\src\application\isr.c $(includes)
$(WINE) $(CC) ..\src\application\isr.c $(CFLAGS)
..\src\application\main.obj: ..\src\application\main.c $(includes)
$(WINE) $(CC) ..\src\application\main.c $(CFLAGS)
..\src\drivers\control_IO.obj: ..\src\drivers\control_IO.c $(includes)
$(WINE) $(CC) ..\src\drivers\control_IO.c $(CFLAGS)
..\src\drivers\hmi.obj: ..\src\drivers\hmi.c $(includes)
$(WINE) $(CC) ..\src\drivers\hmi.c $(CFLAGS)
..\src\drivers\pca.obj: ..\src\drivers\pca.c $(includes)
$(WINE) $(CC) ..\src\drivers\pca.c $(CFLAGS)
..\src\drivers\spi.obj: ..\src\drivers\spi.c $(includes)
$(WINE) $(CC) ..\src\drivers\spi.c $(CFLAGS)
..\src\drivers\timer.obj: ..\src\drivers\timer.c $(includes)
$(WINE) $(CC) ..\src\drivers\timer.c $(CFLAGS)
..\src\application\sample_code_func.obj: ..\src\application\sample_code_func.c $(includes)
$(WINE) $(CC) ..\src\application\sample_code_func.c $(CFLAGS)
..\src\application\radio.obj: ..\src\application\radio.c $(includes)
$(WINE) $(CC) ..\src\application\radio.c $(CFLAGS)
..\src\drivers\radio\radio_comm.obj: ..\src\drivers\radio\radio_comm.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\radio_comm.c $(CFLAGS)
..\src\drivers\radio\radio_hal.obj: ..\src\drivers\radio\radio_hal.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\radio_hal.c $(CFLAGS)
..\src\drivers\uart.obj: ..\src\drivers\uart.c $(includes)
$(WINE) $(CC) ..\src\drivers\uart.c $(CFLAGS)
..\src\drivers\radio\Si446x\si446x_api_lib.obj: ..\src\drivers\radio\Si446x\si446x_api_lib.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\Si446x\si446x_api_lib.c $(CFLAGS)
..\src\drivers\ascii5x7.obj: ..\src\drivers\ascii5x7.c $(includes)
$(WINE) $(CC) ..\src\drivers\ascii5x7.c $(CFLAGS)
..\src\drivers\dog_glcd.obj: ..\src\drivers\dog_glcd.c $(includes)
$(WINE) $(CC) ..\src\drivers\dog_glcd.c $(CFLAGS)
..\src\drivers\pictures.obj: ..\src\drivers\pictures.c $(includes)
$(WINE) $(CC) ..\src\drivers\pictures.c $(CFLAGS)
..\src\drivers\smbus.obj: ..\src\drivers\smbus.c $(includes)
$(WINE) $(CC) ..\src\drivers\smbus.c $(CFLAGS)
debug: all
$(WINE) "C:\Silabs\MCU\ide.exe" "WMB912_Si108x_Si446x_CustomPacketTX_Keil.wsp"
download: all
$(WINE) "C:\Silabs\MCU\Utilities\FLASH Programming\Static Programmers\Command-Line\FlashUtilCL.exe" downloadusb -R "$(PROG).hex" "" 0 1
@echo Download finished
clean:
$(RM) $(PROG).* $(OBJS) cyglink.txt tmp.out 2> $(NULL)
$(RM) ..\src\drivers\STARTUP.lst ..\src\drivers\STARTUP.m51 ..\src\drivers\STARTUP.__i ..\src\drivers\STARTUP.map ..\src\drivers\STARTUP.i ..\src\drivers\STARTUP.sbr ..\src\drivers\STARTUP.plg ..\src\drivers\STARTUP.sym ..\src\drivers\STARTUP.rel ..\src\drivers\STARTUP.rst ..\src\drivers\STARTUP.adb ..\src\drivers\STARTUP.mem ..\src\drivers\STARTUP.cdb ..\src\drivers\STARTUP.lnk ..\src\drivers\STARTUP.lk 2> $(NULL)
$(RM) ..\src\application\isr.a51 ..\src\application\isr.asm ..\src\application\isr.lst ..\src\application\isr.m51 ..\src\application\isr.__i ..\src\application\isr.map ..\src\application\isr.i ..\src\application\isr.sbr ..\src\application\isr.plg ..\src\application\isr.sym ..\src\application\isr.rel ..\src\application\isr.rst ..\src\application\isr.adb ..\src\application\isr.mem ..\src\application\isr.cdb ..\src\application\isr.lnk ..\src\application\isr.lk 2> $(NULL)
$(RM) ..\src\application\main.a51 ..\src\application\main.asm ..\src\application\main.lst ..\src\application\main.m51 ..\src\application\main.__i ..\src\application\main.map ..\src\application\main.i ..\src\application\main.sbr ..\src\application\main.plg ..\src\application\main.sym ..\src\application\main.rel ..\src\application\main.rst ..\src\application\main.adb ..\src\application\main.mem ..\src\application\main.cdb ..\src\application\main.lnk ..\src\application\main.lk 2> $(NULL)
$(RM) ..\src\drivers\control_IO.a51 ..\src\drivers\control_IO.asm ..\src\drivers\control_IO.lst ..\src\drivers\control_IO.m51 ..\src\drivers\control_IO.__i ..\src\drivers\control_IO.map ..\src\drivers\control_IO.i ..\src\drivers\control_IO.sbr ..\src\drivers\control_IO.plg ..\src\drivers\control_IO.sym ..\src\drivers\control_IO.rel ..\src\drivers\control_IO.rst ..\src\drivers\control_IO.adb ..\src\drivers\control_IO.mem ..\src\drivers\control_IO.cdb ..\src\drivers\control_IO.lnk ..\src\drivers\control_IO.lk 2> $(NULL)
$(RM) ..\src\drivers\hmi.a51 ..\src\drivers\hmi.asm ..\src\drivers\hmi.lst ..\src\drivers\hmi.m51 ..\src\drivers\hmi.__i ..\src\drivers\hmi.map ..\src\drivers\hmi.i ..\src\drivers\hmi.sbr ..\src\drivers\hmi.plg ..\src\drivers\hmi.sym ..\src\drivers\hmi.rel ..\src\drivers\hmi.rst ..\src\drivers\hmi.adb ..\src\drivers\hmi.mem ..\src\drivers\hmi.cdb ..\src\drivers\hmi.lnk ..\src\drivers\hmi.lk 2> $(NULL)
$(RM) ..\src\drivers\pca.a51 ..\src\drivers\pca.asm ..\src\drivers\pca.lst ..\src\drivers\pca.m51 ..\src\drivers\pca.__i ..\src\drivers\pca.map ..\src\drivers\pca.i ..\src\drivers\pca.sbr ..\src\drivers\pca.plg ..\src\drivers\pca.sym ..\src\drivers\pca.rel ..\src\drivers\pca.rst ..\src\drivers\pca.adb ..\src\drivers\pca.mem ..\src\drivers\pca.cdb ..\src\drivers\pca.lnk ..\src\drivers\pca.lk 2> $(NULL)
$(RM) ..\src\drivers\spi.a51 ..\src\drivers\spi.asm ..\src\drivers\spi.lst ..\src\drivers\spi.m51 ..\src\drivers\spi.__i ..\src\drivers\spi.map ..\src\drivers\spi.i ..\src\drivers\spi.sbr ..\src\drivers\spi.plg ..\src\drivers\spi.sym ..\src\drivers\spi.rel ..\src\drivers\spi.rst ..\src\drivers\spi.adb ..\src\drivers\spi.mem ..\src\drivers\spi.cdb ..\src\drivers\spi.lnk ..\src\drivers\spi.lk 2> $(NULL)
$(RM) ..\src\drivers\timer.a51 ..\src\drivers\timer.asm ..\src\drivers\timer.lst ..\src\drivers\timer.m51 ..\src\drivers\timer.__i ..\src\drivers\timer.map ..\src\drivers\timer.i ..\src\drivers\timer.sbr ..\src\drivers\timer.plg ..\src\drivers\timer.sym ..\src\drivers\timer.rel ..\src\drivers\timer.rst ..\src\drivers\timer.adb ..\src\drivers\timer.mem ..\src\drivers\timer.cdb ..\src\drivers\timer.lnk ..\src\drivers\timer.lk 2> $(NULL)
$(RM) ..\src\application\sample_code_func.a51 ..\src\application\sample_code_func.asm ..\src\application\sample_code_func.lst ..\src\application\sample_code_func.m51 ..\src\application\sample_code_func.__i ..\src\application\sample_code_func.map ..\src\application\sample_code_func.i ..\src\application\sample_code_func.sbr ..\src\application\sample_code_func.plg ..\src\application\sample_code_func.sym ..\src\application\sample_code_func.rel ..\src\application\sample_code_func.rst ..\src\application\sample_code_func.adb ..\src\application\sample_code_func.mem ..\src\application\sample_code_func.cdb ..\src\application\sample_code_func.lnk ..\src\application\sample_code_func.lk 2> $(NULL)
$(RM) ..\src\application\radio.a51 ..\src\application\radio.asm ..\src\application\radio.lst ..\src\application\radio.m51 ..\src\application\radio.__i ..\src\application\radio.map ..\src\application\radio.i ..\src\application\radio.sbr ..\src\application\radio.plg ..\src\application\radio.sym ..\src\application\radio.rel ..\src\application\radio.rst ..\src\application\radio.adb ..\src\application\radio.mem ..\src\application\radio.cdb ..\src\application\radio.lnk ..\src\application\radio.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\radio_comm.a51 ..\src\drivers\radio\radio_comm.asm ..\src\drivers\radio\radio_comm.lst ..\src\drivers\radio\radio_comm.m51 ..\src\drivers\radio\radio_comm.__i ..\src\drivers\radio\radio_comm.map ..\src\drivers\radio\radio_comm.i ..\src\drivers\radio\radio_comm.sbr ..\src\drivers\radio\radio_comm.plg ..\src\drivers\radio\radio_comm.sym ..\src\drivers\radio\radio_comm.rel ..\src\drivers\radio\radio_comm.rst ..\src\drivers\radio\radio_comm.adb ..\src\drivers\radio\radio_comm.mem ..\src\drivers\radio\radio_comm.cdb ..\src\drivers\radio\radio_comm.lnk ..\src\drivers\radio\radio_comm.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\radio_hal.a51 ..\src\drivers\radio\radio_hal.asm ..\src\drivers\radio\radio_hal.lst ..\src\drivers\radio\radio_hal.m51 ..\src\drivers\radio\radio_hal.__i ..\src\drivers\radio\radio_hal.map ..\src\drivers\radio\radio_hal.i ..\src\drivers\radio\radio_hal.sbr ..\src\drivers\radio\radio_hal.plg ..\src\drivers\radio\radio_hal.sym ..\src\drivers\radio\radio_hal.rel ..\src\drivers\radio\radio_hal.rst ..\src\drivers\radio\radio_hal.adb ..\src\drivers\radio\radio_hal.mem ..\src\drivers\radio\radio_hal.cdb ..\src\drivers\radio\radio_hal.lnk ..\src\drivers\radio\radio_hal.lk 2> $(NULL)
$(RM) ..\src\drivers\uart.a51 ..\src\drivers\uart.asm ..\src\drivers\uart.lst ..\src\drivers\uart.m51 ..\src\drivers\uart.__i ..\src\drivers\uart.map ..\src\drivers\uart.i ..\src\drivers\uart.sbr ..\src\drivers\uart.plg ..\src\drivers\uart.sym ..\src\drivers\uart.rel ..\src\drivers\uart.rst ..\src\drivers\uart.adb ..\src\drivers\uart.mem ..\src\drivers\uart.cdb ..\src\drivers\uart.lnk ..\src\drivers\uart.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\Si446x\si446x_api_lib.a51 ..\src\drivers\radio\Si446x\si446x_api_lib.asm ..\src\drivers\radio\Si446x\si446x_api_lib.lst ..\src\drivers\radio\Si446x\si446x_api_lib.m51 ..\src\drivers\radio\Si446x\si446x_api_lib.__i ..\src\drivers\radio\Si446x\si446x_api_lib.map ..\src\drivers\radio\Si446x\si446x_api_lib.i ..\src\drivers\radio\Si446x\si446x_api_lib.sbr ..\src\drivers\radio\Si446x\si446x_api_lib.plg ..\src\drivers\radio\Si446x\si446x_api_lib.sym ..\src\drivers\radio\Si446x\si446x_api_lib.rel ..\src\drivers\radio\Si446x\si446x_api_lib.rst ..\src\drivers\radio\Si446x\si446x_api_lib.adb ..\src\drivers\radio\Si446x\si446x_api_lib.mem ..\src\drivers\radio\Si446x\si446x_api_lib.cdb ..\src\drivers\radio\Si446x\si446x_api_lib.lnk ..\src\drivers\radio\Si446x\si446x_api_lib.lk 2> $(NULL)
$(RM) ..\src\drivers\ascii5x7.a51 ..\src\drivers\ascii5x7.asm ..\src\drivers\ascii5x7.lst ..\src\drivers\ascii5x7.m51 ..\src\drivers\ascii5x7.__i ..\src\drivers\ascii5x7.map ..\src\drivers\ascii5x7.i ..\src\drivers\ascii5x7.sbr ..\src\drivers\ascii5x7.plg ..\src\drivers\ascii5x7.sym ..\src\drivers\ascii5x7.rel ..\src\drivers\ascii5x7.rst ..\src\drivers\ascii5x7.adb ..\src\drivers\ascii5x7.mem ..\src\drivers\ascii5x7.cdb ..\src\drivers\ascii5x7.lnk ..\src\drivers\ascii5x7.lk 2> $(NULL)
$(RM) ..\src\drivers\dog_glcd.a51 ..\src\drivers\dog_glcd.asm ..\src\drivers\dog_glcd.lst ..\src\drivers\dog_glcd.m51 ..\src\drivers\dog_glcd.__i ..\src\drivers\dog_glcd.map ..\src\drivers\dog_glcd.i ..\src\drivers\dog_glcd.sbr ..\src\drivers\dog_glcd.plg ..\src\drivers\dog_glcd.sym ..\src\drivers\dog_glcd.rel ..\src\drivers\dog_glcd.rst ..\src\drivers\dog_glcd.adb ..\src\drivers\dog_glcd.mem ..\src\drivers\dog_glcd.cdb ..\src\drivers\dog_glcd.lnk ..\src\drivers\dog_glcd.lk 2> $(NULL)
$(RM) ..\src\drivers\pictures.a51 ..\src\drivers\pictures.asm ..\src\drivers\pictures.lst ..\src\drivers\pictures.m51 ..\src\drivers\pictures.__i ..\src\drivers\pictures.map ..\src\drivers\pictures.i ..\src\drivers\pictures.sbr ..\src\drivers\pictures.plg ..\src\drivers\pictures.sym ..\src\drivers\pictures.rel ..\src\drivers\pictures.rst ..\src\drivers\pictures.adb ..\src\drivers\pictures.mem ..\src\drivers\pictures.cdb ..\src\drivers\pictures.lnk ..\src\drivers\pictures.lk 2> $(NULL)
$(RM) ..\src\drivers\smbus.a51 ..\src\drivers\smbus.asm ..\src\drivers\smbus.lst ..\src\drivers\smbus.m51 ..\src\drivers\smbus.__i ..\src\drivers\smbus.map ..\src\drivers\smbus.i ..\src\drivers\smbus.sbr ..\src\drivers\smbus.plg ..\src\drivers\smbus.sym ..\src\drivers\smbus.rel ..\src\drivers\smbus.rst ..\src\drivers\smbus.adb ..\src\drivers\smbus.mem ..\src\drivers\smbus.cdb ..\src\drivers\smbus.lnk ..\src\drivers\smbus.lk 2> $(NULL)
includes = $(wildcard )
as_includes = $(wildcard )
AS = a51.bat
ASFLAGS_EXT =
ASFLAGS = XR GEN DB EP NOMOD51 $(ASFLAGS_EXT)
CC = c51.bat
CFLAGS_EXT =
CFLAGS = DB OE BR Small OPTIMIZE(11, SIZE) DEFINE(SILABS_PLATFORM_WMB930) $(CFLAGS_EXT)
LINK = bl51.bat
LDFLAGS_EXT =
LDFLAGS = CODE REMOVEUNUSED CLASSES(BIT(0x20.0-0x2F.7), DATA(D:0-D:0x7F), IDATA(I:0-I:0xFF), XDATA(X:0-X:0xFFF), CODE(C:0-C:0xFBFF), CONST(C:0-C:0xFBFF)) $(LDFLAGS_EXT)
HEXGEN = C:\Keil\C51\BIN\ohx51.EXE
GREP = @find
ECHO = @echo
RM = del
NULL = nul
PLATFORM =
OUTDIR = ..\out
PROG = ..\out\WMB930_F930_Si446x_CustomPacketTX_Keil
OBJS = ..\src\drivers\STARTUP.obj ..\src\application\isr.obj ..\src\application\main.obj ..\src\drivers\control_IO.obj ..\src\drivers\hmi.obj ..\src\drivers\pca.obj ..\src\drivers\spi.obj ..\src\drivers\timer.obj ..\src\application\sample_code_func.obj ..\src\application\radio.obj ..\src\drivers\radio\radio_comm.obj ..\src\drivers\radio\radio_hal.obj ..\src\drivers\uart.obj ..\src\drivers\radio\Si446x\si446x_api_lib.obj ..\src\drivers\ascii5x7.obj ..\src\drivers\dog_glcd.obj ..\src\drivers\pictures.obj
LIBS =
all: $(PROG)
$(WINE) $(HEXGEN) $(PROG)
$(PROG): $(OBJS) $(LIBS)
$(WINE) $(LINK) ..\src\drivers\STARTUP.obj,..\src\application\isr.obj,..\src\application\main.obj,..\src\drivers\control_IO.obj,..\src\drivers\hmi.obj,..\src\drivers\pca.obj,..\src\drivers\spi.obj,..\src\drivers\timer.obj,..\src\application\sample_code_func.obj,..\src\application\radio.obj,..\src\drivers\radio\radio_comm.obj,..\src\drivers\radio\radio_hal.obj,..\src\drivers\uart.obj,..\src\drivers\radio\Si446x\si446x_api_lib.obj,..\src\drivers\ascii5x7.obj,..\src\drivers\dog_glcd.obj,..\src\drivers\pictures.obj TO $(PROG) $(LDFLAGS)
$(GREP) " RadioConfiguration" $(PROG).MAP > $(OUTDIR)\EzArray$(PLATFORM).loc
$(GREP) " RadioConfiguration" $(PROG).MAP
$(ECHO) -------------------------------------------------------------------------------
..\src\drivers\STARTUP.obj: ..\src\drivers\STARTUP.A51 $(as_includes)
$(WINE) $(AS) ..\src\drivers\STARTUP.A51 $(ASFLAGS)
..\src\application\isr.obj: ..\src\application\isr.c $(includes)
$(WINE) $(CC) ..\src\application\isr.c $(CFLAGS)
..\src\application\main.obj: ..\src\application\main.c $(includes)
$(WINE) $(CC) ..\src\application\main.c $(CFLAGS)
..\src\drivers\control_IO.obj: ..\src\drivers\control_IO.c $(includes)
$(WINE) $(CC) ..\src\drivers\control_IO.c $(CFLAGS)
..\src\drivers\hmi.obj: ..\src\drivers\hmi.c $(includes)
$(WINE) $(CC) ..\src\drivers\hmi.c $(CFLAGS)
..\src\drivers\pca.obj: ..\src\drivers\pca.c $(includes)
$(WINE) $(CC) ..\src\drivers\pca.c $(CFLAGS)
..\src\drivers\spi.obj: ..\src\drivers\spi.c $(includes)
$(WINE) $(CC) ..\src\drivers\spi.c $(CFLAGS)
..\src\drivers\timer.obj: ..\src\drivers\timer.c $(includes)
$(WINE) $(CC) ..\src\drivers\timer.c $(CFLAGS)
..\src\application\sample_code_func.obj: ..\src\application\sample_code_func.c $(includes)
$(WINE) $(CC) ..\src\application\sample_code_func.c $(CFLAGS)
..\src\application\radio.obj: ..\src\application\radio.c $(includes)
$(WINE) $(CC) ..\src\application\radio.c $(CFLAGS)
..\src\drivers\radio\radio_comm.obj: ..\src\drivers\radio\radio_comm.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\radio_comm.c $(CFLAGS)
..\src\drivers\radio\radio_hal.obj: ..\src\drivers\radio\radio_hal.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\radio_hal.c $(CFLAGS)
..\src\drivers\uart.obj: ..\src\drivers\uart.c $(includes)
$(WINE) $(CC) ..\src\drivers\uart.c $(CFLAGS)
..\src\drivers\radio\Si446x\si446x_api_lib.obj: ..\src\drivers\radio\Si446x\si446x_api_lib.c $(includes)
$(WINE) $(CC) ..\src\drivers\radio\Si446x\si446x_api_lib.c $(CFLAGS)
..\src\drivers\ascii5x7.obj: ..\src\drivers\ascii5x7.c $(includes)
$(WINE) $(CC) ..\src\drivers\ascii5x7.c $(CFLAGS)
..\src\drivers\dog_glcd.obj: ..\src\drivers\dog_glcd.c $(includes)
$(WINE) $(CC) ..\src\drivers\dog_glcd.c $(CFLAGS)
..\src\drivers\pictures.obj: ..\src\drivers\pictures.c $(includes)
$(WINE) $(CC) ..\src\drivers\pictures.c $(CFLAGS)
debug: all
$(WINE) "C:\Silabs\MCU\ide.exe" "WMB930_F930_Si446x_CustomPacketTX_Keil.wsp"
download: all
$(WINE) "C:\Silabs\MCU\Utilities\FLASH Programming\Static Programmers\Command-Line\FlashUtilCL.exe" downloadusb -R "$(PROG).hex" "" 0 1
@echo Download finished
clean:
$(RM) $(PROG).* $(OBJS) cyglink.txt tmp.out 2> $(NULL)
$(RM) ..\src\drivers\STARTUP.lst ..\src\drivers\STARTUP.m51 ..\src\drivers\STARTUP.__i ..\src\drivers\STARTUP.map ..\src\drivers\STARTUP.i ..\src\drivers\STARTUP.sbr ..\src\drivers\STARTUP.plg ..\src\drivers\STARTUP.sym ..\src\drivers\STARTUP.rel ..\src\drivers\STARTUP.rst ..\src\drivers\STARTUP.adb ..\src\drivers\STARTUP.mem ..\src\drivers\STARTUP.cdb ..\src\drivers\STARTUP.lnk ..\src\drivers\STARTUP.lk 2> $(NULL)
$(RM) ..\src\application\isr.a51 ..\src\application\isr.asm ..\src\application\isr.lst ..\src\application\isr.m51 ..\src\application\isr.__i ..\src\application\isr.map ..\src\application\isr.i ..\src\application\isr.sbr ..\src\application\isr.plg ..\src\application\isr.sym ..\src\application\isr.rel ..\src\application\isr.rst ..\src\application\isr.adb ..\src\application\isr.mem ..\src\application\isr.cdb ..\src\application\isr.lnk ..\src\application\isr.lk 2> $(NULL)
$(RM) ..\src\application\main.a51 ..\src\application\main.asm ..\src\application\main.lst ..\src\application\main.m51 ..\src\application\main.__i ..\src\application\main.map ..\src\application\main.i ..\src\application\main.sbr ..\src\application\main.plg ..\src\application\main.sym ..\src\application\main.rel ..\src\application\main.rst ..\src\application\main.adb ..\src\application\main.mem ..\src\application\main.cdb ..\src\application\main.lnk ..\src\application\main.lk 2> $(NULL)
$(RM) ..\src\drivers\control_IO.a51 ..\src\drivers\control_IO.asm ..\src\drivers\control_IO.lst ..\src\drivers\control_IO.m51 ..\src\drivers\control_IO.__i ..\src\drivers\control_IO.map ..\src\drivers\control_IO.i ..\src\drivers\control_IO.sbr ..\src\drivers\control_IO.plg ..\src\drivers\control_IO.sym ..\src\drivers\control_IO.rel ..\src\drivers\control_IO.rst ..\src\drivers\control_IO.adb ..\src\drivers\control_IO.mem ..\src\drivers\control_IO.cdb ..\src\drivers\control_IO.lnk ..\src\drivers\control_IO.lk 2> $(NULL)
$(RM) ..\src\drivers\hmi.a51 ..\src\drivers\hmi.asm ..\src\drivers\hmi.lst ..\src\drivers\hmi.m51 ..\src\drivers\hmi.__i ..\src\drivers\hmi.map ..\src\drivers\hmi.i ..\src\drivers\hmi.sbr ..\src\drivers\hmi.plg ..\src\drivers\hmi.sym ..\src\drivers\hmi.rel ..\src\drivers\hmi.rst ..\src\drivers\hmi.adb ..\src\drivers\hmi.mem ..\src\drivers\hmi.cdb ..\src\drivers\hmi.lnk ..\src\drivers\hmi.lk 2> $(NULL)
$(RM) ..\src\drivers\pca.a51 ..\src\drivers\pca.asm ..\src\drivers\pca.lst ..\src\drivers\pca.m51 ..\src\drivers\pca.__i ..\src\drivers\pca.map ..\src\drivers\pca.i ..\src\drivers\pca.sbr ..\src\drivers\pca.plg ..\src\drivers\pca.sym ..\src\drivers\pca.rel ..\src\drivers\pca.rst ..\src\drivers\pca.adb ..\src\drivers\pca.mem ..\src\drivers\pca.cdb ..\src\drivers\pca.lnk ..\src\drivers\pca.lk 2> $(NULL)
$(RM) ..\src\drivers\spi.a51 ..\src\drivers\spi.asm ..\src\drivers\spi.lst ..\src\drivers\spi.m51 ..\src\drivers\spi.__i ..\src\drivers\spi.map ..\src\drivers\spi.i ..\src\drivers\spi.sbr ..\src\drivers\spi.plg ..\src\drivers\spi.sym ..\src\drivers\spi.rel ..\src\drivers\spi.rst ..\src\drivers\spi.adb ..\src\drivers\spi.mem ..\src\drivers\spi.cdb ..\src\drivers\spi.lnk ..\src\drivers\spi.lk 2> $(NULL)
$(RM) ..\src\drivers\timer.a51 ..\src\drivers\timer.asm ..\src\drivers\timer.lst ..\src\drivers\timer.m51 ..\src\drivers\timer.__i ..\src\drivers\timer.map ..\src\drivers\timer.i ..\src\drivers\timer.sbr ..\src\drivers\timer.plg ..\src\drivers\timer.sym ..\src\drivers\timer.rel ..\src\drivers\timer.rst ..\src\drivers\timer.adb ..\src\drivers\timer.mem ..\src\drivers\timer.cdb ..\src\drivers\timer.lnk ..\src\drivers\timer.lk 2> $(NULL)
$(RM) ..\src\application\sample_code_func.a51 ..\src\application\sample_code_func.asm ..\src\application\sample_code_func.lst ..\src\application\sample_code_func.m51 ..\src\application\sample_code_func.__i ..\src\application\sample_code_func.map ..\src\application\sample_code_func.i ..\src\application\sample_code_func.sbr ..\src\application\sample_code_func.plg ..\src\application\sample_code_func.sym ..\src\application\sample_code_func.rel ..\src\application\sample_code_func.rst ..\src\application\sample_code_func.adb ..\src\application\sample_code_func.mem ..\src\application\sample_code_func.cdb ..\src\application\sample_code_func.lnk ..\src\application\sample_code_func.lk 2> $(NULL)
$(RM) ..\src\application\radio.a51 ..\src\application\radio.asm ..\src\application\radio.lst ..\src\application\radio.m51 ..\src\application\radio.__i ..\src\application\radio.map ..\src\application\radio.i ..\src\application\radio.sbr ..\src\application\radio.plg ..\src\application\radio.sym ..\src\application\radio.rel ..\src\application\radio.rst ..\src\application\radio.adb ..\src\application\radio.mem ..\src\application\radio.cdb ..\src\application\radio.lnk ..\src\application\radio.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\radio_comm.a51 ..\src\drivers\radio\radio_comm.asm ..\src\drivers\radio\radio_comm.lst ..\src\drivers\radio\radio_comm.m51 ..\src\drivers\radio\radio_comm.__i ..\src\drivers\radio\radio_comm.map ..\src\drivers\radio\radio_comm.i ..\src\drivers\radio\radio_comm.sbr ..\src\drivers\radio\radio_comm.plg ..\src\drivers\radio\radio_comm.sym ..\src\drivers\radio\radio_comm.rel ..\src\drivers\radio\radio_comm.rst ..\src\drivers\radio\radio_comm.adb ..\src\drivers\radio\radio_comm.mem ..\src\drivers\radio\radio_comm.cdb ..\src\drivers\radio\radio_comm.lnk ..\src\drivers\radio\radio_comm.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\radio_hal.a51 ..\src\drivers\radio\radio_hal.asm ..\src\drivers\radio\radio_hal.lst ..\src\drivers\radio\radio_hal.m51 ..\src\drivers\radio\radio_hal.__i ..\src\drivers\radio\radio_hal.map ..\src\drivers\radio\radio_hal.i ..\src\drivers\radio\radio_hal.sbr ..\src\drivers\radio\radio_hal.plg ..\src\drivers\radio\radio_hal.sym ..\src\drivers\radio\radio_hal.rel ..\src\drivers\radio\radio_hal.rst ..\src\drivers\radio\radio_hal.adb ..\src\drivers\radio\radio_hal.mem ..\src\drivers\radio\radio_hal.cdb ..\src\drivers\radio\radio_hal.lnk ..\src\drivers\radio\radio_hal.lk 2> $(NULL)
$(RM) ..\src\drivers\uart.a51 ..\src\drivers\uart.asm ..\src\drivers\uart.lst ..\src\drivers\uart.m51 ..\src\drivers\uart.__i ..\src\drivers\uart.map ..\src\drivers\uart.i ..\src\drivers\uart.sbr ..\src\drivers\uart.plg ..\src\drivers\uart.sym ..\src\drivers\uart.rel ..\src\drivers\uart.rst ..\src\drivers\uart.adb ..\src\drivers\uart.mem ..\src\drivers\uart.cdb ..\src\drivers\uart.lnk ..\src\drivers\uart.lk 2> $(NULL)
$(RM) ..\src\drivers\radio\Si446x\si446x_api_lib.a51 ..\src\drivers\radio\Si446x\si446x_api_lib.asm ..\src\drivers\radio\Si446x\si446x_api_lib.lst ..\src\drivers\radio\Si446x\si446x_api_lib.m51 ..\src\drivers\radio\Si446x\si446x_api_lib.__i ..\src\drivers\radio\Si446x\si446x_api_lib.map ..\src\drivers\radio\Si446x\si446x_api_lib.i ..\src\drivers\radio\Si446x\si446x_api_lib.sbr ..\src\drivers\radio\Si446x\si446x_api_lib.plg ..\src\drivers\radio\Si446x\si446x_api_lib.sym ..\src\drivers\radio\Si446x\si446x_api_lib.rel ..\src\drivers\radio\Si446x\si446x_api_lib.rst ..\src\drivers\radio\Si446x\si446x_api_lib.adb ..\src\drivers\radio\Si446x\si446x_api_lib.mem ..\src\drivers\radio\Si446x\si446x_api_lib.cdb ..\src\drivers\radio\Si446x\si446x_api_lib.lnk ..\src\drivers\radio\Si446x\si446x_api_lib.lk 2> $(NULL)
$(RM) ..\src\drivers\ascii5x7.a51 ..\src\drivers\ascii5x7.asm ..\src\drivers\ascii5x7.lst ..\src\drivers\ascii5x7.m51 ..\src\drivers\ascii5x7.__i ..\src\drivers\ascii5x7.map ..\src\drivers\ascii5x7.i ..\src\drivers\ascii5x7.sbr ..\src\drivers\ascii5x7.plg ..\src\drivers\ascii5x7.sym ..\src\drivers\ascii5x7.rel ..\src\drivers\ascii5x7.rst ..\src\drivers\ascii5x7.adb ..\src\drivers\ascii5x7.mem ..\src\drivers\ascii5x7.cdb ..\src\drivers\ascii5x7.lnk ..\src\drivers\ascii5x7.lk 2> $(NULL)
$(RM) ..\src\drivers\dog_glcd.a51 ..\src\drivers\dog_glcd.asm ..\src\drivers\dog_glcd.lst ..\src\drivers\dog_glcd.m51 ..\src\drivers\dog_glcd.__i ..\src\drivers\dog_glcd.map ..\src\drivers\dog_glcd.i ..\src\drivers\dog_glcd.sbr ..\src\drivers\dog_glcd.plg ..\src\drivers\dog_glcd.sym ..\src\drivers\dog_glcd.rel ..\src\drivers\dog_glcd.rst ..\src\drivers\dog_glcd.adb ..\src\drivers\dog_glcd.mem ..\src\drivers\dog_glcd.cdb ..\src\drivers\dog_glcd.lnk ..\src\drivers\dog_glcd.lk 2> $(NULL)
$(RM) ..\src\drivers\pictures.a51 ..\src\drivers\pictures.asm ..\src\drivers\pictures.lst ..\src\drivers\pictures.m51 ..\src\drivers\pictures.__i ..\src\drivers\pictures.map ..\src\drivers\pictures.i ..\src\drivers\pictures.sbr ..\src\drivers\pictures.plg ..\src\drivers\pictures.sym ..\src\drivers\pictures.rel ..\src\drivers\pictures.rst ..\src\drivers\pictures.adb ..\src\drivers\pictures.mem ..\src\drivers\pictures.cdb ..\src\drivers\pictures.lnk ..\src\drivers\pictures.lk 2> $(NULL)
@echo off
C:\Keil\C51\BIN\A51.EXE %*
if "%ERRORLEVEL%"=="0" goto no_error
if "%ERRORLEVEL%"=="1" goto no_error
if "%ERRORLEVEL%"=="2" goto error
if "%ERRORLEVEL%"=="3" goto error
:no_error
exit /b 0
:error
exit /b 1
@echo off
C:\Keil\C51\BIN\LX51.EXE %*
if "%ERRORLEVEL%"=="0" goto no_error
if "%ERRORLEVEL%"=="1" goto no_error
if "%ERRORLEVEL%"=="2" goto error
if "%ERRORLEVEL%"=="3" goto error
:no_error
exit /b 0
:error
exit /b 1
@echo off
C:\Keil\C51\BIN\C51.exe %*
if "%ERRORLEVEL%"=="0" goto no_error
if "%ERRORLEVEL%"=="1" goto no_error
if "%ERRORLEVEL%"=="2" goto error
if "%ERRORLEVEL%"=="3" goto error
:no_error
exit /b 0
:error
exit /b 1
/*! @file application_defs.h
* @brief This file contains hardware specific definitions defined by the application.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#ifndef APPLICATION_DEFS_H_
#define APPLICATION_DEFS_H_
#define lSys_SysClockFreq_c (24500000.0)
#define lSys_RadioCrystalFreq_c (30000000.0)
#endif /* APPLICATION_DEFS_H_ */
/*! @file isr.c
* @brief This file contains the interrupt functions of the application.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#include "..\bsp.h"
/*------------------------------------------------------------------------*/
/* Global variables */
/*------------------------------------------------------------------------*/
volatile BIT wIsr_Timer2Tick; /**< Interrupt flag of a ms */
/*------------------------------------------------------------------------*/
/* Interrupt implementations */
/*------------------------------------------------------------------------*/
/*!
* This function is the interrupt service routine of Timer 2.
* Clears IT flag and sets ms flag.
*
* @return None.
*/
INTERRUPT(vIsr_Timer2Isr, INTERRUPT_TIMER2)
{
mTmr_ClearTmr2It();
wIsr_Timer2Tick = TRUE;
}
/*!
* This function is the interrupt service routine of PCA Timer.
* Clears IT flag and reloads PWM duty cycle of the buzzer.
*
* @return None.
*/
INTERRUPT(vIsr_PcaTimerIsr, INTERRUPT_PCA0)
{
// mPca_ClearPcaTmrIt();
mPca_ClearPcaTmrCofIt();
}
/*! @file isr.h
* @brief Header file of interrupt service routines.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#ifndef ISR_H_
#define ISR_H_
/*------------------------------------------------------------------------*/
/* Global macros */
/*------------------------------------------------------------------------*/
/*!
* @brief Definition of enable all ITs.
*/
#define mIsr_EnableAllIt() EA = 1
/*!
* @brief Definition of disable all ITs.
*/
#define mIsr_DisableAllIt() EA = 0
/*------------------------------------------------------------------------*/
/* Function prototypes */
/*------------------------------------------------------------------------*/
#ifdef SDCC
/*! Interrupt Service Handler function prototype declarations required
* by SDDC */
INTERRUPT_PROTO(vIsr_Timer2Isr, INTERRUPT_TIMER2);
INTERRUPT_PROTO(vIsr_PcaTimerIsr, INTERRUPT_PCA0);
#endif
/*------------------------------------------------------------------------*/
/* External variables */
/*------------------------------------------------------------------------*/
extern volatile BIT wIsr_Timer2Tick;
#endif /* ISR_H_ */
/*! @file main.c
* @brief The main.c file of the Fixed packet length Custom TX demo
* for Si446X devices.
*
* Contains the initialization of the MCU & the radio.
* @n The main loop controls the program flow & the radio.
*
* @b CREATED
* @n Silicon Laboratories Ltd.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*
*/
#include "..\bsp.h"
/*------------------------------------------------------------------------*/
/* Local Macros */
/*------------------------------------------------------------------------*/
#define PACKET_SEND_INTERVAL 250u
/*------------------------------------------------------------------------*/
/* Local variables */
/*------------------------------------------------------------------------*/
SEGMENT_VARIABLE(lPer_SecCntr, U16, SEG_DATA); /**< Demo sec time holder */
/*------------------------------------------------------------------------*/
/* Local function prototypes */
/*------------------------------------------------------------------------*/
void vPlf_McuInit (void);
void vInitializeHW (void);
void DemoApp_Pollhandler (void);
/*------------------------------------------------------------------------*/
/* Function implementations */
/*------------------------------------------------------------------------*/
/** \fn void main(void)
* \brief The main function of the demo.
*
* \todo Create description
*/
void main(void)
{
// Initialize the Hardware and Radio
vInitializeHW();
#ifdef SILABS_LCD_DOG_GLCD
/* Initialize graphic LCD */
vLcd_InitLcd();
/* Set logo location to center */
bLcd_LcdSetPictureCursor(bLcd_Line1_c, 35u);
/* Draw SiLabs logo */
vLcd_LcdDrawPicture(silabs66x30);
#endif
while (TRUE)
{
// The following Handlers requires care on invoking time interval
if (wIsr_Timer2Tick)
{
if (lPer_SecCntr < 0xFFFF)
{
lPer_SecCntr++;
}
vHmi_PbHandler();
vHmi_LedHandler();
wIsr_Timer2Tick = FALSE;
}
// Demo Application Poll-Handler function
DemoApp_Pollhandler();
}
}
/**
* Demo Application Poll-Handler
*
* @note This function must be called periodically.
*
*/
void DemoApp_Pollhandler()
{
static SEGMENT_VARIABLE(lPktSending, U8, SEG_XDATA) = 0u;
// Check if the radio packet sent successfully
if (TRUE == gRadio_CheckTransmitted())
{
/* Blink once LED1 to show Packet Transmission has been done. */
vHmi_ChangeLedState(eHmi_Led1_c, eHmi_LedBlinkOnce_c);
/* Clear Packet Sending flag */
lPktSending = 0u;
}
if ((lPer_SecCntr >= PACKET_SEND_INTERVAL) && (0u == lPktSending))
{
if (TRUE == vSampleCode_SendFixPacket())
{
lPer_SecCntr = 0u;
/* Set Packet Sending flag */
lPktSending = 1u;
}
}
}
/**
* Calls the init functions for the used peripherals/modules
*
* @note Should be called at the beginning of the main().
*
*/
void vInitializeHW()
{
// Initialize the MCU peripherals
vPlf_McuInit();
// Initialize IO ports
vCio_InitIO();
// Start Timer2 peripheral with overflow interrupt
vTmr_StartTmr2(eTmr_SysClkDiv12_c, wwTmr_Tmr2Periode.U16, TRUE, bTmr_TxXCLK_00_c);
// Start the push button handler
vHmi_InitPbHandler();
// Start the Led handler
vHmi_InitLedHandler();
// Initialize the Radio
vRadio_Init();
// Enable configured interrupts
mIsr_EnableAllIt();
}
/** \fn void MCU_Init(void)
* \brief Initializes ports of the MCU.
*
* \return None
*
* \note It has to be called from the Initialization section.
* \todo Create description
*/
/** @fn void MCU_Init(void)
* @brief Initializes ports of the MCU.
*
* @return None
*
* @note It has to be called from the Initialization section.
*/
void vPlf_McuInit(void)
{
U16 wDelay = 0xFFFF;
/* disable F930 watchdog */
PCA0MD &= (~M_WDTE);
/* Init Internal Precision Oscillator (24.5MHz) */
SFRPAGE = LEGACY_PAGE;
FLSCL = M_BYPASS;
OSCICN |= M_IOSCEN; // p7: Internal Prec. Osc. enabled
CLKSEL = 0x00; // Int. Prec. Osc. selected (24.5MHz)
#if ((defined SILABS_PLATFORM_RFSTICK) || (defined SILABS_PLATFORM_LCDBB))
P0MDOUT = M_P0_UART_TX; //PBs: P0.0-P0.3 (same as RF_GPIO0-3) used as input
P1MDOUT = M_P1_SPI1_SCK | M_P1_SPI1_MOSI | M_P1_RF_NSEL | M_P1_RF_PWRDN;
P2MDOUT = M_P2_LED1 | M_P2_LED2 | M_P2_LED3 | M_P2_LED4 | M_P2_BZ1;
#if (defined SILABS_PLATFORM_LCDBB)
P1MDOUT |= M_P1_LCD_NSEL | M_P1_LCD_A0;
#endif
P0SKIP = (~M_P0_UART_TX) & (~M_P0_UART_RX) & (~M_P0_I2C_SCL) & (~M_P0_I2C_SDA); //skip all on port, but UART & SMBus
P1SKIP = (~M_P1_SPI1_SCK) & (~M_P1_SPI1_MISO) & (~M_P1_SPI1_MOSI); //skip all on port, but SPI1
P2SKIP = (~M_P2_BZ1); //skip all on port, but buzzer with PCA CEX0
#elif ((defined SILABS_MCU_DC_EMIF_F930) || (SILABS_MCU_DC_EMIF_F930_STANDALONE))
#if (defined SILABS_MCU_DC_EMIF_F930)
// Init master hw SPI interface (SCK clock: 2.45MHz)
// Init SPI0 (LCD)
SPI0CFG = M_MSTEN0; //p6: SPI0 enable master mode
SPI0CN = M_SPI0EN; //p1: SPI0 enable
SPI0CKR = 0x04; //fSCK = SYSCLK / 10
#endif
P0MDOUT = M_P0_UART_TX | M_P0_LED1 | M_P0_LED2 | M_P0_LED3 | M_P0_LED4;
P1MDOUT = M_P1_SPI1_SCK | M_P1_SPI1_MOSI | M_P1_RF_NSEL;
P2MDOUT = M_P2_RF_PWRDN;
#if (defined SILABS_MCU_DC_EMIF_F930)
P1MDOUT |= M_P1_SPI0_SCK | M_P1_SPI0_MOSI;
P2MDOUT |= M_P2_LCD_NSEL | M_P2_LCD_A0;
#endif
P0SKIP = (~M_P0_UART_TX) & (~M_P0_UART_RX) ; //skip all on port, but UART
P1SKIP = (~M_P1_SPI1_SCK) & (~M_P1_SPI1_MISO) & (~M_P1_SPI1_MOSI); //skip all on port, but SPI1
P2SKIP = (~M_P2_I2C_SCL) & (~M_P2_I2C_SDA); //skip all on port, but SMBus
#if (defined SILABS_MCU_DC_EMIF_F930)
P1SKIP &= (~M_P1_SPI0_SCK) & (~M_P1_SPI0_MISO) & (~M_P1_SPI0_MOSI); //do not skip SPI0 for LCD
#endif
#elif (defined SILABS_PLATFORM_WMB930)
/* Port IN/OUT init */
P0MDOUT = 0x80;
P1MDOUT = 0xF5;
P2MDOUT = 0x49;
P0SKIP = 0xCF;
P1SKIP = 0x18;
P2SKIP = 0xB9;
#elif (defined SILABS_PLATFORM_WMB912)
/* Port IN/OUT init */
/* P0: 2,3,4,6,7 push-pull */
/* P1: 0,2,3,6 push-pull */
/* P2: no push-pull */
P0MDOUT = 0xDC;
P1MDOUT = 0x4D;
/* P0: 0,1,2,3,6,7 skipped */
/* P1: 3,6 skipped */
/* P2: 7 skipped */
P0SKIP = 0xCF;
P1SKIP = 0x48;
/* Set SMBUS clock speed */
Set115200bps_24MHZ5;
/* Start Timer1 */
TR1 = 1;
/* Initialize SMBus */
vSmbus_InitSMBusInterface();
#else
#error TO BE WRITTEN FOR OTHER PLARFORMS!
#endif
P0MDIN = 0xFF; // All pin configured as digital port
P1MDIN = 0xFF; // All pin configured as digital port
#if !(defined SILABS_PLATFORM_WMB912)
P2MDIN = 0xFF; // All pin configured as digital port
#endif
/* Set Drive Strenght */
SFRPAGE = CONFIG_PAGE;
P0DRV = 0x00;
P1DRV = 0x00;
#if !(defined SILABS_PLATFORM_WMB912)
P2DRV = 0x00;
#endif
SFRPAGE = LEGACY_PAGE;
/* Crossbar configuration */
XBR0 = M_URT0E | M_SMB0E; //p0: UART enabled on XBAR
XBR1 = M_SPI1E ; //p6: SPI1 enabled on XBAR
#if ((defined SILABS_PLATFORM_RFSTICK) || (defined SILABS_PLATFORM_LCDBB))
XBR1 |= (1 << BF_PCA0ME_0); //p0: PCA CEX0 enabled on XBAR
#elif(defined SILABS_MCU_DC_EMIF_F930)
XBR0 |= M_SPI0E ; //p6: SPI1 enabled on XBAR
#elif (defined SILABS_MCU_DC_EMIF_F930_STANDALONE)
#elif (defined SILABS_PLATFORM_WMB930)
XBR1 |= (1 << BF_PCA0ME_0); //p0: PCA CEX0 enabled on XBAR
XBR0 |= M_SPI0E;
#elif (defined SILABS_PLATFORM_WMB912)
#else
#error TO BE WRITTEN FOR OTHER PLARFORMS!
#endif
XBR2 = M_XBARE; //p6: XBAR enable
/* latch all inputs to '1' */
P0 = ~P0MDOUT;
P1 = ~P1MDOUT;
#if !(defined SILABS_PLATFORM_WMB912)
P2 = ~P2MDOUT;
#endif
/* set all output to its default state */
LED1 = EXTINGUISH;
#if !(defined SILABS_PLATFORM_WMB912)
LED2 = EXTINGUISH;
LED3 = EXTINGUISH;
LED4 = EXTINGUISH;
#endif
RF_NSEL = TRUE;
RF_PWRDN = FALSE;
/* SPI1 & SPI0 Config & Enable */
SPI0CFG = 0x40;
SPI1CFG = 0x40;
#if !(defined SILABS_PLATFORM_WMB912)
SPI0CN = 0x01;
#else
SPI0CN = 0x00;
#endif
SPI1CN = 0x01;
SPI0CKR = 0x0B;
SPI1CKR = 0x0B;
#ifdef UART_LOGGING_SUPPORT
/* UART must be enabled, cannot be disabled */
Comm_IF_EnableUART();
#endif
/* De-select radio SPI */
vSpi_SetNsel(eSpi_Nsel_RF);
#if ((defined SILABS_LCD_DOG_GLCD) || (defined SILABS_MCU_DC_EMIF_F930) || (defined SILABS_PLATFORM_WMB))
/* De-select LCD SPI */
vSpi_SetNsel(eSpi_Nsel_LCD);
LCD_A0 = FALSE;
#endif
/* Startup delay */
for (; wDelay; wDelay--) ;
}
#ifdef SDCC
/**
* \brief External startup function of SDCC.
*
* It performs operations
* prior static and global variable initialization.
* Watchdog timer should be disabled this way, otherwise it
* can expire before variable initialization is carried out,
* and may prevent program execution jumping into main().
*
* \param None
* \return None
*/
void _sdcc_external_startup(void)
{
PCA0MD &= ~0x40; // Disable Watchdog timer
}
#endif
/*! @file radio.c
* @brief This file contains functions to interface with the radio chip.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#include "..\bsp.h"
/*****************************************************************************
* Local Macros & Definitions
*****************************************************************************/
/*****************************************************************************
* Global Variables
*****************************************************************************/
const SEGMENT_VARIABLE(Radio_Configuration_Data_Array[], U8, SEG_CODE) = \
RADIO_CONFIGURATION_DATA_ARRAY;
const SEGMENT_VARIABLE(RadioConfiguration, tRadioConfiguration, SEG_CODE) = \
RADIO_CONFIGURATION_DATA;
const SEGMENT_VARIABLE_SEGMENT_POINTER(pRadioConfiguration, tRadioConfiguration, SEG_CODE, SEG_CODE) = \
&RadioConfiguration;
/*****************************************************************************
* Local Function Declarations
*****************************************************************************/
void vRadio_PowerUp(void);
/*!
* Power up the Radio.
*
* @note
*
*/
void vRadio_PowerUp(void)
{
SEGMENT_VARIABLE(wDelay, U16, SEG_XDATA) = 0u;
/* Hardware reset the chip */
si446x_reset();
/* Wait until reset timeout or Reset IT signal */
for (; wDelay < pRadioConfiguration->Radio_Delay_Cnt_After_Reset; wDelay++);
}
/*!
* Radio Initialization.
*
* @author Sz. Papp
*
* @note
*
*/
void vRadio_Init(void)
{
U16 wDelay;
/* Power Up the radio chip */
vRadio_PowerUp();
/* Load radio configuration */
while (SI446X_SUCCESS != si446x_configuration_init(pRadioConfiguration->Radio_ConfigurationArray))
{
/* Error hook */
#if !(defined SILABS_PLATFORM_WMB912)
LED4 = !LED4;
#else
vCio_ToggleLed(eHmi_Led4_c);
#endif
for (wDelay = 0x7FFF; wDelay--; ) ;
/* Power Up the radio chip */
vRadio_PowerUp();
}
// Read ITs, clear pending ones
si446x_get_int_status(0u, 0u, 0u);
}
/*!
* Check if Packet sent IT flag is pending.
*
* @return TRUE / FALSE
*
* @note
*
*/
BIT gRadio_CheckTransmitted(void)
{
if (RF_NIRQ == FALSE)
{
/* Read ITs, clear pending ones */
si446x_get_int_status(0u, 0u, 0u);
/* check the reason for the IT */
if (Si446xCmd.GET_INT_STATUS.PH_PEND & SI446X_CMD_GET_INT_STATUS_REP_PH_PEND_PACKET_SENT_PEND_BIT)
{
return TRUE;
}
}
return FALSE;
}
/*!
* Set Radio to TX mode, fixed packet length.
*
* @param channel Freq. Channel, Packet to be sent
*
* @note
*
*/
void vRadio_StartTx(U8 channel, U8 *pioFixRadioPacket)
{
/* Reset TX FIFO */
si446x_fifo_info(SI446X_CMD_FIFO_INFO_ARG_FIFO_TX_BIT);
// Read ITs, clear pending ones
si446x_get_int_status(0u, 0u, 0u);
/* Fill the TX fifo with datas */
si446x_write_tx_fifo(RadioConfiguration.Radio_PacketLength, pioFixRadioPacket);
/* Start sending packet, channel 0, START immediately, Packet length according to PH, go READY when done */
si446x_start_tx(channel, 0x30, 0x00);
}
/*! @file radio.h
* @brief This file is contains the public radio interface functions.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#ifndef RADIO_H_
#define RADIO_H_
/*****************************************************************************
* Global Macros & Definitions
*****************************************************************************/
/*! Maximal packet length definition (FIFO size) */
#define RADIO_MAX_PACKET_LENGTH 64u
/*****************************************************************************
* Global Typedefs & Enums
*****************************************************************************/
typedef struct
{
U8 *Radio_ConfigurationArray;
U8 Radio_ChannelNumber;
U8 Radio_PacketLength;
U8 Radio_State_After_Power_Up;
U16 Radio_Delay_Cnt_After_Reset;
U8 Radio_CustomPayload[RADIO_MAX_PACKET_LENGTH];
} tRadioConfiguration;
/*****************************************************************************
* Global Variable Declarations
*****************************************************************************/
extern const SEGMENT_VARIABLE_SEGMENT_POINTER(pRadioConfiguration, tRadioConfiguration, SEG_CODE, SEG_CODE);
/*! Si446x configuration array */
extern const SEGMENT_VARIABLE(Radio_Configuration_Data_Array[], U8, SEG_CODE);
/*****************************************************************************
* Global Function Declarations
*****************************************************************************/
void vRadio_Init(void);
BIT gRadio_CheckTransmitted(void);
void vRadio_StartTx(U8, U8 *);
#endif /* RADIO_H_ */
/*! @file sample_code_func.c
* @brief This file contains functions to manage behavior of basic human module interfaces (push-buttons, switches, LEDs).
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#include "..\bsp.h"
/*------------------------------------------------------------------------*/
/* Global variables */
/*------------------------------------------------------------------------*/
/*------------------------------------------------------------------------*/
/* Function implementations */
/*------------------------------------------------------------------------*/
#ifdef HMI_DRIVER_EXTENDED_SUPPORT
#if ((defined SILABS_PLATFORM_COMPONENT_PB) && (defined SILABS_PLATFORM_COMPONENT_LED) && (defined SILABS_PLATFORM_COMPONENT_BUZZER))
/*!
* This function is used to show the actual state of the push-buttons on the Buzzer.
*
* @return None.
*/
void vSampleCode_ShowPbOnBuzzer(void)
{
SEGMENT_VARIABLE(boPbPushTrack, U8 , SEG_DATA);
SEGMENT_VARIABLE(woPbPushTime, U16 , SEG_DATA);
SEGMENT_VARIABLE(bPbLedCnt, U8 , SEG_DATA);
gHmi_PbIsPushed(&boPbPushTrack, &woPbPushTime);
for (bPbLedCnt = 1; bPbLedCnt <= 4; bPbLedCnt++)
{
if (boPbPushTrack)
{
vHmi_ChangeBuzzState(eHmi_BuzzOnce_c);
}
else
{
vHmi_ChangeBuzzState(eHmi_BuzzOff_c);
}
}
}
#endif
#endif
#if ((defined SILABS_PLATFORM_COMPONENT_PB) && (defined SILABS_PLATFORM_COMPONENT_LED))
/*!
* This function is used to send fix payload length packet.
*
* @return TRUE - Started a packet TX / FALSE - No packet sent.
*/
BIT vSampleCode_SendFixPacket(void)
{
SEGMENT_VARIABLE(boPbPushTrack, U8, SEG_DATA);
SEGMENT_VARIABLE(woPbPushTime, U16, SEG_DATA);
gHmi_PbIsPushed(&boPbPushTrack, &woPbPushTime);
if (eHmi_PbNo_c == boPbPushTrack)
{
return FALSE;
}
vRadio_StartTx(pRadioConfiguration->Radio_ChannelNumber, (U8 *) &pRadioConfiguration->Radio_CustomPayload[0u]);
/* Packet sending initialized */
return TRUE;
}
#endif
/*! @file sample_code_func.h
* @brief This file is the interface file for basic HMI functions.
*
* @b COPYRIGHT
* @n Silicon Laboratories Confidential
* @n Copyright 2012 Silicon Laboratories, Inc.
* @n http://www.silabs.com
*/
#ifndef SAMPLE_CODE_FUNC_H_
#define SAMPLE_CODE_FUNC_H_
/*------------------------------------------------------------------------*/
/* Global definitions */
/*------------------------------------------------------------------------*/
/*------------------------------------------------------------------------*/
/* Global structure & enumeration definitions */
/*------------------------------------------------------------------------*/
/*------------------------------------------------------------------------*/
/* Function prototypes */
/*------------------------------------------------------------------------*/
#if ((defined SILABS_PLATFORM_COMPONENT_PB) && (defined SILABS_PLATFORM_COMPONENT_LED) && (defined SILABS_PLATFORM_COMPONENT_BUZZER))
#ifdef HMI_DRIVER_EXTENDED_SUPPORT
void vSampleCode_ShowPbOnBuzzer(void);
#endif
#endif
#if ((defined SILABS_PLATFORM_COMPONENT_PB) && (defined SILABS_PLATFORM_COMPONENT_LED))
BIT vSampleCode_SendFixPacket(void);
#endif
#endif /* SAMPLE_CODE_FUNC_H_ */
This diff is collapsed.