feat: Add rfid feature and .gitignore file

This commit is contained in:
lmx
2025-11-28 16:25:35 +08:00
parent 818e8c3778
commit ade4b0a1f8
1244 changed files with 342105 additions and 0 deletions

1
cpu/br28/tools/AC69.key Normal file
View File

@ -0,0 +1 @@
1cfdc466ec927dbedd4d12447b6bbff1da1bd6ddb6b375ecda1bd6ddb6b375ec950b1206

View File

@ -0,0 +1,120 @@
local lang_en = {
["打开EQ工具"]="Open EQ Tool",
["打开音效配置工具新EQ工具"]="Open Audio Effect Config Tool (New EQ)",
["打开下载目录"]="Open Download Directory",
["显示原理图"]="Show Schematic Design",
["编译前配置工具"]="Pre-compiling Config Tool",
["编辑FW文件"]="FW Editing Tools",
["应用信息AC701N-SDK"]="Application: AC701N-SDK",
["内置触摸调试工具"]="Builtin Touching Debug Tool",
["调音工具"]="Audio Config Tool",
["检查依赖的软件包是否更新"]="Check Update",
["配置工具"]="Config Tool",
["生成配置\n(生成 cfg_tool.bin)"]="Generate Config\n(generate cfg_tool.bin)",
["配置音效\n(生成 eq_cfg_hw.bin)"]="Generate Audio Effect\n(generate eq_cfg_hw.bin)",
["编辑FW/UFW中蓝牙名替换资源"]="Edit FW/UFW (BT Name, Resources)",
["打开"]="Open",
["路径"]="Path",
};
cfg:setTranslate("en", lang_en);
local rootDir = cfg.rootDir;
local pkgman = rootDir .. "/pkgman.exe";
local req_pkgs = {"eq", "efftool", "sdktool", "luaconfig", "3rd", "sdkaudiocvt", "ancdesigner"};
local check_prog = {pkgman};
local missing_pkgs = {};
for k, v in pairs(req_pkgs) do
if cfg:utilsGetPkg(v) == nil then
table.insert(missing_pkgs, v)
end
end
for k, v in pairs(missing_pkgs) do table.insert(check_prog, v) end
if #missing_pkgs ~= 0 then
if (cfg:runProg(check_prog) ~= 0) then
cfg:msgBox("warn", "软件包不是最新,可能会出现问题");
end
end
local sdktool = rootDir .. '/' .. cfg:utilsGetPkg("sdktool").run;
local luaconfig = rootDir .. '/' .. cfg:utilsGetPkg("luaconfig").run;
local projdir = cfg.dir .. '/download/';
local efftool = rootDir .. '/' .. cfg:utilsGetPkg("efftool").run;
local ancdesigner = rootDir .. '/' .. cfg:utilsGetPkg("ancdesigner").run;
local title = "AC701N-SDK";
local default_bin_path = cfg.dir .. '/cfg_tool.bin';
local default_tone_path = cfg.dir .. '/tone.cfg';
local cfgtool_entry_view = cfg:stEntry(":/uires/icon_settle.png",
"配置工具", "生成配置\n(生成 cfg_tool.bin)", nil,
cfg:stButton2("打开", "", "main", function ()
cfg:runProgNoWait({luaconfig,
'-u', 'earphone-1.2.0', '-e',
'-p', cfg.dir,
'-r', rootDir,
'-b', default_bin_path,
'-t', default_tone_path});
end));
local efftool_entry_view = cfg:stEntry(":/uires/icon_eq.png",
"调音工具", "配置音效\n(生成 eq_cfg_hw.bin)", nil,
cfg:stButton2("打开", "", "main", function ()
cfg:runProgNoWait({efftool, '--type', 'eq', '--async-serial'});
end));
local ancdesigner_entry_view = cfg:stEntry(":/uires/icon_eq.png",
"ANC Designer", "ANC 调试工具\n(生成 anc_gains.bin、anc_coeff.bin 等)", nil,
cfg:stButton2("打开", "", "main", function ()
cfg:runProgNoWait({ancdesigner});
end));
local sdktool_entry_view = cfg:stEntry(":/uires/icon_settle.png",
"编辑FW文件", "编辑FW/UFW中蓝牙名替换资源", nil,
cfg:stButton2("打开", "", "main", function ()
cfg:runProgNoWait({sdktool});
end));
local touch_debug_entry_view = cfg:stEntry(":/uires/icon_settle.png",
"内置触摸调试工具", "", nil,
cfg:stButton2("打开", "", "main", function ()
cfg:runProgNoWait({efftool, '--type', 'touch_debug'});
end));
local check_allupdate_btn = cfg:stButton2("检查依赖的软件包是否更新", "", "secondary", function ()
local check_prog = {pkgman};
for k, v in pairs(req_pkgs) do table.insert(check_prog, v) end
if (cfg:runProg(check_prog) ~= 0) then
if(cfg.lang == "zh") then
cfg:msgBox("warn", "软件包不是最新,可能会出现问题");
else
cfg:msgBox("warn", "software Packages are not up-to-date and may have problems");
end
else
if(cfg.lang == "zh") then
cfg:msgBox("info", "已经是最新");
else
cfg:msgBox("info", "software Packages are up-to-date");
end
end
end);
local layout = cfg:vBox{ cfg:stGroup(title, cfg:stHScroll ( cfg:vBox {
cfgtool_entry_view,
sdktool_entry_view,
efftool_entry_view,
ancdesigner_entry_view,
touch_debug_entry_view,
check_allupdate_btn,
}))};
cfg:addKeyInfo("jlxproj.width", "600");
cfg:addKeyInfo("jlxproj.height", "700");
cfg:addKeyInfo("jlxproj.title", title);
cfg:setLayout(layout)

0
cpu/br28/tools/aac.bin Normal file
View File

0
cpu/br28/tools/aec.bin Normal file
View File

Binary file not shown.

Binary file not shown.

BIN
cpu/br28/tools/app.bin Normal file

Binary file not shown.

0
cpu/br28/tools/aptx.bin Normal file
View File

Binary file not shown.

Binary file not shown.

