Initial import of NFC GNSS SDK project

This commit is contained in:
chenjintao
2026-09-15 16:10:12 +08:00
commit 2746cc3d4e
3070 changed files with 892062 additions and 0 deletions
+243
View File
@@ -0,0 +1,243 @@
TARGET_ = ${TARGET_BAT}
#Default: DS-5 is added in Patch
CC = armcc.exe
LINK = armlink.exe
FROMELF = fromelf.exe
src_dir = ../src
inc_dir = ../inc
scatter_dir = ..
obj_dir = obj
feedback = feedback.txt
#common start
common_dir = ../../common
common_src_dir = $(common_dir)/src
common_inc_dir = $(common_dir)/inc
common_lib_dir = $(common_dir)/lib
common_tool_dir = $(common_dir)/tool
obj_common_dir = obj_common
#common end
DSP_ADC_CONFIG_FILE_DIR = $(common_lib_dir)
DSP_ADC_BUILD_CONFIG_NAME = .dsp_adc_build_config
include $(DSP_ADC_CONFIG_FILE_DIR)/$(DSP_ADC_BUILD_CONFIG_NAME)
cflag=-I$(inc_dir) --cpu Cortex-R5 --no_unaligned_access -g -O2 --apcs /inter --gnu --split_sections
#*************************PLATFORM********************
ifneq (,$(findstring OCPU,${QUECTEL_PROJ}))
cflag += -DQUECTEL_OPEN_CPU
endif
#ASR-1606
SCATTER_FILE = scatter.scat
ifneq (,$(findstring CRANEL,${CHIP_TYPE}))
cflag += -DASR_PLATFORM_CRANEL
ifneq (,$(findstring CRANEL_SINGLESIM,${CHIP_TYPE}))
SCATTER_FILE = scatter_craneL_SingleSim.scat
else
SCATTER_FILE = scatter_craneL.scat
endif
endif
#ASR-1603
ifneq (,$(findstring CRANEM,${CHIP_TYPE}))
cflag += -DASR_PLATFORM_CRANEM
#***SMALL_CODE*******#是否需要开启DSP ADC
ifneq (,$(findstring LOGO,${SMALL_CODE}))
cflag += -DSMALL_CODE_LOGO
endif
endif
#*****************************************************
#common start
cflag += -I$(common_inc_dir)
#common end
ifneq (,$(findstring enable,${DMCHAGE}))
cflag += -I$(common_inc_dir)/charge
endif
src_dir_ = $(src_dir) $(common_src_dir)
#Macro Used if CP is Erased
#DEFS = -DCP_ERASE
cflag += $(DEFS)
ifneq (,$(findstring CRANEL,${CHIP_TYPE}))
cflag += -DCRANEL_CHIP
ifneq (,$(findstring CRANEL_SINGLESIM,${CHIP_TYPE}))
cflag += -DLTEONLY_SINGLE_SIM
endif
endif
#++++++++++++++++++++++
#1. NO LCD
ifneq (,$(findstring NO_LCD,${LCD_TYPE}))
# cflag += -DLCD_USE_IN_CODE
# cflag += -DLCD_ST7789V_MCU
# cflag += -DNO_LCD
lcd_type =${TARGET_SYFFIX}
endif
# check if enable charge
ifneq (,$(findstring enable,${DMCHAGE}))
cflag += -DDMCHAGE
endif
TARGET = ${TARGET_}${lcd_type}
#++++++++++++++++++++++
srcs = $(src_dir)/main.c \
$(src_dir)/version_logo.c
#common start
#add ../../common
#Note: create a new MACRO: "srcs_common"
cflag += -DCRANE_MCU_DONGLE
srcs_common = \
$(common_src_dir)/plat_api.c \
$(common_src_dir)/pwm_drv.c \
$(common_src_dir)/asr_property.c \
$(common_src_dir)/system.c \
$(common_src_dir)/FreqChange.c \
$(common_src_dir)/bsp_tavor.c \
$(common_src_dir)/LzmaDec.c \
$(common_src_dir)/tinyalloc.c \
$(common_src_dir)/utilities.c \
$(common_src_dir)/pmic.c \
$(common_src_dir)/ningbo.c \
$(common_src_dir)/guilin.c \
$(common_src_dir)/guilin_lite.c \
$(common_src_dir)/guilin_lite2.c \
$(common_src_dir)/guilin_lite3.c \
$(common_src_dir)/loadtable.c \
$(common_src_dir)/ptable.c \
$(common_src_dir)/qspi_core.c \
$(common_src_dir)/qspi_dma.c \
$(common_src_dir)/qspi_host.c \
$(common_src_dir)/qspi_nor.c \
$(common_src_dir)/uart.c \
$(common_src_dir)/LzmaEnc.c \
$(common_src_dir)/LzFind.c \
$(common_src_dir)/LzmaLib.c \
$(common_src_dir)/logo_table.c \
$(common_src_dir)/updater_table.c \
$(common_src_dir)/asr_lzma.c \
$(common_src_dir)/quec_startup_gpio.c \
$(common_src_dir)/ql_boot_power.c \
$(common_src_dir)/ql_boot_adc.c \
#common end
#是否使用LCD
ifneq (,$(findstring USE_LCD,${LCD_TYPE}))
srcs_common += \
$(common_src_dir)/quec_lcd_application.c \
$(common_src_dir)/quec_spi_drv.c \
$(common_src_dir)/quec_ssp_lcd.c \
$(common_src_dir)/quec_spi.c
endif
ifneq (,$(findstring enable,${DMCHAGE}))
srcs += $(src_dir)/charge/charge.c \
$(src_dir)/charge/i2c.c \
$(src_dir)/charge/charge_compound.c \
$(src_dir)/charge/ningbo.c \
$(src_dir)/charge/guilin.c \
$(src_dir)/charge/pm812.c \
$(src_dir)/charge/guilin_lite.c \
$(src_dir)/charge/eta4256.c
endif
ifneq (,$(findstring SDCARD_USE,${SDCARD}))
cflag += -DSDCARD_USE_IN_CODE
#add sdcard source code
srcs += $(common_src_dir)/sdcard.c \
$(common_src_dir)/diskio.c \
$(common_src_dir)/ff.c \
$(common_src_dir)/ff_dump_mem.c \
$(common_src_dir)/ffsystem.c \
$(common_src_dir)/ffunicode.c
endif
dep_files = $(wildcard $(inc_dir)/*.h $(common_inc_dir)/*.h)
objs = $(patsubst %.c, ${obj_dir}/%.o, ${notdir ${srcs}})
#common start
dep_files += $(wildcard $(common_inc_dir)/*.h)
objs_common = $(patsubst %.c, ${obj_common_dir}/%.o, ${notdir ${srcs_common}})
#else
#objs_common =
#common end
ifneq (,$(findstring enable,${DMCHAGE}))
dep_files += $(wildcard $(inc_dir)/charge/*.h)
#objs += $(patsubst %.c, ${obj_dir}/charge/%.o, ${notdir ${srcs}})
endif
objs_sum = $(objs)
#common start
objs_sum += $(objs_common)
#common end
${TARGET}.axf:$(objs_sum)
$(CC) $(cflag) -c $(src_dir)/OBM_StartUp.s -o $(obj_dir)/OBM_StartUp.o
$(LINK) $(objs_sum) $(obj_dir)/OBM_StartUp.o --scatter $(scatter_dir)/$(SCATTER_FILE) --output $@ --map --symbols --info sizes,totals --list ${TARGET}.map --keep version_logo.o(IMGLOGO)
$(FROMELF) --output ${TARGET}.bin --bin ${TARGET}.axf
#1. build srcs\*.c ---> obj/*.o
${obj_dir}/%.o:$(src_dir)/%.c $(dep_files)
if not exist "$(obj_dir)" mkdir $(obj_dir)
$(CC) $(cflag) -c $< -o $@
#common start
#2. build $(common_src_dir)/*.c ---> obj_common/*.o
${obj_common_dir}/%.o: $(common_src_dir)/%.c $(dep_files)
if not exist "$(obj_common_dir)" mkdir $(obj_common_dir)
$(CC) $(cflag) -c $< -o $@
#common end
ifneq (,$(findstring enable,${DMCHAGE}))
${obj_dir}/%.o:$(src_dir)/charge/%.c $(dep_files)
if not exist "$(obj_dir)" mkdir $(obj_dir)
$(CC) $(cflag) -c $< -o $@
endif
feedback:$(objs_sum)
$(CC) $(cflag) -c $(src_dir)/OBM_StartUp.s -o obj/OBM_StartUp.o
$(LINK) $(objs_sum) obj/OBM_StartUp.o --scatter ../$(SCATTER_FILE) --output feedback.axf --keep version_logo.o(IMGVERLOGO) --feedback=${feedback}
rd /s /q $(obj_dir)
del feedback.axf
if exist $(obj_dir) rd /s /q $(obj_dir)
if exist $(obj_common_dir) rd /s /q $(obj_common_dir)
clean:
del ${TARGET_PREFIX}*.bin
del ${TARGET_PREFIX}*.axf
del ${TARGET_PREFIX}*.map
del buildlog.txt
rd /s /q $(obj_dir)
rd /s /q $(obj_common_dir)
handle_after_compress:
ifeq (,$(findstring CRANEL,${CHIP_TYPE}))
rename ${TARGET_PREFIX}*.bin ${TARGET}.bin
#1. LOGO_SIZE = {logo.bin} size
perl $(common_tool_dir)/external_ext_bin_size_update.pl ${TARGET}.bin LOGO_SIZE
ifneq (,$(findstring y,$(CONFIG_APPEND_DSP_ADC)))
#2. append dsp_adc.bin into {updater.bin}. ( note: need provide front.bin size --- UPD_SIZE)
perl $(common_tool_dir)/external_ext_bin_append.pl APPEND ${TARGET}.bin LOGO_SIZE $(common_lib_dir)/dsp_adc_lzma.bin ADC_SIZE
endif
#3. EXT_SIZE = {updater.bin + dsp_adc.bin} size
perl $(common_tool_dir)/external_ext_bin_size_update.pl ${TARGET}.bin EXT_SIZE
endif
@@ -0,0 +1,120 @@
@echo off
::---------------------------------------------
::Script_name: asr_compressed_script.bat
::Author: CP_PLATFORM_SH
::Time: 2020-07-22
::Version: 3.0
::Description: use asr_split_file.exe
:: asr_lzop.exe or asr_lzma.exe
:: asr_merge_file.exe
:: to partially compress the image
::使用方法:在当前目录放一个*.bin,双击该脚本,会生成一个xxx.bin(头部+压缩的文件)
::注意用户需要配置如下参数
::---------------------------------------------
::-----------------------------config parameters ---------------------------------------------
::PARAM1 --- TOOL
set TOOL1_SPLIT_FILE_TOOL=asr_split_file.exe
::set TOOL2_COMPRESS_TOOL_NAME=asr_lzop.exe
set TOOL2_COMPRESS_TOOL_NAME=asr_lzma.exe
set TOOL3_MERGE_FILE=asr_merge_file.exe
::PARMA2 --- SCRIPT INPUT_FILE AND OUTPUT FILE
set SCRIPT_INPUT_FILE_NAME=*%TARGET_PREFIX%*.bin
set SCRIPT_OUTPUT_FILE_NAME=%TARGET_PREFIX%.bin
::PARAM3 --- SPLIT
set SPLIT_ADDR_HEADER_SIZE=12
set SPLIT_INPUT_FILE_NAME=*%TARGET_PREFIX%*.bin
set SPLIT_OUTPUT_FILE1_NAME=logo_no_compressed_sector1.bin
set SPLIT_OUTPUT_FILE2_NAME=logo_no_compressed_sector2.bin
::PARAM4 --- COMPRESS FILE
set COMPRESS_INPUT_FILE_NAME=%SPLIT_OUTPUT_FILE2_NAME%
set COMPRESS_OUTPUT_FILE_NAME=logo_compressed_sector2.bin
::PARAM5 --- MERGE
set MERGE_INPUT_FILE1_NAME=%SPLIT_OUTPUT_FILE1_NAME%
set MERGE_INPUT_FILE2_NAME=%COMPRESS_OUTPUT_FILE_NAME%
set MERGE_OUTPUT_FILE_NAME=MERGE_OUTPUT_FILE.bin
::--------------------------------------------------------------------------------------------
::1. check source file: %SPLIT_INPUT_FILE_NAME% exist or not
if exist %SPLIT_INPUT_FILE_NAME% (
echo %SPLIT_INPUT_FILE_NAME% exist!
)else (
echo %SPLIT_INPUT_FILE_NAME% not exist!
pause
)
::1. SPLIT FILE
echo "*********************** 1 SPLIT FILE *********************************************"
echo "start split %SPLIT_INPUT_FILE_NAME% into two file: %SPLIT_OUTPUT_FILE1_NAME% and %SPLIT_OUTPUT_FILE2_NAME%"
start /B /WAIT %TOOL1_SPLIT_FILE_TOOL% %SPLIT_ADDR_HEADER_SIZE% %SPLIT_INPUT_FILE_NAME% %SPLIT_OUTPUT_FILE1_NAME% %SPLIT_OUTPUT_FILE2_NAME%
echo "split end"
::2. partially compress image
echo "*********************** 2 partially compress image *******************************"
echo "partially compress image"
if "%TOOL2_COMPRESS_TOOL_NAME%"=="asr_lzop.exe" (
start /B /WAIT %TOOL2_COMPRESS_TOOL_NAME% -9fv -o %COMPRESS_OUTPUT_FILE_NAME% %COMPRESS_INPUT_FILE_NAME%
) else (
start /B /WAIT %TOOL2_COMPRESS_TOOL_NAME% e %COMPRESS_INPUT_FILE_NAME% %COMPRESS_OUTPUT_FILE_NAME%
)
del %COMPRESS_INPUT_FILE_NAME%
echo "partially compress image end"
::3. MERGE FILE
echo "*********************** 3. MERGE FILE*********************************************"
echo "start merge file"
start /B /WAIT %TOOL3_MERGE_FILE% %MERGE_INPUT_FILE1_NAME% %MERGE_INPUT_FILE2_NAME% %MERGE_OUTPUT_FILE_NAME%
echo "merge end"
::4. output target file
rename %MERGE_OUTPUT_FILE_NAME% %SCRIPT_OUTPUT_FILE_NAME%
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,111 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
set compile_tools_dir=..\..\..\ql-cross-tool\win32\owtoolchain
if "%QUECTEL_COMPILE_TOOLS_V1%"=="" (
set QUECTEL_COMPILE_TOOLS_V1=%compile_tools_dir%
)
set COMPILE_TOOLS_PATH=%QUECTEL_COMPILE_TOOLS_V1%;%QUECTEL_COMPILE_TOOLS_V1%\ARM_Compiler_5\bin;%QUECTEL_COMPILE_TOOLS_V1%\Perl\site\bin;%QUECTEL_COMPILE_TOOLS_V1%\Perl\bin;%QUECTEL_COMPILE_TOOLS_V1%\gnumake;%PATH%;
if "%COMPILE_ENV_SET_FLAG%"=="" echo --------------set compile tools path------------------- && set PATH=%COMPILE_TOOLS_PATH% && set COMPILE_ENV_SET_FLAG=done
set ARMLMD_LICENSE_FILE=%QUECTEL_COMPILE_TOOLS_V1%\license.dat
MODE con: COLS=150 LINES=600
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=USE_LCD
set TARGET_SUFFIX=
set CHIP_TYPE=CRANEM_SINGLESIM
set QUECTEL_PROJ=OCPU
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
:: enable/disable charge function
:: DMCHAGE=disable will disable charge function
:: DMCHAGE=enable will enable charge function
set DMCHAGE=disable
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* NO_LCD ***********************************************
::
::********************************************************************************************
::START
gnumake clean
gnumake feedback
gnumake
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
gnumake clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,112 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
set compile_tools_dir=..\..\..\ql-cross-tool\win32\owtoolchain
if "%QUECTEL_COMPILE_TOOLS_V1%"=="" (
set QUECTEL_COMPILE_TOOLS_V1=%compile_tools_dir%
)
set COMPILE_TOOLS_PATH=%QUECTEL_COMPILE_TOOLS_V1%;%QUECTEL_COMPILE_TOOLS_V1%\ARM_Compiler_5\bin;%QUECTEL_COMPILE_TOOLS_V1%\Perl\site\bin;%QUECTEL_COMPILE_TOOLS_V1%\Perl\bin;%QUECTEL_COMPILE_TOOLS_V1%\gnumake;%PATH%;
if "%COMPILE_ENV_SET_FLAG%"=="" echo --------------set compile tools path------------------- && set PATH=%COMPILE_TOOLS_PATH% && set COMPILE_ENV_SET_FLAG=done
set ARMLMD_LICENSE_FILE=%QUECTEL_COMPILE_TOOLS_V1%\license.dat
MODE con: COLS=150 LINES=600
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=USE_LCD
set TARGET_SUFFIX=
set CHIP_TYPE=CRANEL_SINGLESIM
set QUECTEL_PROJ=OCPU
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
:: enable/disable charge function
:: DMCHAGE=disable will disable charge function
:: DMCHAGE=enable will enable charge function
set DMCHAGE=disable
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* NO_LCD ***********************************************
::
::********************************************************************************************
::START
gnumake clean
gnumake feedback
gnumake
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
gnumake clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,111 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
set compile_tools_dir=..\..\..\ql-cross-tool\win32\owtoolchain
if "%QUECTEL_COMPILE_TOOLS_V1%"=="" (
set QUECTEL_COMPILE_TOOLS_V1=%compile_tools_dir%
)
set COMPILE_TOOLS_PATH=%QUECTEL_COMPILE_TOOLS_V1%;%QUECTEL_COMPILE_TOOLS_V1%\ARM_Compiler_5\bin;%QUECTEL_COMPILE_TOOLS_V1%\Perl\site\bin;%QUECTEL_COMPILE_TOOLS_V1%\Perl\bin;%QUECTEL_COMPILE_TOOLS_V1%\gnumake;%PATH%;
if "%COMPILE_ENV_SET_FLAG%"=="" echo --------------set compile tools path------------------- && set PATH=%COMPILE_TOOLS_PATH% && set COMPILE_ENV_SET_FLAG=done
set ARMLMD_LICENSE_FILE=%QUECTEL_COMPILE_TOOLS_V1%\license.dat
MODE con: COLS=150 LINES=600
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=USE_LCD
set TARGET_SUFFIX=
set CHIP_TYPE=CRANEL_SINGLESIM
set QUECTEL_PROJ=OCPU
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
:: enable/disable charge function
:: DMCHAGE=disable will disable charge function
:: DMCHAGE=enable will enable charge function
set DMCHAGE=disable
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* NO_LCD ***********************************************
::
::********************************************************************************************
::START
gnumake clean
gnumake feedback
gnumake
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
gnumake clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,94 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
::设置DOC窗口的尺寸,COLS---列数; LINES--行数
MODE con: COLS=200 LINES=6000
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=LCD_DUMMY_MCU
set TARGET_SUFFIX=_dummy_mcu
set CHIP_TYPE=CRANE
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* dummy ***********************************************
::
::********************************************************************************************
::START
make clean
make
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
make clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,97 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
::设置DOC窗口的尺寸,COLS---列数; LINES--行数
MODE con: COLS=200 LINES=6000
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=NO_LCD
set TARGET_SUFFIX=_no_lcd
set CHIP_TYPE=CRANE
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
:: enable/disable charge function
:: DMCHAGE=disable will disable charge function
:: DMCHAGE=enable will enable charge function
set DMCHAGE=disable
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* NO_LCD ***********************************************
::
::********************************************************************************************
::START
make clean
make
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
make clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,97 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
::设置DOC窗口的尺寸,COLS---列数; LINES--行数
MODE con: COLS=200 LINES=6000
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=NO_LCD
set TARGET_SUFFIX=_no_lcd
set CHIP_TYPE=CRANEL
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
:: enable/disable charge function
:: DMCHAGE=disable will disable charge function
:: DMCHAGE=enable will enable charge function
set DMCHAGE=disable
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* NO_LCD ***********************************************
::
::********************************************************************************************
::START
make clean
make
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
make clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,97 @@
::Note: must excute build_logo.bat in DS-5 env.
::devide by LCD_TYPE
::naming rule: [logo][suffix].bin
:: suffix including:
:: (1) _no_lcd
:: (2) lcd_type
@echo off
::设置DOC窗口的尺寸,COLS---列数; LINES--行数
MODE con: COLS=200 LINES=6000
::config parameters
::------------------------------------------------------------------------
::[PARAMETER1] -- directory info
set DIR_RELEASE=..\release
set DIR_README_LOGO=..
::[PARAMETER2] -- image prefix
set TARGET_PREFIX=logo
::[PARAMETER3] -- MODULE
set SMALL_CODE=LOGO
set LCD_TYPE=NO_LCD
set TARGET_SUFFIX=_no_lcd_single_sim
set CHIP_TYPE=CRANEL_SINGLESIM
::[PARAMETER4] -- FUNCTION SCRIPT
set COMPRESS_BAT_SCRIPT=asr_compressed_script.bat
::variable to control logo*.bin compressed or not
::TRUE or FALSE
set BUILD_COMPRESSED_LOGO=TRUE
::[PARAMETER5] -- release image name
set TARGET_BAT=%TARGET_PREFIX%%TARGET_SUFFIX%
::------------------------------------------------------------------------
:: enable/disable charge function
:: DMCHAGE=disable will disable charge function
:: DMCHAGE=enable will enable charge function
set DMCHAGE=disable
::create release directory in logo directory
if not exist %DIR_RELEASE% md %DIR_RELEASE%
::create subdirectory logo_axf_map in .\release directory
if not exist %DIR_RELEASE%\%TARGET_PREFIX%_axf_map md %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
del /s /q /f %DIR_RELEASE%\*
::copy readme_logo.txt
copy /Y %DIR_README_LOGO%\readme_logo.txt %DIR_RELEASE%\
::goto START
::************************************* NO_LCD ***********************************************
::
::********************************************************************************************
::START
make clean
make
if not exist .\%TARGET_BAT%.bin goto ERROR
if "%BUILD_COMPRESSED_LOGO%"=="TRUE" (
if exist %COMPRESS_BAT_SCRIPT% (
echo %COMPRESS_BAT_SCRIPT% is exist, and compress %TARGET_PREFIX%.bin
call %COMPRESS_BAT_SCRIPT%
make handle_after_compress
rename *%TARGET_PREFIX%*.bin %TARGET_BAT%.bin
) else (
echo %COMPRESS_BAT_SCRIPT% is not exist, not compress logo.bin
)
) else (
echo build no compress logo*.bin
)
copy /Y %TARGET_PREFIX%*.bin %DIR_RELEASE%\
copy /Y %TARGET_PREFIX%*axf %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
copy /Y %TARGET_PREFIX%*map %DIR_RELEASE%\%TARGET_PREFIX%_axf_map
::check file exist in release?
if not exist %DIR_RELEASE%\%TARGET_BAT%.bin goto ERROR
goto SUCCESS
:ERROR
::make clean
echo ****************************************************************
echo *********************** BUILD ERROR **************************
echo ****************************************************************
goto END
:SUCCESS
make clean
echo ****************************************************************
echo *********************** BUILD SUCCESS ************************
echo ****************************************************************
:END
@@ -0,0 +1,91 @@
@echo off
::设置DOC窗口的尺寸,COLS---列数; LINES--行数
MODE con: COLS=200 LINES=6000
::启动变量延迟
setlocal ENABLEDELAYEDEXPANSION
::NOTE
::logo_script_list.csv中,可以添加客户定制的编译脚本
set logo_lunch_file=logo_script_list.csv
echo LOGO BUILD SCRIPT TO CHOOSE
echo ----+-------------------------------------------------------------+---------------------------------------
echo NUM + SCRIPT + DESCRIPTION
echo ----+-------------------------------------------------------------+---------------------------------------
for %%i in (%logo_lunch_file%) do (
for /f "tokens=1-3 delims=," %%a in (%%i) do (
set "lunch_a= %%a "
set "lunch_b=+ %%b "
set "lunch_c=+ %%c"
echo !lunch_a:~0,3! !lunch_b:~0,61! !lunch_c!
)
)
echo ----------------------------------------------------------------------------------------------------------
::根据用户输入的数字或者参数,选择对应的脚本
set parammeter=%1
if "%parammeter%"=="" (
set /p logo_lunch_choose_num="> input your target build script NUM: "
) else (
echo user input parameter is %parammeter%
set logo_lunch_choose_num=%parammeter%
)
for %%j in (%logo_lunch_file%) do (
for /f "tokens=1-3 delims=," %%a in (%%j) do (
set "user_input_num=%logo_lunch_choose_num%"
if "%%a" == "%logo_lunch_choose_num%" (
set LOGO_LUNCH_TARGET_SCRIPT=%%b
set LOGO_LUNCH_DESCRIPTION=%%c
)
)
)
::打印用户使用的编译脚本详细信息
echo USER CHOOSE, please review!
::如果用户输入数字错误,提示如下信息
if "%LOGO_LUNCH_TARGET_SCRIPT%"=="" (
echo ERROR: ** The input number: [%logo_lunch_choose_num%] not exist in %logo_lunch_file%.
echo Please refer to the following table or %logo_lunch_file%
goto EOF
)
echo TARGET_SCRIPT :%LOGO_LUNCH_TARGET_SCRIPT%
echo DESCRIPTION :%LOGO_LUNCH_DESCRIPTION%
::开始编译
echo GOING TO CALL TARGET SCRIPT
goto REMOVE_DELAY
for /L %%a in (2,-1,0) do (
set /p a=..<nul
@ping 127.0.0.1 > nul
)
:REMOVE_DELAY
::清除build目录下的文件的只读属性
attrib ..\build\*.* -r /s
call m_tee %LOGO_LUNCH_TARGET_SCRIPT%
:EOF
@@ -0,0 +1,19 @@
NUM,SCRIPT,LCD,FOTA,DESCRIPTION
1,build_logo_no_lcd.bat,[no_lcd],customer_made
2,build_logo_st7789v_mcu.bat,[st7789v_Mcu],customer_made
3,build_logo_st7789v_spi_3w_1l_1i.bat,[st7789v_Spi_3Wire_1Lan_1If],customer_made
4,build_logo_st7789v_spi_3w_2l_1i.bat,[st7789v_Spi_3Wire_2Lan_1If],customer_made
5,build_logo_st7789v_spi_4w_1l_1i.bat,[st7789v_Spi_4Wire_1Lan_1If],customer_made
6,build_logo_st7789v_spi_4w_1l_2i.bat,[st7789v_Spi_4Wire_1Lan_2If],customer_made
7,build_logo_gc9305_mcu.bat,[gc9305_Mcu],customer_made
8,build_logo_gc9305_spi_3w_1l_1i.bat,[gc9305_Spi_3Wire_1Lan_1If],customer_made
9,build_logo_gc9305_spi_3w_2l_1i.bat,[gc9305_Spi_3Wire_2Lan_1If],customer_made
10,build_logo_gc9305_spi_4w_1l_1i.bat,[gc9305_Spi_4Wire_1Lan_1If],customer_made
11,build_logo_gc9306_spi_3w_1l_1i.bat,[gc9306_Spi_3Wire_1Lan_1If],customer_made
12,build_logo_gc9306_spi_3w_2l_1i.bat,[gc9306_Spi_3Wire_2Lan_1If],customer_made
13,build_logo_gc9306_spi_4w_1l_1i.bat,[gc9306_Spi_4Wire_1Lan_1If],customer_made
14,build_logo_dummy_mcu.bat,[dummy_Mcu],customer_made
15,build_logo_dummy_spi_3w_2l_1i.bat,[dummy_Spi_3Wire_2Lan_1If],customer_made
16,build_logo_st7735s_spi_3w_1l_1i.bat,[st7735_Spi_3Wire_1Lan_1If],customer_made
17,build_logo_no_lcd_craneL.bat,[no_lcd],customer_made
18,build_logo_no_lcd_craneL_SingleSim.bat,[no_lcd],customer_made
1 NUM,SCRIPT,LCD,FOTA,DESCRIPTION
2 1,build_logo_no_lcd.bat,[no_lcd],customer_made
3 2,build_logo_st7789v_mcu.bat,[st7789v_Mcu],customer_made
4 3,build_logo_st7789v_spi_3w_1l_1i.bat,[st7789v_Spi_3Wire_1Lan_1If],customer_made
5 4,build_logo_st7789v_spi_3w_2l_1i.bat,[st7789v_Spi_3Wire_2Lan_1If],customer_made
6 5,build_logo_st7789v_spi_4w_1l_1i.bat,[st7789v_Spi_4Wire_1Lan_1If],customer_made
7 6,build_logo_st7789v_spi_4w_1l_2i.bat,[st7789v_Spi_4Wire_1Lan_2If],customer_made
8 7,build_logo_gc9305_mcu.bat,[gc9305_Mcu],customer_made
9 8,build_logo_gc9305_spi_3w_1l_1i.bat,[gc9305_Spi_3Wire_1Lan_1If],customer_made
10 9,build_logo_gc9305_spi_3w_2l_1i.bat,[gc9305_Spi_3Wire_2Lan_1If],customer_made
11 10,build_logo_gc9305_spi_4w_1l_1i.bat,[gc9305_Spi_4Wire_1Lan_1If],customer_made
12 11,build_logo_gc9306_spi_3w_1l_1i.bat,[gc9306_Spi_3Wire_1Lan_1If],customer_made
13 12,build_logo_gc9306_spi_3w_2l_1i.bat,[gc9306_Spi_3Wire_2Lan_1If],customer_made
14 13,build_logo_gc9306_spi_4w_1l_1i.bat,[gc9306_Spi_4Wire_1Lan_1If],customer_made
15 14,build_logo_dummy_mcu.bat,[dummy_Mcu],customer_made
16 15,build_logo_dummy_spi_3w_2l_1i.bat,[dummy_Spi_3Wire_2Lan_1If],customer_made
17 16,build_logo_st7735s_spi_3w_1l_1i.bat,[st7735_Spi_3Wire_1Lan_1If],customer_made
18 17,build_logo_no_lcd_craneL.bat,[no_lcd],customer_made
19 18,build_logo_no_lcd_craneL_SingleSim.bat,[no_lcd],customer_made
Binary file not shown.