BIN
cpu/br28/tools/cfg_tool.bin Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -0,0 +1,64 @@
@echo off
Setlocal enabledelayedexpansion
@echo ********************************************************************************
@echo SDK BR28
@echo ********************************************************************************
@echo %date%
set KEY_FILE=-key AC69.key
cd /d %~dp0
set OBJDUMP=C:\JL\pi32\bin\llvm-objdump.exe
set OBJCOPY=C:\JL\pi32\bin\llvm-objcopy.exe
set ELFFILE=sdk.elf
set bankfiles=
set LZ4_PACKET=.\lz4_packet.exe
REM %OBJDUMP% -D -address-mask=0x1ffffff -print-dbg $1.elf > $1.lst
%OBJDUMP% -D -address-mask=0x1ffffff -print-dbg sdk.elf > sdk.lst
%OBJCOPY% -O binary -j .text %ELFFILE% text.bin
%OBJCOPY% -O binary -j .data %ELFFILE% data.bin
%OBJCOPY% -O binary -j .data_code %ELFFILE% data_code.bin
%OBJCOPY% -O binary -j .overlay_aec %ELFFILE% aec.bin
%OBJCOPY% -O binary -j .overlay_aac %ELFFILE% aac.bin
%OBJCOPY% -O binary -j .overlay_aptx %ELFFILE% aptx.bin
%OBJCOPY% -O binary -j .common %ELFFILE% common.bin
for /L %%i in (0,1,20) do (
%OBJCOPY% -O binary -j .overlay_bank%%i %ELFFILE% bank%%i.bin
set bankfiles=!bankfiles! bank%%i.bin 0x0
)
%LZ4_PACKET% -dict text.bin -input common.bin 0 aec.bin 0 aac.bin 0 !bankfiles! -o bank.bin
%OBJDUMP% -section-headers -address-mask=0x1ffffff %ELFFILE%
REM %OBJDUMP% -t %ELFFILE% > symbol_tbl.txt
copy /b text.bin + data.bin + mov_slot.bin + data_code.bin + aec.bin + aac.bin + psr_data_code.bin app.bin
del !bankfiles! common.bin text.bin data.bin bank.bin
copy eq_cfg_hw_less.bin eq_cfg_hw.bin
call download/earphone/download_app_ota.bat

201
cpu/br28/tools/download.c Normal file
View File

@ -0,0 +1,201 @@
// *INDENT-OFF*
#include "app_config.h"
#ifdef __SHELL__
##!/bin/sh
${OBJDUMP} -D -address-mask=0x7ffffff -print-imm-hex -print-dbg -mcpu=r3 $1.elf > $1.lst
${OBJCOPY} -O binary -j .text $1.elf text.bin
${OBJCOPY} -O binary -j .data $1.elf data.bin
${OBJCOPY} -O binary -j .moveable_slot $1.elf mov_slot.bin
${OBJCOPY} -O binary -j .data_code $1.elf data_code.bin
${OBJCOPY} -O binary -j .overlay_aec $1.elf aec.bin
${OBJCOPY} -O binary -j .overlay_aac $1.elf aac.bin
${OBJCOPY} -O binary -j .psr_data_code $1.elf psr_data_code.bin
${OBJDUMP} -section-headers -address-mask=0x7ffffff $1.elf
${OBJSIZEDUMP} -lite -skip-zero -enable-dbg-info $1.elf | sort -k 1 > symbol_tbl.txt
cat text.bin data.bin mov_slot.bin data_code.bin aec.bin aac.bin psr_data_code.bin > app.bin
/* if [ -f version ]; then */
/* host-client -project ${NICKNAME}$2 -f app.bin version $1.elf p11_code.bin br28loader.bin br28loader.uart uboot.boot uboot.boot_debug ota.bin ota_debug.bin isd_config.ini */
/* else */
/* host-client -project ${NICKNAME}$2 -f app.bin $1.elf p11_code.bin br28loader.bin br28loader.uart uboot.boot uboot.boot_debug ota.bin ota_debug.bin isd_config.ini */
/* fi */
#if defined(CONFIG_EARPHONE_CASE_ENABLE)
#if TCFG_DRC_ENABLE
#if defined(TCFG_AUDIO_HEARING_AID_ENABLE) && TCFG_AUDIO_HEARING_AID_ENABLE && defined(AUDIO_VBASS_CONFIG)&&AUDIO_VBASS_CONFIG
cp eq_cfg_hw_aid_vbass.bin eq_cfg_hw.bin
#elif defined(TCFG_AUDIO_HEARING_AID_ENABLE) && TCFG_AUDIO_HEARING_AID_ENABLE
cp eq_cfg_hw_wdrc.bin eq_cfg_hw.bin
#elif defined(AUDIO_VBASS_CONFIG)&&AUDIO_VBASS_CONFIG
cp eq_cfg_hw_drc_vbass.bin eq_cfg_hw.bin
#else
cp eq_cfg_hw_full.bin eq_cfg_hw.bin
#endif /*TCFG_AUDIO_HEARING_AID_ENABLE*/
#else
#if defined(AUDIO_VBASS_CONFIG)&&AUDIO_VBASS_CONFIG
cp eq_cfg_hw_vbass.bin eq_cfg_hw.bin
#else
cp eq_cfg_hw_less.bin eq_cfg_hw.bin
#endif
#endif
#else
#if defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_REVERB)&& TCFG_AUDIO_MIC_EFFECT_POST_EQ_ENABLE
cp ./effect_file/mic_effect_reverb_full.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_REVERB)
cp ./effect_file/mic_effect_reverb.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_ECHO)&& TCFG_AUDIO_MIC_EFFECT_POST_EQ_ENABLE
cp ./effect_file/mic_effect_echo_full.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_ECHO)
cp ./effect_file/mic_effect_echo.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_REVERB_ECHO)
cp ./effect_file/mic_effect_full.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_MEGAPHONE)
cp ./effect_file/mic_effect_megaphone.bin eq_cfg_hw.bin
#elif defined(SOUND_TRACK_2_P_X_CH_CONFIG) &&SOUND_TRACK_2_P_X_CH_CONFIG&& (TWO_POINT_X_SPECIAL_CONFIG == 0)
cp ./effect_file/music_2to1_2to2.bin eq_cfg_hw.bin
#elif defined(SOUND_TRACK_2_P_X_CH_CONFIG) &&SOUND_TRACK_2_P_X_CH_CONFIG && TWO_POINT_X_SPECIAL_CONFIG
cp ./effect_file/music_2to1_2to2_special.bin eq_cfg_hw.bin
#elif defined(TCFG_DYNAMIC_EQ_ENABLE)&& TCFG_DYNAMIC_EQ_ENABLE && defined(LINEIN_MODE_SOLE_EQ_EN) && LINEIN_MODE_SOLE_EQ_EN
cp ./effect_file/music_advance_linein.bin eq_cfg_hw.bin
#elif defined(TCFG_DYNAMIC_EQ_ENABLE)&& TCFG_DYNAMIC_EQ_ENABLE
cp ./effect_file/music_advance.bin eq_cfg_hw.bin
#elif defined(LINEIN_MODE_SOLE_EQ_EN) && LINEIN_MODE_SOLE_EQ_EN
cp ./effect_file/music_base_linein.bin eq_cfg_hw.bin
#else
cp ./effect_file/music_base.bin eq_cfg_hw.bin
#endif
#endif/*CONFIG_EARPHONE_CASE_ENABLE*/
/opt/utils/strip-ini -i isd_config.ini -o isd_config.ini
if [ -f version ]; then
files="app.bin version $1.elf p11_code.bin br28loader.bin br28loader.uart uboot.boot uboot.boot_debug ota.bin ota_debug.bin isd_config.ini"
else
files="app.bin $1.elf p11_code.bin br28loader.bin br28loader.uart uboot.boot uboot.boot_debug ota.bin ota_debug.bin isd_config.ini"
fi
host-client -project ${NICKNAME}$2_${APP_CASE} -f ${files}
#else
@echo off
Setlocal enabledelayedexpansion
@echo ********************************************************************************
@echo SDK BR28
@echo ********************************************************************************
@echo %date%
set KEY_FILE=-key AC69.key
cd /d %~dp0
set OBJDUMP=C:\JL\pi32\bin\llvm-objdump.exe
set OBJCOPY=C:\JL\pi32\bin\llvm-objcopy.exe
set ELFFILE=sdk.elf
set bankfiles=
set LZ4_PACKET=.\lz4_packet.exe
REM %OBJDUMP% -D -address-mask=0x1ffffff -print-dbg $1.elf > $1.lst
%OBJDUMP% -D -address-mask=0x1ffffff -print-dbg sdk.elf > sdk.lst
%OBJCOPY% -O binary -j .text %ELFFILE% text.bin
%OBJCOPY% -O binary -j .data %ELFFILE% data.bin
%OBJCOPY% -O binary -j .data_code %ELFFILE% data_code.bin
%OBJCOPY% -O binary -j .overlay_aec %ELFFILE% aec.bin
%OBJCOPY% -O binary -j .overlay_aac %ELFFILE% aac.bin
%OBJCOPY% -O binary -j .overlay_aptx %ELFFILE% aptx.bin
%OBJCOPY% -O binary -j .common %ELFFILE% common.bin
for /L %%i in (0,1,20) do (
%OBJCOPY% -O binary -j .overlay_bank%%i %ELFFILE% bank%%i.bin
set bankfiles=!bankfiles! bank%%i.bin 0x0
)
%LZ4_PACKET% -dict text.bin -input common.bin 0 aec.bin 0 aac.bin 0 !bankfiles! -o bank.bin
%OBJDUMP% -section-headers -address-mask=0x1ffffff %ELFFILE%
REM %OBJDUMP% -t %ELFFILE% > symbol_tbl.txt
copy /b text.bin + data.bin + mov_slot.bin + data_code.bin + aec.bin + aac.bin + psr_data_code.bin app.bin
del !bankfiles! common.bin text.bin data.bin bank.bin
#if defined(CONFIG_EARPHONE_CASE_ENABLE)
#if TCFG_DRC_ENABLE
#if defined(TCFG_AUDIO_HEARING_AID_ENABLE) && TCFG_AUDIO_HEARING_AID_ENABLE && defined(AUDIO_VBASS_CONFIG)&&AUDIO_VBASS_CONFIG
copy eq_cfg_hw_aid_vbass.bin eq_cfg_hw.bin
#elif defined(TCFG_AUDIO_HEARING_AID_ENABLE) && TCFG_AUDIO_HEARING_AID_ENABLE
copy eq_cfg_hw_wdrc.bin eq_cfg_hw.bin
#elif defined(AUDIO_VBASS_CONFIG)&&AUDIO_VBASS_CONFIG
copy eq_cfg_hw_drc_vbass.bin eq_cfg_hw.bin
#else
copy eq_cfg_hw_full.bin eq_cfg_hw.bin
#endif /*TCFG_AUDIO_HEARING_AID_ENABLE*/
#else
#if defined(AUDIO_VBASS_CONFIG)&&AUDIO_VBASS_CONFIG
copy eq_cfg_hw_vbass.bin eq_cfg_hw.bin
#else
copy eq_cfg_hw_less.bin eq_cfg_hw.bin
#endif
#endif
#else
#if defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_REVERB) && TCFG_AUDIO_MIC_EFFECT_POST_EQ_ENABLE
copy .\effect_file\mic_effect_reverb_full.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_REVERB)
copy .\effect_file\mic_effect_reverb.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_ECHO) && TCFG_AUDIO_MIC_EFFECT_POST_EQ_ENABLE
copy .\effect_file\mic_effect_echo_full.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_ECHO)
copy .\effect_file\mic_effect_echo.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_REVERB_ECHO)
copy .\effect_file\mic_effect_full.bin eq_cfg_hw.bin
#elif defined(TCFG_MIC_EFFECT_ENABLE)&& TCFG_MIC_EFFECT_ENABLE && (TCFG_MIC_EFFECT_SEL == MIC_EFFECT_MEGAPHONE)
copy .\effect_file\mic_effect_megaphone.bin eq_cfg_hw.bin
#elif defined(SOUND_TRACK_2_P_X_CH_CONFIG) &&SOUND_TRACK_2_P_X_CH_CONFIG&& (TWO_POINT_X_SPECIAL_CONFIG == 0)
copy .\effect_file\music_2to1_2to2.bin eq_cfg_hw.bin
#elif defined(SOUND_TRACK_2_P_X_CH_CONFIG) &&SOUND_TRACK_2_P_X_CH_CONFIG && TWO_POINT_X_SPECIAL_CONFIG
copy .\effect_file\music_2to1_2to2_special.bin eq_cfg_hw.bin
#elif defined(TCFG_DYNAMIC_EQ_ENABLE)&& TCFG_DYNAMIC_EQ_ENABLE && defined(LINEIN_MODE_SOLE_EQ_EN) && LINEIN_MODE_SOLE_EQ_EN
copy .\effect_file\music_advance_linein.bin eq_cfg_hw.bin
#elif defined(TCFG_DYNAMIC_EQ_ENABLE)&& TCFG_DYNAMIC_EQ_ENABLE
copy .\effect_file\music_advance.bin eq_cfg_hw.bin
#elif defined(LINEIN_MODE_SOLE_EQ_EN) && LINEIN_MODE_SOLE_EQ_EN
copy .\effect_file\music_base_linein.bin eq_cfg_hw.bin
#else
copy .\effect_file\music_base.bin eq_cfg_hw.bin
#endif
#endif/*CONFIG_EARPHONE_CASE_ENABLE*/
#ifdef CONFIG_WATCH_CASE_ENABLE
call download/watch/download.bat
#elif defined(CONFIG_SOUNDBOX_CASE_ENABLE)
call download/soundbox/download.bat
#elif defined(CONFIG_EARPHONE_CASE_ENABLE)
#if (RCSP_ADV_EN == 0)
call download/earphone/download.bat
#else
call download/earphone/download_app_ota.bat
#endif
#elif defined(CONFIG_HID_CASE_ENABLE) ||defined(CONFIG_SPP_AND_LE_CASE_ENABLE)||defined(CONFIG_MESH_CASE_ENABLE)||defined(CONFIG_DONGLE_CASE_ENABLE) //数传
call download/data_trans/download.bat
#else
//to do other case
#endif //endif app_case
#endif

View File

@ -0,0 +1 @@
64F3350FE2590FAF79755623B7E159CE83FAD97C34014E5EB2B528F6D6C2DABAB3B7C88C

View File

@ -0,0 +1 @@
1cfdc466ec927dbedd4d12447b6bbff1da1bd6ddb6b375ecda1bd6ddb6b375ec950b1206

View File

@ -0,0 +1 @@
39209e0c95b837ce6cd626f6b1d566a6a5fed6fa11cd451ba5fed6fa11cd451b9a3f2514

View File

@ -0,0 +1,49 @@
@echo off
cd %~dp0
copy ..\..\script.ver .
copy ..\..\tone.cfg .
copy ..\..\p11_code.bin .
copy ..\..\br28loader.bin .
copy ..\..\ota.bin .
copy ..\..\anc_coeff.bin .
copy ..\..\anc_gains.bin .
..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res ..\..\cfg_tool.bin tone.cfg p11_code.bin ..\..\eq_cfg_hw.bin -uboot_compress -key AC69.key -format all -key 646-AC690X-7603.key
@REM..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br34 -boot 0x20000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin ..\..\cfg_tool.bin -res tone.cfg kws_command.bin p11_code.bin -uboot_compress
:: -format all
::-reboot 2500
@rem ɾ<><C9BE><EFBFBD><EFBFBD>ʱ<EFBFBD>ļ<EFBFBD>-format all
if exist *.mp3 del *.mp3
if exist *.PIX del *.PIX
if exist *.TAB del *.TAB
if exist *.res del *.res
if exist *.sty del *.sty
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
copy jl_isd.ufw update.ufw
del jl_isd.ufw
@REM <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
::ufw_maker.exe -chip AC800X %ADD_KEY% -output config.ufw -res bt_cfg.cfg
::IF EXIST jl_696x.bin del jl_696x.bin
if exist script.ver del script.ver
if exist tone.cfg del tone.cfg
if exist p11_code.bin del p11_code.bin
if exist br28loader.bin del br28loader.bin
if exist anc_coeff.bin del anc_coeff.bin
if exist anc_gains.bin del anc_gains.bin
@rem <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
@rem -format vm //<2F><><EFBFBD><EFBFBD>VM <20><><EFBFBD><EFBFBD>
@rem -format cfg //<2F><><EFBFBD><EFBFBD>BT CFG <20><><EFBFBD><EFBFBD>
@rem -format 0x3f0-2 //<2F><>ʾ<EFBFBD>ӵ<EFBFBD> 0x3f0 <20><> sector <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 <20><> sector(<28><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ16<31><36><EFBFBD>ƻ<EFBFBD>10<31><30><EFBFBD>ƶ<EFBFBD><C6B6>ɣ<EFBFBD><C9A3>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10<31><30><EFBFBD><EFBFBD>)
ping /n 2 127.1>null
IF EXIST null del null

View File

@ -0,0 +1,49 @@
@echo off
cd %~dp0
copy ..\..\script.ver .
copy ..\..\tone.cfg .
copy ..\..\p11_code.bin .
copy ..\..\br28loader.bin .
copy ..\..\ota.bin .
copy ..\..\anc_coeff.bin .
copy ..\..\anc_gains.bin .
..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res ..\..\cfg_tool.bin tone.cfg p11_code.bin ..\..\eq_cfg_hw.bin -uboot_compress -key 646-AC690X-7603.key
@REM..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br34 -boot 0x20000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin ..\..\cfg_tool.bin -res tone.cfg kws_command.bin p11_code.bin -uboot_compress
:: -format all
::-reboot 2500
@rem ɾ<><C9BE><EFBFBD><EFBFBD>ʱ<EFBFBD>ļ<EFBFBD>-format all
if exist *.mp3 del *.mp3
if exist *.PIX del *.PIX
if exist *.TAB del *.TAB
if exist *.res del *.res
if exist *.sty del *.sty
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
copy jl_isd.ufw update.ufw
del jl_isd.ufw
@REM <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
::ufw_maker.exe -chip AC800X %ADD_KEY% -output config.ufw -res bt_cfg.cfg
::IF EXIST jl_696x.bin del jl_696x.bin
if exist script.ver del script.ver
if exist tone.cfg del tone.cfg
if exist p11_code.bin del p11_code.bin
if exist br28loader.bin del br28loader.bin
if exist anc_coeff.bin del anc_coeff.bin
if exist anc_gains.bin del anc_gains.bin
@rem <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
@rem -format vm //<2F><><EFBFBD><EFBFBD>VM <20><><EFBFBD><EFBFBD>
@rem -format cfg //<2F><><EFBFBD><EFBFBD>BT CFG <20><><EFBFBD><EFBFBD>
@rem -format 0x3f0-2 //<2F><>ʾ<EFBFBD>ӵ<EFBFBD> 0x3f0 <20><> sector <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 <20><> sector(<28><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ16<31><36><EFBFBD>ƻ<EFBFBD>10<31><30><EFBFBD>ƶ<EFBFBD><C6B6>ɣ<EFBFBD><C9A3>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10<31><30><EFBFBD><EFBFBD>)
ping /n 2 127.1>null
IF EXIST null del null

View File

@ -0,0 +1,49 @@
@echo off
cd %~dp0
copy ..\..\script.ver .
copy ..\..\tone.cfg .
copy ..\..\p11_code.bin .
copy ..\..\br28loader.bin .
copy ..\..\ota.bin .
copy ..\..\anc_coeff.bin .
copy ..\..\anc_gains.bin .
:: -format all -key AC690X-8029.key
..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res ..\..\cfg_tool.bin tone.cfg p11_code.bin ..\..\eq_cfg_hw.bin -uboot_compress
@REM..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br34 -boot 0x20000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin ..\..\cfg_tool.bin -res tone.cfg kws_command.bin p11_code.bin -uboot_compress
:: -format all
::-reboot 2500
@rem ɾ ʱ ļ -format all
if exist *.mp3 del *.mp3
if exist *.PIX del *.PIX
if exist *.TAB del *.TAB
if exist *.res del *.res
if exist *.sty del *.sty
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
copy jl_isd.ufw update.ufw
del jl_isd.ufw
@REM ļ ļ
::ufw_maker.exe -chip AC800X %ADD_KEY% -output config.ufw -res bt_cfg.cfg
::IF EXIST jl_696x.bin del jl_696x.bin
if exist script.ver del script.ver
if exist tone.cfg del tone.cfg
if exist p11_code.bin del p11_code.bin
if exist br28loader.bin del br28loader.bin
if exist anc_coeff.bin del anc_coeff.bin
if exist anc_gains.bin del anc_gains.bin
@rem ˵
@rem -format vm // VM
@rem -format cfg // BT CFG
@rem -format 0x3f0-2 // ʾ ӵ 0x3f0 sector ʼ 2 sector( һ Ϊ16 ƻ 10 ƶ ɣ ڶ 10 )
ping /n 2 127.1>null
IF EXIST null del null

View File

@ -0,0 +1,50 @@
@echo off
cd %~dp0
copy ..\..\script.ver .
copy ..\..\tone.cfg .
copy ..\..\p11_code.bin .
copy ..\..\br28loader.bin .
copy ..\..\ota.bin .
copy ..\..\anc_coeff.bin .
copy ..\..\anc_gains.bin .
:: -format all -key AC690X-8029.key
..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res ..\..\cfg_tool.bin tone.cfg p11_code.bin ..\..\eq_cfg_hw.bin -uboot_compress -key AC690X-8029.key
@REM..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br34 -boot 0x20000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin ..\..\cfg_tool.bin -res tone.cfg kws_command.bin p11_code.bin -uboot_compress
:: -format all
::-reboot 2500
@rem ɾ ʱ ļ -format all
if exist *.mp3 del *.mp3
if exist *.PIX del *.PIX
if exist *.TAB del *.TAB
if exist *.res del *.res
if exist *.sty del *.sty
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
copy jl_isd.ufw update.ufw
del jl_isd.ufw
@REM ļ ļ
::ufw_maker.exe -chip AC800X %ADD_KEY% -output config.ufw -res bt_cfg.cfg
::IF EXIST jl_696x.bin del jl_696x.bin
if exist script.ver del script.ver
if exist tone.cfg del tone.cfg
if exist p11_code.bin del p11_code.bin
if exist br28loader.bin del br28loader.bin
if exist anc_coeff.bin del anc_coeff.bin
if exist anc_gains.bin del anc_gains.bin
@rem ˵
@rem -format vm // VM
@rem -format cfg // BT CFG
@rem -format 0x3f0-2 // ʾ ӵ 0x3f0 sector ʼ 2 sector( һ Ϊ16 ƻ 10 ƶ ɣ ڶ 10 )
ping /n 2 127.1>null
IF EXIST null del null

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,47 @@
@echo off
cd %~dp0
copy ..\..\script.ver .
copy ..\..\tone.cfg .
copy ..\..\p11_code.bin .
copy ..\..\br28loader.bin .
..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res tone.cfg ..\..\cfg_tool.bin ..\..\eq_cfg_hw.bin p11_code.bin -uboot_compress
:: -format all
::-reboot 2500
@rem ɾ<><C9BE><EFBFBD><EFBFBD>ʱ<EFBFBD>ļ<EFBFBD>-format all
if exist *.mp3 del *.mp3
if exist *.PIX del *.PIX
if exist *.TAB del *.TAB
if exist *.res del *.res
if exist *.sty del *.sty
@rem <20><><EFBFBD>ɹ̼<C9B9><CCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
..\..\fw_add.exe -noenc -fw jl_isd.fw -add ..\..\ota.bin -type 100 -out jl_isd.fw
@rem <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýű<C3BD><C5B1>İ汾<C4B0><E6B1BE>Ϣ<EFBFBD><CFA2> FW <20>ļ<EFBFBD><C4BC><EFBFBD>
..\..\fw_add.exe -noenc -fw jl_isd.fw -add script.ver -out jl_isd.fw
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
copy jl_isd.ufw update.ufw
del jl_isd.ufw
@REM <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
::ufw_maker.exe -chip AC800X %ADD_KEY% -output config.ufw -res bt_cfg.cfg
::IF EXIST jl_696x.bin del jl_696x.bin
if exist script.ver del script.ver
if exist tone.cfg del tone.cfg
if exist p11_code.bin del p11_code.bin
if exist br28loader.bin del br28loader.bin
@rem <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
@rem -format vm //<2F><><EFBFBD><EFBFBD>VM <20><><EFBFBD><EFBFBD>
@rem -format cfg //<2F><><EFBFBD><EFBFBD>BT CFG <20><><EFBFBD><EFBFBD>
@rem -format 0x3f0-2 //<2F><>ʾ<EFBFBD>ӵ<EFBFBD> 0x3f0 <20><> sector <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 <20><> sector(<28><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ16<31><36><EFBFBD>ƻ<EFBFBD>10<31><30><EFBFBD>ƶ<EFBFBD><C6B6>ɣ<EFBFBD><C9A3>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10<31><30><EFBFBD><EFBFBD>)
ping /n 2 127.1>null
IF EXIST null del null

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
cpu/br28/tools/fw_add Normal file

Binary file not shown.

BIN
cpu/br28/tools/fw_add.exe Normal file

Binary file not shown.

View File

@ -0,0 +1,81 @@
[EXTRA_CFG_PARAM]
BR22_TWS_DB = YES;
FLASH_SIZE = 0x100000;
BR22_TWS_VERSION = 0;
FORCE_4K_ALIGN = YES;
SPECIAL_OPT = 0;
CHIP_NAME = AC701N;
ENTRY = 0x6000100;
PID = AC701N;
VID = 0.01;
SDK_VERSION = JL701N_V1.6.1;
RESERVED_OPT = 0;
UFW_ELEMENT = 0x10 - 0x0, 0x1 - 0x0;
DOWNLOAD_MODEL = USB;
SERIAL_DEVICE_NAME = JlVirtualJtagSerial;
SERIAL_BARD_RATE = 1000000;
SERIAL_CMD_OPT = 2;
SERIAL_CMD_RATE = 100;
SERIAL_CMD_RES = 0;
SERIAL_INIT_BAUD_RATE = 9600;
LOADER_BAUD_RATE = 1000000;
LOADER_ASK_BAUD_RATE = 1000000;
BEFORE_LOADER_WAIT_TIME = 150;
SERIAL_SEND_KEY = YES;
[CHIP_VERSION]
SUPPORTED_LIST = P, B;
[SYS_CFG_PARAM]
SPI = 2_3_0_0;
UTTX = PB02;
UTBD = 1000000;
UTRX = PP00;
[FW_ADDITIONAL]
FILE_LIST = (file = ota.bin: type = 100);
[RESERVED_CONFIG]
BTIF_ADR = AUTO;
BTIF_LEN = 0x1000;
BTIF_OPT = 1;
PRCT_ADR = 0;
PRCT_LEN = CODE_LEN;
PRCT_OPT = 2;
VM_ADR = 0;
VM_LEN = 8K;
VM_OPT = 1;
[BURNER_CONFIG]
SIZE = 32;

View File

@ -0,0 +1,431 @@
#include "board_config.h"
#define _CAT2(a,b) a ## _ ## b
#define CAT2(a,b) _CAT2(a,b)
#define _CAT3(a,b,c) a ## _ ## b ## _ ## c
#define CAT3(a,b,c) _CAT3(a,b,c)
#define _CAT4(a,b,c,d) a ## _ ## b ## _ ## c ## _ ## d
#define CAT4(a,b,c,d) _CAT4(a,b,c,d)
#ifndef CONFIG_DOWNLOAD_MODEL
#define CONFIG_DOWNLOAD_MODEL USB //下载模式选择可选配置USB\SERIAL
#endif
#ifndef CONFIG_DEVICE_NAME
#define CONFIG_DEVICE_NAME JlVirtualJtagSerial //串口通讯的设备名(配置串口通讯时使用)
#endif
#ifndef CONFIG_SERIAL_BAUD_RATE
#define CONFIG_SERIAL_BAUD_RATE 1000000 //串口通讯的波特率(配置串口通讯时使用)
#endif
#ifndef CONFIG_SERIAL_CMD_OPT
#define CONFIG_SERIAL_CMD_OPT 2 //串口通讯公共配置参数(配置串口通讯时使用)
#endif
#ifndef CONFIG_SERIAL_CMD_RATE
#define CONFIG_SERIAL_CMD_RATE 100 //串口通讯时公共配置参数(配置串口通讯时使用)[n*10000]
#endif
#ifndef CONFIG_SERIAL_CMD_RES
#define CONFIG_SERIAL_CMD_RES 0 //串口通讯时公共配置参数(配置串口通讯时使用)
#endif
#ifndef CONFIG_SERIAL_INIT_BAUD_RATE
#define CONFIG_SERIAL_INIT_BAUD_RATE 9600 //串口通信初始化时通讯的波特率(配置串口通讯时使用)
#endif
#ifndef CONFIG_LOADER_BAUD_RATE
#define CONFIG_LOADER_BAUD_RATE 1000000 //写入loader文件时通讯的波特率(配置串口通讯时使用)
#endif
#ifndef CONFIG_LOADER_ASK_BAUD_RATE
#define CONFIG_LOADER_ASK_BAUD_RATE 1000000
#endif
#ifndef CONFIG_SERIAL_SEND_KEY
#define CONFIG_SERIAL_SEND_KEY YES //SERIAL_SEND_KEY串口交互时数据是否需要进行加密(配置串口通讯时使用有效值YES)
#endif
#ifndef CONFIG_BREFORE_LOADER_WAIT_TIME
#define CONFIG_BREFORE_LOADER_WAIT_TIME 150 //写入loader前延时时间(配置串口通讯时使用)
#endif
#ifndef CONFIG_ENTRY_ADDRESS
#define CONFIG_ENTRY_ADDRESS 0x6000120 //程序入口地址,一般不需要修改(跟张恺讨论过把RESERVED_OPT=0合并到一个配置项)
#endif
/* #ifndef CONFIG_SDK_TYPE */
/* #define CONFIG_SDK_TYPE SOUNDBOX // SOUNDBOX:音箱方案 OTHER:其他方案(比如:耳机,BLE SDK类型当前仅支持音箱和非音箱两种类型 */
/* #endif */
#ifndef CONFIG_SPI_DATA_WIDTH
#define CONFIG_SPI_DATA_WIDTH 2 //data_width[0 1 2 3 4] 3的时候uboot自动识别2或者4线
#endif
#ifndef CONFIG_SPI_CLK_DIV
#define CONFIG_SPI_CLK_DIV 3 //clk [0-255]
#endif
//mode:
// 0 RD_OUTPUT, 1 cmd 1 addr
// 1 RD_I/O, 1 cmd x addr
// 2 RD_I/O_CONTINUE] no_send_cmd x add
#ifndef CONFIG_SPI_MODE
#define CONFIG_SPI_MODE 0
#endif
//port:
// 0 优先选A端口 CS:PD3 CLK:PD0 D0:PD1 D1:PD2 D2:PB7 D3:PD5
// 1 优先选B端口 CS:PA13 CLK:PD0 D0:PD1 D1:PA14 D2:PA15 D3:PD5
#ifndef CONFIG_SPI_PORT
#define CONFIG_SPI_PORT 0
#endif
//uboot and ota.bin串口tx
#ifndef CONFIG_UBOOT_DEBUG_PIN
#define CONFIG_UBOOT_DEBUG_PIN PB02
#endif
//uboot and ota.bin串口波特率[EXTRA_CFG_PARAM]
#ifndef CONFIG_UBOOT_DEBUG_BAUD_RATE
#define CONFIG_UBOOT_DEBUG_BAUD_RATE 1000000
#endif
[EXTRA_CFG_PARAM]
#if CONFIG_DOUBLE_BANK_ENABLE
BR22_TWS_DB = YES; //dual bank flash framework enable
FLASH_SIZE = CONFIG_FLASH_SIZE; //flash_size cfg
BR22_TWS_VERSION = 0; //default fw version
FORCE_4K_ALIGN = YES; // force aligin with 4k bytes
SPECIAL_OPT = 0; // only generate one flash.bin
#if CONFIG_DB_UPDATE_DATA_GENERATE_EN
DB_UPDATE_DATA = YES; //generate db_update_data.bin
#endif
#else
NEW_FLASH_FS = YES; //enable single bank flash framework
#endif //CONFIG_DOUBLE_BANK_ENABLE
#if ALIGN_UNIT_256B
AREA_ALIGN = ALIGN_UNIT_256B; //using n*256B unit for boundary alignment
#endif
CHIP_NAME = CONFIG_CHIP_NAME;
ENTRY = CONFIG_ENTRY_ADDRESS;
PID = CONFIG_PID;
VID = CONFIG_VID;
SDK_VERSION = JL701N_V1.6.1; //jenkins脚本生成
RESERVED_OPT = 0;
UFW_ELEMENT = 0x10 - 0x0, 0x1 - 0x0;
DOWNLOAD_MODEL = CONFIG_DOWNLOAD_MODEL; //
SERIAL_DEVICE_NAME = CONFIG_DEVICE_NAME;
SERIAL_BARD_RATE = CONFIG_SERIAL_BAUD_RATE;
SERIAL_CMD_OPT = CONFIG_SERIAL_CMD_OPT;
SERIAL_CMD_RATE = CONFIG_SERIAL_CMD_RATE;
SERIAL_CMD_RES = CONFIG_SERIAL_CMD_RES;
SERIAL_INIT_BAUD_RATE = CONFIG_SERIAL_INIT_BAUD_RATE;
LOADER_BAUD_RATE = CONFIG_LOADER_BAUD_RATE;
LOADER_ASK_BAUD_RATE = CONFIG_LOADER_ASK_BAUD_RATE;
BEFORE_LOADER_WAIT_TIME = CONFIG_BREFORE_LOADER_WAIT_TIME;
SERIAL_SEND_KEY = CONFIG_SERIAL_SEND_KEY;
#if CONFIG_ANC_ENABLE
COMPACT_SETTING = YES;
#endif
// #####匹配的芯片版本,请勿随意改动######
[CHIP_VERSION]
SUPPORTED_LIST = P, B;
[SYS_CFG_PARAM]
SPI = CAT4(CONFIG_SPI_DATA_WIDTH, CONFIG_SPI_CLK_DIV, CONFIG_SPI_MODE, CONFIG_SPI_PORT); //width_clk_mode_port;
#if (CONFIG_PLL_SOURCE_USING_LRC == 1)
PLL_SRC = LRC; //PLL时钟源屏蔽或=LRC; 默认选择晶振。 值=LRC,且用no_ota_uboot,则时钟源选LRC
#endif
#ifdef CONFIG_UBOOT_DEBUG_PIN
UTTX = CONFIG_UBOOT_DEBUG_PIN; //uboot串口tx
UTBD = CONFIG_UBOOT_DEBUG_BAUD_RATE; //uboot串口波特率
#endif
//外部FLASH 硬件连接配置
#ifdef CONFIG_EXTERN_FLASH_SIZE
EX_FLASH = PC03_1A_PC08; //CS_pin / spi (0/1/2) /port(A/B) / power_io
EX_FLASH_IO = 2_PC01_PC02_PC04_PC05_PC00; //data_width / CLK_pin / DO_pin / DI_pin / D2_pin / D3_pin 当data_width为4的时候D2_pin和D3_pin才有效
#endif
/* #0:disable */
/* #1:PA9 PA10 */
/* #2:USB */
/* #3:PB1 PB2 */
/* #4:PB6 PB7 */
/* #sdtap=2; */
/* #enable: */
/* # 0: uboot 不初始化psram; */
/* # 1: uboot 初始化psram */
/* #mode: */
/* # 0: 1线模式; */
/* # 1: 4线模式0, 命令1线, 地址4线, 数据4线, */
/* # 2: 4线模式1, 命令4线, 地址4线, 数据4线, */
/* #div: */
/* # 1分频, 192M, div = 0; */
/* # 2分频, 96M, div = 4; */
/* # 3分频, 64M, div = 1; */
/* # 4分频, 48M, div = 8; */
/* # 5分频, 38.4M, div = 2; */
/* # 6分频, 32M, div = 5; */
/* # 7分频, 27.4M, div = 3; */
/* # 8分频, 24M, div = C; */
/* # 10分频, 19.2M, div = 6; */
/* # 12分频, 16M, div = 9; */
/* # 14分频, 13.7M, div = 7; */
/* # 20分频, 9.6M, div = A; */
/* # 24分频, 8M, div = D; */
/* # 28分频, 6.8M, div = B; */
/* # 40分频, 4.8M, div = E; */
/* # 56分频, 3.4M, div = F; */
//#enable_mode_div
#ifdef CONFIG_PSRAM_ENABLE
PSRAM = 1_2_A;
#endif
#ifdef CONFIG_UART_UPDATE_PIN
UTRX = CONFIG_UART_UPDATE_PIN; //串口升级[PB00 PB05 PA05]
#endif
/* RESET = CAT3(CONFIG_RESET_PIN, CONFIG_RESET_TIME, CONFIG_RESET_LEVEL); //port口_长按时间_有效电平长按时间有00、01、02、04、08三个值可选单位为秒当长按时间为00时则关闭长按复位功能。 */
#ifdef CONFIG_SUPPORT_RESET1
RESET1 = CAT3(CONFIG_RESET1_PIN, CONFIG_RESET1_TIME, CONFIG_RESET1_LEVEL); //port口_长按时间_有效电平长按时间有00、01、02、04、08三个值可选单位为秒当长按时间为00时则关闭长按复位功能。
#endif
#ifdef CONFIG_VDDIO_LVD_LEVEL
VLVD = CONFIG_VDDIO_LVD_LEVEL; //VDDIO_LVD挡位0: 1.8V 1: 1.9V 2: 2.0V 3: 2.1V 4: 2.2V 5: 2.3V 6: 2.4V 7: 2.5V
#endif
/* #ifdef CONFIG_UPDATE_JUMP_TO_MASK */
/* UPDATE_JUMP = CONFIG_UPDATE_JUMP_TO_MASK; */
/* #endif */
#ifdef CONFIG_CUSTOM_CFG1_TYPE
CONFIG_CUSTOM_CFG1_TYPE = CONFIG_CUSTOM_CFG1_VALUE;
#endif
#ifdef CONFIG_CUSTOM_CFG2_TYPE
CONFIG_CUSTOM_CFG2_TYPE = CONFIG_CUSTOM_CFG2_VALUE;
#endif
#ifdef CONFIG_CUSTOM_CFG3_TYPE
CONFIG_CUSTOM_CFG3_TYPE = CONFIG_CUSTOM_CFG3_VALUE;
#endif
//#############################################################################################################################################
#ifndef CONFIG_VM_ADDR
#define CONFIG_VM_ADDR 0
#endif
#ifndef CONFIG_VM_LEAST_SIZE
#if ALIGN_UNIT_256B
#define CONFIG_VM_LEAST_SIZE 0x200
#else
#define CONFIG_VM_LEAST_SIZE 32K
#endif
#endif
#ifndef CONFIG_VM_OPT
#define CONFIG_VM_OPT 1
#endif
#ifndef CONFIG_BTIF_ADDR
#define CONFIG_BTIF_ADDR AUTO
#endif
#ifndef CONFIG_BTIF_LEN
#if ALIGN_UNIT_256B
#define CONFIG_BTIF_LEN 0x200
#else
#define CONFIG_BTIF_LEN 0x1000
#endif
#endif
#ifndef CONFIG_BTIF_OPT
#define CONFIG_BTIF_OPT 1
#endif
#ifndef CONFIG_PRCT_ADDR
#define CONFIG_PRCT_ADDR 0
#endif
#ifndef CONFIG_PRCT_LEN
#define CONFIG_PRCT_LEN CODE_LEN
#endif
#ifndef CONFIG_PRCT_OPT
#define CONFIG_PRCT_OPT 2
#endif
#ifndef CONFIG_EXIF_ADDR
#define CONFIG_EXIF_ADDR AUTO
#endif
#ifndef CONFIG_EXIF_LEN
#define CONFIG_EXIF_LEN 0x1000
#endif
#ifndef CONFIG_EXIF_OPT
#define CONFIG_EXIF_OPT 1
#endif
#ifndef CONIFG_BURNER_INFO_SIZE
#define CONFIG_BURNER_INFO_SIZE 32
#endif
[FW_ADDITIONAL]
FILE_LIST = (file = ota.bin: type = 100);
// ########flash空间使用配置区域###############################################
// #PDCTNAME: 产品名,对应此代码,用于标识产品,升级时可以选择匹配产品名
// #BOOT_FIRST: 1=代码更新后提示APP是第一次启动0=代码更新后,不提示
// #UPVR_CTL 0不允许高版本升级低版本 1允许高版本升级低版本
// #XXXX_ADR: 区域起始地址 AUTO由工具自动分配起始地址
// #XXXX_LEN: 区域长度 CODE_LEN代码长度
// #XXXX_OPT: 区域操作属性
// #
// #
// #
// #操作符说明 OPT:
// # 0: 下载代码时擦除指定区域
// # 1: 下载代码时不操作指定区域
// # 2: 下载代码时给指定区域加上保护
// ############################################################################
[RESERVED_CONFIG]
BTIF_ADR = CONFIG_BTIF_ADDR;
BTIF_LEN = CONFIG_BTIF_LEN;
BTIF_OPT = CONFIG_BTIF_OPT;
#if (CONFIG_APP_OTA_ENABLE && !CONFIG_DOUBLE_BANK_ENABLE)
EXIF_ADR = CONFIG_EXIF_ADDR;
EXIF_LEN = CONFIG_EXIF_LEN;
EXIF_OPT = CONFIG_EXIF_OPT;
#endif
// #WTIF_ADR=BEGIN_END;
// #WTIF_LEN=0x1000;
// #WTIF_OPT=1;
//forprotect area cfg
PRCT_ADR = CONFIG_PRCT_ADDR;
PRCT_LEN = CONFIG_PRCT_LEN;
PRCT_OPT = CONFIG_PRCT_OPT;
//for volatile memory area cfg
//VM大小默认为CONFIG_VM_LEAST_SIZE如果代码空间不够可以适当改小需要满足4*2*n; 改小可能会导致不支持测试盒蓝牙升级(不影响串口升级)
VM_ADR = CONFIG_VM_ADDR;
VM_LEN = CONFIG_VM_LEAST_SIZE;
VM_OPT = CONFIG_VM_OPT;
#ifdef CONFIG_RESERVED_AREA1
CAT2(CONFIG_RESERVED_AREA1, ADR) = CONFIG_RESERVED_AREA1_ADDR;
CAT2(CONFIG_RESERVED_AREA1, LEN) = CONFIG_RESERVED_AREA1_LEN;
CAT2(CONFIG_RESERVED_AREA1, OPT) = CONFIG_RESERVED_AREA1_OPT;
#ifdef CONFIG_RESERVED_AREA1_FILE
CAT2(CONFIG_RESERVED_AREA1, FILE) = CONFIG_RESERVED_AREA1_FILE;
#endif
#endif
#ifdef CONFIG_RESERVED_AREA2
CAT2(CONFIG_RESERVED_AREA2, ADR) = CONFIG_RESERVED_AREA2_ADDR;
CAT2(CONFIG_RESERVED_AREA2, LEN) = CONFIG_RESERVED_AREA2_LEN;
CAT2(CONFIG_RESERVED_AREA2, OPT) = CONFIG_RESERVED_AREA2_OPT;
#ifdef CONFIG_RESERVED_AREA2_FILE
CAT2(CONFIG_RESERVED_AREA2, FILE) = CONFIG_RESERVED_AREA2_FILE;
#endif
#endif
#if TCFG_EQ_ONLINE_ENABLE || TCFG_MIC_EFFECT_ONLINE_ENABLE
EFFECT_ADR = AUTO;
EFFECT_LEN = 4K;
EFFECT_OPT = 1;
#endif
/*
****************************************************************************
* ANC配置区
*Notes:
*(1)需要根据flash容量手动配置ANC配置区起始地址:
* 4Mbit:0x7E000 8Mbit:0xFE000 16Mbit:0x1FE000
*(2)加载ANC增益/系数配置文件,则表示使用配置文件的增益/系数配置
*(3)ANC两个配置区是连续的即第一个配置区起始地址加上自身长度即为第二个配置
* 区起始地址CONFIG_ANCIF1_ADDR = CONFIG_ANCIF_ADDR + CONFIG_ANCIF_LEN
*****************************************************************************
*/
#if CONFIG_ANC_ENABLE
/*******************用户配置区************************/
//加载ANC增益配置文件使能
#define CONFIG_ANCIF_GAINS_FILE_ENABLE 1
//加载ANC系数配置文件使能
#define CONFIG_ANCIF1_COEFF_FILE_ENABLE 1
//ANC配置区起始地址配置(跟进芯片flash容量进行配置)
//4Mbit:0x7E000 8Mbit:0xFE000 16Mbit:0x1FE000
#ifndef CONFIG_ANCIF_ADDR
#define CONFIG_ANCIF_ADDR 0xFD000
#endif/*CONFIG_ANCIF_ADDR*/
#ifndef CONFIG_ANCIF1_ADDR
#define CONFIG_ANCIF1_ADDR 0xFD100
#endif/*CONFIG_ANCIF1_ADDR*/
//ANC配置区下载操作配置
#ifndef CONFIG_ANCIF_OPT
#define CONFIG_ANCIF_OPT 1
#endif
#ifndef CONFIG_ANCIF1_OPT
#define CONFIG_ANCIF1_OPT 1
#endif
/*******************用户配置区************************/
/*******************非用户配置区**********************/
//ANC配置区长度定义
#define CONFIG_ANCIF_LEN 0x100
/* #if ANC_MAX_ORDER > 10 */
#define CONFIG_ANCIF1_LEN 0x1F00
/* #else */
/* #define CONFIG_ANCIF1_LEN 0xF00 */
/* #endif#<{(|ANC_MAX_ORDER > 10 |)}># */
//ANC系数配置保留区0
#if CONFIG_ANCIF_GAINS_FILE_ENABLE
ANCIF_FILE = anc_gains.bin;
#endif
ANCIF_ADR = CONFIG_ANCIF_ADDR;
ANCIF_LEN = CONFIG_ANCIF_LEN;
ANCIF_OPT = CONFIG_ANCIF_OPT;
//ANC系数配置保留区1
#if CONFIG_ANCIF1_COEFF_FILE_ENABLE
ANCIF1_FILE = anc_coeff.bin;
#endif
ANCIF1_ADR = CONFIG_ANCIF1_ADDR;
ANCIF1_LEN = CONFIG_ANCIF1_LEN;
ANCIF1_OPT = CONFIG_ANCIF1_OPT;
/*******************非用户配置区**********************/
#endif/*CONFIG_ANC_ENABLE*/
[BURNER_CONFIG]
SIZE = CONFIG_BURNER_INFO_SIZE;

BIN
cpu/br28/tools/isd_download Normal file

Binary file not shown.

Binary file not shown.

BIN
cpu/br28/tools/local.db Normal file

Binary file not shown.

BIN
cpu/br28/tools/ota.bin Normal file

Binary file not shown.

Binary file not shown.

BIN
cpu/br28/tools/p11_code.bin Normal file

Binary file not shown.

View File

@ -0,0 +1,5 @@
#!/bin/sh
#sleep 4
#-ex "detach" -ex "q"
/opt/gdb $1 -ex "target remote proxy:"${NICKNAME}"_jtag:9872" -ex "b exception_irq_handler" -ex "c"

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

BIN
cpu/br28/tools/tone.cfg Normal file

Binary file not shown.

BIN
cpu/br28/tools/uboot.boot Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,78 @@
local rootDir = cfg.rootDir;
local pkgman = rootDir .. "/pkgman.exe";
local req_pkgs = {"pkgman2"};
local check_prog = {pkgman};
local missing_pkgs = {};
for k, v in pairs(req_pkgs) do
if cfg:utilsGetPkg(v) == nil then
table.insert(missing_pkgs, v)
end
end
for k, v in pairs(missing_pkgs) do table.insert(check_prog, v) end
if #missing_pkgs ~= 0 then
if (cfg:runProg(check_prog) ~= 0) then
cfg:msgBox("warn", "软件包不是最新,可能会出现问题");
end
end
local pkgman2 = cfg:utilsGetPkg("pkgman2").run;
local check_ret = cfg:runProg({pkgman2, "-b", rootDir, "--update"});
if check_ret == 1 then
os.exit(0);
end
if check_ret ~= 0 then
cfg:msgBox("warn", "软件包不是最新,可能会出现问题");
end
-- params
local product_name = "-";
local dest_dir = cfg.dir;
local req_local_pkgs = {
"fwadd", "isddownload", "ufwmaker",
};
local check_local_prog = {pkgman2, "-b", dest_dir};
local missing_local_pkgs = {};
for k, v in pairs(req_local_pkgs) do
if cfg:utilsGetPkg(v) == nil then
table.insert(missing_local_pkgs, v)
end
end
for k, v in pairs(req_local_pkgs) do table.insert(check_local_prog, v); end
if (cfg:runProg(check_local_prog) ~= 0) then
cfg:msgBox("warn", "软件包不是最新,可能会出现问题");
end
local layout = cfg:vBox{
cfg:stButton("查看当前本地软件版本", function ()
cfg:runProg{pkgman2, "-b", dest_dir};
end),
cfg:stButton("检查更新", function ()
local check_prog = {pkgman2, "-b", dest_dir};
for k, v in pairs(req_local_pkgs) do table.insert(check_prog, v) end
if (cfg:runProg(check_prog) ~= 0) then
cfg:msgBox("warn", "软件包不是最新,可能会出现问题");
else
cfg:msgBox("info", "已经是最新");
end
end),
}
cfg:addKeyInfo("jlxproj.title", "检查更新");
cfg:addKeyInfo("jlxproj.width", "300");
cfg:addKeyInfo("jlxproj.height", "200");
cfg:setLayout(layout)