diff --git a/snake_branches/2.4_q_test/OMakefile b/snake_branches/2.4_q_test/OMakefile deleted file mode 100644 index 42baad6..0000000 --- a/snake_branches/2.4_q_test/OMakefile +++ /dev/null @@ -1,159 +0,0 @@ -############################################################ -# 環境設定 -############################################################ - -# マイコン開発環境のインストール先を環境変数で指定する -NECEL_ROOT = - if $(defined-env NECEL_ROOT) - value $(absname $"$(getenv NECEL_ROOT)") - else - value "C:\Program Files (x86)\NEC Electronics Tools" - -# cygwinのインストール先を環境変数で指定する -CYGWIN_ROOT = - if $(defined-env CYGWIN_ROOT) - value $(absname $"$(getenv CYGWIN_ROOT)") - else - value "C:\cygwin" - -# GCCバージョンを環境変数で指定する -CYGWIN_GCC = - if $(defined-env CYGWIN_GCC) - value $(CYGWIN_ROOT)/bin/$"$(getenv CYGWIN_GCC)" - else - value $(CYGWIN_ROOT)/bin/gcc-4 - -#デバイスファイルは NECEL_ROOT/dev に置くこと -#自己アップデート用ライブラリは CC_LIBS_ROOT/以下に置くこと - -SUBDIR_INTER_ASM = $(dir inter_asm) - -CC_ROOT = $(NECEL_ROOT)/CC78K0R -CC_VER = W2.13 -CC = $(CC_ROOT)/$(CC_VER)/bin/cc78k0r.exe -RA = $(NECEL_ROOT)/RA78K0R/W1.33/bin/ra78k0r.exe -LK = $(NECEL_ROOT)/RA78K0R/W1.33/bin/lk78k0r.exe -OC = $(NECEL_ROOT)/RA78K0R/W1.33/bin/oc78k0r.exe -LCNV = $(NECEL_ROOT)/RA78K0R/W1.33/bin/lc78k0r.exe -DEVFILE_ROOT = $(NECEL_ROOT)/dev - -CC_LIBS_ROOT = $(CC_ROOT)/$(CC_VER)/lib78k0r -CC_INCLUDES_ROOT = $(CC_ROOT)/$(CC_VER)/inc78k0r -S0RM = s0rm.rel - -# セキュリティID -GIVALUE = 1B339499E033F240BFAAh - -# ユーザオプションバイト -GBValue = 7EFBFFh - -DEVICE_NAME = 9F0104 - -FSL_LIB = fsl.lib - -TARGET_NAME = bsr -TARGET_LMF = $(TARGET_NAME).lmf -TARGET_HEX = $(TARGET_NAME).hex - -# ここまで -############################################################ - -############################################################ -# ソースを追加したら編集する箇所 -############################################################ - -SRC_FILES[] = - loader - pm - i2c_ctr - main - magic - WDT - i2c_mcu - i2c_twl - led - rtc - vreg_ctr - vreg_twl - adc - renge\renge - accero - self_flash - sw - task_debug - task_misc - task_sys - pedo_alg_thre_det2 - ini_VECT - task_status - led_cam - led_pow - hal - batt_params - voltable - pedo_lpf_coeff - -INCLUDES[] = - ./ - renge - -# ここまで -############################################################ - -.PHONY: clean BeforeBuild - -AddRel(files) = - file_names = $(addsuffix .rel, $(files)) - return $(file_names) - -# *.cからinter_asm/*.asmを作るための関数 -AsmProgram(files) = - foreach(filename, $(files)) - asm_name = $(addprefix $(SUBDIR_INTER_ASM)/, $(addsuffix .asm, $(basename $(filename)))) - c_name = $(addsuffix .c, $(filename)) - - .SCANNER: $(asm_name): $(c_name) - $(CYGWIN_GCC) -MM -w -I$(CC_INCLUDES_ROOT) $(c_name) | sed 's/$(filename)\.o/$(SUBDIR_INTER_ASM)\/$(filename)\.asm/g' - - $(asm_name): $(c_name) - $(CC) -c$(DEVICE_NAME) -y$(DEVFILE_ROOT) -_msgoff -irenge -i$(CC_INCLUDES_ROOT) -ms -qvjl2w -sa$(SUBDIR_INTER_ASM) -zpb -no $(c_name) - - return $(addsuffix .c, $(files)) - -# inter_asm/*.asm から *.relを作るための関数 -RelProgram(files) = - foreach(filename, $(files)) - rel_name = $(addsuffix .rel, $(basename $(filename))) - asm_name = $(addprefix $(SUBDIR_INTER_ASM)/, $(addsuffix .asm, $(basename $(filename)))) - asm_win_name = $(addprefix $(SUBDIR_INTER_ASM)\\, $(addsuffix .asm, $(basename $(filename)))) - c_name = $(addsuffix .c, $(filename)) - - .SCANNER: $(rel_name): $(asm_win_name) - $(CYGWIN_GCC) -MM -w -I$(CC_INCLUDES_ROOT) $(c_name) | sed 's/\.o/\.rel/g' - - $(rel_name): $(asm_name) - $(RA) -c$(DEVICE_NAME) -y$(DEVFILE_ROOT) -_msgoff $(asm_win_name) - - return $(addsuffix .rel, $(basename $(files))) - -$(TARGET_LMF): $(RelProgram $(SRC_FILES)) $(AsmProgram $(SRC_FILES)) - $(LK) -y$(DEVFILE_ROOT) -_msgoff -o$(TARGET_LMF) $(CC_LIBS_ROOT)/$(S0RM) -gi$(GIVALUE) -pbsr_k0r.map -nkd -gb$(GBValue) -b$(CC_LIBS_ROOT)/$(FSL_LIB) -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i$(CC_LIBS_ROOT) -dbsr_mcu.dr -s -w0 $(AddRel $(basename $(SRC_FILES))) - -$(TARGET_HEX) : $(TARGET_LMF) - $(OC) -y$(DEVFILE_ROOT) -_msgoff -o.\\$(TARGET_HEX) -nu -ki $(TARGET_LMF) - -BeforeBuild: -# ビルド前に必ず実行したい処理 -# OMakeがタイムスタンプではなくMD5でファイルの状態を管理しているので -# 残念ながら cleanしてからビルドしなおす必要がある - C:\Windows\system32\cmd.exe /c $(CYGWIN_ROOT)\bin\touch magic.c - if $(not $(file-exists $(SUBDIR_INTER_ASM))) - mkdir $(SUBDIR_INTER_ASM) - -hoge.bin: BeforeBuild $(TARGET_HEX) - C:\Windows\system32\cmd.exe /c ruby nec_s_2_bsrbin2.rb $(TARGET_HEX) - -clean: - rm -rf *.prn *.rel $(SUBDIR_INTER_ASM)/*.asm *.omc .omakedb .omakedb.lock - -.DEFAULT: hoge.bin diff --git a/snake_branches/2.4_q_test/OMakeroot b/snake_branches/2.4_q_test/OMakeroot deleted file mode 100644 index 16f4b11..0000000 --- a/snake_branches/2.4_q_test/OMakeroot +++ /dev/null @@ -1,4 +0,0 @@ -# -# Include the OMakefile in this directory. -# -.SUBDIRS: . diff --git a/snake_branches/2.4_q_test/VCProj/Debug/BuildLog.htm b/snake_branches/2.4_q_test/VCProj/Debug/BuildLog.htm deleted file mode 100644 index 826ce7c..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/Debug/BuildLog.htm and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.lastbuildstate b/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.lastbuildstate deleted file mode 100644 index ed27c09..0000000 --- a/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.lastbuildstate +++ /dev/null @@ -1,2 +0,0 @@ -#v4.0:v100 -Debug|Win32|C:\78k_data\yav-mcu-basara\trunk\VCProj\| diff --git a/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.log b/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.log deleted file mode 100644 index fb95820..0000000 --- a/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.log +++ /dev/null @@ -1,61 +0,0 @@ -2013/01/28 10:34:28 にビルドを開始しました。 - 1>ノード 2 上のプロジェクト "C:\78k_data\yav-mcu-basara\trunk\VCProj\bsr_trunk.vcxproj" (build ターゲット)。 - 1>InitializeBuildStatus: - "Debug\bsr_trunk.unsuccessfulbuild" のタッチ タスクを実行しています。 - ClCompile: - C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /Zi /nologo /W1 /WX- /O2 /Oy- /D _MBCS /D _MBCS /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc100.pdb" /Gd /TC /analyze- /errorReport:prompt ..\accero.c ..\adc.c ..\batt_params.c ..\hal.c ..\i2c_ctr.c "..\i2c_mcu-sub.c" ..\i2c_mcu.c ..\i2c_twl.c ..\ini_VECT.c ..\kanaria_c.c ..\led.c ..\led_cam.c ..\led_pow.c ..\loader.c ..\magic.c ..\main.c ..\pedo_alg_thre_det2.c ..\pedo_lpf_coeff.c ..\pm.c ..\reboot.c ..\renge\renge.c ..\rtc.c ..\self_flash.c ..\sim\simFixture.c ..\sw.c ..\task_debug.c ..\task_misc.c ..\task_status.c ..\task_sys.c ..\util_funcs.c ..\voltable.c ..\vreg_ctr.c ..\vreg_twl.c ..\WDT.c - accero.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - adc.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - batt_params.c - hal.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - i2c_ctr.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - i2c_mcu-sub.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - i2c_mcu.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - i2c_twl.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - 1>..\i2c_twl.c(223): error C2065: 'DFC0' : 定義されていない識別子です。 - ini_VECT.c - kanaria_c.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - led.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - 1>..\led.c(162): warning C4133: '初期化中' : 'uni_info_LED *' と 'char *' の間で型に互換性がありません。 - led_cam.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - led_pow.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - loader.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - 1>..\loader.c(201): error C2059: 構文エラー : 'サフィックスが無効です。' - 1>..\loader.c(201): error C2146: 構文エラー : ')' が、識別子 'b00000110' の前に必要です。 - magic.c - main.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - pedo_alg_thre_det2.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - pedo_lpf_coeff.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - pm.c - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - 1>..\pm.c(1357): warning C4090: '=' : 異なる 'const' 修飾子です。 - reboot.c - 1>..\reboot.c(8): warning C4068: 不明なプラグマがありました。 - 1>c:\78k_data\yav-mcu-basara\trunk\sim/simOnWin.h(14): warning C4391: 'void memcpy(void *,void *,unsigned int)' : 組み込み関数に対して戻り値の型が無効です。'void' であるべきです。 - 1>..\reboot.c(14): fatal error C1021: プリプロセッサ コマンド 'asm' が無効です。 - コードを生成中... - 1>c:\78k_data\yav-mcu-basara\trunk\i2c_mcu.c(300): fatal error C1001: コンパイラで内部エラーが発生しました。 - (コンパイラ ファイル 'f:\dd\vctools\compiler\utc\src\p2\main.c[0x5E74372A:0x00000000]'、行 183) - この問題を回避するには、上記の場所付近のプログラムを単純化するか変更してください。 - 詳細については、Visual C++ ヘルプ メニューのサポート情報コマンドを - 選択してください。またはサポート情報 ヘルプ ファイルを参照してください。 - 1>プロジェクト "C:\78k_data\yav-mcu-basara\trunk\VCProj\bsr_trunk.vcxproj" (build ターゲット) のビルドが終了しました -- 失敗。 - -ビルドに失敗しました。 - -経過時間 00:00:12.85 diff --git a/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.unsuccessfulbuild b/snake_branches/2.4_q_test/VCProj/Debug/bsr_trunk.unsuccessfulbuild deleted file mode 100644 index e69de29..0000000 diff --git a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport.css b/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport.css deleted file mode 100644 index 3411f63..0000000 --- a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport.css +++ /dev/null @@ -1,207 +0,0 @@ -BODY -{ - BACKGROUND-COLOR: white; - FONT-FAMILY: "Verdana", sans-serif; - FONT-SIZE: 100%; - MARGIN-LEFT: 0px; - MARGIN-TOP: 0px -} -P -{ - FONT-FAMILY: "Verdana", sans-serif; - FONT-SIZE: 70%; - LINE-HEIGHT: 12pt; - MARGIN-BOTTOM: 0px; - MARGIN-LEFT: 10px; - MARGIN-TOP: 10px -} -.note -{ - BACKGROUND-COLOR: #ffffff; - COLOR: #336699; - FONT-FAMILY: "Verdana", sans-serif; - FONT-SIZE: 100%; - MARGIN-BOTTOM: 0px; - MARGIN-LEFT: 0px; - MARGIN-TOP: 0px; - PADDING-RIGHT: 10px -} -.infotable -{ - BACKGROUND-COLOR: #f0f0e0; - BORDER-BOTTOM: #ffffff 0px solid; - BORDER-COLLAPSE: collapse; - BORDER-LEFT: #ffffff 0px solid; - BORDER-RIGHT: #ffffff 0px solid; - BORDER-TOP: #ffffff 0px solid; - FONT-SIZE: 70%; - MARGIN-LEFT: 10px -} -.issuetable -{ - BACKGROUND-COLOR: #ffffe8; - BORDER-COLLAPSE: collapse; - COLOR: #000000; - FONT-SIZE: 100%; - MARGIN-BOTTOM: 10px; - MARGIN-LEFT: 13px; - MARGIN-TOP: 0px -} -.issuetitle -{ - BACKGROUND-COLOR: #ffffff; - BORDER-BOTTOM: #dcdcdc 1px solid; - BORDER-TOP: #dcdcdc 1px; - COLOR: #003366; - FONT-WEIGHT: normal -} -.header -{ - BACKGROUND-COLOR: #cecf9c; - BORDER-BOTTOM: #ffffff 1px solid; - BORDER-LEFT: #ffffff 1px solid; - BORDER-RIGHT: #ffffff 1px solid; - BORDER-TOP: #ffffff 1px solid; - COLOR: #000000; - FONT-WEIGHT: bold -} -.issuehdr -{ - BACKGROUND-COLOR: #E0EBF5; - BORDER-BOTTOM: #dcdcdc 1px solid; - BORDER-TOP: #dcdcdc 1px solid; - COLOR: #000000; - FONT-WEIGHT: normal -} -.issuenone -{ - BACKGROUND-COLOR: #ffffff; - BORDER-BOTTOM: 0px; - BORDER-LEFT: 0px; - BORDER-RIGHT: 0px; - BORDER-TOP: 0px; - COLOR: #000000; - FONT-WEIGHT: normal -} -.content -{ - BACKGROUND-COLOR: #e7e7ce; - BORDER-BOTTOM: #ffffff 1px solid; - BORDER-LEFT: #ffffff 1px solid; - BORDER-RIGHT: #ffffff 1px solid; - BORDER-TOP: #ffffff 1px solid; - PADDING-LEFT: 3px -} -.issuecontent -{ - BACKGROUND-COLOR: #ffffff; - BORDER-BOTTOM: #dcdcdc 1px solid; - BORDER-TOP: #dcdcdc 1px solid; - PADDING-LEFT: 3px -} -A:link -{ - COLOR: #cc6633; - TEXT-DECORATION: underline -} -A:visited -{ - COLOR: #cc6633; -} -A:active -{ - COLOR: #cc6633; -} -A:hover -{ - COLOR: #cc3300; - TEXT-DECORATION: underline -} -H1 -{ - BACKGROUND-COLOR: #003366; - BORDER-BOTTOM: #336699 6px solid; - COLOR: #ffffff; - FONT-SIZE: 130%; - FONT-WEIGHT: normal; - MARGIN: 0em 0em 0em -20px; - PADDING-BOTTOM: 8px; - PADDING-LEFT: 30px; - PADDING-TOP: 16px -} -H2 -{ - COLOR: #000000; - FONT-SIZE: 80%; - FONT-WEIGHT: bold; - MARGIN-BOTTOM: 3px; - MARGIN-LEFT: 10px; - MARGIN-TOP: 20px; - PADDING-LEFT: 0px -} -H3 -{ - COLOR: #000000; - FONT-SIZE: 80%; - FONT-WEIGHT: bold; - MARGIN-BOTTOM: -5px; - MARGIN-LEFT: 10px; - MARGIN-TOP: 20px -} -H4 -{ - COLOR: #000000; - FONT-SIZE: 70%; - FONT-WEIGHT: bold; - MARGIN-BOTTOM: 0px; - MARGIN-TOP: 15px; - PADDING-BOTTOM: 0px -} -UL -{ - COLOR: #000000; - FONT-SIZE: 70%; - LIST-STYLE: square; - MARGIN-BOTTOM: 0pt; - MARGIN-TOP: 0pt -} -OL -{ - COLOR: #000000; - FONT-SIZE: 70%; - LIST-STYLE: square; - MARGIN-BOTTOM: 0pt; - MARGIN-TOP: 0pt -} -LI -{ - LIST-STYLE: square; - MARGIN-LEFT: 0px -} -.expandable -{ - CURSOR: hand -} -.expanded -{ - color: black -} -.collapsed -{ - DISPLAY: none -} -.foot -{ -BACKGROUND-COLOR: #ffffff; -BORDER-BOTTOM: #cecf9c 1px solid; -BORDER-TOP: #cecf9c 2px solid -} -.settings -{ -MARGIN-LEFT: 25PX; -} -.help -{ -TEXT-ALIGN: right; -margin-right: 10px; -} diff --git a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport.xslt b/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport.xslt deleted file mode 100644 index 8277446..0000000 --- a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport.xslt +++ /dev/null @@ -1,232 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

- ソリューション: - プロジェクト: - - - - - - - -

- - - - - - - - - - - - - - - - - - - - - - - - src - - - - - - - - - - - - -
ファイル名状態エラー警告
- javascript:document.images[''].click()src - - - - 変換済み - - - - 変換済み - -
- - ファイル - - - 1 ファイル - - - 変換済み:
- 変換されませんでした。: -
-
-
- - - - : - - - - - - - - - 変換レポート - <xsl:if test="Properties/Property[@Name='LogNumber']"> - <xsl:value-of select="Properties/Property[@Name='LogNumber']/@Value"/> - </xsl:if> - - - - -

変換レポート -

- -

- 変換時間:
-

- - - - - - - - - - - - - - - - - - - - - - - - -

- - - - - -
- 変換の設定 -

- - -
-
diff --git a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport_Minus.gif b/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport_Minus.gif deleted file mode 100644 index 17751cb..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport_Minus.gif and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport_Plus.gif b/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport_Plus.gif deleted file mode 100644 index f6009ca..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/_UpgradeReport_Files/UpgradeReport_Plus.gif and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.ncb b/snake_branches/2.4_q_test/VCProj/bsr_trunk.ncb deleted file mode 100644 index c3df735..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/bsr_trunk.ncb and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.opensdf b/snake_branches/2.4_q_test/VCProj/bsr_trunk.opensdf deleted file mode 100644 index cdfe0d5..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/bsr_trunk.opensdf and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.sdf b/snake_branches/2.4_q_test/VCProj/bsr_trunk.sdf deleted file mode 100644 index e884dd4..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/bsr_trunk.sdf and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.sln b/snake_branches/2.4_q_test/VCProj/bsr_trunk.sln deleted file mode 100644 index 520f84d..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.sln +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual C++ Express 2010 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bsr_trunk", "bsr_trunk.vcxproj", "{9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Debug|Win32.ActiveCfg = Debug|Win32 - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Debug|Win32.Build.0 = Debug|Win32 - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Release|Win32.ActiveCfg = Release|Win32 - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.sln.old b/snake_branches/2.4_q_test/VCProj/bsr_trunk.sln.old deleted file mode 100644 index 2881d87..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.sln.old +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual C++ Express 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bsr_trunk", "bsr_trunk.vcproj", "{9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Debug|Win32.ActiveCfg = Debug|Win32 - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Debug|Win32.Build.0 = Debug|Win32 - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Release|Win32.ActiveCfg = Release|Win32 - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.suo b/snake_branches/2.4_q_test/VCProj/bsr_trunk.suo deleted file mode 100644 index b1f9219..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/bsr_trunk.suo and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.suo.old b/snake_branches/2.4_q_test/VCProj/bsr_trunk.suo.old deleted file mode 100644 index 63c7d49..0000000 Binary files a/snake_branches/2.4_q_test/VCProj/bsr_trunk.suo.old and /dev/null differ diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcproj b/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcproj deleted file mode 100644 index 1a6531b..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcproj +++ /dev/null @@ -1,594 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcproj.NCL.N2232.user b/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcproj.NCL.N2232.user deleted file mode 100644 index 257e4e7..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcproj.NCL.N2232.user +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj b/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj deleted file mode 100644 index a4fc5a6..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj +++ /dev/null @@ -1,162 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - - {9DF31AC3-BD19-4158-BD6F-9CFE64AEE5D2} - bsr_trunk - arr_trunk - - - - Application - MultiByte - true - - - Application - MultiByte - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - $(SolutionDir)$(Configuration)\ - $(Configuration)\ - nmake -f yav_mcu_bsr.mak - - - - $(NMakePreprocessorDefinitions) - $(NMakeIncludeSearchPath) - $(NMakeForcedIncludes) - $(NMakeAssemblySearchPath) - $(NMakeForcedUsingAssemblies) - $(SolutionDir)$(Configuration)\ - $(Configuration)\ - C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r;$(IncludePath) - - - - MaxSpeed - true - MultiThreadedDLL - true - Level3 - ProgramDatabase - - - true - true - true - MachineX86 - - - - - _MBCS;%(PreprocessorDefinitions); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj.filters b/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj.filters deleted file mode 100644 index d168232..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj.filters +++ /dev/null @@ -1,258 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav - - - {4e2142a2-478d-4e47-ab3f-7ae7d1e531bd} - - - {3bd01c87-17d0-4cf4-93a8-fb6bde3060a4} - - - - - - ソース ファイル\renge - - - ソース ファイル\renge - - - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル - - - ソース ファイル\renge - - - ヘッダー ファイル\sim - - - ヘッダー ファイル\sim - - - ソース ファイル - - - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ヘッダー ファイル - - - ソース ファイル\renge - - - ソース ファイル\renge - - - ソース ファイル\renge - - - ソース ファイル\renge - - - ヘッダー ファイル\sim - - - ヘッダー ファイル\sim - - - \ No newline at end of file diff --git a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj.user b/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj.user deleted file mode 100644 index 695b5c7..0000000 --- a/snake_branches/2.4_q_test/VCProj/bsr_trunk.vcxproj.user +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/snake_branches/2.4_q_test/WDT.c b/snake_branches/2.4_q_test/WDT.c deleted file mode 100644 index ed3daf3..0000000 --- a/snake_branches/2.4_q_test/WDT.c +++ /dev/null @@ -1,12 +0,0 @@ -/* ======================================================== - wdt - - $Id$ - ======================================================== */ -#include "incs_loader.h" - -/* - - gAwb_Ƀ}N̂݁B - -*/ diff --git a/snake_branches/2.4_q_test/WDT.h b/snake_branches/2.4_q_test/WDT.h deleted file mode 100644 index 2e28e9d..0000000 --- a/snake_branches/2.4_q_test/WDT.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef _WDT_ -#define _WDT_ - - - -//========================================================= -#define WDT_RESTART_MAGIC 0xAC - - - -//========================================================= -// EHb`hbO^C}̃X^[g -// void WDT_Restart( void ); -#define WDT_Restart() WDTE = WDT_RESTART_MAGIC - -// KlȊOƗOŃZbg -#define mcu_wdt_reset WDTE = 0x0 - - -#endif diff --git a/snake_branches/2.4_q_test/accero.c b/snake_branches/2.4_q_test/accero.c deleted file mode 100644 index aa584ec..0000000 --- a/snake_branches/2.4_q_test/accero.c +++ /dev/null @@ -1,274 +0,0 @@ -/* ======================================================== -@xZT֌W -Ef[^XVŃf[^zグ背WX^XVACPUɊ荞 -EtOĂΕJEg -ExZT荞݂^XNo^ĉBiI2C̋Ȃǂ̂Łj - - $Id: accero.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma NOP -#pragma HALT -#pragma STOP -#pragma ROT -// rorb, rolb, rorw, rolw -#pragma MUL -#pragma BCD - -#endif - -#ifndef _WIN32 - -#pragma interrupt INTP23 intp23_ACC_ready RB3 // xZTAf[^ - -#endif - -#include "incs.h" -#include "accero.h" -#include "i2c_mcu.h" - - -#ifndef _WIN32 -#include -#endif -// ======================================================== -// WX^ -#define ACC_REG_WHOAMI 0x0F -#define ACC_REG_CTRL1 0x20 -#define ACC_REG_CTRL5 0x24 -#define ACC_REG_X 0x28 - -#define ACC_REG_FLG_BURST_ACCESS 0x80 - -// rbgʒu -#define ACC_bP_PM0 5 -#define ACC_bP_DR0 3 - -// rbgݒl -#define ACC_BITS_PM_PDN 0 -#define ACC_BITS_PM_NORM 1 -#define ACC_BITS_PM_LP0R5 2 -#define ACC_BITS_PM_LP1 3 -#define ACC_BITS_PM_LP2 4 -#define ACC_BITS_PM_LP5 5 -#define ACC_BITS_PM_LP10 6 - -#define ACC_BITS_DR_50Hz 0 -#define ACC_BITS_DR_100Hz 1 -#define ACC_BITS_DR_400Hz 2 -#define ACC_BITS_DR_1000Hz 3 - -#define ACC_BITS_ALL_AXIS_ON 7 - - -#define VREG_BITMASK_ACC_CONF_ACQ ( 1 << 0 ) -#define VREG_BITMASK_ACC_CONF_HOSU ( 1 << 1 ) - - - -// ======================================================== -#define ACC_RAW_DATA_SIZE 6 - - -// ======================================================== -static u8 acc_retry_count; // xZTǂݏoAG[ƂgCB񐔐 - - - -// ======================================================== -task_status tsk_soft_int( ); - - - -/********************************************//** -@E荞݂mFăf[^zグAWX^ɏo܂ - - E{ł΃R[obN֐o^Ă΂ƂȂ̂łA - I2CgpHƂlƎł͂܂łłȂ̂łB - - EvƂł - ***********************************************/ -task_status_immed tski_cbk_accero( ) -{ // i^jisro^܂ - u8 acc_dat_buff[ ACC_RAW_DATA_SIZE ]; - - // xZTf[^WX^ւ̔f - if( iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | ACC_REG_FLG_BURST_ACCESS ), ACC_RAW_DATA_SIZE, acc_dat_buff ) - != ERR_SUCCESS ) - { - // SLA NAK // - if( acc_retry_count < 4 ) - { - acc_retry_count ++; - // gC - return( TSKI_CONTINUE ); - } - else - { - // xZTُɂȂ̂Ŏ~߂ - vreg_stop_acc; - tski_acc_setup(); - vreg_set_acc_error; - return ( TSKI_FINISHED ); // ^XN̍폜͕Kv - } - } - else - { - // 펞pX // - DI_wt_chk(); - memcpy( &vreg_ctr[VREG_C_ACC_XL], acc_dat_buff, ACC_RAW_DATA_SIZE ); - EI(); - - acc_retry_count = 0; - // xXV荞 - if( is_acc_on && ( system_status.pwr_state == ON )) - { - set_irq( VREG_C_IRQ1, REG_BIT_ACC_DAT_RDY ); - // S~f[^̃Jǂ - if( ACC_VALID ) - { - u8 temp[ACC_RAW_DATA_SIZE]; - iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | ACC_REG_FLG_BURST_ACCESS ), ACC_RAW_DATA_SIZE, temp ); - } - } - if( (( system_status.pwr_state == ON )||( system_status.pwr_state == SLEEP )) - &&( is_pedo_on ) - ) - { - pedometer(); // v - } - } - return ( TSKI_FINISHED ); -} - - - - - -/********************************************//** -@xZT߃ANZX@[h - ***********************************************/ -task_status_immed tski_acc_read( ) -{ - vreg_ctr[VREG_C_ACC_W_BUF] = iic_mcu_read_a_byte( IIC_SLA_ACCEL, vreg_ctr[VREG_C_ACC_R_ADRS] ); - set_irq( VREG_C_IRQ1, REG_BIT_ACC_ACK ); - return ( TSKI_FINISHED ); -} - - - -/********************************************//** -@xZT߃ANZX@Cg - ***********************************************/ -task_status_immed tski_acc_write( ) -{ - iic_mcu_write_a_byte( IIC_SLA_ACCEL, vreg_ctr[VREG_C_ACC_W_ADRS], vreg_ctr[VREG_C_ACC_W_BUF] ); - set_irq( VREG_C_IRQ1, REG_BIT_ACC_ACK ); - return ( TSKI_FINISHED ); -} - - - -/********************************************//** -@xZT̐ݒ - ***********************************************/ -task_status_immed tski_acc_setup( ) -{ - - // x on/offݒ肷 - u8 str_send_buf[4]; - - str_send_buf[1] = 0x00; // ctrl2 HPF:normal, filterd, HPF for IRQ : dis/dis, HPF coeff:norm - - // sŝ߁ATSƂȊOiHႢjʂĐݒ - if( system_status.model == MODEL_TS_BOARD ) - { - str_send_buf[2] = bits8(0,0,0,0, 0,0,1,0); - } - else - { - str_send_buf[2] = bits8(0,0,0,1, 0,0,0,0); - } - str_send_buf[3] = 0x80; // ctrl3 block update:enable, MSB first, scale: +-2G(default), selftest: dis - - { - u8 acc_setting_sent = ( vreg_ctr[VREG_C_ACC_CONFIG] & ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ )); - - if( acc_setting_sent == 0 ) - { - // S~ - PMK23 = 1; - str_send_buf[0] = - ( ACC_BITS_PM_PDN << ACC_bP_PM0 | 0 << ACC_bP_DR0 | ACC_BITS_ALL_AXIS_ON ); - } - else - { - // on 100Hz 荞 - PMK23 = 0; - str_send_buf[0] = - ( ACC_BITS_PM_NORM << ACC_bP_PM0 - | ACC_BITS_DR_100Hz << ACC_bP_DR0 - | ACC_BITS_ALL_AXIS_ON ); - } - - // ݌AʐMłtOXV - if( iic_mcu_write( IIC_SLA_ACCEL, ( ACC_REG_CTRL1 | ACC_REG_FLG_BURST_ACCESS ), 4, str_send_buf ) == I2C_ERR_NOSLAVE ) - { - // ZTB^XN͍폜ȂĂ͂ȂȂB - vreg_set_acc_error; - return ( TSKI_FINISHED ); - // ܂ - } - // else - - // ZTݒ萬 pX - vreg_ctr[ VREG_C_STATUS_1 ] &= ~REG_BIT_ACCERO_ERR; - acc_retry_count = 0; - - // ÕS~L΃Jǂ - if( ACC_VALID ) - { - if( system_status.pwr_state == ON ) - { - u8 temp[ACC_RAW_DATA_SIZE]; - iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | ACC_REG_FLG_BURST_ACCESS ), 6, temp ); - } - } - - // ZTɏɂĂŒSoC܂Ă܂Ȃ - DI_wt_chk(); - if( acc_setting_sent != ( vreg_ctr[VREG_C_ACC_CONFIG] & ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ))) - { - // DIԂ̂܂܋A - return ( TSKI_CONTINUE ); // ƊԂčēxɂ // Ƃ悢H - } - } - - // DIԂ̂܂܋A - return ( TSKI_FINISHED ); -} - - - -/********************************************//** - xZT荞 - - I2CgpȂ̂ŁAǂݏo^XN̓o^ŝ - ***********************************************/ -__interrupt void intp23_ACC_ready( ) -{ - EI(); - if( ( vreg_ctr[VREG_C_ACC_CONFIG] & ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ) ) != 0x00 ) - { - // xZT on - if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == SLEEP ) ) - { -// if( ACC_VALID ) // mFsv - { - renge_task_immed_add( tski_cbk_accero ); - } - } - } -} diff --git a/snake_branches/2.4_q_test/accero.h b/snake_branches/2.4_q_test/accero.h deleted file mode 100644 index fbf80d6..0000000 --- a/snake_branches/2.4_q_test/accero.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef _accero_ -#define _accero_ - - -#include "jhl_defs.h" -#include "pedometer.h" - - -/////////////////////////////////////////////////////////// -task_status_immed tski_cbk_accero( ); -task_status_immed tski_acc_setup( ); - - -#endif diff --git a/snake_branches/2.4_q_test/adc.c b/snake_branches/2.4_q_test/adc.c deleted file mode 100644 index 94920c7..0000000 --- a/snake_branches/2.4_q_test/adc.c +++ /dev/null @@ -1,475 +0,0 @@ -/* ======================================================== - adc.c - - cJZ - nintendo - '09 Apr - $Id$ - ======================================================== */ -#include "incs.h" -#include "adc.h" -#include "pm.h" - -#include "led.h" - -#include "vreg_twl.h" -#include "i2c_mcu.h" - - -// ===================================================== // -static bit adc_updated; -static bit vol_changed_by_ctr; -bit vol_changed_by_twl; -static u8 vol_old; - -static u8 adc_raw_vol; -static u8 adc_raw_dep; - -u8 vol_polling; -u8 vol_level_twl; - -extern const u8 slider_to_codec[]; - - - -// ===================================================== // -typedef struct filter_work -{ - u8* value_used; - s8 diffs; // KIKAN̕΂ - s8 kikan; - u8 large_diff_count; -}filter_work; - - -static filter_work work_vr_3d = { - &vreg_ctr[ VREG_C_3D ] - // ͕̂slł悵Bconstɂ_ - }; - - -static u8 vol_data_ctr; -static u8 vol_data_ctr_tmp; -static filter_work work_vr_vol = { - &vol_data_ctr_tmp - // ͕̂slł悵Bconstɂ_ - }; - - -// twl 8iKvol̃jAl̋E -/* - twl32 -> 8 e[u - 0`1,`4,`8,`13,`18,`23,`28,31 - */ -static const u8 TWL_VOL_BOUNDARY[] = { - 1, 4, 8, 13, 18, 23, 28, 31 -}; - -// ===================================================== // -extern void nop8(); -static void adc_filter( u8 new_val, filter_work* work ); -static u8 adc_scaling( u8 ); -static void update_twl_vol( u8 sent_index ); - - - -// ===================================================== // -#define INTERVAL_TSK_ADC 15 - - - -/********************************************//** - ADCݒƁAJn - - ȉ̃s͎ɂőEĎ܂B - - BT_TEMP,_P - - ADIN1 - - VOL - - ***********************************************/ -void tsk_adc( ) -{ - if( adc_updated ) - { - adc_updated = false; - - // 3D ///////////////////////////////////////// - vreg_ctr[ VREG_C_3D ] = adc_raw_dep; // l - - // Volume ///////////////////////////////////// - { - vreg_ctr[ VREG_C_VOL_ADC_RAW ] = adc_raw_vol; - - adc_filter( adc_scaling( adc_raw_vol ), &work_vr_vol ); // ʂ*work_vr_volwvol_data_ctr ǂ݂ɂ... - vol_data_ctr = vol_data_ctr_tmp / 4; - - if( vol_old != vol_data_ctr ) - { - vol_changed_by_ctr = true; - vol_old = vol_data_ctr; - vol_polling = 3; -// renge_task_immed_add( tski_vol_update ); œo^ - } - } - - // obe /////////////////////////// - /* Ă΂܂ */ - } - - // YꂪƂȂ̂Ń|[O orz - if( vol_polling < 5 ) - { - renge_task_immed_add( tski_vol_update ); - vol_polling = (u8)(200 / SYS_INTERVAL_TICK) + 5; // 5/sec - } - vol_polling --; - - - ADCEN = 1; - ADM = bits8(0,0,0,0, 1,0,1,1); // ZNg[hAAfCLK/6 // - - ADPC = 0x06; // ADC|[g̃ZNg - ADS = ADC_SEL_3D; - nop8(); - ADCS = 1; // ADJnB // ܂Ł@@܂ł1us=8clkȏJ - - ADIF = 0; - ADMK = 0; -} - - - -/********************************************//** - vol݂̃XC_̈ʒuɋXV - ***********************************************/ -void vol_reset() -{ - vol_old = vol_data_ctr; - vreg_ctr[ VREG_C_SND_VOL ] = vol_data_ctr; // 64i -} - - -/********************************************//** -@VolXV܂B - - @Ȏɓo^܂B - - - [U[VolXC_𓮂 - - HorizonɋXVwꂽ@icodecZbgj - - TWLAvVol - ***********************************************/ -task_status_immed tski_vol_update() -{ - static u8 sent_index, sent_index_twl; - static bit last_modifyer_is_twl; // false = ctr - - if( !( system_status.pwr_state == ON ) || - ( system_status.pwr_state == SLEEP )){ - return( TSKI_FINISHED ); - } - - // ǂ̉ʂɂ́H // - if( vol_changed_by_ctr ) - { - // XC_ - vol_changed_by_ctr = false; - last_modifyer_is_twl = false; - sent_index = vol_data_ctr; - } - else if( vol_changed_by_twl ) - { - // TWLAv - vol_changed_by_twl = false; - last_modifyer_is_twl = true; - if( vreg_twl[ REG_TWL_INT_ADRS_VOL ] == 0 ) - { - sent_index_twl = 0; - } - else - { - sent_index_twl = vreg_twl[ REG_TWL_INT_ADRS_VOL ] *2 +1; - } - sent_index = sent_index_twl; - } - else - { - // force_slider0ɂƂ & ܂Ƃ - // XC_TWL̍ŌɃZbgZbg - if( last_modifyer_is_twl ) - { - sent_index = sent_index_twl; - } - else - { - sent_index = vol_data_ctr; - } - } - - // WX^̍XV // - vreg_ctr[ VREG_C_SND_VOL ] = sent_index; - - // twlXV - update_twl_vol( sent_index ); - - // codecɓ` - /// lł - iic_mcu_write_a_byte_codec( CODEC_REG_VOL, slider_to_codec[ sent_index ] ); - - // set_irq( VREG_C_IRQ0, REG_BIT_VR_SNDVOL_CHANGE ); // 荞ݔp~ - return( TSKI_FINISHED ); -} - - -/********************************************//** - TWL ։ʂʒmB - - iKႤ̂ŁÃPAs - ***********************************************/ -static void update_twl_vol( u8 sent_index ) -{ - // XP[O - if( sent_index == 0 ) - { - vreg_twl[ REG_TWL_INT_ADRS_VOL ] = 0; - } - else if( sent_index <= 4 ) - { - vreg_twl[ REG_TWL_INT_ADRS_VOL ] = 2; // P̓~bVOŐ - } - else - { - vreg_twl[ REG_TWL_INT_ADRS_VOL ] = sent_index/2 ; - } - - // 8iK̃xB@荞݂̂ɕKv - { - static u8 vol_twl_old; - - if( vol_twl_old != vreg_twl[ REG_TWL_INT_ADRS_VOL ] ) - { - // 8ixɕϊ - u8 new_level = 31; - u8 i; - - vol_twl_old = vreg_twl[ REG_TWL_INT_ADRS_VOL ]; - - for( i=0; i<=7; i++ ) - { - if( vreg_twl[ REG_TWL_INT_ADRS_VOL ] <= TWL_VOL_BOUNDARY[ i ] ) - { - new_level = i; - break; - } - } - vol_level_twl = new_level; - } - } -} - - - -/********************************************//** -@ADC isr - -@}`vNT̏Ԃ`FbNĂׂ֓]A - -@OŎ̃`lN - -@@ʂI~߂ - ***********************************************/ -__interrupt void int_adc( ) -{ - volatile u8 adc_data = ADCRH; - - switch ( ADS ) - { -/* - case ( ADC_SEL_AMB_BRIT ): - // ‹邳 // - vreg_ctr[ VREG_C_AMBIENT_BRIGHTNESS ] = adc_data; - break; -*/ - - case ( ADC_SEL_3D ): - // 3D{[ // - EI(); - adc_raw_dep = adc_data; - break; - - case ( ADC_SEL_VOL ): - // ʃXC_ // - EI(); - if( system_status.model == MODEL_TS_BOARD ) - { - adc_raw_vol = adc_data; - } - else - { - adc_raw_vol = 255 - adc_data; - } - - break; - - case ( ADC_SEL_BATT_TEMP ): - // obex // - EI(); -#ifdef _ENABLE_HAL_ - if( vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ] == 0xFF ) // HAL -#else - if( 1 ) -#endif - { - raw_adc_temperature = adc_data; - } - else - { - raw_adc_temperature = vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ]; - } - - if(// (( vreg_ctr[ VREG_C_STATUS_1 ] & REG_BIT_MGIC_ERR ) == 0 ) && - (( system_status.pwr_state == ON ) || - ( system_status.pwr_state == SLEEP ) - ) - ) - { - renge_task_immed_add( tski_BT_temp_update ); - } - break; - -/* Ă΂܂ - case ( ADC_SEL_BATT_DET ): - // obe[J[ // - break; -*/ - } - -// Ƃ܂Ƃȏ肻 - if( ADS < ADC_SEL_BATT_DET ) - { - ADS += 1; // ̃`l - } - else - { - ADCEN = 0; // ~߂Ă܂ - adc_updated = true; - } - ADIF = 0; // ȂƁAÕ`l̃f[^̊ŒɊ荞މ”\ -} - - - -/********************************************//** - adcWX^ǂݏoÂ܂ܕԒlɂB - - tsk_adcƋ邱ƂlĂ܂B - ***********************************************/ -u8 get_adc( u8 ch ) -{ - u8 temp; - - ADMK = 1; - ADIF = 0; - - ADCEN = 1; - ADM = bits8(0,0,0,0, 1,0,1,1); // ZNg[hAAfCLK/6 ///火 - - ADPC = 0x06; // ADC|[g̃ZNg - ADS = ch; - - nop8(); - - ADCS = 1; // ADJnB /// ܂Ł@ɁA1usȏJ - - ADIF = 0; - while( ADIF == 0 ){;} - temp = ADCRH; - ADCEN = 0; - - ADMK = 0; - return ( temp ); -} - - - - - -/********************************************//** - VR̉“͈͂lăXP[O - - Volp@g񂷂Ȃ炻̂Ƃǂɂ - ***********************************************/ -static u8 adc_scaling( u8 orig_val ) -{ - u16 temp; - - if( orig_val <= vreg_ctr[ VREG_C_VOL_CAL_MIN ] ) - { - return( 0 ); - } - if( orig_val >= vreg_ctr[ VREG_C_VOL_CAL_MAX ] ) - { - return( 255 ); - } - - temp = (u16)(( orig_val - vreg_ctr[ VREG_C_VOL_CAL_MIN ] ) * 256 ) / ( vreg_ctr[ VREG_C_VOL_CAL_MAX ] - vreg_ctr[ VREG_C_VOL_CAL_MIN ] ); - if( temp > 255 ) - { - temp = 255; - } - - return( (u8)( temp & 0xFF ) ); -} - - - - -/********************************************//** - qXeVX V2 - - ľܓIȓ܂ - ***********************************************/ -#define KIKAN 16 -static void adc_filter( u8 new_val, filter_work *work ) -{ - if( abs( new_val - *( work -> value_used )) > 2 ) - { - // 傫ꂽ - work -> large_diff_count ++; - if( work -> large_diff_count > 16 ) - { - *( work -> value_used ) = new_val; - work -> diffs = 0; - work -> kikan = KIKAN; - } - } - else - { - work -> large_diff_count = 0; - // ߏ̒lłAԂłς΂Ă炻Ɋ񂹂 - if( *( work -> value_used ) < new_val ) - { - work -> diffs ++; - } - else if( *( work -> value_used ) > new_val ) - { - work -> diffs --; - } - - if( --( work -> kikan ) == 0 ) - { - if( ( work -> diffs ) == KIKAN ) -// if( ( work -> diffs ) > (s8)( KIKAN * 0.8 ) ) - { - *( work -> value_used ) = *( work -> value_used ) + 1; - } - else if( ( work -> diffs ) == ( -1 * KIKAN ) ) -// else if( ( work -> diffs ) < (s8)( -1 * KIKAN * 0.8 ) ) - { - *( work -> value_used ) = *( work -> value_used ) - 1; - } - work -> diffs = 0; - work -> kikan = KIKAN; - } - } -} - diff --git a/snake_branches/2.4_q_test/adc.h b/snake_branches/2.4_q_test/adc.h deleted file mode 100644 index 6f4ad04..0000000 --- a/snake_branches/2.4_q_test/adc.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef __adc__ -#define __adc__ - -#include "jhl_defs.h" - -/////////////////////////////////////// -// ANI2 P22 -#define ADC_SEL_AMB_BRIT 0x02 - -/* -// ANI3 P23 -#define ADC_SEL_GYRO_YAW 0x03 -// ANI4 P24 -#define ADC_SEL_GYRO_PITCH 0x04 -// ANI5 P25 -#define ADC_SEL_GYRO_ROLL 0x05 -*/ - -// ANI6 P26 -#define ADC_SEL_3D 0x06 -// ANI7 P27 -#define ADC_SEL_VOL 0x07 - -// ANI8 P150 -#define ADC_SEL_BATT_TEMP 0x08 -// ANI9 P151 -#define ADC_SEL_BATT_DET 0x09 - - - -/////////////////////////////////////// -#define CODEC_REG_VOL 0x13 - - - -/////////////////////////////////////// -extern u8 vol_polling; -extern u8 vol_level_twl; - - - -/////////////////////////////////////// -u8 get_adc( u8 ch ); -void vol_reset(); - - - -#endif diff --git a/snake_branches/2.4_q_test/batt_params.c b/snake_branches/2.4_q_test/batt_params.c deleted file mode 100644 index 13bdb83..0000000 --- a/snake_branches/2.4_q_test/batt_params.c +++ /dev/null @@ -1,130 +0,0 @@ -/* ======================================================== - eЃobe[p[^ - $Id: asdf$ - ======================================================== */ -#include "jhl_defs.h" - -#include "batt_params.h" - - -const bt_param_ bt_param[ /*_BT_PARAM_NUM_*/ ] = // drg񂷂̂ f~drp[^ -{ - // ctr //////////////////////////////////////////////// - // BT_PARAM_CTR_MAXELL - { - { - 0xAE, 0xF0, 0xB4, 0x30, 0xB7, 0x40, 0xBA, 0x30, - 0xBB, 0x50, 0xBB, 0xB0, 0xBC, 0x50, 0xBD, 0x10, - 0xBD, 0x60, 0xBD, 0xB0, 0xBF, 0xE0, 0xC2, 0xB0, - 0xC4, 0x20, 0xC7, 0xB0, 0xCA, 0xE0, 0xCE, 0x10, - 0x01, 0xF0, 0x14, 0x10, 0x14, 0x20, 0x06, 0x30, - 0x63, 0x90, 0x49, 0x00, 0x6E, 0x00, 0x77, 0x70, - 0x7B, 0x00, 0x19, 0x00, 0x19, 0x00, 0x17, 0xF0, - 0x1C, 0x60, 0x12, 0x00, 0x12, 0x00, 0x12, 0x00 - }, - 2, // 2 = 19 bit mode - { 92, (u8)(-256* 0.79), (u8)(-256* 4.35) }, // @(u8)LXǧp[^̂܂܂̕ - 0xD800, // VXeƂĂ͗ǍDȓ - { 0xEA, 0xE8 } - }, - - // BT_PARAM_CTR_PANA - { - { - 0x8C, 0x30, 0x9C, 0x10, 0xA5, 0xE0, 0xB0, 0x40, - 0xB1, 0xC0, 0xB2, 0x00, 0xB2, 0x50, 0xB3, 0x10, - 0xB4, 0x90, 0xB6, 0x20, 0xB8, 0x60, 0xBA, 0x50, - 0xBF, 0xA0, 0xC6, 0xB0, 0xCE, 0x90, 0xD0, 0x20, - 0x00, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0x20, - 0x7B, 0x30, 0x68, 0x60, 0x20, 0x00, 0x17, 0x00, - 0x17, 0x30, 0x12, 0xF0, 0x0D, 0xE0, 0x07, 0xF0, - 0x07, 0x00, 0x09, 0x30, 0x01, 0xC0, 0x01, 0xC0 - }, - 1, - { 171, (u8)(-256* 1.00), (u8)(-256* 2.60) }, // @(u8)LXǧp[^̂܂܂̕ - 0xDA20, // VXeƂĂ͗ǍDȓ - { 0x69, 0x67 }, - }, - - // SPFL /////////////////////////////////////////////// - // BT_PARAM_SPFL_MAXELL - { - { - 0xA1, 0x20, 0xB7, 0x50, 0xB9, 0xD0, 0xBB, 0x00, - 0xBC, 0x30, 0xBC, 0x60, 0xBC, 0xA0, 0xBD, 0x10, - 0xBD, 0xC0, 0xBE, 0x70, 0xBF, 0xD0, 0xC2, 0xA0, - 0xC4, 0x00, 0xC8, 0x50, 0xCC, 0x80, 0xD0, 0xB0, - 0x01, 0xA0, 0x25, 0x10, 0x18, 0xB0, 0x17, 0xC0, - 0x95, 0x20, 0x6F, 0xE0, 0x7C, 0x60, 0x35, 0x10, - 0x35, 0x00, 0x37, 0xF0, 0x16, 0xF0, 0x1C, 0xA0, - 0x17, 0x30, 0x11, 0xD0, 0x11, 0xF0, 0x11, 0xF0 - }, - 2, - { 94, (-256* 0.35), (-256* 3.85) }, - 0xDAB0, - { 0xF5, 0xF3 } - }, - - // BT_PARAM_SPFL_PANA - { - { - 0x9C, 0xF0, 0xAD, 0x50, 0xAF, 0xB0, 0xB3, 0x00, - 0xB3, 0xE0, 0XB5, 0x60, 0XB6, 0x70, 0xB7, 0xA0, - 0xBA, 0x00, 0xBC, 0x00, 0xBE, 0x90, 0xC1, 0x60, - 0xC4, 0x00, 0xC7, 0x00, 0xCC, 0xA0, 0xD0, 0xA0, - 0x02, 0x00, 0x19, 0x10, 0x12, 0x00, 0x48, 0x10, - 0x25, 0x10, 0x41, 0xF0, 0x2F, 0xA0, 0x13, 0xF0, - 0x1C, 0xD0, 0x10, 0xD0, 0x0F, 0xA0, 0x11, 0x00, - 0x10, 0xE0, 0x0C, 0x10, 0x0C, 0x00, 0x0C, 0x00 - }, - 2, - { 113, (-256* 0.30), (-256* 2.25) }, - 0xDAA0, - { 0xE7, 0xE5 }, - }, - - // SNAKE ///////////////////////////////////////////// - // BT_PARAM_SNAKE_MAXELL - { - { - 0x9D, 0x80, 0xB7, 0xB0, 0xB8, 0xA0, 0xB9, 0xA0, - 0xBB, 0x40, 0xBC, 0x50, 0xBC, 0xA0, 0xBD, 0x00, - 0xBD, 0x90, 0xBF, 0x30, 0xC0, 0xE0, 0xC3, 0x30, - 0xC5, 0x40, 0xC7, 0x50, 0xCD, 0x40, 0xD0, 0xA0, - 0x01, 0x90, 0x35, 0x10, 0x2F, 0x30, 0x11, 0x00, - 0x29, 0x40, 0x88, 0x50, 0x71, 0xA0, 0x5F, 0xE0, - 0x32, 0xD0, 0x1C, 0xF0, 0x14, 0xF0, 0x1A, 0x80, - 0x1A, 0x80, 0x11, 0x10, 0x12, 0x00, 0x12, 0x00 - }, - 2, - { 86, (-256* 0.6), (-256* 3.675) }, // rcomp, r-hot, r-cold - 0xDAA0, // ocv - { 0xF5, 0xF3 } // compare max, min - }, - - // bt_PARAM_SNAKE_PANA 3ŁH130909XV - { - { - 0x9D, 0xD0, 0xA6, 0x20, 0xAC, 0xE0, 0xAE, 0x20, - 0xB0, 0x40, 0xB2, 0x10, 0xB3, 0xC0, 0xB5, 0x00, - 0xB6, 0x70, 0xB7, 0xD0, 0xB9, 0x20, 0xBC, 0x00, - 0xBE, 0xD0, 0xC4, 0x70, 0xCA, 0x40, 0xD0, 0xA0, - 0x02, 0x00, 0x02, 0x00, 0x24, 0x00, 0x14, 0x00, - 0x16, 0x00, 0x1A, 0x00, 0x38, 0xC0, 0x2D, 0xE0, - 0x29, 0xC0, 0x27, 0xE0, 0x0F, 0xE0, 0x11, 0xE0, - 0x0F, 0xE0, 0x0F, 0x40, 0x0C, 0x00, 0x0C, 0x00 - }, - 2, // 2:19bit 1:18bit - { 95, (-256* 0.85), (-256* 1.9) }, - 55968, - { 230, 228 }, - } - - - // FLOWER ///////////////////////////////////////////// - // BCTR̃obe[gB - - // CLOSER ///////////////////////////////////////////// - // BSPFL̃obe[gB -}; - diff --git a/snake_branches/2.4_q_test/batt_params.h b/snake_branches/2.4_q_test/batt_params.h deleted file mode 100644 index 264bcb7..0000000 --- a/snake_branches/2.4_q_test/batt_params.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef _bt_params_h_ -#define _bt_params_h_ - -// $Id: asdf$ - -#include "jhl_defs.h" -/* - dr CTR | SPFL | YBS - 0 ID = 0 maxell - 120 1 - 360 2 - 750 @ 3 - 1.3k@ 4 - 2.7k 5 pana - 8.2k@ 6 -*/ - - -typedef enum -{ - BT_PARAM_CTR_MAXELL = 0, - BT_PARAM_CTR_PANA, - BT_PARAM_SPFL_MAXELL, - BT_PARAM_SPFL_PANA, - BT_PARAM_SNAKE_MAXELL, - BT_PARAM_SNAKE_PANA, - BT_PARAM_FLOWER_MAXELL, - BT_PARAM_FLOWER_PANA, - BT_PARAM_CLOSER_MAXELL, - BT_PARAM_CLOSER_PANA, - _BT_PARAM_NUM_ -} BT_TYPE; - -typedef struct -{ - u8 rcomp; - s16 up,down; -} rcomp_; - -typedef struct -{ - u8 hi; - u8 low; -} verify_; - -typedef struct -{ - u8 mg_param[64]; - u8 v_scale; - rcomp_ rcomp; - u16 ocv; - verify_ verify; -} bt_param_; - - -#endif diff --git a/snake_branches/2.4_q_test/bsr.hex b/snake_branches/2.4_q_test/bsr.hex deleted file mode 100644 index 5b6a6a3..0000000 --- a/snake_branches/2.4_q_test/bsr.hex +++ /dev/null @@ -1,1014 +0,0 @@ -:02000000610D90 -:0400100043484548D4 -:02001C00F149A8 -:02002400984AF8 -:02002A00E34AA7 -:08003400104CB34B0C4C514E73 -:02004A00474825 -:02005A008148DB -:020062000F4E3F -:06008000A44CDD4C274DED -:0400C0007EFBFF04C0 -:0A00C4001B339499E033F240BFAA09 -:1000CE00C7C1FBF8FFCEABACC736F00071F4C6610A -:1000DE00D8710006F98EA89C018C015C10D1DD0A46 -:1000EE007110A6FB710006F9EF0B8C015C80D161DB -:1000FE00E8710006F98F06F931030EF6B1BBF66111 -:10010E004900DD05618900EFF5FDFE01FD3101FDC0 -:10011E008901FD080AFD3F09FDB52FFDDC2CEFA579 -:10012E00C0C6D7C7360000674C09DE3F318E04F6D5 -:10013E000FC1317B9EFDC411897267318E04F64F5B -:10014E0014896142DF03F6EF01E660610667318EC6 -:10015E00124900207267318E04F64F14896142DF16 -:10016E0003F6EF01E660610687EFBC40F84F3A6197 -:10017E00E88666D161E8FDAC06C6D751065B0C3148 -:10018E001A9F08F94008F90161F8CF08F904D5085B -:10019E00F9DF06710009F9EF04710809F98F09F901 -:1001AE00310505CD3707EF03CD3705D908F9FD61C8 -:1001BE00298F06F95CE39F06F951035B04318EE744 -:1001CE00240000DD1023DD0823DF0E712006F9D791 -:1001DE00713006F9D7714006F9D7717BFACEA010AF -:1001EE00CEA180E5F300000000CEA408F5AAFFD74B -:1001FE008F06F9310508CD0003CD030FEF08CD03AF -:10020E000EF690BFB401CD0408CD0508F521FFCE42 -:10021E0022E9CE23F8CE24F3CE25FACE26FCCE2725 -:10022E005FCE2EFCCF1105F8CF120511CF3500028F -:10023E00CF370019CF530006CBEEFEFFCE3831CEAE -:10024E003970CF38050A308700BF1801BF1A01BFB9 -:10025E001C01BF1E01D7D7C7F616FD9104717BFA9C -:10026E0031329708713297717AFAEF0C717AFAA7D8 -:10027E00F647DFE95203EF01F2C6D7C7C1C1FBF85B -:10028E00FF17A1C1E0C18C0A70C18C0270FDAA02D9 -:10029E001006629D548C01721004C6D7C7C1FBF8BC -:1002AE00FFFD6502D2DD045203EF698B70FDDE03A4 -:1002BE00D2DD077133975202EF5A8C0870FDFA03A4 -:1002CE00FD45048B6C0170FDFA03300400BF240160 -:1002DE00301740BF1C01300400BF22018C0A91DF91 -:1002EE0004F6BF2A01710BE2CE44FF3182E202EF27 -:1002FE00FAAC0C148E449961790C61690A8C0AD19E -:10030E00DFDA8B4CA461F8FD3148FD6E04710BE20F -:10031E00713397F2C0C6D7C7C1FBF8FFFD6502D295 -:10032E00DD045203EF25710AE68B70FDDE03D2DD8C -:10033E00077133975202EF138C0870FDFA038C0A83 -:10034E0070FDFA03FD6E04713397F2C0C6D7C7C1B4 -:10035E00FBF8FFFD6502D2DD045203EF70710AE671 -:10036E00710BE28B70FDDE03D2DD07713397520203 -:10037E00EF5B710BE231229744C73422FBAC0C16B3 -:10038E0052048B99A5A792DFF9C68B9D518C089DBF -:10039E00528C0A9D533184BD02EFFA717ABDCEB1F3 -:1003AE0044CBB422FB8C0A318EBEB8CEBB48714B07 -:1003BE00E1714BE5710ABD8C089E44EF0F710BE69F -:1003CE008C089E448C0A9D50AC0CBD4EF2C0C6D714 -:1003DE00C716FD1D04AF0401BF0C0117FDFA03D2B1 -:1003EE00DD07FD6E045202EF01F2C6D7C716710A81 -:1003FE00E6710BE2669E443182E202EFFAF64204A7 -:10040E0001DD09AF0401BF0C01E2EF01F2C6D7AF67 -:10041E002801085CFB08BF2801FD6402AF28015CBF -:10042E00FBBF2801300400BF2A01301780BF1C011A -:10043E00300400BF2201D7AF2401086C0408BF248A -:10044E0001AF28016C0F086C0B08BF2801FD640278 -:10045E00AF2A01085CFB08BF2A01FD6402ED1D04F2 -:10046E00300400BF2401F6BF2A01300B0BBF280158 -:10047E00FD6402300B0FBF2801FD6402300F0FBF69 -:10048E002801D731449701D77132976A0E03713B19 -:10049E0025713B23E0FD1B0A7120F000FD6402F67E -:1004AE00BF26015024BF1401CB440014300F0FBFE0 -:1004BE002801712397710BE2710AE6FD1D04CE44EB -:1004CE00FF3182E202EFFAFD6E04AF0401BF0C01B0 -:1004DE00713397714297D731349702EFFAFD450485 -:1004EE00713A25713A235A0EFC7128F00071439728 -:1004FE00D77140F00071783002713AE6713BE271CB -:10050E003BEA713BEE5A06FCCF34024AE552FF71CC -:10051E001A52710A52714830027130300271203015 -:10052E0002CF330209CF32020B713031027120310A -:10053E0002713BE6717030028E265CFC9E26716065 -:10054E003002D7717830027148F000D7C72008FB0F -:10055E00F8FFFDA7085014C15008FDD907C0CC07FD -:10056E00048C074C14DE0C8C07318EFD430A615946 -:10057E0007EFEECC07048C074C1461C8ED4806CC8F -:10058E0006008C064C0461C8ED2706300AF9BC0241 -:10059E00F6BBCEABAC31B2D109C73641057184C6BC -:1005AE00DEF3F1C73641057184C661DC9C05713BF3 -:1005BE00D1AC02148F4005997150500561790261DA -:1005CE007900F0E1614900DD09C73641057184C645 -:1005DE00DEC3F1C73641057184C661DC0E059C058C -:1005EE005040C18C07318E31AD128C06318E318D5B -:1005FE0003BDD831FFBDDADADAADD8FD0F0DC0D2AA -:10060E00DD0C5008C15014FDD907C0FDCC0B8C0574 -:10061E00D1DF06615906ED90058C07318EFD470A34 -:10062E00D2DD0C5008C15014FDD907C0FDCC0B8C87 -:10063E0005D1DF06615907ED840571605005CC04C4 -:10064E0000CC05008C054C09DE2B8C05318E04F692 -:10065E001FC1317B9EFDC41189728C05318E04F64B -:10066E004F14896142DF03F6EF01E6600E049C042D -:10067E00615905EFCF41001140F81F3A61E8615909 -:10068E00048C04D1DF08FDCD0BFDDF0CEF0C500800 -:10069E00C15014FDD907C0FDCC0B1008C6D7C7201A -:1006AE0004FBF8FF712B24CC0100F6BC02AC024413 -:1006BE000900DE3EAC0204F60F144100118972AC43 -:1006CE00020C5014896142DF03F6EF01E6600E0161 -:1006DE009C01AC021249005072AC0204F67F1489E0 -:1006EE006142DF03F6EF01E6600E019C01617902C3 -:1006FE00EFBB40F67FFF61F86159018C01D161F8C3 -:10070E00EDA507CC0100717AFAFD91047113007109 -:10071E001B20710303710205E0C15003FD722BC053 -:10072E005013FD1B0A500FC1E0FD722BC0CEABACB7 -:10073E006159018C0191DD068C014C03DF03E6EF5C -:10074E0001F66061FB7121048C014C0861F8CC014B -:10075E000031320705A024FCEF03F524FC4024FCF5 -:10076E0011DC22F524FCF0C15003FD722BC0CE37F4 -:10077E0008CBE4FFFFCBE6FFF7CED4FFCF37000860 -:10078E00F5120561FDE6BC02F6614902DD9F00002F -:10079E000000617902EFF1FDA708D2DFFA5008C11F -:1007AE005014FDD907C0D2FDCC0B1004C6D731842E -:1007BE00BD02EFFA717BBDCBE4FFFFCBE6FFFFCBB3 -:1007CE00D4FFFF717ABED7717BBED7C7C1200CFB99 -:1007DE00F8FF8C0C318E31ADC1317B9DD4C0BC067F -:1007EE008DD49C088C149C0B8C14318E040C00122E -:1007FE008C0B318EBDD813FD9E0F61C8EDA208CEB5 -:10080E00ABACCC05068C0B318EFD3F0AD2DD158CC0 -:10081E000B318EFD430A6169058C05D1DFE7FDD5ED -:10082E0007E2EF71CC0A008C0A4C04DE54F6BC02CF -:10083E00300AF9BBAC06148C089EFD118972AB14FC -:10084E006299AC06A1BC06617900617902F0E161A2 -:10085E004902DFE05040C18C0B318E31AD128C0A53 -:10086E00318E318D03BDD831FFBDDADADAADD8FD68 -:10087E000F0DC0D2DD06FDD507E2EF1961590AEF63 -:10088E00A68C0B318EFD470AD2DD03E2EF076159CC -:10089E000BEDF607F2100EC6D7C7717B9D717BFA72 -:1008AE00FDBC07300AF9FDF20AFD7D0AC6D7FDA789 -:1008BE0008FDCC0BFDD507F5ABFFF2D7C731049B76 -:1008CE00067110B3FBEF047118B3FB8FB3FB7B8E75 -:1008DE0076D1DD5B8FB3FB9D8E4004F903DF22667C -:1008EE005C10D1DD1C8FB3FB5C10D1DD0B5080C1D1 -:1008FE005011FDE534C0EF095040C15011FDE534F3 -:10090E00C04004F903DD064004F904DF22665C02F0 -:10091E00D1DD1C8FB3FB5C02D1DD0B5040C15010FA -:10092E00FDE534C0EF095020C15010FDE534C0C6BE -:10093E00D7C7360000665C80D1DD10675C80D1DFE2 -:10094E000571339AEF0B71329AEF0671040771310C -:10095E009A665C40D1DD10675C40D1DF0571439A29 -:10096E00EF0B71429AEF0671140571419A665C01A4 -:10097E00D1DD10675C01D1DF0571539AEF0B715217 -:10098E009AEF0671340771519A665C02D1DD1067D9 -:10099E005C02D1DF0571639AEF1D71629AEF184008 -:1009AE0007F901DF0871040271619AEF0AC7361068 -:1009BE000571C4C671619A665C04D1DD10675C0472 -:1009CE00D1DF0571739AEF0B71729AEF06714407BE -:1009DE0071719A665C08D1DD10675C08D1DF057114 -:1009EE00039BEF0B71029BEF0671140771019B665F -:1009FE005C10D161E8715AD1C6D7F5F6FBF5F8FB5C -:100A0E00CFFEFBFFCFFAFBFFCFFBFBFFD7C7C1C16A -:100A1E00FBF8FFCEABAC8C02D1DD12616902305C0B -:100A2E0003BBF6614900DDEE618900EFF51004C6E7 -:010A3E00D7E0 -:100A3F005208EF065203EF025206FEE600FE1B00BD -:100A4F00DC16089F03088F0408089F040862FE2421 -:100A5F0000089F0408EEBF00EEBA00C1C514410E96 -:100A6F0011D9D0FF118FD1FF312E45C4C0D7F2312C -:100A7F00A2C401E2D79DE261DD4C09DF12717BFA5E -:100A8F00C18F06089F25FDC0CF060800EE27003155 -:100A9F00F2FA04CF0608004C00DF05D50008DD167A -:100AAF0061DD717BFAD50608DD0ACDE31F61CD61EB -:100ABF00CDEE160061CDFED40061FFFE9A00FCF86A -:100ACF00FF0EFEB20061CDFED5004C09DF0EC18FC7 -:100ADF0006086F25FD9F0608C0EE0400CF0608002C -:100AEF00F8E3D75200EF025202FE3700CF24FD0089 -:100AFF00CF060800BF0408C716629F000841001107 -:100B0F008F1A209B4100118F1B209F0108C6510097 -:100B1F00FE62FFEF025205CF060800C1510CFE0A1C -:100B2F0000C0D7C1511DFE0200C0D761DD717BFA35 -:100B3F0070CEC0A59EC47CFF9EC4609EC461CDD7FD -:100B4F0061DD717BFAC18EC45C1BFED6FFCF060838 -:100B5F0001FED7FFC061CDD731F2FA1AC1AEE4BFA3 -:100B6F0016FDAEE6BF18FDAED4BF1AFD30FFFFBEB7 -:100B7F00E4BEE6BED4C0D731F2FA11C1AF16FDBE46 -:100B8F00E4AF18FDBEE6AF1AFDBED4C0D7C1BF1C7F -:100B9F00FD13BF1EFD15BF20FD17BF22FDC0D7AF30 -:100BAF001CFDDB1EFDEB20FDFB22FDD7534B30520E -:100BBF005430324E323030475631323000FFC15050 -:100BCF00FEFEAB0061DD717BFACF060800FE0A0066 -:100BDF00FEA4FF61CDF8E3EECF00C7FB0408BF16FC -:100BEF00FD8FC0009C05C5C337040600BF18FD3537 -:100BFF0036310C300000522BFE6600C2C4C630DF07 -:100C0F000BB800300000B8022004AF18FDB8003058 -:100C1F000F00B802AF16FD61FF520AFE3AFFECF863 -:100C2F00FF0E717BFAC1C7FB04088C05C65C80FE02 -:100C3F000200C0D761DD717BFA70CFC0FFA59FC0E6 -:100C4F00007CFF9FC000609FC00061CDD7618BFE0D -:100C5F00E2FF717BBE410011FB000017CEFC00616B -:100C6F00CB089EFDF31161C999A58392DFF7D7FEDB -:100C7F00B1FED524FDDF23C1CF0308035109FEF4D4 -:100C8F00FDC0D2DF37FE3800A20408CF030807519A -:100C9F0009FEE1FDD2B20408DF22C7FB040831834D -:100CAF0002C6D7C6510AFECCFD624C1FDF06CF2409 -:100CBF00FD01EF04CF24FD00C0EE5BFEC0EE55FE3C -:100CCF00C7C1FB04088B31196C0161589BC0C6D793 -:100CDF00717BFAFE4DFEAF0408040600C1143643C3 -:100CEF000C300000522DF3FE77FF8FC000FE2BFE5D -:100CFF0061CF5C807C8073C0041900CEFC0F61CB88 -:100D0F00C55404EF03C55417FE18FEC7360008BBC1 -:100D1F00629C0288089C03D1DD334C41DE2F70F1B9 -:100D2F00312DB161090033081C000851FF612A41C0 -:100D3F000E118FD0FF613B118FD1FF6138DC0E8B0D -:100D4F005C03DF0964C6C4FE2BFDEECAFDC6C4EE0C -:020D5F00C3FDD2 -:100D610061CF5100718C7109FECBF800FEFCE801E6 -:100D710000F6BF00F953C0F693935820FEDFF94106 -:100D81000036624E34CCFCEF05118B99A7A51744B0 -:100D9100AC4EDFF53602F930CCFCEF04CC0000A7F5 -:100DA10047DFF9410036AC4E3420FEEF05118B9937 -:100DB100A7A51744BC4EDFF53630FE3096FEEF0492 -:100DC100CC0000A747DFF9FCCE0000EFFE61DD712A -:100DD1007BFABEF0ADD8BEF200AEF661CDD7C361ED -:100DE100DD717BFABEF0ADD8BEF200DBF6FFADDC03 -:100DF100BEF000AEF6BDD8AEF40312ADDABEF2001D -:100E0100AEF661CD03BDDAC2D7C3F33174D908831D -:100E1100C1F626D8BDD8C031750683C312F623C2E8 -:100E2100FD2C0E93DF0312F623C2D7440000DD260A -:100E310061DD717BFACFE80080BEF6F6BEF4BEF24A -:100E4100ADD8BEF0CFE800818FE8003103FAAEF0F3 -:100E5100F5E80061CDD7B1D7C3F33174D90883C1A7 -:100E6100F626D8BDD8C0317505C312F623C2FD7A66 -:100E71000E93DF0312F623C2D7440000DD2761DDA4 -:100E8100717BFACFE80080BEF6F6BEF4BEF2ADD8B3 -:100E9100BEF0CFE800818FE8003103FAAFE000F542 -:100EA100E80061CDD7ADD8D7C3F33174DB0F83C16F -:100EB100F626D8BDD861317026DABDDAC031750D9C -:100EC10083C312F626DCBDDC61317023C2FDE20E64 -:100ED10093DF0CF626D8BDD861317026DABDDAC2AF -:100EE100D7C161686BDC6BDDC0DD2F61DD717BFA21 -:100EF100CFE80080BEF4ADDCBEF6ADD8BEF0ADDA11 -:100F0100BEF2CFE800818FE8003103FAAEF0BDD820 -:100F1100AEF2BDDAF5E80061CDD7F6BDD8BDDAD7BE -:100F21008292DD2B61DD717BFACFE80080BEF0F6A5 -:100F3100BEF2BEF46208BEF6CFE800818FE8003150 -:100F410003FAAFE0006072AEF0F5E80061CDD76062 -:100F510072F6B1D706DABDDAADDC06D8BDD861D8F4 -:100F6100A6DAD7D1DD17C1C3DAD89DD8ADDA311CE5 -:100F710061EEB4D8DFF8BDDA13BDD8C2C0D7D1DD78 -:100F81001BC1C3DADA9DDAADD8311E33311E33719C -:100F9100F9B4DADFF4BDD813BDDAC2C0D746D8DD63 -:100FA1000771FF7177D971C0D75BDB9DDB605BDABD -:100FB1009DDAADDC5BD9085BD808BDD8D7C3C7F3D0 -:100FC100728EFDC162314C410036584E1161A072E2 -:070FD100C09EFD62C6C2D7FD -:0A0FF60031373A33313A353100004B -:0A20000031373A33313A3531000030 -:10200A0005214F7B9EC5E9000104080D12171C1F0C -:10201A00080100001F003B005A0078009700B50035 -:10202A00D400F300110130014E01192634445362E1 -:10203A006E777D80807D776E625344342619100A4C -:10204A0008080808080808080A10AEF0B430B740B3 -:10205A00BA30BB50BBB0BC50BD10BD60BDB0BFE014 -:10206A00C2B0C420C7B0CAE0CE1001F014101420C8 -:10207A000630639049006E0077707B0019001900E2 -:10208A0017F01C6012001200120002005C003600F9 -:10209A00A70000D8EAE88C309C10A5E0B040B1C097 -:1020AA00B200B250B310B490B620B860BA50BFA014 -:1020BA00C6B0CE90D02000200020002000207B3027 -:1020CA00686020001700173012F00DE007F00700D3 -:1020DA00093001C001C00100AB000000670020DA2E -:1020EA006967A120B750B9D0BB00BC30BC60BCA0A6 -:1020FA00BD10BDC0BE70BFD0C2A0C400C850CC8045 -:10210A00D0B001A0251018B017C095206FE07C60F0 -:10211A003510350037F016F01CA0173011D011F029 -:10212A0011F002005E00A7FF27FCB0DAF5F39CF07D -:10213A00AD50AFB0B300B3E0B560B670B7A0BA00A7 -:10214A00BC00BE90C160C400C700CCA0D0A00200F1 -:10215A00191012004810251041F02FA013F01CD0BE -:10216A0010D00FA0110010E00C100C000C0002009F -:10217A007100B4FFC0FDA0DAE7E59D80B7B0B8A052 -:10218A00B9A0BB40BC50BCA0BD00BD90BF30C0E0F0 -:10219A00C330C540C750CD40D0A0019035102F3074 -:1021AA0011002940885071A05FE032D01CF014F071 -:1021BA001A801A801110120012000200560067FFDE -:1021CA0054FCA0DAF5F39DD0A620ACE0AE20B040D6 -:1021DA00B210B3C0B500B670B7D0B920BC00BED03B -:1021EA00C470CA40D0A002000200240014001600E5 -:1021FA001A0038C02DE029C027E00FE011E00FE0F7 -:10220A000F400C000C0002005F0027FF1AFEA0DA44 -:10221A00E6E47F7E7D7C7A79787776757472717060 -:10222A006F6E6D6C6A6968676665646261605F5E3D -:10223A005D5C5A5958575655535251504F4E4D4B53 -:10224A004A494948474645434241403F3E3D3B3A59 -:10225A00393801020203030200FEFBF7F3F0F0F340 -:10226A00FA041225384D5F6E777A776E5F4D3825FE -:10227A001204FAF3F0F0F3F7FBFE00020303020282 -:02228A00010051 -:10228C008D3DB43DD1DF26CD3D1EFD4423FDE52221 -:10229C003132960D3104960931329A05713304EFBF -:1022AC0003713204FD1823FDBA22FD1B26D771538E -:1022BC0096D432DD05B43271529631229607313202 -:1022CC009A03715296715496714102314402057110 -:1022DC0040B3FBD77148B3FBD78D304B3BDC114A75 -:1022EC0030B9DE0C4A3E28DE03A43ED7713396D7B4 -:1022FC008D3C4B30DE054A30BDDC0C4A3F28DE03FA -:10230C00A43FD7713296D7F43EF43FD731429A0CA2 -:10231C004A4002DE03A440D7712396D7313204120F -:10232C0040AFFB3CDE0C8FB2FB5C01D1DF047123B0 -:10233C0096D7712296F440D7C7C1FBF8FF31329A79 -:10234C00067130B3FBEF047138B3FB7144967137EF -:10235C009ADE4F71349A71419631329A0E5002C105 -:10236C005011FDE534C0CD3229EF37E0C15011FDDD -:10237C00E534C0F43217C15002FD5A2BC0D2DF0D28 -:10238C008B318E318D080E01081C00BD34AD3444E8 -:10239C00009BDC05D5AFFBDF095020C15011FDE5DA -:1023AC0034C0C0C6D78D209D41FDF323FD8E2BD5A7 -:1023BC0007F9DD04710396D78D414B2061F8316428 -:1023CC00961C716396FD91044A4107DD054A41FF55 -:1023DC00DF098F06F9310303FD8224FD9624710277 -:1023EC00963079256194D7C77162017172015003DF -:1023FC00FD1B0A5008FD6237629D305009FD6237A3 -:10240C006276716301711806F94A30F1DC0BE5074D -:10241C00F9F508F9CD3707EF0E4A3004DE06CF0781 -:10242C00F902EF03F507F95008C1506CFD8902C0A1 -:10243C0092DF08D45461F8711006F94007F901DFF6 -:10244C0005710A22EF06710B22710302CD2007578A -:10245C0000674C08DE1073090A20614EDC05679D8D -:10246C0020EF0387EFEB4A2007DF09D507F961F866 -:10247C00CF07F903C6D7500AFD1B0A304000C150E4 -:10248C0006FD3D2BC05096ED1B0AC72006FBF8FF3E -:10249C00D507F961E8ED7525304A57C1503EFD3D31 -:1024AC002BC0D2DD077100B2FBED75257108B2FBB4 -:1024BC0017040200C15004C1500CC1506CFDAA029B -:1024CC001006EA38AA48318D12AA48318E616B0881 -:1024DC00616A08C1500EFD3D2BC0F690C1500CFD39 -:1024EC003D2BC0CC01008C014C04DE28313497020A -:1024FC00EFFA712297EA388C015010D605C15010B2 -:10250C00C18C01D6044000C1506CFD5C0310066107 -:10251C005901EFD250A5FD1B0AEA38AA48318D1299 -:10252C00AA48318E616B08616A08C1500EFD3D2BC3 -:10253C00C050A5FD1B0A5004C1506CFD8902C0623D -:10254C009C01EA388A4B4E0161C3048A4A4E01173A -:10255C00040200C15004C1500CC1506CFD5C03104E -:10256C0006F6C1503EFD3D2BC01006C6D7C78D42A6 -:10257C004B3061F8ED18264A4428DE05A444ED18CA -:10258C0026F4448D309D428D305070D612307351EC -:10259C00230480001231FF318E039D439FAEFBF666 -:1025AC008D437C804C95DC1B8D43318F241400EAC9 -:1025BC0038BDD8AA44FDCE0D1231FF318E03318FB8 -:1025CC0016EF198D43318F241400EA38BDD8AA4672 -:1025DC00FDCE0D1231FF318E03318F16EA388A424F -:1025EC007217F3031644000171FE61C836FF001721 -:1025FC0001DE02F61617BD7CC7500CFD3D2BC0D278 -:10260C00DF068D309D42EF047100B2FBF2C6D7C7D6 -:10261C002008FBF8FF4007F901DD064007F902DF4F -:10262C001C17040600FD602CD2DF0A8C069C058C5E -:10263C00079C04EF4ECC0563CC0400EF4617040650 -:10264C0000FD602CD2DD0F7100B2FB710396CC053E -:10265C0000711297EF2D7108B2FB8C06318E318D03 -:10266C00080E07081C00BBEA388A4072ABFD210F2C -:10267C00BB8C019C05D1DF08CC0501CC0400EF0319 -:10268C008B9C0417040600FD6B2CD2DD06CC06C80F -:10269C00CC07008C069FB1FB8C06318E318D080E59 -:1026AC0007081C00BD34AD344401A5DC08CC036420 -:1026BC00F6BD46EF48AD3426464401A0DC08CC03F9 -:1026CC001EF6BD46EF37AD3444819DDC09CC030AC0 -:1026DC00C946F401EF27AD3444019BDC09CC03055A -:1026EC00C946F401EF17AD34440191DC09CC030069 -:1026FC00C946F401EF07711297C946F4013132044F -:10270C000C31249608CC0564CC0400EF0D8C034EE0 -:10271C0005DE078C039C05CC04008C059FAFFB8C5D -:10272C00049FB0FBFDED2B8D484E05DD2840AFFB23 -:10273C000BDE054A480BDE1440AFFB06DE054A48AB -:10274C0006DE09D5AFFBDF0DD448DD095020C150A2 -:10275C0011FDE534C08FAFFB9D48FD2A2C1008C637 -:10276C00D7C75601D837C15002FD722BC08F09F95B -:10277C003105075012FD1B0AEF0E500AFD1B0A71A2 -:10278C002010055008FD1B0A8D376C0870C15002D3 -:10279C00FD722BC05003FD1B0A8D376C1870C15095 -:1027AC0002FD722BC05016FD1B0A5003FD832B62D9 -:1027BC005C01D1DD0F7170B3FB5002C15013FDE50C -:1027CC0034C056006672C6D7C75004FD832B625CBA -:1027DC0003D1DD405014FD6B2834B3FB895C9F9909 -:1027EC008A0C7CFF50FF5C14D1DD228A0C7CFF5CD0 -:1027FC00147234B7FB89616A9971620756003162B1 -:10280C0007058666D1DFF7716307716B2734C6FB4A -:10281C00895CEB995002FD832BD2DD398D376C101E -:10282C0070C15002FD722BC0E0FD1B0AD837C1509D -:10283C0002FD722BC05033FD1B0A8F09F9310309BD -:10284C0071281005500AFD1B0AF0C15002FD722BB5 -:10285C00C07178B3FBE0C15013FDE534C0C6D7C7D7 -:10286C00C12004FBF8FFCC02005004FD832B629CBA -:10287C00038C045C20D1DD0E8C036C019C038C0258 -:10288C006C209C02EF138C045C10D1DD0C8C035C6F -:10289C00FE9C038C026C109C028C045C08D1DD0E37 -:1028AC008C036C029C038C026C089C02EF138C044E -:1028BC005C04D1DD0C8C035CFD9C038C026C049CD1 -:1028CC00024008F903DF088C03D161E8CC03028CC9 -:1028DC0003D1DD05501AFD1B0A8C0370C15004FD99 -:1028EC00722BC08FB3FB5C9F728C03318E316D14D5 -:1028FC008C03318E314D616D08616C5C606162627C -:10290C009FB3FB8FBFFB7CFF50FF5E02D1DD278F97 -:10291C00BFFB7CFF5E027234B7FB89616A997162FE -:10292C0007CC0100316207086159018C01D1DFF439 -:10293C00716307716B27F21006C6D7D9A7FBC1507C -:10294C0006FD722BC0D9A8FBC15007FD722BC0D756 -:10295C00FD4729F2D7C716664C02DD044C04DF058F -:10296C00CD3A08EF02F43AC6D7C7711300711B2099 -:10297C00710303710205E0C15003FD722BC05013AB -:10298C00FD1B0AD83AC15005FD722BC0500FC1E097 -:10299C00FD722BC0500AFD1B0A7103055008FD1B6C -:1029AC000A501FC1E0FD722BC05012FD1B0A5003D0 -:1029BC00FD832B625C01D1DF03E2EF12F0FD832B70 -:1029CC00629D363602F9C75008FD5A2BC0F2C6D7A5 -:1029DC005003C1FD722BC0710203711A20FD1A2B1A -:1029EC00F431D75003FD832B625C01D1DD155014FB -:1029FC00FD6B28FDD4275014FD1B0AE0C15003FDCC -:102A0C00722BC0711300711B207103035014FD1B3A -:102A1C000AF0C1E0FD722BC0F0C15003FD722BC057 -:102A2C00D7C72004FBF8FFCC02008D319C0350105B -:102A3C00C150A4FD8902C0629D31D454DD04F2ED75 -:102A4C00F72A8C037B315C08D1DD0F8D315C08D10A -:102A5C00DF05CC0210EF03CC02208C037B315C042D -:102A6C00D1DD158D315C04D1DF088C026C049C0225 -:102A7C00EF068C026C089C028FB2FB5CF3728D31FA -:102A8C005C0C6162629FB2FB8FBEFB7CFF50FF5EF1 -:102A9C00029C02D1DD1F34B6FB896E02997162076C -:102AAC00CC0100316207086159018C01D1DFF4714E -:102ABC006307716B278D315C40D1DD095002C15029 -:102ACC0012FDE534C08D315C01D1DD08E0C150123E -:102ADC00FDE534C0717AFA8D315C41D1DD0C5A318F -:102AEC00BED831C15010FD8E47C0F21004C6D7FDC0 -:102AFC006D27F2D7FDD427F2D7C78FC6FB7617FD0B -:102B0C006B28664FC6FBDFF2F5C6FBF2C6D75064E6 -:102B1C00FD1B0AFD762C6261FB711196F171149606 -:102B2C0061DC70C15012FD8E47C0FD9336CD63033E -:102B3C00D7C7C1C1FBF8FFAC0ABB17C15002C18C8F -:102B4C000270C1506CFD5C0310061004C6D7C7C1DF -:102B5C00FBF8FFAC08C15002C18B70C1506CFDAAD0 -:102B6C00021006C0C6D7C78806166770C1C7508446 -:102B7C00FD25031004C6D7C716C75084FD8902C0B3 -:102B8C00C6D7C74A2004DE045600EF0256018F0850 -:102B9C00F9318FE7240000DD1A23DD0B23DD0C2334 -:102BAC00DD1123DD0CEF0C8686EF0851046106EF76 -:102BBC0002868666318F12504CD633514CD6610A40 -:102BCC00045420BD384008F902DD064008F904DF42 -:102BDC0008CD3B54CD3C44EF06CD3B4BCD3C3DC6E4 -:102BEC00D740AFFB3DDC05CF04FC0FD740AFFB1F3C -:102BFC00DC05CF04FC0BD740AFFB0BDC05CF04FC92 -:102C0C0007D740AFFB0661D831320405CF04FC0373 -:102C1C00D7D5AFFBDD04E504FCD7F504FCD7D50410 -:102C2C00F9DF04717396D7FD762C6261FB71019705 -:102C3C0071149671079761C83172961771729671FB -:102C4C000497711196F171049761DC70C15012FDFB -:102C5C008E47C0D7C716C75004FD5A2BC0C6D7C75E -:102C6C0016C75002FD5A2BC0C6D740AFFB0BDE0275 -:102C7C00E2D7F2D77100010571785005713AD57120 -:102C8C003BD18F10055CFC9F1005CF54054AE542E3 -:102C9C0005711042057100420571485005713050A4 -:102CAC000571205005CF530509CF52050B713051DA -:102CBC000571205105713BD5717050058F11055C64 -:102CCC00FC9F1105F422D77178500571080105D7C6 -:102CDC00FD8D38FD9104717AFAFDB123F504F98F5D -:102CEC0006F931051B5003FD832B625C01D161E8B1 -:102CFC00CF04F902CFAFFB64710407714196EF105A -:102D0C00F6710407611012F6B1236061FB714196F4 -:102D1C00FD9530FD3243712299712BE7618461A4DA -:102D2C0061EDEFF8D7C788061666614FDD0967615C -:102D3C004EDE0396EF01866672C6D7C7161714AA25 -:102D4C000412A943DD29AA0412A923FDBC4EC3AC6D -:102D5C0002FDBC4E13C2BDD813FD9E0FDE0C171422 -:102D6C00AA0212AA0403BA04EF051714A9BA04ACF8 -:102D7C00041231FF319E03317F087208C6D77100EF -:102D8C00F200304400BFB601300188BF9001300919 -:102D9C0084BF9E01BF9C01BF9A01BF9801BF9601E1 -:102DAC00BF9401BF9201F53CFF30FE00BFBE01F69F -:102DBC00BFBC01BFB80150EEBFBA01A1BFB201C97F -:102DCC0018FE008F06F9310507F5CDFBCB6CFF0023 -:102DDC00717397716297D7C72004FBF8FF3026FBFD -:102DEC00BC02F6BBAB446400DE0EAC0214CA00009D -:102DFC00617902617900EFEC1004C6D730EF00BFA7 -:102E0C00B401F6BFBA017108F200712304715307C3 -:102E1C00BE6EBE64BE6A712304715307715BD1F43C -:102E2C0057F456716397D78D58B458D1DF6931D4A4 -:102E3C00D105715BD1E457D457DD2E7140B2FBD86C -:102E4C0056F1E734020023DD0625DD0325DF05F608 -:102E5C00BE66EF06D9CCFBF1BE66A4564A5620DFFF -:102E6C0004F456F457CD5819D7CD581E7148B2FBFF -:102E7C00D5CEFBDF04F6BE66D7D9CCFBF14266FF9C -:102E8C00DD15D9CCFBF112AE6643DE05A266FFEF71 -:102E9C0003B266FFCD5803D7C7161714F6B9AA04A8 -:102EAC0012F6231231FF31AE03316FBA02AA04615C -:102EBC0068DD0AAA026168DF04F6B1BA02C6D7C798 -:102ECC00C1FBF8FF8C085080D612AB1413B9AB14AD -:102EDC00AA0412A92312D927FBF133BDD813FD0A7A -:102EEC000EBA02C0C6D731049801D74004F902DFEC -:102EFC0010F6BE64BE6EBE6ABF8EFBBF94FBBF9A5B -:102F0C00FB31749714308AFBFDA42E3090FBFDA48A -:102F1C002E3096FBFDA42EEF713114980D71139881 -:102F2C007108D2FBF45AF459EF60D459DF5A8F264A -:102F3C00FB9D594A5A1FDC177100D2FB4028FBFF3E -:102F4C00DD1CA45B8F28FB4B5BDE13F45AEF0FD810 -:102F5C005AF1A1605C1F9D5A7108D2FBF45BE85AD0 -:102F6C00092AFB70C1308AFBFDCB2EC0E85A094AF6 -:102F7C00FB70C13090FBFDCB2EC0E85A096AFB7088 -:102F8C00C13096FBFDCB2EC0B459308AFBFD472DCA -:102F9C00F313BE6E3090FBFD472DF313BE6A3096D3 -:102FAC00FBFD472DF313BE64D7C736F00071F4DC7C -:102FBC00297170F000CE9D08CE9EC0CE9F80F594F6 -:102FCC00FFF593FFF592FFE597FFE596FFE595FF7B -:102FDC00E598FFCE9C7F7100A6FB711BE3712BE380 -:102FEC00711AE7712BE7717A9D710A9E31929E02DC -:102FFC00EFFA710B9E712398713398714398C6D771 -:10300C00C73122981E712298710A9E31929E02EF4E -:10301C00FA34D4FB3692FF52078B99A5A792DFF9AD -:10302C00710B9EC6D7C78806163132981571329827 -:10303C00C7349CFB3092FF1652078B99A5A792DFE1 -:10304C00F9C6667367189CFBC6D7C77123983134D1 -:10305C00981E713398710A9E31929E02EFFA349247 -:10306C00FF369CFB52078B99A5A792DFF9710B9E3B -:10307C0031449813714398717B9E8FDCFB9E9A8F21 -:10308C00DDFB9E9B717A9EC6D7CFA7FB5CCFA8FBBE -:10309C005FCFC8FB5DCFFCFB36CFFDFBC9D7C7CFDD -:1030AC00A4FB12CFA5FB32CFCCFBFFF5CDFBF5CEAD -:1030BC00FBF5CFFBF5D0FB5600664C64DE0872388E -:1030CC0026FB0086EFF3F5E3FB714A9D712B217112 -:1030DC000A20711A20710203C6D7C788061617F189 -:1030EC00E73403002361E3ED12342361F8EDE93298 -:1030FC00B12361E3EDF3322561F8ED0133B1240D19 -:10310C000061D8ED1234240B0061F8EDDB31236142 -:10311C00F8ED1E322361F8EDEE312361F8ED0B343E -:10312C0024060061F8ED9D32B12561D8EDB9322449 -:10313C00000061F8EDC6322361F8ED12342361F81A -:10314C00ED1034B12361E3ED21332361F8ED32331B -:10315C002361F8ED43332361F8ED32332361F8ED4D -:10316C0054332361F8ED65332361F8ED7433236137 -:10317C00F8ED96332361F8EDA1332361F8EDAC3310 -:10318C002361F8EDB4332402002361E3ED12342300 -:10319C0061F8EDE8332361F8EDBC332361F8EDC73A -:1031AC00332561F8EDD233B124060061D8ED123429 -:1031BC0024000061F8ED14342561F8EDDD332412A0 -:1031CC000061F8ED97322361F8ED8732ED14346726 -:1031DC00D1DD0C30BC3B619434C4FB89616F99ED3B -:1031EC001E34675C02D1DD0730FB2A6194EF0B675C -:1031FC005C01D1DD0530002B6194675C3CD1DD0FA7 -:10320C0030052B6194675C3C7266736218A4FBED0D -:10321C001E3467D1DD625C01D1DD05300800EF01A1 -:10322C00F6609F01FC675C02D1DD03E6EF01F6342A -:10323C0001FC89616899675C04D1DD04E6A1EF01AA -:10324C00F63401FC89616899675C08D1DD05302092 -:10325C0000EF01F63401FC89616899675C10D1DDDF -:10326C0005301000EF01F63401FC89616899675C48 -:10327C0020D161E8716001FCED1E344A5CC8DE08A7 -:10328C00E85C67185AFAA45CED1E34679D5CED1E71 -:10329C0034D44ADF08679FCDFBA44AEF0D4A4A0598 -:1032AC00DE08E84A671811FDA44AED1E34675C0F6E -:1032BC007266736218A4FBED1E344A4A64DE1B4A24 -:1032CC004A01DF0667D161F85701E84A671826FB07 -:1032DC00A44A4A4A0561C8711298ED1E3434A6FB03 -:1032EC0089615F99ED1E34305C29619466736718AF -:1032FC00A4FBED1E3440A9FB6ADF1340AAFB68DF78 -:10330C000D674C6CDF08306F406194713AD5679F44 -:10331C00ABFBED1E34675C7F70C117F1243000FDF0 -:10332C003130C0ED1E34675C3F70C117F1243000A2 -:10333C00FD3130C0ED1E34675C0770C117F12430CD -:10334C0000FD3130C0ED1E34675C1F70C117F124D5 -:10335C003000FD3130C0ED1E346770C117F12430E0 -:10336C0000FD3130C0ED1E34CEABAC710A9E3192F3 -:10337C009E02EFFAD592FFDF05710B9EEFED679E73 -:10338C0099710B9E9FDBFBED1E34714298675C7F3D -:10339C009FDCFBEF7D714298675C3F9FDDFBEF721A -:1033AC00675C3F9FDEFBEF6A675C1F9FDFFBEF6292 -:1033BC003071396194679FE4FBEF57303E3961946B -:1033CC00679FE5FBEF4C3057396194679FE8FBEF43 -:1033DC0041675C01D1DD3BFD3243EF36675C02D1C6 -:1033EC00DD05712A21EF06714A9D712B21675C0165 -:1033FC00D1DD06710300710B20679FE3FBEF1367B0 -:10340C00318EEF0EEF0CEF0A664C5BDE057367181E -:10341C00A4FBC6D7C716664C30DC094C37DE05FD5D -:10342C000C30EF76664C02DF1F8FA6FB5C03728FAD -:10343C0003FC5C03318E316D08616A08128F03FC4A -:10344C005C80312A6162EF61664C3DDF08AE90BD55 -:10345C005EF85EEF54664C3EDF04F85FEF4B664C53 -:10346C004FDF05FD5A43EF41664C61DF134A5CC8E0 -:10347C00DC045700EF06E85C095AFA776772EF290B -:10348C00664C7FDF05FD323CEF1F664C4EDF0B3187 -:10349C00049A045210EF12F2EF0F664C5BDC0452EC -:1034AC00FFEF06667309A4FB72C6D7C7880616170A -:1034BC00F1241000240500DC07244C00DD17EF1765 -:1034CC00717BFA17F104A4FB1489617F99717AFA64 -:1034DC00715298EF02A45CC6D7C7C1C1FBF8FF407C -:1034EC0004F903DD064004F904DF38717BFA8C0221 -:1034FC007309ACFB5E0AD1DF278C02318E04A4FB6E -:10350C0014896E0A99716207717AFACC01003162E2 -:10351C0007086159018C01D1DFF4716307716B27C6 -:10352C00717AFA1004C6D7CF03FC03F501FCF5053C -:10353C00FCF507FCD7C788061617F1E734020025FF -:10354C00DD3D23DD1725DD1C23DD0523DD2BEF3BC6 -:10355C00710299679F06FCCD6303EF2F675C839F15 -:10356C0003FCEF27675C039F05FC675C034C02615F -:10357C00F871229AFD4845EF12679F07FCEF0C6724 -:10358C0091DF08E0C15012FDE534C0C6D7C716174D -:10359C00F1E7240000DD2A23DD1E240300DD0724CF -:1035AC00FB00DD24EF2531329A05308000EF01F667 -:1035BC00086F04FC7208EF198F01FCF501FC72EF27 -:1035CC00107152995235EF09F2EF0666730900FC3F -:1035DC0072C6D7C71617F1E7240000DD3824100097 -:1035EC00DD1C23DD1C23DD30240E00DD182411002E -:1035FC00DD1B240F00DD12243000DD15EF1EE2EF81 -:10360C001D5202EF195204EF155206EF115205EF3D -:10361C000D5207EF09F2EF065203EF0252FFC6D725 -:10362C00C7316498377163988D629FACFB8D619F35 -:10363C00CBFB36D2FCC7D861FD9337618A70618AA7 -:10364C00FDD837C0D866F1312F609D658D604B6514 -:10365C00DD0A7172988D659D60CD63034A6305DE4A -:10366C0008309D366194CD636BB4637150F000CE1D -:10367C00300BCF170006CE3106FD6402717A307123 -:10368C000BE3710BE7C6D78D659D608D659FADFB18 -:10369C00D74004F903DF064004F904DF02F2D73106 -:1036AC0074980C7173987113998D659D67EF313116 -:1036BC0004991F710399711299D506FCDF04F46803 -:1036CC00EF0A8F06FC5002D6A1609D688D689D673D -:1036DC00EF0E311499068D689D67EF048D659D671B -:1036EC008D679FADFBD867FD0537E867091C227015 -:1036FC00C15013FD8E47C0F2D7C7C1C1FBF8FF8C78 -:10370C0002D1DF05F506FCEF1A8C024C05DE06CF64 -:10371C0006FC02EF0E8C02318E1231FE03311F605B -:10372C009F06FC8D694F06FCDD28CC011F8F06FC23 -:10373C009D69CC00008B4C08DE148B730912204F52 -:10374C0006FCDC058B9C01EF05615900EFE78C0151 -:10375C009D641004C6D7C716710AE7710BE371504C -:10376C00F000CE300BCF170006669E31FD6402715F -:10377C007A30710BE33182E302EFFA8D1F7158F04E -:10378C0000710BE772C6D7C7C1C1FBF8FF8FFCFBFA -:10379C004E02DC03F2EF318C024FFDFBDC0452FFD6 -:1037AC00EF268C022FFCFB706131318D128FFDFBEB -:1037BC002FFCFB70613133BDD813FD2C0EBB4400C4 -:1037CC0001DC03F690BB8B721004C6D7C7C1FBF8A3 -:1037DC00FFAC0814A91489708B6128706131FDBC91 -:1037EC004E1344030071FEDC23AC08148A04819A46 -:1037FC0004AC08148A044C11DC10A9148B99AC0885 -:10380C0014CA0200AC0814CA0310EF72AC0814CA34 -:10381C000400AC0814A914894DDE0AAC08148A0201 -:10382C00819A02EF12AC0814A914894D61D308AC2B -:10383C0008148A02919A02AC08148A03919A03D153 -:10384C00DF3CAC08148A024C10DF10A91489318EAD -:10385C00A112AC0814A9146299EF17AC08148A02CF -:10386C004CF0DF0EA91489318EB112AC0814A914D6 -:10387C006299AC0814CA0200AC0814CA0310C0C682 -:10388C00D7ED9038C75600664C0ADE0BF0317E122D -:10389C00F67810FC86EFF0C6D7C7200CFBF8FF17A4 -:1038AC00040600C15006C150A8C15030FDAA021038 -:1038BC0006D2DD1B4A6C04DE05A46CE2EF7034E426 -:1038CC00FB895CFC99FD71397110B2FBF2EF5F71F1 -:1038DC007BFA300600C117040600C130E9FBFDC4B9 -:1038EC004E1004717AFAF46C8FE4FB5C01D1DD2686 -:1038FC004004F903DF205010C180FDE534C0C73609 -:10390C00100571D4C6DE0F17C15006C150A8C150A6 -:10391C0030FDAA0210064004F903DD064004F90448 -:10392C00DF0B8FE4FB5C02D161E8FD7440F2100CFC -:10393C00C6D7D9E5FBC15030FD8902C0629FE8FBB8 -:10394C005008C15011FDE534C0F2D7D9E8FBC1D9FC -:10395C00E7FBC15030FD250310045008C15011FD88 -:10396C00E534C0F2D7C7200CFBF8FFCC09004007A8 -:10397C00F901DF05CC0A02EF03CC0A10CC0B808FC7 -:10398C00E4FB5C039C07D1DF08717AD5CC0807EF08 -:10399C0006717BD5CC082F17040800C15004C15008 -:1039AC00A0C15030FD5C031006624C02DF077110A1 -:1039BC00B2FBF2EF357118B2FBF46CC7361005711F -:1039CC00D4C6DE164004F903DF1017A1C15006C19E -:1039DC0050A8C15030FDAA021006717BFA8FE4FB8F -:1039EC005C034E07DD03E2EF01F2100CC6D7D504E1 -:1039FC00F9DF03F6BD6E4004F901DD0AD478DD036E -:103A0C00B478D7CD78038F04F9318FE723DD0B24FD -:103A1C00020024030061C8ED2A3B8F06F9312349CB -:103A2C00301B00466EDF158FE3FB5C01D161E8F5BE -:103A3C0004F9E0C15010FDE534C0EF1D30770146AC -:103A4C006EDF165002C15010FDE534C0F64674DF2F -:103A5C00088FC8FB5010D6BD74F64674DD36B674AC -:103A6C004674DF30711297EF2B301B00466EDF135C -:103A7C00F64676DF18E0C15010FDE534C0C9765328 -:103A8C0007EF0A307701466E61F8711297F64676A9 -:103A9C0061E8B67631549A08714399F6BD6EEF140D -:103AAC0031449905F6BD6EEF0BA66EF6466E61F8C5 -:103ABC00C96EFFFF31629A194A7005DE16A4704A6E -:103ACC007005DF0FA4705004C15010FDE534C0EF39 -:103ADC0002F47031649A194A7205DE16A4724A72A5 -:103AEC0005DF0FA4725008C15010FDE534C0EF0281 -:103AFC00F472D473DD03B473D731729A174A71051B -:103B0C00DE14A4714A7105DF0DA4715010C1FDE5DE -:103B1C0034C0EF02F4714A710661F8CD7325D7C732 -:103B2C0036100571D4DE0E8FB2FB5C02D1DF06308D -:103B3C00A5386194D24004F903DF1C31220705300B -:103B4C002D2A61943154990C7153995080C15012A3 -:103B5C00FDE534C0FD683BFD8E3BC6D78F03FC5C96 -:103B6C0001D1DD1DD47BDD03B47BD7CD7B098D6406 -:103B7C004B7ADD0D8D649D7A5040C15012FDE534B9 -:103B8C00C0D74004F903DD04F6BD1AD7D5D0FBDF4E -:103B9C0008F6461ADD19B61AD7D9CCFBF1461ADD50 -:103BAC000ED9CCFB12AD1A43DE03A61AD7B61AD720 -:103BBC00717BFAC78FC4FB76F5C4FB717AFA5C1083 -:103BCC00D161E8716299665C0FD1DD57665C01D1F9 -:103BDC00DD05F504F9EF4C665C02D1DD11E0C15056 -:103BEC0003FD722BC0711300711B20710303665C03 -:103BFC0004D1DD11711300711B20D503FC61F87128 -:103C0C000303FD3335665C08D161E871030350058D -:103C1C00FD1B0A7102035003C1FD722BC0711A20E7 -:103C2C00FD1A2BF2C6D7C756FF4A4A1361C8EDF0EE -:103C3C003C8F06F931150D314505300600EF143077 -:103C4C000400EF0F8F06F9314505300500EF04D95C -:103C5C0007F9F1609F28FC8D7C9F29FC713496E656 -:103C6C0061301271049661DC31196162629F2AFC29 -:103C7C00E52BFC31449A05304000EF01F6C131349C -:103C8C000405302000EF01F6C2616B08616A08C1BF -:103C9C0031749A05300400EF01F6C2616B08616A59 -:103CAC0008C131649A04E6A1EF01F6C2616B0861A8 -:103CBC006A08C131549A03E6EF01F6C2616B0861E0 -:103CCC006A9F2CFCF171240461DC9F26FCF1715479 -:103CDC000761DC9F27FCD84AF10104ECFC14A91401 -:103CEC008976A44A6672C6D7C7FD3F098F04F9319D -:103CFC008FE724000061F8EDC93E23DD1B2361F83A -:103D0C00EDDB3D2361F8ED4E3E2361F8ED973E234C -:103D1C0061F8ED693FEDC63EF6BD74711397400531 -:103D2C00F901DF2C31349A1B466EDD04F424EF02CA -:103D3C00A4244A2465DC0FF6BD6EF504F9712299B2 -:103D4C00EDEA3FFDB123AD6E440A0061D8EDEA3FC8 -:103D5C00714299FD9104716396FDB1234007F903FB -:103D6C00DF09712299F504F9EDEA3FFD1B2640B1FC -:103D7C00FB9BDE09712299F504F9EDEA3F714A27A4 -:103D8C007140110571301105713A22715A2271502E -:103D9C001105FD7529D2DD09712299F504F9EDEAB9 -:103DAC003F71103500CF37001D71401205FDDC2925 -:103DBC004005F901DD064005F903DF05F5CDFBEF04 -:103DCC0004CFCDFB03CF04F902FD4729EDEA3FFDFB -:103DDC00802CFDFF04FD3335FDAA30F537FF712B28 -:103DEC00E0F505F9712299CBE43FEFCBE6F6F0FD57 -:103DFC009104713BD48F06F93105285004FD832BB7 -:103E0C00625C03318E315D34B3FB89616899500279 -:103E1C00FD832BD2DD067170B3FBEF047178B3FB1D -:103E2C00FDB123FD8A2D710806F9CF04F9038FA685 -:103E3C00FB5C02D1DD095080C15010FDE534C0EDB2 -:103E4C00EA3FFDEC3F3164992FA47ED47EDD08312E -:103E5C00A4E00A31020C06712BE0FD604031A4E0B5 -:103E6C001731040C13712BE05027C15005FD722B38 -:103E7C00C0CF04F904712299FD55408F06F9312504 -:103E8C000731349A03F504F9EDEA3FFDEC3F3102BA -:103E9C000C15D83AC15005FD722BC05005FD1B0AFC -:103EAC00FD6040CF04F903FD55408F06F93125071D -:103EBC0031349A03F504F9EDEA3FF504F9CFCDFB63 -:103ECC0003F5CEFBF5D0FB717297F6426CFF61E8FF -:103EDC00EDEA3FF6BD74711397F5E4FBFD71397192 -:103EEC007AFAFD082EFDD32CFD5105712B21714B57 -:103EFC009D31349702EFFACE3708CBE4BFFFCBE607 -:103F0C00FFF3CED4FFF5B4FBF5B5FBF5B6FBF5B777 -:103F1C00FBCF37000971481205F6BEE0BEE2BED0F9 -:103F2C00716A27FDEF29714307714B277148100502 -:103F3C007148110571381005713811057133027112 -:103F4C003B22715302715B22715810057158110597 -:103F5C00CF04F905714299F6BD6EFD080AF505F915 -:103F6C00F42431349A04D432DD20E505F9E504F962 -:103F7C008F06F9312568F5F8FBF5F6FB502EFD1B85 -:103F8C000ACF05F903E504F9EF54FDE504FD4423DC -:103F9C00717301713204714302710396716296312F -:103FAC00949E02EFFA712AE7CEA409F5F3003104CE -:103FBC00070261FDE5F300F46AFD3F09CEA4083168 -:103FCC00329A06CF04F905EF09714399E505F9E535 -:103FDC0004F9712BE78F06F9312503F504F9C6D7DF -:103FEC008FE3FB5C01D1DF60D47FDF193102005815 -:103FFC005003FD832B625C01D1DF07F504F97122BC -:10400C0099D7E47FD74A7FF0DF073104003AF47F79 -:10401C00D74A7FC8DF0AF504F9712299CD7FF0D712 -:10402C00310200084A7FFFDD1FA47FD7F0C1500486 -:10403C00FD722BC08FB3FB5C9F9FB3FB7110C4FB55 -:10404C0030BC3B6194CD7FF0D731149706F504F961 -:10405C00712299D7716399F47E717207FD640271B4 -:10406C007307D7FD5A05F2D7717BFAC7200CFBF802 -:10407C00FF8FEAFBF0F9E9FBF303FDBC4E13BC0424 -:10408C008FECFBF0F9EBFBF303FDBC4E13BC028F82 -:10409C00EEFBF0F9EDFBF303FDBC4E13BB717AFAAA -:1040AC00AC04BDD8F6BDDAAC04311EBDDCF6BDDE09 -:1040BC00FDDF0DADD8BDDCADDABDDEAC02BDD8F692 -:1040CC00BDDAAC02311EDADCC3DADEC3BDDCF6BD10 -:1040DC00DEFDDF0DC0BDDEC0BDDCADDEFD550FADC0 -:1040EC00D8BDDCADDABDDEABBDD8F6BDDAAB311E6A -:1040FC00DADCC3DADEC3BDDCF6BDDEFDDF0DC0BD30 -:10410C00DEC0BDDCADDEFD550FDADAADD8FD4344C3 -:10411C00C3C58D8C5C3FF0317E0440FC14C2C0B929 -:10412C00A48CF6BC08BC0A9C078C074C2EDD3D8D7C -:10413C008C0E0770F161DC605C3FF0317E127940CF -:10414C00FCBDD8F6BDDA8C0773095C22318FBDDC5F -:10415C0070BDDEFDDF0DAC08BDDCAC0AFD550FAD4E -:10416C00DABC0AADD8BC08615907EFBDAC08BDD8A4 -:10417C00AC0ABDDAC9DC0004F6FDA90EC9DCFFFFF0 -:10418C00F6FDAA0FADD8BD86AF3AFC4686DD11AF61 -:10419C003CFCBF3EFCAF3AFCBF3CFCAD86BF3AFCDE -:1041AC00AF3CFC423EFCDC46AF3AFC423CFCDE3E03 -:1041BC00AD26423AFCDE374A2A16DC1A4A2AA0DE21 -:1041CC00138D884B2ADE0DAF3AFC268A44691061A8 -:1041DC00C8FD2C42F42AAF3AFC445146DC0AAF3AF3 -:1041EC00FC241027BD28EF0DC928F82AEF074A2A0E -:1041FC00FF61E8A42AAF3EFC423CFCDC18AF3CFC5F -:10420C00423AFCDE10AF3AFC4628DE09F488AF3A9D -:10421C00FCBD8AEF074A88FF61E8A488100CC6D75A -:10422C00717BFAC7710A9E31929E02EFFA8E949FAF -:10423C0034FC8E969F35FC8E979F36FC8E989F375C -:10424C00FC8E939F38FC8E929F39FC710B9E717A79 -:10425C00FA8F37FCFDBE0F76FDC14313BD84D5EF3D -:10426C00FBDF0AD5F0FBDF05D5F1FBDD25F6B1460A -:10427C0084DF11C9843722665C0391DF060A841837 -:10428C001A85009617FDE44413FD044331049A0289 -:10429C00EF61520692926934FC682EFCDFF6AD8415 -:1042AC00BD82F880F3311C790AF944FEFFDD44D855 -:1042BC0080F101040AF914A944FFFFDF04E6B9EF09 -:1042CC000BD880F101040AF914A9A1B9717BFAA0E9 -:1042DC00EFFBD5EFFBDF1CA0F0FBD5F0FBDF14A050 -:1042EC00F1FBD5F1FBDF0CCFEFFBFFCFF0FBFFCFEA -:1042FC00F1FBFFC6717AFAD7C716D880F10744A82C -:10430C0000DC0571029AEF1CF647DD18A4804A8088 -:10431C00A8DC0571029AEF0CF880F3311CF6780AD0 -:10432C00F9B7EFE4C6D7C756A89666F0317E12F6F9 -:10433C00B1780AF966D1DFF1717BFAF5EFFBF5F094 -:10434C00FBF5F1FBF48071039AC6717AFAD7C7209A -:10435C0004FBF8FFD44ADF168D809D8D717BFA52D9 -:10436C00069292692EFC68C0FCDFF6717AFA4A4A12 -:10437C0006DE0EE84A09C0FC9C03A44A8C0372EFCB -:10438C0030F88DF3311C790AF9BB31129A058B9CEC -:10439C0003EF0F8C019C03D48DDF05CD8DA7EF02AD -:1043AC00B48D718071179A61DC61FB71119A8C0369 -:1043BC00721004C6D7C72008FBF8FF8F37FCFDBE70 -:1043CC000F9C078F36FCFDBE0F9C068F35FCFDBE87 -:1043DC000F9C058F34FCFDBE0F9C048F38FC9C0396 -:1043EC008F39FC9C028C06318E0112791A20BB8C01 -:1043FC00075C03D1DF098C064C0361C86179008C22 -:10440C0005318EB1610900BB313D120103BB8B0E2E -:10441C0004708C011C00BB8FF4FB4E03DC0E8C0370 -:10442C004FF4FBDC0B8C024FF5FBDC04AB12EF03FF -:10443C00ABB1121008C6D7C7C3C12008FBF8FFF6F2 -:10444C0061490A61F8614908DF07F7340000EDE0C3 -:10445C0044E6BC04F6BC06AC0ABC02AC08BBAC0619 -:10446C00614902AC0461F8614900DE28AC04BDD896 -:10447C00AC06BDDAE1FD640FADDABC06ADD8BC0408 -:10448C00ABBDD8AC02BDDAE1FD7F0FADDABC02AD3D -:10449C00D8BBEFCAAC06BC02AC04BBAC08BDD8ACF4 -:1044AC000ABDDAAC04BDDCAC06FDE20EAC04BDDC2E -:1044BC00AC06FD550FE1FD7F0FADDABC06ADD8BCE7 -:1044CC0004AC06614902AC0461F8614900DCC5AC7E -:1044DC000214AB12100CC6D7C7C12004FBF8FF8F17 -:1044EC0031FCFDBE0F9C034E04DF1CAD824684DE06 -:1044FC0007AD84268212EF40F64684DF074682DD44 -:10450C0003E7EF34F7EF318C04318EB1128C0331A9 -:10451C008E43DF1830382226820684BB8C045C0361 -:10452C0091DF05AB041800BBAB12EF0C8C034E04EF -:10453C00DE0532A900EF01F71006C6D7717BFA3100 -:10454C00229A0CF64690DD07B690717AFAEF7C71E0 -:10455C00239A717AFA4004F904DF07715307F42C9B -:10456C00EF69D9CFFBF1E7240000DD0F23DD1A231F -:10457C00DD1023DD5323DD2723DD38715307F42CA5 -:10458C00EF49715207F42CEF42D42CDF077152071C -:10459C00E42CEF05715307F42CC990FA00EF2CD4DE -:1045AC002CDF0B715207E42CC990FA00EF1DF5CFEC -:1045BC00FBEF18D42CDF0B715307E42CC990FA00D5 -:1045CC00EF09CFCFFB02EF03FDD845D7D905FCF19E -:1045DC00E7240000DD0923DD2123DD0923EF1B7116 -:1045EC005307F42CD7D42CDF07715207E42CEF05BA -:1045FC00715307F42CC9902D01D7715207E42CD7B5 -:10460C0031629701D7710398D9CDFBF1E7240000F3 -:10461C00DD1223DD1923DD1123DD2623DD3423DD1B -:10462C003923DD3FFD9846EF3DFDB946EF38D9CC37 -:10463C00FBC1AE6CFD312DC0F313BE6C712304EFC6 -:10464C0025F0C1AE6CFD312DC0F313BE6C7123048B -:10465C00EF14F6BE6C712204EF0CCB6CFF007123CF -:10466C0004EF03FD2D474004F905DD064004F90174 -:10467C00DF067123047103983104980FF6BE64BEF3 -:10468C006A31220402EF02F690BE6ED7CD2E47F4AB -:10469C0092AE6C317DBFCAFCFD0247D2DF0ED9CC85 -:1046AC00FBC1AE6CFD312DC0F313BE6CD7FD0247C0 -:1046BC00D2DD0DCD2E47F492AE6C317DBFCAFCD746 -:1046CC00E8920934205080D6BFC6FC22CAFCBDD863 -:1046DC00304700FD0A0EBFC8FC30C6FCFD472DF369 -:1046EC0013BE6CB42ED42EDF0CCD2E47A4924A925E -:1046FC001F61C8F492D740AFFB0BDC05712304F2A9 -:10470C00D740AFFB0661D831229611F0C1AE6CFDDB -:10471C00312DC0F313BE6C712204EF03FD2D47E263 -:10472C00D7710298F0C1AE6CFD312DC0F313BE6C85 -:10473C00A4934A9340DC37F493D894F1313F04129C -:10474C00FD14D894F1BDD85008FD590E087208E636 -:10475C00D2DD040192DFFC896158D1DD05712204A0 -:10476C00EF03712304A4944A942061C8F494D7C72E -:10477C003026FDC6D77180717DFADE035201D75207 -:10478C0000D7C7C12004FBF8FF17040300C1E0C128 -:10479C005010C150A4FDAA021006629C02D1DD0586 -:1047AC008C0272EF518C0C70C18C0470FD0648C0E9 -:1047BC00629C02D1DD058C0272EF3B8C035C7DD1D7 -:1047CC00DF03F2EF3117A1C1E0C15010C150A4FDBD -:1047DC00AA021006629C02D1DD058C0272EF178CC6 -:1047EC00015C7DD1DD03F2EF0D8C0370C15010FD27 -:1047FC000648C0629C021006C6D7C7880616710A06 -:10480C00E650A4FDDE03D2DD077133975202EF139D -:10481C0017FDFA036770FDFA03FD3148FD6E047154 -:10482C003397F2C6D7FD450450A4FDFA035020FD82 -:07483C00FA0350AAEDFA0394 -:1048430061FC61FCC1C3C5C7520C929269D4FEC11D -:10485300DFF88EFD708EFCC1717AFA4004F903DF34 -:1048630005302D2A6194C09EFC609EFD34D4FE5217 -:1048730006C0B9A5A592DFF9C6C4C2C061FC61DF59 -:10488300520C929269D4FEC1DFF88EFD708EFCC18A -:104893008F4105775C04D1DD06675C01D1DD5031C2 -:1048A3005498367162077153988FB4FB5FBCFBD188 -:1048B300DF1B8FB5FB5FBDFBD1DF128FB6FB5FBE86 -:1048C300FBD1DF098FB7FB5FBFFBD1DD0C31620783 -:1048D30002EFFA716307716B2771139AFD5630F477 -:1048E300227148500571605005717AFAEDDD496710 -:1048F3005C02D1DD16D422DD124A2202DD0DF42240 -:104903007148500571605005717AFA717AFA8D22F7 -:10491300318FE7240000DD0823DD1423DD2CEF4A6B -:10492300F44A7140500571505005E422EDDD498F82 -:1049330040059D4B715050058D4B9D4DD84BFD202F -:1049430034629D4CCD2202EDDD49675C02D1DD1757 -:10495300675C10D1DD05CD2203EF0F71485005715F -:10496300605005F422EF73CD22044A2203DF108D39 -:104973004C9F4005D84CC1D84BFDB734C0EF1F8FB7 -:1049830040057671744BDC054A4B02DE06716050BC -:1049930005EF47C7D84BFDE630C071505005D84DE1 -:1049A300F1242900DD27240400DD22242200DD1D5B -:1049B300241100DD0C240100DD13241E00DD0EEFA5 -:1049C3000A4A4B60DF07CD4B61EF02A44B4A220337 -:1049D300DF08D84BFD2034629D4CC09EFC609EFDD9 -:1049E30034D4FE5206C0B9A5A592DFF961FCC1C358 -:1049F300C5C7520C929269D4FEC1DFF88EFD708E4A -:104A0300FCC1717AFA51405F0401D1DD06F616A7A5 -:104A130047DFF2300400BF2401F6BF2A01300B0B3D -:104A2300BF2801FD6402300B0FBF2801FD64023073 -:104A33000F0FBF2801710AE6F6420C01DD33AF0404 -:104A430001BF0C0131529729715297710BE2D85172 -:104A5300FDDE033184BD02EFFACBB422FBD853F160 -:104A6300BEB8714BE1714BE5710ABD8D529E44EFA7 -:104A73000C715397714AE5717BBD713397C09EFCEE -:104A8300609EFD34D4FE5206C0B9A5A592DFF9C6D7 -:104A9300C4C2C061FCC1C5717AFAD450DD0BEA4EC1 -:104AA300899E44A64EB450EF33710AE6300400BF2A -:104AB3002401F6BF2A01300B0BBF280100000000C0 -:104AC30000000000510FBF2801000000000000009B -:104AD30000500FBF2801712397713397C4C061FC45 -:104AE30061EF520C929269D4FEC1DFF88EFD708E95 -:104AF300FCC12006FBF8FF71503002CEABACCC04F6 -:104B030000F6BB31B2E210617900F6614900DFF3D0 -:104B130071603002ED9D4B8E519C03713BE28C031F -:104B23005C02D1DD1E8C035C08D1DF0971503002B9 -:104B3300CC0400EFCC8C0570FD9935629E50CC04FB -:104B430002EFBE8C035C03D1DF408E509C02715098 -:104B530030028C04D1DF0E8C0270FDDF35629C05C0 -:104B6300CC0401EF328C044C02DF0671603002EF9B -:104B730029CF34025A716030028C0270C18C0570E7 -:104B8300FD4135C0CF34024AEF108C035C01D1DD07 -:104B93000671603002EF03ED044B1006C09EFC600B -:104BA3009EFD34D4FE5206C0B9A5A592DFF961FC7F -:104BB300C1C3C5C7520C929269D4FEC1DFF88EFD02 -:104BC300708EFCC1710A9E31929E02EFFA8FDEFB5A -:104BD3004F96FFDF198FDFFB4F97FFDF118FE0FB4E -:104BE3004F98FFDF095004C15011FDE534C0710B2C -:104BF3009EC09EFC609EFD34D4FE5206C0B9A5A59E -:104C030092DFF9C6C4C2C061FCE46A61FCC1C3C5DA -:104C1300C7520C929269D4FEC1DFF88EFD708EFCF0 -:104C2300C1C1FBF8FF8D1F9C018E31318EE7240635 -:104C330000DD0823DD0E23DD22EF38717AFA8C01C3 -:104C43009D62EF2F717AFA4007F901DF068C019D0F -:104C530061EF2051FF2E019D61EF18717AFA8C01EB -:104C63009D304004F903DD064004F904DF05307983 -:104C73002561944031FF09DE05A031FFEF0771582C -:104C8300F000716298710BE3C0C09EFC609EFD341E -:104C9300D4FE5206C0B9A5A592DFF9C6C4C2C0614D -:104CA300FC717BFAC7D46A61F8312499277123997F -:104CB300D46ADD05B46ACEABAC717AFA5600664CA1 -:104CC3000ADD1172F3311C79D8FCCEFC0061CA6194 -:104CD300A486EFEA717AFAF2C6D7C7C1C1FBF8FF1F -:104CE300CC01008C014C0ADE36717BFA8C01F03169 -:104CF3007E0410FC14A96168DF09AC02B9717AFA69 -:104D0300F2EF1D8C01F0317E127910FC614902DF54 -:104D130006717AFAE2EF09717AFA615901EFC4E296 -:104D23001004C6D7C72004FBF8FFF64210FC61F855 -:104D3300ED094E717BFA9C038C034C0ADE3C8C0319 -:104D4300F0317E0410FC14A96168DF05717AFAEF73 -:104D530029717AFA8C0372F3311C7910FCCEFC00B2 -:104D630061CA629C02D1DF0A8C03F0317E12E678BD -:104D730010FC717BFA615903EFBECC0200CC010138 -:104D83008C02F0317E0410FC14A96168DD788C027A -:104D9300F0317E127910FCE743DF658C014C0ADEAB -:104DA3005F8C01F0317E127910FCE743DD4D717B9E -:104DB300FA8C01F0317E0410FC14A96168DF1861DC -:104DC30069018C01F0317E12F67810FC8C024E01E1 -:104DD300DCED717AFAEF2F8C01F0317E0410FC14B4 -:104DE300A9128C02F0317E337810FC8C01F0317EF5 -:104DF30012E67810FC615902717AFA615901EF9B4E -:104E0300615902ED834D00F21004C6D761FF520CC5 -:104E1300929269D4FEC1DFF88EFD708EFCC1717A67 -:104E2300FA8FE4FB5C03D1DD114004F903DD064096 -:104E330004F904DF0530A5386194C09EFC609EFD33 -:104E430034D4FE5206C0B9A5A592DFF961FC61FC1A -:044E530061FC61FCA1 -:0A4E580000060C12181E242A303642 -:104E6200ACFB0000000066FE00000000FA392C36A0 -:104E72008C220C46332EF22E48452B3BCA08F43CBA -:104E820028FC36FE20FE02F903F929FC30FE2AFC3A -:104E92002BFC08F926FC6CFF1AFF6EFF6AFF64FF09 -:0A4EA20027FC66FF2CFC5555555502 -:104EAC00FF0000000000983AF82AFF0000004700BD -:104EBC00317503F7332312D714AEF8C716AC0612AC -:104ECC00C5AC0416F643DD078B99A7A5B3EFF5C265 -:024EDC00C6D737 -:024FF400326227 -:0A4FF60031373A33313A353100000B -:00000001FF - \ No newline at end of file diff --git a/snake_branches/2.4_q_test/bsr.lmf b/snake_branches/2.4_q_test/bsr.lmf deleted file mode 100644 index e75eea6..0000000 Binary files a/snake_branches/2.4_q_test/bsr.lmf and /dev/null differ diff --git a/snake_branches/2.4_q_test/bsr_k0r.map b/snake_branches/2.4_q_test/bsr_k0r.map deleted file mode 100644 index c02b181..0000000 --- a/snake_branches/2.4_q_test/bsr_k0r.map +++ /dev/null @@ -1,897 +0,0 @@ - - - -78K0R Linker W1.33 Date: 9 Sep 2013 Page: 1 - -Command: -yC:\Program Files (x86)\NEC Electronics Tools\DEV -_msgoff - - obsr.lmf ..\..\..\Program Files (x86)\NEC Electronics Tools\C - C78K0R\W2.13\lib78k0r\s0rm.rel -gi1B339499E033F240BFAAh -pbsr - _k0r.map -nkd -gb7EFBFFh -bC:\Program Files (x86)\NEC Electro - nics Tools\CC78K0R\W2.13\lib78k0r\fsl.lib -bcl0rdm.lib -bcl0r - m.lib -bcl0rmf.lib -iC:\Program Files (x86)\NEC Electronics T - ools\CC78K0R\W2.13\lib78k0r -dbsr_mcu.dr -s -w2 loader.rel pm - .rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_t - wl.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel adc.rel reng - e.rel accero.rel self_flash.rel sw.rel task_debug.rel task_mi - sc.rel task_sys.rel pedo_alg_thre_det2.rel ini_VECT.rel task_ - status.rel led_cam.rel led_pow.rel hal.rel batt_params.rel vo - ltable.rel pedo_lpf_coeff.rel kanaria.rel kanaria_c.rel get_e - i.rel util_funcs.rel i2c_mcu-sub.rel -Para-file: -Out-file: bsr.lmf -Map-file: bsr_k0r.map -Direc-file:bsr_mcu.dr - - -*** Link information *** - - 73 output segment(s) - 3E2BH byte(s) real data - 6414 symbol(s) defined - - -*** Memory map *** - - - SPACE=REGULAR - - MEMORY=BCL0 - BASE ADDRESS=00000H SIZE=01000H - OUTPUT INPUT INPUT BASE SIZE - SEGMENT SEGMENT MODULE ADDRESS - @@VECT00 00000H 00002H CSEG AT - @@VECT00 @cstart 00000H 00002H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL loader 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL WDT 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL i2c_mcu 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL i2c_twl 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL self_flash - 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL task_debug - 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL task_status - 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL hal 00002H 00000H - LDR_CNSL 00002H 00000H CSEG PAGE64KP - LDR_CNSL util_funcs - 00002H 00000H -* gap * 00002H 0000EH - @@VECT10 00010H 00004H CSEG AT - @@VECT10 ini_VECT 00010H 00004H -* gap * 00014H 00008H - @@VECT1C 0001CH 00002H CSEG AT - @@VECT1C ini_VECT 0001CH 00002H -* gap * 0001EH 00006H - @@VECT24 00024H 00002H CSEG AT - @@VECT24 ini_VECT 00024H 00002H -* gap * 00026H 00004H - @@VECT2A 0002AH 00002H CSEG AT - @@VECT2A i2c_twl 0002AH 00002H -* gap * 0002CH 00008H - @@VECT34 00034H 00008H CSEG AT - @@VECT34 ini_VECT 00034H 00008H -* gap * 0003CH 0000EH - @@VECT4A 0004AH 00002H CSEG AT - @@VECT4A ini_VECT 0004AH 00002H -* gap * 0004CH 0000EH - @@VECT5A 0005AH 00002H CSEG AT - @@VECT5A i2c_ctr 0005AH 00002H -* gap * 0005CH 00006H - @@VECT62 00062H 00002H CSEG AT - @@VECT62 accero 00062H 00002H -* gap * 00064H 0001CH - @@CALT 00080H 00006H CSEG CALLT0 - @@CALT @cstart 00080H 00000H - @@CALT loader 00080H 00000H - @@CALT pm 00080H 00000H - @@CALT i2c_ctr 00080H 00000H - @@CALT main 00080H 00000H - @@CALT magic 00080H 00000H - @@CALT WDT 00080H 00000H - @@CALT i2c_mcu 00080H 00000H - @@CALT i2c_twl 00080H 00000H - @@CALT led 00080H 00000H - @@CALT rtc 00080H 00000H - @@CALT vreg_ctr 00080H 00000H - @@CALT vreg_twl 00080H 00000H - @@CALT adc 00080H 00000H - @@CALT renge 00080H 00006H - @@CALT accero 00086H 00000H - @@CALT self_flash - 00086H 00000H - @@CALT sw 00086H 00000H - @@CALT task_debug - 00086H 00000H - @@CALT task_misc - 00086H 00000H - @@CALT task_sys 00086H 00000H - @@CALT pedo_alg_thre_det2 - 00086H 00000H - @@CALT ini_VECT 00086H 00000H - @@CALT task_status - 00086H 00000H - @@CALT led_cam 00086H 00000H - @@CALT led_pow 00086H 00000H - @@CALT hal 00086H 00000H - @@CALT batt_params - 00086H 00000H - @@CALT voltable 00086H 00000H - @@CALT pedo_lpf_coeff - 00086H 00000H - @@CALT kanaria_c - 00086H 00000H - @@CALT util_funcs - 00086H 00000H - @@CALT i2c_mcu-sub - 00086H 00000H -* gap * 00086H 0003AH - ?CSEGOB0 000C0H 00004H CSEG OPT_BYTE - @@CODE 000C4H 00000H CSEG BASE - @@CODE magic 000C4H 00000H - @@CODE ini_VECT 000C4H 00000H - @@CODE batt_params - 000C4H 00000H - LDR_CODL 000C4H 00000H CSEG - LDR_CODL loader 000C4H 00000H - LDR_CODL WDT 000C4H 00000H - LDR_CODL i2c_mcu 000C4H 00000H - LDR_CODL i2c_twl 000C4H 00000H - LDR_CODL self_flash - 000C4H 00000H - LDR_CODL task_debug - 000C4H 00000H - LDR_CODL task_status - 000C4H 00000H - LDR_CODL hal 000C4H 00000H - LDR_CODL util_funcs - 000C4H 00000H - ?CSEGSI 000C4H 0000AH CSEG - LDR_CODE 000CEH 00971H CSEG - LDR_CODE loader 000CEH 00196H - LDR_CODE WDT 00264H 00000H - LDR_CODE i2c_mcu 00264H 0029BH - LDR_CODE i2c_twl 004FFH 0005BH - LDR_CODE self_flash - 0055AH 00370H - LDR_CODE task_debug - 008CAH 00000H - LDR_CODE task_status - 008CAH 00075H - LDR_CODE hal 0093FH 000DCH - LDR_CODE util_funcs - 00A1BH 00024H - FSL_CODE 00A3FH 00322H CSEG - FSL_CODE fsl_block_cmd - 00A3FH 0002BH - FSL_CODE fsl_block_check - 00A6AH 00013H - FSL_CODE fsl_common - 00A7DH 0014FH - FSL_CODE fsl_reset - 00BCCH 00001H - FSL_CODE fsl_si_ibf - 00BCDH 00064H - FSL_CODE fsl_phySwap - 00C31H 0004DH - FSL_CODE fsl_si_common - 00C7EH 00061H - FSL_CODE fsl_swap 00CDFH 00030H - FSL_CODE fsl_write - 00D0FH 00052H - @@LCODE 00D61H 00277H CSEG - @@LCODE @cstart 00D61H 0006DH - @@LCODE @imul 00DCEH 00011H - @@LCODE @lumul 00DDFH 0002BH - @@LCODE @isdiv 00E0AH 00022H - @@LCODE @iudiv 00E2CH 0002DH - @@LCODE @isrem 00E59H 00021H - @@LCODE @iurem 00E7AH 0002FH - @@LCODE @lsdiv 00EA9H 00039H - @@LCODE @ludiv 00EE2H 0003FH - @@LCODE @divuw 00F21H 00034H - @@LCODE @ladd 00F55H 0000FH - @@LCODE @llsh 00F64H 0001BH - @@LCODE @lursh 00F7FH 0001FH - @@LCODE @iscmp 00F9EH 0000CH - @@LCODE @lband 00FAAH 00014H - @@LCODE @bcdtob 00FBEH 0001AH -* gap * 00FD8H 0001EH - MGC_LOAD 00FF6H 0000AH CSEG AT - MGC_LOAD magic 00FF6H 0000AH - - MEMORY=ROM - BASE ADDRESS=02000H SIZE=03000H - OUTPUT INPUT INPUT BASE SIZE - SEGMENT SEGMENT MODULE ADDRESS - MGC_MIMI 02000H 0000AH CSEG AT - MGC_MIMI magic 02000H 0000AH - @@CNST 0200AH 00282H CSEG - @@CNST @cstart 0200AH 00000H - @@CNST loader 0200AH 00000H - @@CNST pm 0200AH 00008H - @@CNST i2c_ctr 02012H 00000H - @@CNST main 02012H 00000H - @@CNST magic 02012H 00000H - @@CNST WDT 02012H 00000H - @@CNST i2c_mcu 02012H 00000H - @@CNST i2c_twl 02012H 00000H - @@CNST led 02012H 00000H - @@CNST rtc 02012H 00000H - @@CNST vreg_ctr 02012H 00000H - @@CNST vreg_twl 02012H 00000H - @@CNST adc 02012H 00008H - @@CNST renge 0201AH 00000H - @@CNST accero 0201AH 00000H - @@CNST self_flash - 0201AH 00002H - @@CNST sw 0201CH 00000H - @@CNST task_debug - 0201CH 00000H - @@CNST task_misc - 0201CH 00000H - @@CNST task_sys 0201CH 00000H - @@CNST pedo_alg_thre_det2 - 0201CH 00018H - @@CNST ini_VECT 02034H 00000H - @@CNST task_status - 02034H 00000H - @@CNST led_cam 02034H 00000H - @@CNST led_pow 02034H 00020H - @@CNST hal 02054H 00000H - @@CNST batt_params - 02054H 001C8H - @@CNST voltable 0221CH 00040H - @@CNST pedo_lpf_coeff - 0225CH 00030H - @@CNST kanaria_c - 0228CH 00000H - @@CNST util_funcs - 0228CH 00000H - @@CNST i2c_mcu-sub - 0228CH 00000H - ROM_CODE 0228CH 025B7H CSEG - ROM_CODE pm 0228CH 009F4H - ROM_CODE i2c_ctr 02C80H 0005CH - ROM_CODE main 02CDCH 00055H - ROM_CODE led 02D31H 00284H - ROM_CODE rtc 02FB5H 000E0H - ROM_CODE vreg_ctr 03095H 0049EH - ROM_CODE vreg_twl 03533H 000F9H - ROM_CODE adc 0362CH 00261H - ROM_CODE renge 0388DH 00018H - ROM_CODE accero 038A5H 00155H - ROM_CODE sw 039FAH 00131H - ROM_CODE task_misc - 03B2BH 001C9H - ROM_CODE task_sys 03CF4H 00380H - ROM_CODE pedo_alg_thre_det2 - 04074H 004D4H - ROM_CODE led_cam 04548H 000C4H - ROM_CODE led_pow 0460CH 0016FH - ROM_CODE voltable 0477BH 00000H - ROM_CODE pedo_lpf_coeff - 0477BH 00000H - ROM_CODE kanaria_c - 0477BH 00006H - ROM_CODE get_ei 04781H 0000DH - ROM_CODE i2c_mcu-sub - 0478EH 000B5H - @@BASE 04843H 00614H CSEG BASE - @@BASE loader 04843H 00000H - @@BASE pm 04843H 0003EH - @@BASE i2c_ctr 04881H 00170H - @@BASE main 049F1H 00000H - @@BASE magic 049F1H 00000H - @@BASE WDT 049F1H 00000H - @@BASE i2c_mcu 049F1H 000F2H - @@BASE i2c_twl 04AE3H 000D0H - @@BASE led 04BB3H 00000H - @@BASE rtc 04BB3H 0005DH - @@BASE vreg_ctr 04C10H 00000H - @@BASE vreg_twl 04C10H 00000H - @@BASE adc 04C10H 00094H - @@BASE renge 04CA4H 0016BH - @@BASE accero 04E0FH 00042H - @@BASE self_flash - 04E51H 00000H - @@BASE sw 04E51H 00000H - @@BASE task_debug - 04E51H 00000H - @@BASE task_misc - 04E51H 00000H - @@BASE task_sys 04E51H 00000H - @@BASE pedo_alg_thre_det2 - 04E51H 00000H - @@BASE ini_VECT 04E51H 00006H - @@BASE task_status - 04E57H 00000H - @@BASE led_cam 04E57H 00000H - @@BASE led_pow 04E57H 00000H - @@BASE hal 04E57H 00000H - @@BASE batt_params - 04E57H 00000H - @@BASE voltable 04E57H 00000H - @@BASE pedo_lpf_coeff - 04E57H 00000H - @@BASE kanaria_c - 04E57H 00000H - @@BASE util_funcs - 04E57H 00000H - @@BASE i2c_mcu-sub - 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL @cstart 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL pm 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL i2c_ctr 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL main 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL led 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL rtc 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL vreg_ctr 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL vreg_twl 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL adc 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL renge 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL accero 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL sw 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL task_misc - 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL task_sys 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL pedo_alg_thre_det2 - 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL ini_VECT 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL led_cam 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL led_pow 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL batt_params - 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL voltable 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL pedo_lpf_coeff - 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL kanaria_c - 04E57H 00000H - @@CNSTL 04E57H 00000H CSEG PAGE64KP - @@CNSTL i2c_mcu-sub - 04E57H 00000H - @@RLINIT 04E57H 00000H CSEG UNIT64KP - @@RLINIT loader 04E57H 00000H - @@RLINIT pm 04E57H 00000H - @@RLINIT i2c_ctr 04E57H 00000H - @@RLINIT main 04E57H 00000H - @@RLINIT magic 04E57H 00000H - @@RLINIT WDT 04E57H 00000H - @@RLINIT i2c_mcu 04E57H 00000H - @@RLINIT i2c_twl 04E57H 00000H - @@RLINIT led 04E57H 00000H - @@RLINIT rtc 04E57H 00000H - @@RLINIT vreg_ctr 04E57H 00000H - @@RLINIT vreg_twl 04E57H 00000H - @@RLINIT adc 04E57H 00000H - @@RLINIT renge 04E57H 00000H - @@RLINIT accero 04E57H 00000H - @@RLINIT self_flash - 04E57H 00000H - @@RLINIT sw 04E57H 00000H - @@RLINIT task_debug - 04E57H 00000H - @@RLINIT task_misc - 04E57H 00000H - @@RLINIT task_sys 04E57H 00000H - @@RLINIT pedo_alg_thre_det2 - 04E57H 00000H - @@RLINIT ini_VECT 04E57H 00000H - @@RLINIT task_status - 04E57H 00000H - @@RLINIT led_cam 04E57H 00000H - @@RLINIT led_pow 04E57H 00000H - @@RLINIT hal 04E57H 00000H - @@RLINIT batt_params - 04E57H 00000H - @@RLINIT voltable 04E57H 00000H - @@RLINIT pedo_lpf_coeff - 04E57H 00000H - @@RLINIT kanaria_c - 04E57H 00000H - @@RLINIT util_funcs - 04E57H 00000H - @@RLINIT i2c_mcu-sub - 04E57H 00000H - @@RLINIT @rom 04E57H 00000H - @@CODEL 04E57H 00000H CSEG - @@CODEL pm 04E57H 00000H - @@CODEL i2c_ctr 04E57H 00000H - @@CODEL main 04E57H 00000H - @@CODEL magic 04E57H 00000H - @@CODEL led 04E57H 00000H - @@CODEL rtc 04E57H 00000H - @@CODEL vreg_ctr 04E57H 00000H - @@CODEL vreg_twl 04E57H 00000H - @@CODEL adc 04E57H 00000H - @@CODEL renge 04E57H 00000H - @@CODEL accero 04E57H 00000H - @@CODEL sw 04E57H 00000H - @@CODEL task_misc - 04E57H 00000H - @@CODEL task_sys 04E57H 00000H - @@CODEL pedo_alg_thre_det2 - 04E57H 00000H - @@CODEL ini_VECT 04E57H 00000H - @@CODEL led_cam 04E57H 00000H - @@CODEL led_pow 04E57H 00000H - @@CODEL batt_params - 04E57H 00000H - @@CODEL voltable 04E57H 00000H - @@CODEL pedo_lpf_coeff - 04E57H 00000H - @@CODEL kanaria_c - 04E57H 00000H - @@CODEL i2c_mcu-sub - 04E57H 00000H -* gap * 04E57H 00001H - @@CNSTL 04E58H 0000AH CSEG PAGE64KP - @@CNSTL @bcdtob 04E58H 0000AH - @@R_INIT 04E62H 0004AH CSEG UNIT64KP - @@R_INIT @cstart 04E62H 00000H - @@R_INIT loader 04E62H 00000H - @@R_INIT pm 04E62H 00000H - @@R_INIT i2c_ctr 04E62H 00000H - @@R_INIT main 04E62H 00000H - @@R_INIT magic 04E62H 00000H - @@R_INIT WDT 04E62H 00000H - @@R_INIT i2c_mcu 04E62H 00000H - @@R_INIT i2c_twl 04E62H 00000H - @@R_INIT led 04E62H 00000H - @@R_INIT rtc 04E62H 00000H - @@R_INIT vreg_ctr 04E62H 00000H - @@R_INIT vreg_twl 04E62H 00000H - @@R_INIT adc 04E62H 0000CH - @@R_INIT renge 04E6EH 00014H - @@R_INIT accero 04E82H 00000H - @@R_INIT self_flash - 04E82H 00000H - @@R_INIT sw 04E82H 00000H - @@R_INIT task_debug - 04E82H 00000H - @@R_INIT task_misc - 04E82H 00026H - @@R_INIT task_sys 04EA8H 00000H - @@R_INIT pedo_alg_thre_det2 - 04EA8H 00000H - @@R_INIT ini_VECT 04EA8H 00000H - @@R_INIT task_status - 04EA8H 00000H - @@R_INIT led_cam 04EA8H 00000H - @@R_INIT led_pow 04EA8H 00004H - @@R_INIT hal 04EACH 00000H - @@R_INIT batt_params - 04EACH 00000H - @@R_INIT voltable 04EACH 00000H - @@R_INIT pedo_lpf_coeff - 04EACH 00000H - @@R_INIT kanaria_c - 04EACH 00000H - @@R_INIT util_funcs - 04EACH 00000H - @@R_INIT i2c_mcu-sub - 04EACH 00000H - @@R_INIT @rom 04EACH 00000H - @@R_INIS 04EACH 00010H CSEG UNIT64KP - @@R_INIS @cstart 04EACH 00000H - @@R_INIS loader 04EACH 00000H - @@R_INIS pm 04EACH 00002H - @@R_INIS i2c_ctr 04EAEH 00002H - @@R_INIS main 04EB0H 00000H - @@R_INIS magic 04EB0H 00000H - @@R_INIS WDT 04EB0H 00000H - @@R_INIS i2c_mcu 04EB0H 00000H - @@R_INIS i2c_twl 04EB0H 00000H - @@R_INIS led 04EB0H 00000H - @@R_INIS rtc 04EB0H 00000H - @@R_INIS vreg_ctr 04EB0H 00000H - @@R_INIS vreg_twl 04EB0H 00000H - @@R_INIS adc 04EB0H 00000H - @@R_INIS renge 04EB0H 00000H - @@R_INIS accero 04EB0H 00000H - @@R_INIS self_flash - 04EB0H 00000H - @@R_INIS sw 04EB0H 00000H - @@R_INIS task_debug - 04EB0H 00000H - @@R_INIS task_misc - 04EB0H 00000H - @@R_INIS task_sys 04EB0H 00002H - @@R_INIS pedo_alg_thre_det2 - 04EB2H 00006H - @@R_INIS ini_VECT 04EB8H 00000H - @@R_INIS task_status - 04EB8H 00000H - @@R_INIS led_cam 04EB8H 00002H - @@R_INIS led_pow 04EBAH 00002H - @@R_INIS hal 04EBCH 00000H - @@R_INIS batt_params - 04EBCH 00000H - @@R_INIS voltable 04EBCH 00000H - @@R_INIS pedo_lpf_coeff - 04EBCH 00000H - @@R_INIS kanaria_c - 04EBCH 00000H - @@R_INIS util_funcs - 04EBCH 00000H - @@R_INIS i2c_mcu-sub - 04EBCH 00000H - @@R_INIS @rom 04EBCH 00000H - @@LCODEL 04EBCH 00022H CSEG - @@LCODEL abs 04EBCH 00008H - @@LCODEL memcpy_n 04EC4H 0001AH -* gap * 04EDEH 00116H - MGC_VER 04FF4H 00002H CSEG AT - MGC_VER magic 04FF4H 00002H - MGC_TAIL 04FF6H 0000AH CSEG AT - MGC_TAIL magic 04FF6H 0000AH - - MEMORY=RAM - BASE ADDRESS=FF900H SIZE=00500H - OUTPUT INPUT INPUT BASE SIZE - SEGMENT SEGMENT MODULE ADDRESS - @@DATA FF900H 003CCH DSEG BASEP - @@DATA @cstart FF900H 00002H - @@DATA loader FF902H 00000H - @@DATA pm FF902H 00002H - @@DATA i2c_ctr FF904H 00000H - @@DATA main FF904H 0021EH - @@DATA magic FFB22H 00000H - @@DATA WDT FFB22H 00000H - @@DATA i2c_mcu FFB22H 00004H - @@DATA i2c_twl FFB26H 00000H - @@DATA led FFB26H 00076H - @@DATA rtc FFB9CH 00008H - @@DATA vreg_ctr FFBA4H 0005CH - @@DATA vreg_twl FFC00H 00010H - @@DATA adc FFC10H 00000H - @@DATA renge FFC10H 00014H - @@DATA accero FFC24H 00000H - @@DATA self_flash - FFC24H 00002H - @@DATA sw FFC26H 00000H - @@DATA task_debug - FFC26H 00000H - @@DATA task_misc - FFC26H 00008H - @@DATA task_sys FFC2EH 00000H - @@DATA pedo_alg_thre_det2 - FFC2EH 00098H - @@DATA ini_VECT FFCC6H 00000H - @@DATA task_status - FFCC6H 00000H - @@DATA led_cam FFCC6H 00000H - @@DATA led_pow FFCC6H 00006H - @@DATA hal FFCCCH 00000H - @@DATA batt_params - FFCCCH 00000H - @@DATA voltable FFCCCH 00000H - @@DATA pedo_lpf_coeff - FFCCCH 00000H - @@DATA kanaria FFCCCH 00000H - @@DATA kanaria_c - FFCCCH 00000H - @@DATA util_funcs - FFCCCH 00000H - @@DATA i2c_mcu-sub - FFCCCH 00000H - @@DATA @rom FFCCCH 00000H - @@INIT FFCCCH 0004AH DSEG BASEP - @@INIT @cstart FFCCCH 00000H - @@INIT loader FFCCCH 00000H - @@INIT pm FFCCCH 00000H - @@INIT i2c_ctr FFCCCH 00000H - @@INIT main FFCCCH 00000H - @@INIT magic FFCCCH 00000H - @@INIT WDT FFCCCH 00000H - @@INIT i2c_mcu FFCCCH 00000H - @@INIT i2c_twl FFCCCH 00000H - @@INIT led FFCCCH 00000H - @@INIT rtc FFCCCH 00000H - @@INIT vreg_ctr FFCCCH 00000H - @@INIT vreg_twl FFCCCH 00000H - @@INIT adc FFCCCH 0000CH - @@INIT renge FFCD8H 00014H - @@INIT accero FFCECH 00000H - @@INIT self_flash - FFCECH 00000H - @@INIT sw FFCECH 00000H - @@INIT task_debug - FFCECH 00000H - @@INIT task_misc - FFCECH 00026H - @@INIT task_sys FFD12H 00000H - @@INIT pedo_alg_thre_det2 - FFD12H 00000H - @@INIT ini_VECT FFD12H 00000H - @@INIT task_status - FFD12H 00000H - @@INIT led_cam FFD12H 00000H - @@INIT led_pow FFD12H 00004H - @@INIT hal FFD16H 00000H - @@INIT batt_params - FFD16H 00000H - @@INIT voltable FFD16H 00000H - @@INIT pedo_lpf_coeff - FFD16H 00000H - @@INIT kanaria FFD16H 00000H - @@INIT kanaria_c - FFD16H 00000H - @@INIT util_funcs - FFD16H 00000H - @@INIT i2c_mcu-sub - FFD16H 00000H - @@INIT @rom FFD16H 00000H - FSL_DATA FFD16H 00010H DSEG UNITP - FSL_DATA fsl_common - FFD16H 00010H - @@INITL FFD26H 00000H DSEG UNIT64KP - @@INITL loader FFD26H 00000H - @@INITL pm FFD26H 00000H - @@INITL i2c_ctr FFD26H 00000H - @@INITL main FFD26H 00000H - @@INITL magic FFD26H 00000H - @@INITL WDT FFD26H 00000H - @@INITL i2c_mcu FFD26H 00000H - @@INITL i2c_twl FFD26H 00000H - @@INITL led FFD26H 00000H - @@INITL rtc FFD26H 00000H - @@INITL vreg_ctr FFD26H 00000H - @@INITL vreg_twl FFD26H 00000H - @@INITL adc FFD26H 00000H - @@INITL renge FFD26H 00000H - @@INITL accero FFD26H 00000H - @@INITL self_flash - FFD26H 00000H - @@INITL sw FFD26H 00000H - @@INITL task_debug - FFD26H 00000H - @@INITL task_misc - FFD26H 00000H - @@INITL task_sys FFD26H 00000H - @@INITL pedo_alg_thre_det2 - FFD26H 00000H - @@INITL ini_VECT FFD26H 00000H - @@INITL task_status - FFD26H 00000H - @@INITL led_cam FFD26H 00000H - @@INITL led_pow FFD26H 00000H - @@INITL hal FFD26H 00000H - @@INITL batt_params - FFD26H 00000H - @@INITL voltable FFD26H 00000H - @@INITL pedo_lpf_coeff - FFD26H 00000H - @@INITL kanaria FFD26H 00000H - @@INITL kanaria_c - FFD26H 00000H - @@INITL util_funcs - FFD26H 00000H - @@INITL i2c_mcu-sub - FFD26H 00000H - @@INITL @rom FFD26H 00000H - @@DATAL FFD26H 00000H DSEG UNIT64KP - @@DATAL loader FFD26H 00000H - @@DATAL pm FFD26H 00000H - @@DATAL i2c_ctr FFD26H 00000H - @@DATAL main FFD26H 00000H - @@DATAL magic FFD26H 00000H - @@DATAL WDT FFD26H 00000H - @@DATAL i2c_mcu FFD26H 00000H - @@DATAL i2c_twl FFD26H 00000H - @@DATAL led FFD26H 00000H - @@DATAL rtc FFD26H 00000H - @@DATAL vreg_ctr FFD26H 00000H - @@DATAL vreg_twl FFD26H 00000H - @@DATAL adc FFD26H 00000H - @@DATAL renge FFD26H 00000H - @@DATAL accero FFD26H 00000H - @@DATAL self_flash - FFD26H 00000H - @@DATAL sw FFD26H 00000H - @@DATAL task_debug - FFD26H 00000H - @@DATAL task_misc - FFD26H 00000H - @@DATAL task_sys FFD26H 00000H - @@DATAL pedo_alg_thre_det2 - FFD26H 00000H - @@DATAL ini_VECT FFD26H 00000H - @@DATAL task_status - FFD26H 00000H - @@DATAL led_cam FFD26H 00000H - @@DATAL led_pow FFD26H 00000H - @@DATAL hal FFD26H 00000H - @@DATAL batt_params - FFD26H 00000H - @@DATAL voltable FFD26H 00000H - @@DATAL pedo_lpf_coeff - FFD26H 00000H - @@DATAL kanaria FFD26H 00000H - @@DATAL kanaria_c - FFD26H 00000H - @@DATAL util_funcs - FFD26H 00000H - @@DATAL i2c_mcu-sub - FFD26H 00000H - @@DATAL @rom FFD26H 00000H -* gap * FFD26H 000DAH - - MEMORY=RAM2 - BASE ADDRESS=FFE20H SIZE=000C0H - OUTPUT INPUT INPUT BASE SIZE - SEGMENT SEGMENT MODULE ADDRESS - @@INIS FFE20H 00010H DSEG SADDRP - @@INIS @cstart FFE20H 00000H - @@INIS loader FFE20H 00000H - @@INIS pm FFE20H 00002H - @@INIS i2c_ctr FFE22H 00002H - @@INIS main FFE24H 00000H - @@INIS magic FFE24H 00000H - @@INIS WDT FFE24H 00000H - @@INIS i2c_mcu FFE24H 00000H - @@INIS i2c_twl FFE24H 00000H - @@INIS led FFE24H 00000H - @@INIS rtc FFE24H 00000H - @@INIS vreg_ctr FFE24H 00000H - @@INIS vreg_twl FFE24H 00000H - @@INIS adc FFE24H 00000H - @@INIS renge FFE24H 00000H - @@INIS accero FFE24H 00000H - @@INIS self_flash - FFE24H 00000H - @@INIS sw FFE24H 00000H - @@INIS task_debug - FFE24H 00000H - @@INIS task_misc - FFE24H 00000H - @@INIS task_sys FFE24H 00002H - @@INIS pedo_alg_thre_det2 - FFE26H 00006H - @@INIS ini_VECT FFE2CH 00000H - @@INIS task_status - FFE2CH 00000H - @@INIS led_cam FFE2CH 00002H - @@INIS led_pow FFE2EH 00002H - @@INIS hal FFE30H 00000H - @@INIS batt_params - FFE30H 00000H - @@INIS voltable FFE30H 00000H - @@INIS pedo_lpf_coeff - FFE30H 00000H - @@INIS kanaria_c - FFE30H 00000H - @@INIS util_funcs - FFE30H 00000H - @@INIS i2c_mcu-sub - FFE30H 00000H - @@INIS @rom FFE30H 00000H - @@DATS FFE30H 00066H DSEG SADDRP - @@DATS @cstart FFE30H 00000H - @@DATS loader FFE30H 00000H - @@DATS pm FFE30H 0001AH - @@DATS i2c_ctr FFE4AH 00004H - @@DATS main FFE4EH 00000H - @@DATS magic FFE4EH 00000H - @@DATS WDT FFE4EH 00000H - @@DATS i2c_mcu FFE4EH 00008H - @@DATS i2c_twl FFE56H 00000H - @@DATS led FFE56H 00006H - @@DATS rtc FFE5CH 00000H - @@DATS vreg_ctr FFE5CH 00004H - @@DATS vreg_twl FFE60H 00000H - @@DATS adc FFE60H 0000AH - @@DATS renge FFE6AH 00002H - @@DATS accero FFE6CH 00002H - @@DATS self_flash - FFE6EH 00000H - @@DATS sw FFE6EH 0000CH - @@DATS task_debug - FFE7AH 00000H - @@DATS task_misc - FFE7AH 00004H - @@DATS task_sys FFE7EH 00002H - @@DATS pedo_alg_thre_det2 - FFE80H 0000EH - @@DATS ini_VECT FFE8EH 00000H - @@DATS task_status - FFE8EH 00002H - @@DATS led_cam FFE90H 00002H - @@DATS led_pow FFE92H 00004H - @@DATS hal FFE96H 00000H - @@DATS batt_params - FFE96H 00000H - @@DATS voltable FFE96H 00000H - @@DATS pedo_lpf_coeff - FFE96H 00000H - @@DATS kanaria_c - FFE96H 00000H - @@DATS util_funcs - FFE96H 00000H - @@DATS i2c_mcu-sub - FFE96H 00000H - @@DATS @rom FFE96H 00000H - @@BITS FFE96H 00006H BSEG - @@BITS @cstart FFE96H.0 00000H.0 - @@BITS loader FFE96H.0 00000H.0 - @@BITS pm FFE96H.0 00001H.1 - @@BITS i2c_ctr FFE97H.1 00000H.0 - @@BITS main FFE97H.1 00000H.1 - @@BITS magic FFE97H.2 00000H.0 - @@BITS WDT FFE97H.2 00000H.0 - @@BITS i2c_mcu FFE97H.2 00000H.4 - @@BITS i2c_twl FFE97H.6 00000H.0 - @@BITS led FFE97H.6 00000H.4 - @@BITS rtc FFE98H.2 00000H.3 - @@BITS vreg_ctr FFE98H.5 00000H.1 - @@BITS vreg_twl FFE98H.6 00000H.0 - @@BITS adc FFE98H.6 00000H.4 - @@BITS renge FFE99H.2 00000H.2 - @@BITS accero FFE99H.4 00000H.0 - @@BITS self_flash - FFE99H.4 00000H.0 - @@BITS sw FFE99H.4 00000H.1 - @@BITS task_debug - FFE99H.5 00000H.0 - @@BITS task_misc - FFE99H.5 00000H.3 - @@BITS task_sys FFE9AH.0 00000H.0 - @@BITS pedo_alg_thre_det2 - FFE9AH.0 00000H.2 - @@BITS ini_VECT FFE9AH.2 00000H.0 - @@BITS task_status - FFE9AH.2 00000H.0 - @@BITS led_cam FFE9AH.2 00000H.1 - @@BITS led_pow FFE9AH.3 00000H.0 - @@BITS hal FFE9AH.3 00000H.6 - @@BITS batt_params - FFE9BH.1 00000H.0 - @@BITS voltable FFE9BH.1 00000H.0 - @@BITS pedo_lpf_coeff - FFE9BH.1 00000H.0 - @@BITS kanaria_c - FFE9BH.1 00000H.0 - @@BITS util_funcs - FFE9BH.1 00000H.0 - @@BITS i2c_mcu-sub - FFE9BH.1 00000H.0 -* gap * FFE9CH 00038H - @@SEGREG FFED4H 00004H DSEG AT - @@SEGREG @SEGREG FFED4H 00004H - @@RTARG0 FFED8H 00008H DSEG AT - @@RTARG0 @RTARG0 FFED8H 00008H - - - Target chip : uPD79F0104 - Device file : E1.00b - \ No newline at end of file diff --git a/snake_branches/2.4_q_test/bsr_mcu.dr b/snake_branches/2.4_q_test/bsr_mcu.dr deleted file mode 100644 index 81aeecc..0000000 --- a/snake_branches/2.4_q_test/bsr_mcu.dr +++ /dev/null @@ -1,46 +0,0 @@ -;;; ̈̒` -;32kB = 0x7FFF -MEMORY BCL0: (00000H, 01000H ) -;MEMORY BCL1: (01000H, 01000H ) ; obNAbv̈ -MEMORY ROM : (02000H, 03000H ) -;MEMORY ROM_BKUP:(05000H, 03000H ) ; obNAbv̈ -;MEMORY OCD :(0FC00H, 00400H ) ; OCDgĂ炵 - - -;;; ZOg̊ݒ -; u[gubN0Ɋ蓖Ă -MERGE LDR_CODE : =BCL0 -MERGE LDR_CODL : =BCL0 -MERGE FSL_CODE : =BCL0 ; =FSL ; ސtbVCu -MERGE @@LCODE : =BCL0 ; X^[gAbv[` -;MERGE @@LCODEL : =BCL0 - -;MERGE LDR_RINT:=BCL0 -;MERGE LDR_CNST:=BCL0 -MERGE LDR_CNSL:=BCL0 - - - -; ʏ̈ɒu -MERGE ROM_CODE:=ROM -MERGE @@CNST: =ROM -MERGE @@R_INIT: =ROM ; ROMȊOɒuȂX^[gAbv[`vC - - - - - - -; }WbNio[ -;; magic.c̒Ŏw - - -;--- RAM̈ ------------------------------------------------------- -; -; RAM1,RAM2̈̓[U[vOŎgpĂǂłAZtvO -; ZtvÕCugp邽߁Al͔j󂳂܂B -; -memory RAM : (0FF900H, 0500H) ; [U[q`l̈ -;memory SLF_RAM : (0FF900H, 0020H) ; Slef Program\̈[gp֎~] -memory RAM2 : (0FFE20H, 00C0H) ; ZtvOAgp֎~̈ -;memory SLF_RAM : (0FFE00H, 0020H) ; Slef Program\̈[gp֎~] diff --git a/snake_branches/2.4_q_test/bsr_system.h b/snake_branches/2.4_q_test/bsr_system.h deleted file mode 100644 index 3bf1acd..0000000 --- a/snake_branches/2.4_q_test/bsr_system.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef __bsr_system__ -#define __bsr_system__ - -// $Id$ - - -// Cxg[ṽXe[g -enum pwr_state_ -{ - OFF_TRIG = 0, - ON_CHECK, - ON_TRIG, - ON, -// SLEEP_TRIG, - SLEEP, -// WAKE, - OFF, -}; - -enum poweron_reason_ -{ - NONE = 0, - RSN_PWSW, - RSN_RTC_ALARM, - RSN_TRIAL, // ̌ - RSN_RSV4, - RSN_RSV5 -}; - - -enum model_ -{ - MODEL_JIKKI, - MODEL_TS_BOARD, - MODEL_KUC_DEBUGGER, - MODEL_JIKKI_NOBATT, - MODEL_KUC_CAPTURE, - MODEL_IS_DEBUGGER, // Asystem_status.model MODEL_JIKKI ɂĂ̂Ŗgp - MODEL_IS_CAPTURE, -}; - -enum family_ -{ - FAMILY_CTR, - FAMILY_SPFL, // LL - FAMILY_SNAKE, // LAGER - FAMILY_FLOWER, - FAMILY_CLOSER, - FAMILY_RESERVED5, -}; - -// ^XNVXȅԏȂ -typedef struct _system_status_ -{ - enum pwr_state_ pwr_state; - enum poweron_reason_ poweron_reason; - unsigned char reboot:1; - unsigned char captureBox:1; // Lv` SDK ɂ͎@ƕԂ - unsigned char taikendai:1; - unsigned char taikendai_nbd:1; - unsigned char is_dev:1; // IS ̃fobKAقڎ@ - enum model_ model; - enum family_ family; - unsigned char LCD_is_CGS:1; -}system_status_; - -extern bit force_off; - -extern system_status_ system_status; - - - -#endif diff --git a/snake_branches/2.4_q_test/config.h b/snake_branches/2.4_q_test/config.h deleted file mode 100644 index 6c65253..0000000 --- a/snake_branches/2.4_q_test/config.h +++ /dev/null @@ -1,109 +0,0 @@ -#ifndef __config__ -#define __config__ -/* - - $Id: config.h 418 2011-09-22 01:35:37Z n2232 $ - -*/ - -#define MCU_VER_MAJOR 0x02 -#define MCU_VER_MINOR 0x32 - - -// rhXCb` -#define _MCU_ARR // snake,closer - - -// fobOXCb` - -//#define _debug_led_ // LED print fobOƂ -//#define _ALLOW_NOBATT_ // @drȂi=A_v^̂݁jł̋N -//#define _DBG_LED_PRINT_ // LED print fobOƂ(ȃAbvf[gp) -//#define _ENABLE_COMMAND3_ // mcuZbgwdtR}hLɂ -//#define _FORCE_TAIKENDAI_ -//#define _FORCE_TAIKENDAI_NBD_ - -//#define _DBG_CHK_OFF_LEAK_ // OFF[Nd̃`FbN(fobKŊmF) -//#define _DBG_NOP_ // u[N\邽߂NOP()LɂƂ - -//#define _ENABLE_HAL_ // fobOpHALLɂBRgAEgŃX[ɂȂB -//#define _ENABLE_PRESS_SEL_TO_WDT_ // SEL WDT - -//#define _WDT_CHECK_ // WDT炵̂ŒǐՂƂbreakāAR[X^bN -// IvVoCg1oCgځAbit7ZbgKv܂B - -//#define _DI_WITH_CHECK_ // 荞݋֎~dɊ|Ȃ`FbN - -//#define _DBG_BT_FULL_ -//#define _DBG_FORCE_FLOWER - - -#ifdef _DBG_NOP_ // R[hKvNOPƋʂ邽 -# define dbg_nop() NOP() -#else -# define dbg_nop() ; -#endif - - -#define _I2C_ERR_ABORT_ // *Won* I2CŌ돑݂炵ȍ~@ - //. u[NĂSRȂȂ܂... - -// dlt@[ -//#define _TAIKENDAI_ -// homej[ɓĂ܂̂t@[‚BROMȂ̂œdrp[^pX -//#define _TAIKENDAI_SEISAN_SPECIAL_ -// Yɑ̌dlǂƁAA_v^ȂƓd炸ɌɎxႪ̂ňꎞt@[ -//#define _RVD_ -// fobKA^b`Ƀ^[QbgZbgœd؂Ă܂̂ - - -// ̎́C‚ȂƑ̌̐YłȂˁI -#ifdef _TAIKENDAI_SEISAN_SPECIAL_ -#define MCU_VER_MINOR 0x81 -#endif - - -#ifdef _TAIKENDAI_ -#define MCU_VER_MINOR 0x92 -// 0x90 1.31 @HOMEɓĂ܂̂XCb`̃}XNő΍ -// ROMŝ߁Adrp[^폜 - -#endif - - -#define _firm_format_v3_ - -//#define _MODEL_TEG2_ - // TEG2 CPU { Type-T - -//#define _MODEL_WM0_ -//#define _MODEL_WM0_TEG2_CTRC_ - -//#define _MODEL_TS0_ - // TEG2 CPU { Type-C - -#define _MODEL_CTR_ - // TS board, WM1,1 TS-CTRC, @ - - -// ---------------------------------- // -#ifdef _MODEL_TEG2_ -unsupported! -#endif - - -#ifdef _MODEL_WM0_ -unsupported! -#endif - - -#ifdef _MODEL_TS0_ -unsupported! -#endif - -#ifdef _MODEL_CTR_ -#define _PMIC_CTR_ -#define _MCU_BSR_ -#endif - -#endif diff --git a/snake_branches/2.4_q_test/fsl.h b/snake_branches/2.4_q_test/fsl.h deleted file mode 100644 index 0e806b5..0000000 --- a/snake_branches/2.4_q_test/fsl.h +++ /dev/null @@ -1,362 +0,0 @@ -/*==============================================================================================*/ -/* Project = Selfprogramming library for 78K0R/Ix3/Kx3-L Single Voltage SST (MF2) Flash */ -/* Module = fsl.h */ -/* Version = V1.01 */ -/* Date = 28.03.2008 11:45:42 */ -/*==============================================================================================*/ -/* COPYRIGHT */ -/*==============================================================================================*/ -/* Copyright (c) 2007 by NEC Electronics (Europe) GmbH, */ -/* a company of the NEC Electronics Corporation */ -/*==============================================================================================*/ -/* Purpose: */ -/* constant, type and function prototype definitions used by the FSL */ -/* */ -/*==============================================================================================*/ -/* */ -/* Warranty Disclaimer */ -/* */ -/* Because the Product(s) is licensed free of charge, there is no warranty of any kind */ -/* whatsoever and expressly disclaimed and excluded by NEC, either expressed or implied, */ -/* including but not limited to those for non-infringement of intellectual property, */ -/* merchantability and/or fitness for the particular purpose. NEC shall not have any obligation */ -/* to maintain, service or provide bug fixes for the supplied Product(s) and/or the Application.*/ -/* */ -/* Each User is solely responsible for determining the appropriateness of using the Product(s) */ -/* and assumes all risks associated with its exercise of rights under this Agreement, */ -/* including, but not limited to the risks and costs of program errors, compliance with */ -/* applicable laws, damage to or loss of data, programs or equipment, and unavailability or */ -/* interruption of operations. */ -/* */ -/* Limitation of Liability */ -/* */ -/* In no event shall NEC be liable to the User for any incidental, consequential, indirect, */ -/* or punitive damage (including but not limited to lost profits) regardless of whether */ -/* such liability is based on breach of contract, tort, strict liability, breach of warranties, */ -/* failure of essential purpose or otherwise and even if advised of the possibility of */ -/* such damages. NEC shall not be liable for any services or products provided by third party */ -/* vendors, developers or consultants identified or referred to the User by NEC in connection */ -/* with the Product(s) and/or the Application. */ -/* */ -/*==============================================================================================*/ -/* Environment: PM plus (V6.30) */ -/* RA78K0(V1.20) */ -/* CC78K0(V2.00) */ -/*==============================================================================================*/ - -#ifndef __FSL_H_INCLUDED -#define __FSL_H_INCLUDED - - -/*==============================================================================================*/ -/* FSL type definitions */ -/*==============================================================================================*/ -typedef unsigned char fsl_u08; -typedef unsigned int fsl_u16; -typedef unsigned long int fsl_u32; - - -/*==============================================================================================*/ -/* constant definitions */ -/*==============================================================================================*/ - -/*status code definitions returned by the FSL functions */ -#define FSL_OK 0x00 -#define FSL_ERR_FLMD0 0x01 -#define FSL_ERR_PARAMETER 0x05 -#define FSL_ERR_PROTECTION 0x10 -#define FSL_ERR_ERASE 0x1A -#define FSL_ERR_BLANKCHECK 0x1B -#define FSL_ERR_IVERIFY 0x1B -#define FSL_ERR_WRITE 0x1C -#define FSL_ERR_EEP_IVERIFY 0x1D -#define FSL_ERR_EEP_BLANKCHECK 0x1E -#define FSL_ERR_INTERRUPTION 0x1F - - -/*==============================================================================================*/ -/* global function prototypes */ -/*==============================================================================================*/ - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: initialization of selfprogramming environment */ -/* After initialization: */ -/* - the pointer to the data-buffer is stored */ -/* - all timing data are re-calculated according to the used system clock */ -/* */ -/* CAUTION: */ -/* The FSL_Init(&data_buffer) function is interruptible. Please use the */ -/* FSL_Init_cont(&data_buffer) to recall it as long return status is 0x1F. */ -/* */ -/* Input: data_buffer_pu08 - pointer to a data buffer of N...256 bytes */ -/* (used for data exchange between firmware and application) */ -/* Output: - */ -/* Returned: u08, status_code */ -/* = 0x00(FSL_OK), normal and means initialization OK */ -/* = 0x1F(FSL_ERR_INTERRUPTION), initialization interrupted by user interrupt*/ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_Init( fsl_u08 * data_buffer_pu08 ); -extern fsl_u08 FSL_Init_cont( fsl_u08 * data_buffer_pu08 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: checks the voltage level (high or low) at FLMD0 pin */ -/* Input: - */ -/* Output: - */ -/* Returned: fsl_u08, status_code */ -/* = 0x00(FSL_OK), normal and means FLMD0=HIGH */ -/* = 0x01(FSL_ERR_FLMD0), error, FLMD0=LOW */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_ModeCheck( void ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: checks if specified block is blank */ -/* Input: block_u16 - block number has to be checked */ -/* Output: - */ -/* Returned: fsl_u08, status_code */ -/* = 0x00(FSL_OK), normal and means "block is blank" */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x1B(FSL_ERR_BLANKCHECK), blank-check error, means "block not blank" */ -/* = 0x1F(FSL_ERR_INTERRUPTION), blank-check interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_BlankCheck( fsl_u16 block_u16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: erase specified block */ -/* Input: block_u16 - block number has to be erase */ -/* Output: - */ -/* Returned: fsl_u08, status_code */ -/* = 0x00(FSL_OK), normal and means "block erased successfully" */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x10(FSL_ERR_PROTECTION), tried to erase protected area */ -/* = 0x1A(FSL_ERR_ERASE), erase error, retry up to max. 255 times */ -/* = 0x1F(FSL_ERR_INTERRUPTION), erasing interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_Erase( fsl_u16 block_u16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: performs internal verify on specified block */ -/* Input: block_u16 - block number has to be verified */ -/* Output: - */ -/* Returned: fsl_u08, status_code */ -/* = 0x00(FSL_OK), normal and means "block is verified" */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x1B(FSL_ERR_IVERIFY), internal verify error */ -/* = 0x1F(FSL_ERR_INTERRUPTION), verify interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_IVerify( fsl_u16 block_u16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: writes N words from the data buffer into flash */ -/* Input: s_address_u32 - starting flash address the data has to be written */ -/* See Condition 2) please. */ -/* my_wordcount_u08 - number of words (4 bytes) has to be written */ -/* Output: - */ -/* Condition: 1) (s_address_u32 MOD 4 == 0) */ -/* 2) most significant byte (MSB) of s_address_u32 has to be 0x00. */ -/* Means: 0x00abcdef 24 bit flash address allowed */ -/* 3) (word_count_u08 <= sizeof(data buffer)) NOT CHECKED BY LIBRARY !!!!! */ -/* Changed: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x10(FSL_ERR_PROTECTION), protection error */ -/* = 0x1C(FSL_ERR_WRITE), write error */ -/* = 0x1F(FSL_ERR_INTERRUPTION), write interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_Write( fsl_u32 s_address_u32, fsl_u08 word_count_u08 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: writes N words from the data buffer into flash */ -/* Before "writing" a N-word blankcheck is performed. */ -/* After "writing" a N-Word internal verify is performed. */ -/* Input: s_address_u32 - starting destination address has to be written */ -/* my_wordcount_u08 - number of words (4 bytes) has to be written */ -/* Output: - */ -/* Condition: 1) (s_address_u32 MOD 4 == 0) */ -/* 2) (word_count_u08 <= sizeof(data buffer)) NOT CHECKED BY FIRMWARE !!!!! */ -/* Changed: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x10(FSL_ERR_PROTECTION), protection error */ -/* = 0x1C(FSL_ERR_WRITE), write error */ -/* = 0x1D(FSL_ERR_EEP_IVERIFY), verify error */ -/* = 0x1E(FSL_ERR_EEP_BLANKCHECK), blankcheck error */ -/* = 0x1F(FSL_ERR_INTERRUPTION), write interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_EEPROMWrite( fsl_u32 s_address_u32, - fsl_u08 word_count_u08 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: reads the security information */ -/* Input: destination_pu16 - destination address of the security info */ -/* The format of the security info is: "unsigned short int" */ -/* */ -/* Format of the security info: */ -/* bit_0 = 0 -> chip erase command disabled, otherwise enabled */ -/* bit_1 = 0 -> block erase command disabled, otherwise enabled */ -/* bit_2 = 0 -> write command disabled, otherwise enabled */ -/* bit_4 = 0 -> boot-area re-programming disabled, otherwise enabled */ -/* bit_8...bit_15 = 03H -> last block of the boot-area */ -/* other bits = 1 */ -/* Output: - */ -/* Changed: content of the data_buffer */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_GetSecurityFlags( fsl_u16 * destination_pu16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: read the boot flag i */ -/* Input: destination_pu08 - destination address of the bootflag info */ -/* The format of the boot-flag info is: "unsigned char" */ -/* The value of the boot info is 0x00 for cluster 0 and 0x01 for cluster 1. */ -/* Output: - */ -/* Changed: content of the data_buffer */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_GetActiveBootCluster( fsl_u08 * destination_pu08 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: puts the last address of the specified block into *destination_pu32 */ -/* Input: *destination_pu32 - destination where the last-block-address */ -/* should be stored */ -/* block_u16 - block number of the last address is needed */ -/* Changed: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_GetBlockEndAddr( fsl_u32 * destination_pu32, - fsl_u16 block_u16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: puts the information about the protected flash area into the function parameter */ -/* Input: *start_block_pu16 - destination where the FSW start block should be stored */ -/* *end_block_pu16 - destination where the FSW end block should be stored */ -/* Changed: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_GetFlashShieldWindow( fsl_u16 * start_block_pu16, - fsl_u16 * end_block_pu16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: defines a new Flash-Shield-Window area inside the flash memory */ -/* Input: start_block_u16 - starting block of the Flash-Shield-Window (FSW) */ -/* end_block_u16 - ending block of the flash-Shield-Window (FSW) */ -/* Changed: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x10(FSL_ERR_PROTECTION), protection error */ -/* = 0x1A(FSL_ERR_ERASE), erase error */ -/* = 0x1B(FSL_ERR_IVERIFY), internal verify error */ -/* = 0x1F(FSL_ERR_INTERRUPTION), write interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_SetFlashShieldWindow( fsl_u16 start_block_u16, - fsl_u16 end_block_u16 ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: Swapping of bootcluster 0 and 1 */ -/* */ -/* CAUTION !!!! */ -/* After this function the boot cluster are immediately swapped */ -/* Input: - */ -/* Output: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x10(FSL_ERR_PROTECTION), protection error */ -/* = 0x1A(FSL_ERR_ERASE), erase error */ -/* = 0x1B(FSL_ERR_IVERIFY), internal verify error */ -/* = 0x1F(FSL_ERR_INTERRUPTION), write interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_SwapBootCluster( void ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL command function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: sets specified security flag by dedicated command-function. */ -/* */ -/* There are following security levels: */ -/* a) chip-erase protection (cannot be reset by programmer !!!) */ -/* b) block-erase protection (can be reset by chip-erase on programmer) */ -/* c) write protection (can be reset by chip-erase on programmer) */ -/* d) boot-cluster protection (cannot be reset by programmer !!!) */ -/* */ -/* CAUTION !!!! */ -/* Each security flag can be written by the application only once */ -/* */ -/* Input: - */ -/* Output: - */ -/* Returned: fsl_u08, status code */ -/* = 0x00(FSL_OK), normal */ -/* = 0x05(FSL_ERR_PARAMETER), parameter error */ -/* = 0x10(FSL_ERR_PROTECTION), protection error */ -/* = 0x1A(FSL_ERR_ERASE), erase error */ -/* = 0x1B(FSL_ERR_IVERIFY), internal verify error */ -/* = 0x1F(FSL_ERR_INTERRUPTION), write interrupted by user interrupt */ -/*----------------------------------------------------------------------------------------------*/ -extern fsl_u08 FSL_SetChipEraseProtectFlag( void ); -extern fsl_u08 FSL_SetBlockEraseProtectFlag( void ); -extern fsl_u08 FSL_SetWriteProtectFlag( void ); -extern fsl_u08 FSL_SetBootClusterProtectFlag( void ); - - -/*----------------------------------------------------------------------------------------------*/ -/* Block type: FSL function */ -/*----------------------------------------------------------------------------------------------*/ -/* Purpose: defines the firmware operation method after interrupt service (ISR) execution. */ -/* Input: mode_u08 = 0x00, after RETI the firmware is continuing the interrupted command.*/ -/* = other, after RETI the firmware is interrupted with status 0x1F. */ -/* Changed: - */ -/* Returned: - */ -/*----------------------------------------------------------------------------------------------*/ -extern void FSL_SetInterruptMode( fsl_u08 mode_u08 ); - -#endif diff --git a/snake_branches/2.4_q_test/fsl_user.h b/snake_branches/2.4_q_test/fsl_user.h deleted file mode 100644 index 1018689..0000000 --- a/snake_branches/2.4_q_test/fsl_user.h +++ /dev/null @@ -1,113 +0,0 @@ -/*==============================================================================================*/ -/* Project = Selfprogramming library for 78K0R/Ix3/Kx3-L Single Voltage SST (MF2) Flash */ -/* Module = fsl_user.h */ -/* Version = V1.01 */ -/* Date = 28.03.2008 11:45:55 */ -/*==============================================================================================*/ -/* COPYRIGHT */ -/*==============================================================================================*/ -/* Copyright (c) 2007 by NEC Electronics (Europe) GmbH, */ -/* a company of the NEC Electronics Corporation */ -/*==============================================================================================*/ -/* Purpose: */ -/* user configurable constant/macros of the selfprogramming library */ -/* */ -/*==============================================================================================*/ -/* */ -/* Warranty Disclaimer */ -/* */ -/* Because the Product(s) is licensed free of charge, there is no warranty of any kind */ -/* whatsoever and expressly disclaimed and excluded by NEC, either expressed or implied, */ -/* including but not limited to those for non-infringement of intellectual property, */ -/* merchantability and/or fitness for the particular purpose. NEC shall not have any obligation */ -/* to maintain, service or provide bug fixes for the supplied Product(s) and/or the Application.*/ -/* */ -/* Each User is solely responsible for determining the appropriateness of using the Product(s) */ -/* and assumes all risks associated with its exercise of rights under this Agreement, */ -/* including, but not limited to the risks and costs of program errors, compliance with */ -/* applicable laws, damage to or loss of data, programs or equipment, and unavailability or */ -/* interruption of operations. */ -/* */ -/* Limitation of Liability */ -/* */ -/* In no event shall NEC be liable to the User for any incidental, consequential, indirect, */ -/* or punitive damage (including but not limited to lost profits) regardless of whether */ -/* such liability is based on breach of contract, tort, strict liability, breach of warranties, */ -/* failure of essential purpose or otherwise and even if advised of the possibility of */ -/* such damages. NEC shall not be liable for any services or products provided by third party */ -/* vendors, developers or consultants identified or referred to the User by NEC in connection */ -/* with the Product(s) and/or the Application. */ -/* */ -/*==============================================================================================*/ -/* Environment: PM plus (V6.30) */ -/* RA78K0(V1.20) */ -/* CC78K0(V2.00) */ -/*==============================================================================================*/ - - -#ifndef __FSL_USER_H_INCLUDED -#define __FSL_USER_H_INCLUDED - - -/*==============================================================================================*/ -/* constant definitions */ -/*==============================================================================================*/ - - -/* specify the CPU frequency in [Hz], only 2MHz....20MHz allowed */ -#define FSL_SYSTEM_FREQUENCY 8000000 - -/* define whether low-voltage mode is used or not */ -/* #define FSL_LOW_VOLTAGE_MODE */ - -/* size of the common data buffer expressed in [bytes] */ -/* the data buffer is used for data-exchange between the firmware and the selflib. */ -//#define FSL_DATA_BUFFER_SIZE 256 -#define FSL_DATA_BUFFER_SIZE 0 - - -/* customizable interrupt controller configuration during selfprogramming period */ -/* Bit --7-------6-------5-------4-------3-------2-------1-------0---------------------- */ -/* MK0L: PMK5 PMK4 PMK3 PMK2 PMK1 PMK0 LVIMK WDTIMK */ -/* MK0H: SREMK0 SRMK0* STMK0* DMAMK1 DMAMK0 SREMK3 SRMK3 STMK3 */ -/* MK1L: TMMK03 TMMK02 TMMK01 TMMK00 IICMK0 SREMK1 SRMK1 STMK1* */ -/* MK1H: TMMK04 SREMK2 SRMK2 STMK2* KRMK RTCIMK RTCMK ADMK */ -/* MK2L: PMK10 PMK9 PMK8 PMK7 PMK6 TMMK07 TMMK06 TMMK05 */ -/* MK2H: 1 1 1 1 1 1 1 PMK11 */ -/*------------------------------------------------------------------------------------------ */ -/* */ -/* Examples: */ -/* ========= */ -/*#define FSL_MK0L_MASK 0xF7 -> allow INTP1 interrupt during selfprogramming */ -/*#define FSL_MK0H_MASK 0xEF -> allow DMA1 interrupt during selfprogramming */ -/*#define FSL_MK1L_MASK 0xBF -> allow TM02 interrupt during selfprogramming */ -/*#define FSL_MK1H_MASK 0xFF -> all interrupts disabled during selfprogramming */ -/*#define FSL_MK2L_MASK 0xF7 -> allow INTP6 interrupt during selfprogramming */ -/*#define FSL_MK2H_MASK 0xFF -> all interrupts disabled during selfprogramming */ -/*------------------------------------------------------------------------------------------ */ -#define FSL_MK0L_MASK 0xFF /* all interrupts disabled during selfprogramming */ -#define FSL_MK0H_MASK 0xFF /* all interrupts disabled during selfprogramming */ -#define FSL_MK1L_MASK 0xFF /* all interrupts disabled during selfprogramming */ -#define FSL_MK1H_MASK 0xFF /* all interrupts disabled during selfprogramming */ -#define FSL_MK2L_MASK 0xFF /* all interrupts disabled during selfprogramming */ -#define FSL_MK2H_MASK 0xFF /* all interrupts disabled during selfprogramming */ - - -/* FLMD0 control bit */ -#ifndef _WIN32 -#define FSL_FLMD0_HIGH {BECTL.7 = 1;} -#define FSL_FLMD0_LOW {BECTL.7 = 0;} -#else -#define FSL_FLMD0_HIGH {BECTL_7 = 1;} -#define FSL_FLMD0_LOW {BECTL_7 = 0;} -#endif - - -/*----------------------------------------------------------------------------------------------*/ -/* switch interrupt backu functionality ON/OFF using #define/#undef */ -/*----------------------------------------------------------------------------------------------*/ -/* #define FSL_INT_BACKUP */ -#undef FSL_INT_BACKUP - - -#endif diff --git a/snake_branches/2.4_q_test/get_ei.asm b/snake_branches/2.4_q_test/get_ei.asm deleted file mode 100644 index 29f4a6e..0000000 --- a/snake_branches/2.4_q_test/get_ei.asm +++ /dev/null @@ -1,26 +0,0 @@ -$PROCESSOR ( 9F0104 ) - -PUBLIC _get_ei -; -; PSWEIǂݏo܂B -; - - - -ROM_CODE CSEG BASE - -_get_ei: - set1 CY - and1 CY,PSW.7 ; check IE bit. if 0, all interrupts are disabled. - bnc $ie_dis - mov C,#01h - ret - -ie_dis: - mov C,#00h - ret - - - end - - diff --git a/snake_branches/2.4_q_test/hal.c b/snake_branches/2.4_q_test/hal.c deleted file mode 100644 index e2e72ec..0000000 --- a/snake_branches/2.4_q_test/hal.c +++ /dev/null @@ -1,182 +0,0 @@ -/* ======================================================== - ȈՃeXĝ߂HALC - - $Id: asdf$ - ======================================================== */ -#ifndef _WIN32 -#pragma SFR -#endif - -#include "incs_loader.h" - - -#define WIFI_txLatch PIF21 // dgMpX { led.h Œ` - - -// HALłԂ //////////////////////////////////////// -// ȎȂ琳_ɂr...≽łȂ -bit PM_EXTDC_n; -bit BT_IN_CHG_n; -bit SW_POW_n; -bit SW_HOME_n; -bit SW_WIFI_n; -bit SHELL_OPEN; - -/* -#define REG_BIT_HAL0_PM_EXTDC_n ( 1 << 7 ) -#define REG_BIT_HAL0_BT_IN_CHG_n ( 1 << 6 ) -//#define REG_BIT_HAL0_PM_IRQ_n ( 1 << 5 ) // gȂ -#define REG_BIT_HAL0_WL_TX ( 1 << 4 ) -#define REG_BIT_HAL0_SHELL_OPEN ( 1 << 3 ) -#define REG_BIT_HAL0_SW_WIFI_n ( 1 << 2 ) -#define REG_BIT_HAL0_SW_HOME_n ( 1 << 1 ) -#define REG_BIT_HAL0_SW_POW_n ( 1 << 0 ) - -#define REG_BIT_HAL1_DIPSW_1 ( 1 << 3 ) -#define REG_BIT_HAL1_DIPSW_0 ( 1 << 2 ) -#define REG_BIT_HAL1_HW_DET_1 ( 1 << 1 ) -#define REG_BIT_HAL1_HW_DET_0 ( 1 << 0 ) -*/ - - -// ڂւ -// `^OȂ炱ł(ԃJEg͕) -void hal_update() -{ -#ifdef _ENABLE_HAL_ - u8 temp_conf = vreg_ctr[ VREG_C_HAL_OVW_CONT0 ]; - u8 temp_dat = vreg_ctr[ VREG_C_HAL_OVW_DAT0 ]; -#else - u8 temp_conf = 0x00; - u8 temp_dat = 0; // łǂ -#endif - - // A_v^L - if( temp_conf & REG_BIT_HAL0_PM_EXTDC_n ) - { - // O͂Ȃ񂾂傫Ȃ肪 - if(( temp_dat & REG_BIT_HAL0_PM_EXTDC_n ) == 0 ) - { - PM_EXTDC_n = 0; - } - else - { - PM_EXTDC_n = 1; - } - } - else - { - PM_EXTDC_n = PM_EXTDC_n_RAW; - } - - // [dH - if( temp_conf & REG_BIT_HAL0_BT_IN_CHG_n ) - { - if(( temp_dat & REG_BIT_HAL0_BT_IN_CHG_n ) == 0 ) - { - BT_IN_CHG_n = 0; - } - else - { - BT_IN_CHG_n = 1; - } - } - else - { - BT_IN_CHG_n = BT_IN_CHG_n_RAW; - } - - // dt - if( temp_conf & REG_BIT_HAL0_SW_POW_n ) - { - if(( temp_dat & REG_BIT_HAL0_SW_POW_n ) == 0 ) - { - SW_POW_n = 0 ; - } - else - { - SW_POW_n = 1; - } - } - else - { - SW_POW_n = SW_POW_n_RAW; - } - - // Ɩt - if( temp_conf & REG_BIT_HAL0_SW_HOME_n ) - { - if(( temp_dat & REG_BIT_HAL0_SW_HOME_n ) == 0 ) - { - SW_HOME_n = 0; - } - else - { - SW_HOME_n = 1; - } - } - else - { - if( system_status.model == MODEL_TS_BOARD )// ڑ̃|[gႤ - { - SW_HOME_n = SW_HOME_n_TSBOARD_RAW; - } - else - { - SW_HOME_n = SW_HOME_n_JIKKI_RAW; - } - } - - // J - if( temp_conf & REG_BIT_HAL0_SW_WIFI_n ) - { - if(( temp_dat & REG_BIT_HAL0_SW_WIFI_n ) == 0 ) - { - SW_WIFI_n = 0; - } - else - { - SW_WIFI_n = 1; - } - } - else - { - SW_WIFI_n = SW_WIFI_n_RAW; - } - - // - if( temp_conf & REG_BIT_HAL0_SHELL_OPEN ) - { - if(( temp_dat & REG_BIT_HAL0_SHELL_OPEN ) == 0 ) - { - SHELL_OPEN = 0; - } - else - { - SHELL_OPEN = 1; - } - } - else - { - SHELL_OPEN = SHELL_OPEN_RAW; - } - - // dg - if( temp_conf & REG_BIT_HAL0_WL_TX ) - { - WIFI_txLatch = 1; - } - -} - - - -void hal_reset() -{ - vreg_ctr[ VREG_C_HAL_OVW_CONT0 ] = 0; - vreg_ctr[ VREG_C_HAL_OVW_CONT1 ] = 0; - vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ] = 0xFF; - vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ] = 0xFF; - vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ] = 0xFF; -} - diff --git a/snake_branches/2.4_q_test/hal.h b/snake_branches/2.4_q_test/hal.h deleted file mode 100644 index 245be75..0000000 --- a/snake_branches/2.4_q_test/hal.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _hal_h_ -#define _hal_h_ - - -extern bit PM_EXTDC_n; -extern bit BT_IN_CHG_n; -extern bit SW_POW_n; -extern bit SW_HOME_n; -extern bit SW_WIFI_n; -extern bit SHELL_OPEN; - -// ======================================================== -void hal_update(); -void hal_reset(); - -#endif diff --git a/snake_branches/2.4_q_test/hoge.bin b/snake_branches/2.4_q_test/hoge.bin deleted file mode 100644 index 2587718..0000000 Binary files a/snake_branches/2.4_q_test/hoge.bin and /dev/null differ diff --git a/snake_branches/2.4_q_test/i2c_ctr.c b/snake_branches/2.4_q_test/i2c_ctr.c deleted file mode 100644 index 4bd238e..0000000 --- a/snake_branches/2.4_q_test/i2c_ctr.c +++ /dev/null @@ -1,312 +0,0 @@ -/* ======================================================== - SoC VK`l I2CʐM - cJZ.nintendo - '09 Apr - $Id: i2c_ctr.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ -#ifndef _WIN32 -#pragma interrupt INTIICA1 int_iic_ctr RB1 -#endif - - -#include "incs.h" -#include "rtc.h" -#include "pedometer.h" - - -#ifdef _MCU_BSR_ -// #ifdef _MODEL_TS0_ || _MODEL_WM0_ - -// [LOfI2Ct -// TEG͉H}ŃeR -#define ACKD ACKD1 -#define ACKE ACKE1 -#define COI COI1 -#define IICAEN IICA1EN -#define IICRSV IICRSV1 -#define IICA IICA1 -#define IICAIF IICAIF1 -#define IICAMK IICAMK1 -#define IICAPR0 IICAPR11 -#define IICAPR1 IICAPR01 -#define IICCTL0 IICCTL10 -#define IICE IICE1 -#define IICF IICF1 -#define IICS IICS1 -#define IICWH IICWH1 -#define IICWL IICWL1 -#define LREL LREL1 -#define SPD SPD1 -#define SPIE SPIE1 -#define STCEN STCEN1 -#define STD STD1 -#define SVA SVA1 -#define WREL WREL1 -#define WTIM WTIM1 -#define TRC TRC1 -#define SMC SMC1 -#define DFC DFC1 -#define PortMode PM20 -#define Port P20 - -#endif - - - -// ============================================== -enum en_IIC_STATE -{ - IIC_IDLE = 0, - IIC_RCV_REG_ADRS, - IIC_TX_OR_RX, - IIC_TX, - IIC_RX -}; - - - -// ============================================== -extern bit irq_readed; // ꂩIRQWX^ǂ܂ꂽ - -u8 iic_burst_state; -static enum en_IIC_STATE state = IIC_IDLE; - -#define bit_iics_spd (i2c_stat & (1<<0)) -#define bit_iics_std (i2c_stat & (1<<1)) -#define bit_iics_ackd (i2c_stat & (1<<2)) -#define bit_iics_trc (i2c_stat & (1<<3)) -#define bit_iics_coi (i2c_stat & (1<<4)) - - - -/********************************************//** - isr - - Xe[gɊ荞݂菈i߂ - ***********************************************/ -__interrupt void int_iic_ctr( ) -{ - static u8 reg_adrs; - static u8 tx_buf; - u8 rx_buf; - static u8 adrs_access_from; // o[XgANZX̎Ɏg - - u8 i2c_stat = IICS; // volatilê - - // ǂݏoI - if( !bit_iics_ackd // 荞ݗvNAKif[^M̍Ōj - || bit_iics_spd ) // XgbvRfBV(!ACKD ɗƂ͊荞ݗȂ (SPIE = 0)) - { - /* - I2C̔xẴtOOSTDĂ܂Ƃ - ǁAȂ삷‚ - */ - - // WX^[hŁA荞݃slQ[g - // ܂ǂ܂ĂȂ荞݂΁AēxAT[g - if( irq_readed ) - { - IRQ0_neg; - irq_readed = false; - if( !( (( vreg_ctr[VREG_C_IRQ0] & vreg_ctr[VREG_C_IRQ_MASK0 ] ) == 0 ) - && (( vreg_ctr[VREG_C_IRQ1] & vreg_ctr[VREG_C_IRQ_MASK1 ] ) == 0 ) - && (( vreg_ctr[VREG_C_IRQ2] & vreg_ctr[VREG_C_IRQ_MASK2 ] ) == 0 ) - && (( vreg_ctr[VREG_C_IRQ3] & vreg_ctr[VREG_C_IRQ_MASK3 ] ) == 0 ) )) - { - while( !IRQ0 ){;} // ԉ҂sv - IRQ0_ast; - } - } - - // I2CIɉ镨 // - hosu_read_end( ); // vǂݏoI - rtc_unlock( ); - - state = IIC_IDLE; - SPIE = 0; - LREL = 1; - EI(); - return; - } - - if( bit_iics_std ) // 荞ݗvFX^[gRfBV - { - if( !( state == IIC_IDLE || state == IIC_TX_OR_RX )) - { - // sp/nack 葹˂ -// dbg_nop(); // Ȃ͂... -/* - // pPbg̐擪stƌȂB - // ʂɑs - state = IIC_IDLE; -/*/ - // gCĂ炤 - state = IIC_IDLE; - SPIE = 0; - LREL = 1; - EI(); -//*/ - } - // ʏ - } - - EI(); - - switch ( state ) - { - case ( IIC_IDLE ): - // njĂяoɉB - // Ȃ - iic_burst_state = 0; - SPIE = 1; - WREL = 1; // EFCg - state = IIC_RCV_REG_ADRS; - return; - - case ( IIC_RCV_REG_ADRS ): // QoCgځiWX^AhXjMɗ - // WX^AhXM - reg_adrs = IICA; - - WREL = 1; - adrs_access_from = reg_adrs; - tx_buf = vreg_ctr_read( reg_adrs ); // f[^̏Ă - state = IIC_TX_OR_RX; - return; - - case ( IIC_TX_OR_RX ): // ̎ɗ銄荞݁BSTȂ瑗MAf[^珑܂ - // if( TRC ) // MtO ŋʂ̂́A荞ݒxɕsN肦 - if( bit_iics_std ) - { // X^[gRfBVotO - // [h - if( bit_iics_coi ) - { // AhXvtO - state = IIC_TX; - // no break, no return // - } - else - { - // X^[gňႤfoCXĂ΂ꂽI - SPIE = 0; - LREL = 1; // EFCg? - state = IIC_IDLE; // I - return; - } - } - else - { - state = IIC_RX; // f[^1oCgM̊荞݂ - // no break, no return // - } - /* FALLTHROUGH */ - - default: // o[Xg R/W łĂ΂邱ƂɂȂ - if( state == IIC_TX ) - { // M - IICA = tx_buf; - vreg_ctr_after_read( reg_adrs, tx_buf ); // ǂ񂾂NAȂǂ̏ - } - else - { // M - rx_buf = IICA; - -#ifdef _I2C_ERR_ABORT_ - if( reg_adrs >= 0x80 || reg_adrs <= 1 ) - { - LREL = 1; // Ȃ񂩃f[^̂ŒʐMI nakԂ̂Ȃc - return; - } -#endif - vreg_ctr_write( reg_adrs, rx_buf ); - WREL = 1; - } - - // WX^AhX̃CNg - /// ANZX|C^i߂ȂȃWX^ - switch( adrs_access_from ) - { - case( VREG_C_ACC_HOSU_HIST ): - case( VREG_C_LED_NOTIFY_DATA ): - case( VREG_C_LED_POW ): - case( VREG_CX_INFO ): - case( VREG_CX_FREE_DATA ): - break; - case( VREG_CX_FREE_ADRS ): - if( reg_adrs == VREG_CX_FREE_ADRS ) - { - reg_adrs = VREG_CX_FREE_DATA; - } - break; - default: - reg_adrs ++; - } - - if( state == IIC_TX ) - { // ɂ‚ɑf[^̏VeINBSPĎgȂȂ - tx_buf = vreg_ctr_read( reg_adrs ); - } - break; - } -} - - - -/********************************************//** -@W[ -@ -@todo twl init Ɠ? -@ -@rbg삪̂łĕsoςȂ - ***********************************************/ -void IIC_ctr_Init( void ) -{ - - IICAEN = 1; - - IICE = 0; /* IICA disable */ - - IICAMK = 1; /* INTIICA disable */ - IICAIF = 0; /* clear INTIICA interrupt flag */ - -// IICAPR0 = 1; /* set INTIICA high priority */ -// IICAPR1 = 0; /* set INTIICA high priority */ X^bNs - - Port &= ~0x03; - - SVA = IIC_C_SLAVEADDRESS; - IICF = 0x01; - - STCEN = 1; // X^[g̋ - IICRSV = 1; // ʐM\Ȃ:X[uɓO - - SPIE = 0; // XgbvRfBVł̊荞݂֎~ - WTIM = 1; // ACKԂclkLɌŒ肷 - ACKE = 1; - - IICWH = 9; - IICWL = 11; // LԂ̒ - - SMC = 1; // [h - DFC = 1; // fW^tB^on (@fast mode) - - IICAMK = 0; // 荞݂ - - IICE = 1; - - PortMode &= ~0x03; - - state = IIC_IDLE; -} - - - -/********************************************//** - - ***********************************************/ -void IIC_ctr_Stop( void ) -{ - IICE = 0; /* IICA disable */ - IICAEN = 0; -} - - - diff --git a/snake_branches/2.4_q_test/i2c_ctr.h b/snake_branches/2.4_q_test/i2c_ctr.h deleted file mode 100644 index 16234ff..0000000 --- a/snake_branches/2.4_q_test/i2c_ctr.h +++ /dev/null @@ -1,210 +0,0 @@ -#ifndef _MDSERIAL_A_ -#define _MDSERIAL_A_ - - -/* IIC operation enable (IICE0) */ -#define IIC0_OPERATION 0x80 -#define IIC0_OPERATION_DISABLE 0x00 /* stop operation */ -#define IIC0_OPERATION_ENABLE 0x80 /* enable operation */ - -/* Exit from communications (LREL0) */ -#define IIC0_COMMUNICATION 0x40 -#define IIC0_COMMUNICATION_NORMAL 0x00 /* normal operation */ -#define IIC0_COMMUNICATION_EXIT 0x40 /* exit from current communication */ - -/* Wait cancellation (WREL0) */ -#define IIC0_WAITCANCEL 0x20 -#define IIC0_WAIT_NOTCANCEL 0x00 /* do not cancel wait */ -#define IIC0_WAIT_CANCEL 0x20 /* cancel wait */ - -/* Generation of interrupt when stop condition (SPIE0) */ -#define IIC0_STOPINT 0x10 -#define IIC0_STOPINT_DISABLE 0x00 /* disable */ -#define IIC0_STOPINT_ENABLE 0x10 /* enable */ - -/* Wait and interrupt generation (WTIM0) */ -#define IIC0_WAITINT 0x08 -#define IIC0_WAITINT_CLK8FALLING 0x00 /* generate at the eighth clocks falling edge */ -#define IIC0_WAITINT_CLK9FALLING 0x08 /* generated at the ninth clocks falling edge */ - -/* Acknowledgement control (ACKE0) */ -#define IIC0_ACK 0x04 -#define IIC0_ACK_DISABLE 0x00 /* enable acknowledgement */ -#define IIC0_ACK_ENABLE 0x04 /* disable acknowledgement */ - -/* Start condition trigger (STT0) */ -#define IIC0_STARTCONDITION 0x02 -#define IIC0_START_NOTGENERATE 0x00 /* do not generate start condition */ -#define IIC0_START_GENERATE 0x02 /* generate start condition */ - -/* Stop condition trigger (SPT0) */ -#define IIC0_STOPCONDITION 0x01 -#define IIC0_STOP_NOTGENERATE 0x00 /* do not generate stop condition */ -#define IIC0_STOP_GENERATE 0x01 /* generate stop condition */ - -/* - IIC Status Register 0 (IICS0) -*/ -/* Master device status (MSTS0) */ -#define IIC0_MASTERSTATUS 0x80 -#define IIC0_STATUS_NOTMASTER 0x00 /* slave device status or communication standby status */ -#define IIC0_STATUS_MASTER 0x80 /* master device communication status */ - -/* Detection of arbitration loss (ALD0) */ -#define IIC0_ARBITRATION 0x40 -#define IIC0_ARBITRATION_NO 0x00 /* arbitration win or no arbitration */ -#define IIC0_ARBITRATION_LOSS 0x40 /* arbitration loss */ - -/* Detection of extension code reception (EXC0) */ -#define IIC0_EXTENSIONCODE 0x20 -#define IIC0_EXTCODE_NOT 0x00 /* extension code not received */ -#define IIC0_EXTCODE_RECEIVED 0x20 /* extension code received */ - -/* Detection of matching addresses (COI0) */ -#define IIC0_ADDRESSMATCH 0x10 -#define IIC0_ADDRESS_NOTMATCH 0x00 /* addresses do not match */ -#define IIC0_ADDRESS_MATCH 0x10 /* addresses match */ - -/* Detection of transmit/receive status (TRC0) */ -#define IIC0_STATUS 0x08 -#define IIC0_STATUS_RECEIVE 0x00 /* receive status */ -#define IIC0_STATUS_TRANSMIT 0x08 /* transmit status */ - -/* Detection of acknowledge signal (ACKD0) */ -#define IIC0_ACKDETECTION 0x04 -#define IIC0_ACK_NOTDETECTED 0x00 /* ACK signal was not detected */ -#define IIC0_ACK_DETECTED 0x04 /* ACK signal was detected */ - -/* Detection of start condition (STD0) */ -#define IIC0_STARTDETECTION 0x02 -#define IIC0_START_NOTDETECTED 0x00 /* start condition not detected */ -#define IIC0_START_DETECTED 0x02 /* start condition detected */ - -/* Detection of stop condition (SPD0) */ -#define IIC0_STOPDETECTION 0x01 -#define IIC0_STOP_NOTDETECTED 0x00 /* stop condition not detected */ -#define IIC0_STOP_DETECTED 0x01 /* stop condition detected */ - -/* - IIC Flag Register 0 (IICF0) -*/ -/* STT0 clear flag (STCF) */ -#define IIC0_STARTFLAG 0x80 -#define IIC0_STARTFLAG_GENERATE 0x00 /* generate start condition */ -#define IIC0_STARTFLAG_UNSUCCESSFUL 0x80 /* start condition generation unsuccessful */ - -/* IIC bus status flag (IICBSY) */ -#define IIC0_BUSSTATUS 0x40 -#define IIC0_BUS_RELEASE 0x00 /* bus release status */ -#define IIC0_BUS_COMMUNICATION 0x40 /* bus communication status */ - -/* Initial start enable trigger (STCEN) */ -#define IIC0_STARTWITHSTOP 0x02 -#define IIC0_START_WITHSTOP 0x00 /* generation of a start condition without detecting a stop condition */ -#define IIC0_START_WITHOUTSTOP 0x02 /* generation of a start condition upon detection of a stop condition */ - -/* Communication reservation function disable bit (IICRSV) */ -#define IIC0_RESERVATION 0x01 -#define IIC0_RESERVATION_ENABLE 0x00 /* enable communication reservation */ -#define IIC0_RESERVATION_DISABLE 0x01 /* disable communication reservation */ - -/* - IIC clock selection register 0 (IICCL0) -*/ -#define IICCL0_INITIALVALUE 0x00 -/* Detection of SCL0 pin level (CLD0) */ -#define IIC0_SCLLEVEL 0x20 -#define IIC0_SCL_LOW 0x00 /* clock line at low level */ -#define IIC0_SCL_HIGH 0x20 /* clock line at high level */ - -/* Detection of SDA0 pin level (DAD0) */ -#define IIC0_SDALEVEL 0x10 -#define IIC0_SDA_LOW 0x00 /* data line at low level */ -#define IIC0_SDA_HIGH 0x10 /* data line at high level */ - -/* Operation mode switching (SMC0) */ -#define IIC0_OPERATIONMODE 0x08 -#define IIC0_MODE_STANDARD 0x00 /* operates in standard mode */ -#define IIC0_MODE_HIGHSPEED 0x08 /* operates in high-speed mode */ - -/* Digital filter operation control (DFC0) */ -#define IIC0_DIGITALFILTER 0x04 -#define IIC0_FILTER_OFF 0x00 /* digital filter off */ -#define IIC0_FILTER_ON 0x04 /* digital filter on */ - -/* Operation mode switching (CL01, CL00) */ -#define IIC0_CLOCKSELECTION 0x03 - -/* Combine of (SMC0, CL01, CL00)*/ -#define IIC0_CLOCK0 0x00 -#define IIC0_CLOCK1 0x01 -#define IIC0_CLOCK2 0x02 -#define IIC0_CLOCK3 0x03 -#define IIC0_CLOCK4 0x08 -#define IIC0_CLOCK5 0x09 -#define IIC0_CLOCK6 0x0a -#define IIC0_CLOCK7 0x0b - -/* - IIC function expansion register 0 (IICX0) -*/ -/* IIC clock expension (CLX0) */ -#define IIC0_CLOCKEXPENSION 0x01 -#define IIC0_EXPENSION0 0x00 -#define IIC0_EXPENSION1 0x01 - -/* Operation clock (CLX0, SMC0, CL01, CL00) - | IIC0_EXPENSION0 | IIC0_EXPENSION1 | -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK0 | fprs/2 | prohibited | selection clock(fw) - | fprs/88 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK1 | fprs/2 | prohibited | selection clock(fw) - | fprs/172 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK2 | fprs/2 | prohibited | selection clock(fw) - | fprs/344 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK3 |prohibited/fexscl0 | prohibited | selection clock(fw) - | fw/66 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK4 | fprs/2 | fprs/2 | selection clock(fw) - | fprs/48 | fprs/24 | transfer clock - | high speed | high speed | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK5 | fprs/2 | fprs/2 | selection clock(fw) - | fprs/48 | fprs/24 | transfer clock - | high speed | high speed | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK6 | fprs/4 | fprs/4 | selection clock(fw) - | fprs/96 | fprs/48 | transfer clock - | high speed | high speed | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK7 |prohibited/fexscl0 | prohibited | selection clock(fw) - | fw/18 | | transfer clock - | high speed | | mode -------------|-------------------|-------------------|---------------------- -*/ - -#define ADDRESS_COMPLETE 0x80 -#define IIC_MASTER_FLAG_CLEAR 0x00 - -/****************************************************************************** - * Macro define - ******************************************************************************/ - - - -/****************************************************************************** - * Function define - ******************************************************************************/ - -void IIC_ctr_Init( void ); -void IIC_ctr_Stop( void ); - - -#endif diff --git a/snake_branches/2.4_q_test/i2c_mcu-sub.c b/snake_branches/2.4_q_test/i2c_mcu-sub.c deleted file mode 100644 index b1b468c..0000000 --- a/snake_branches/2.4_q_test/i2c_mcu-sub.c +++ /dev/null @@ -1,124 +0,0 @@ -/* ======================================================== - ȈI2CiytFgpjʐM - de JHL cJZ - '09 Feb - - $Id: $ - ======================================================== */ -#ifndef _WIN32 -#pragma sfr -#pragma di -#pragma ei -#pragma nop -#pragma inline // memcpy()CCWJ(̕I) -#endif - -#include "incs.h" -#include "i2c_mcu.h" -#include "loader.h" -#include "util_funcs.h" - -#include "i2c_mcu_sub.h" -#include "pm.h" /// 肽ȂcCODEC̃WX^Ђ - - -// ======================================================== -// [NAEhp -static void iic_mcu_simple_dummy_write(); -static i2c_err iic_mcu_codec_write_low( u8 adrs, u8 dat ); - -// i2c_mcu.c ɂ -extern void iic_mcu_send_re_st( ); -extern void iic_mcu_send_sp( ); -extern i2c_err iic_mcu_send_a_byte( u8 ); -extern i2c_err iic_mcu_call_slave( u8 slave ); - - -/* - yamaha codecspӂɊ荞݂邱Ƃ邪A^XNo^ - ۂɓǂݏoƂɂ͏߂Ȃ̂ʼnȂ悤ɓ͂ -*/ - -/********************************************//** - R[fbN wPoCgx Cg - - iic_mcu_write_a_byte CODECs[NAEh - ***********************************************/ -#define YAMAHA_CODEC_ERRATA_CHECK_MASK ( 0x7D ) -i2c_err iic_mcu_write_a_byte_codec( u8 adrs, u8 dat ) -{ - u8 pm_reg_original; - i2c_err rv; - - // }ncodec[NAEh SPIƂ̋pWX^̒g擾 - if(( rv = iic_mcu_read( IIC_SLA_CODEC, CODEC_REG_PM, 1, &pm_reg_original )) != I2C_ERR_OK ) - { - return( rv ); - } - // phase1 ܂ - - // ݁I - if( ( rv = iic_mcu_codec_write_low( adrs, dat ) ) != I2C_ERR_OK ) - { - return( rv ); - } - - // }ncodec[NAEh - if( ( pm_reg_original & YAMAHA_CODEC_ERRATA_CHECK_MASK ) == 0 ) // ͂߂狤LWX^0eXgȂ - // (& ZbgvĂǂZbĝ) - { - return( I2C_ERR_OK ); - } - - { - // LWX^ 0x00 ɏĂ(Gb^I)悤Ȃ珑߂ - u8 pm_reg_after; - - if(( rv = iic_mcu_read( IIC_SLA_CODEC, CODEC_REG_PM, 1, &pm_reg_after )) != I2C_ERR_OK ) - { - return( rv ); - } - - if( ( pm_reg_after & YAMAHA_CODEC_ERRATA_CHECK_MASK ) != 0x00 ) - { - // RtNg͂Ȃ or ZbgvȂ - return( I2C_ERR_OK ); - } - - // else { - rv = iic_mcu_codec_write_low( CODEC_REG_PM, pm_reg_original ); // ߂Aă`FbN͂Ȃ - return ( rv ); // G[Ԃ邱Ƃ邩 - // gCȂǂ͖ - } - return( rv ); // no reach // -} - - -static i2c_err iic_mcu_codec_write_low( u8 adrs, u8 dat ) -{ - IICMK10 = 1; // DMApISRɔ΂Ȃ߂Ƀ}XN - if( iic_mcu_call_slave( IIC_SLA_CODEC ) != I2C_ERR_OK ) - { - iic_mcu_busy = false; - return ( I2C_ERR_NOSLAVE ); - } - iic_mcu_send_a_byte( adrs ); - iic_mcu_send_a_byte( dat ); - - // TI[NAEh - codec_dummy_write(); - - iic_mcu_send_sp( ); - iic_mcu_busy = false; - return( I2C_ERR_OK ); -} - - -// re-stŃ_~[Cg -void codec_dummy_write() -{ - iic_mcu_send_re_st( ); - iic_mcu_send_a_byte( IIC_SLA_CODEC ); // _~[Cg - iic_mcu_send_a_byte( 0x20 ); // S~ĂȂAhX - iic_mcu_send_a_byte( 0xAA ); // ł悢 -} - diff --git a/snake_branches/2.4_q_test/i2c_mcu.c b/snake_branches/2.4_q_test/i2c_mcu.c deleted file mode 100644 index db007b3..0000000 --- a/snake_branches/2.4_q_test/i2c_mcu.c +++ /dev/null @@ -1,657 +0,0 @@ -/* ======================================================== - ȈI2CiytFgpjʐM - de JHL cJZ - '09 Feb - - $Id$ - ======================================================== */ -#ifndef _WIN32 -#pragma sfr -#pragma di -#pragma ei -#pragma nop -#pragma inline // memcpy()CCWJ(̕I) -#endif - -#include "incs_loader.h" -#include "i2c_mcu.h" -#include "loader.h" -#include "util_funcs.h" - -#include "i2c_mcu_sub.h" - - - -// ======================================================== -// WX^̃rbg -// vtBbNXbAꕔ̃rbgWX^ɂԂ邽... -// SMR0n -#define bCKS0 ( 1 << 15 ) -#define bCCS0 ( 1 << 14 ) -#define bSTS0 ( 1 << 8 ) -#define bSIS0 ( 1 << 6 ) -#define bMD0n2 ( 1 << 2 ) -#define bMD0n1 ( 1 << 1 ) -#define bMD0n0 ( 1 << 0 ) -#define bSMR0n_FIXEDBIT ( 1 << 5 ) - -// SSR0n -#define bit_TSF0 6 -#define PEF0 ( 1 << 1 ) - -// SIR0n -#define PECT0 ( 1 << 1 ) - -// SCR0n -#define TXE0 ( 1 << 15 ) -#define RXE0 ( 1 << 14 ) -#define SLC02 4 -#define DLS02 0 -#define TSF0 ( 1 << 6 ) - -// SOn -#define TAUS_MASK 0x0B0B; - -// DMCn -#define DRS ( 1 << 6 ) - - - - -// ======================================================== -static void iic_mcu_send_st( ); - -// *sub炵Ă΂Ȃ -void iic_mcu_send_re_st( ); -void iic_mcu_send_sp( ); -i2c_err iic_mcu_send_a_byte( u8 ); -i2c_err iic_mcu_call_slave( u8 slave ); - - -// ======================================================== -bit iic_mcu_wo_dma; -volatile bit iic_mcu_busy; -static volatile bit iic_mcu_initialized; - - -static u8 iic_send_work[4]; -static u8 *p_iic_send_wo_dma_dat; -static u8 iic_send_wo_dma_len; - -// f[^G[iROHMxZTjgĈ -/// Ƃ肠ADMAgp}`oCgCg ̎ɂ@\Ȃ -static u8 last_slave, last_reg_adrs, last_size; - -i2c_err iic_mcu_result; // ꕶ[h̎̓f[^ԂB - -#ifdef i2c_timeout_test -extern bit i2c_mcu_time_out_error; -#endif - - - -/********************************************//** - - ***********************************************/ -void nop8() -{ - // ɗ call 3clk, return 6clk -} - - -/********************************************//** - ̒ʐMÎ҂B - - ^CAEgL - ***********************************************/ -static i2c_err iic_mcu_wait_free() -{ - u16 tot = 0; - - iic_mcu_start( ); - while( 1 ) - { - DI_wt_chk(); - if( !iic_mcu_busy ) - { - iic_mcu_busy = true; - EI(); - break; - } - EI(); - if( ++tot == 0 ) - { -#ifdef i2c_timeout_test - i2c_mcu_time_out_error = true; -#endif - return( I2C_ERR_TIMEOUT ); - } - } - return( I2C_ERR_OK ); -} - - - -/********************************************//** - X[u w1x [h - - Ԓlf[^̂̂łB - - G[R[h iic_mcu_result ɓĂ܂ - ***********************************************/ -u8 iic_mcu_read_a_byte( u8 SLA, u8 adrs ) -{ - u8 dat; - - iic_mcu_result = iic_mcu_read( SLA, adrs, 1, &dat ); - - return ( dat ); -} - - - -/********************************************//** - X[ũ[h - - yz - - X[uEFCgRfBVoƂ͋֎~łB - - ̏ꍇłG[oȂǂł܂ - ***********************************************/ -i2c_err iic_mcu_read( u8 slave, u8 adrs, u8 len, u8 * dest ) -{ - -#if 1 - if( iic_mcu_wait_free() != I2C_ERR_OK ) - { - // (^CAEg) - return( I2C_ERR_TIMEOUT ); - } -#else - // gpȂA -#endif - - // X^[gRfBVƃX[ǔĂяoAWX^AhX̑M - if( iic_mcu_call_slave( slave ) != 0 ) - { - iic_mcu_busy = false; - return ( I2C_ERR_NOSLAVE ); - } - - // WX^AhX̑M - iic_mcu_send_a_byte( adrs ); // I܂ŋAĂȂ - - // ΂NAKAĂȂO - - // f[^M // - iic_mcu_send_re_st( ); // X^[gRfBV - iic_mcu_send_a_byte( slave | 0x01 ); // M܂Ŗ߂Ă܂B - - // f[^M - ST0 = 0x0004; // M[hɐݒς̂ŃWbN~ - SCR02 = RXE0 | 1 << SLC02 | 7 << DLS02; // Mݒ - SS0 = 0x0004; // ʐMҋ@ - - do - { - if( len == 1 ) - { - SOE0 = 0x0000; // ŌNAK - } - IICIF10 = 0; - SIO10 = 0xFF; // _~[f[^ƎMJn - while( IICIF10 == 0 ) - {;} // M҂ - - *dest = SIO10; - dest++; - len--; - } - while( len != 0 ); - - if( slave == IIC_SLA_CODEC ) - { - codec_dummy_write(); - } - - iic_mcu_send_sp( ); - - IICIF10 = 0; - iic_mcu_busy = false; - return ( I2C_ERR_OK ); -} - - - - -/********************************************//** - X[u wPoCgx Cg - - O̓]Î҂āACg܂B - - Ԓl@iic_mcu_write@ɓ - ***********************************************/ -i2c_err iic_mcu_write_a_byte( u8 SLA, u8 adrs, u8 dat ) -{ - // P̎DMAƂNȂłƏI点 - if( iic_mcu_wait_free() != I2C_ERR_OK ) - { - return( I2C_ERR_TIMEOUT ); - } - - // X^[gRfBVƃX[ǔĂяo... - IICMK10 = 1; - if( iic_mcu_call_slave( SLA ) != I2C_ERR_OK ) - { - iic_mcu_busy = false; - return( I2C_ERR_NOSLAVE ); - } - iic_mcu_send_a_byte( adrs ); - iic_mcu_send_a_byte( dat ); - iic_mcu_send_sp( ); - iic_mcu_busy = false; - return ( I2C_ERR_OK ); -} - - - -/********************************************//** - X[uփCg - - WX^ adrs 擪ɁA - - *str - - len܂B - - yz - - X[uEFCgRfBVoƂ͋֎~łB - - ̏ꍇłG[oȂǂł܂ - - DMA1gp܂B - ***********************************************/ -i2c_err iic_mcu_write( u8 slave, u8 adrs, u8 len, void * src ) -{ - if( iic_mcu_wait_free() != I2C_ERR_OK ) - { - return( I2C_ERR_TIMEOUT ); - } -#if 0 // renge^̃}`^XNɂȂłɂ - // gpȂA -#endif - - // X^[gRfBVƃX[ǔĂяo... - IICMK10 = 1; - IICIF10 = 0; - if( iic_mcu_call_slave( slave ) != I2C_ERR_OK ) - { - iic_mcu_busy = false; - return ( I2C_ERR_NOSLAVE ); - } - - IICIF10 = 0; - if( !iic_mcu_wo_dma ) - { - // DMAgpiʏj// - - // WX^AhX𑗂Af[^̏ - memcpy( iic_send_work, src, 4 ); //obt@Ƃ4oCgpӂĖ߁B - - // gĈ - last_slave = slave; - last_reg_adrs = adrs; - last_size = len; - - // DMAZbg - while( DST1 ) - {;} - - DEN1 = 1; - DSA1 = (u8)( &SIO10 ); - DRA1 = (u16)( &iic_send_work[0] ); - DBC1 = len; - DMC1 = DRS | 8; // RAM -> SFR, 8bit, IRQ, IIC10 - - DMAIF1 = 0; - DMAMK1 = 0; - DST1 = 1; // DEN1 = 12clkȏJ - - SIO10 = adrs; // ςȂI 荞݂DMAX^[g - // c͊荞݃[` - } - else - { - // DMAgpȂ // - - // WX^AhX̑M - IICMK10 = 0; - SIO10 = adrs; - - iic_send_wo_dma_len = len; - p_iic_send_wo_dma_dat = (u8*)src; - // c͊荞݃[` - } - - return ( I2C_ERR_OK ); -} - - - - -/********************************************//** - DMAP]I荞 - - IIC_mcu ̑MR[obN֐̂悤Ȃ - - FDMA]IŁAI2C̓]͏IĂ܂ - -@ 荞ݒȂǂŁADMA1̏xꍇA - IIC10̊荞݂̏łɁA荞݂𔭐ȂȂ - ꂪ܂B܂A@ɂ܂B - - @̂߁ADMAdl̍ق́AŌ̃oCg͑M - tÕ|[OŊmF܂B - ***********************************************/ -__interrupt void int_dma1( ) -{ - static bit in_retry; - - EI(); - - // Ō̃oCg̑M҂ - while( ( SSR02L & TSF0 ) != 0 ) - { - u16 i = 0; - if( ++i == 0 ) // ^CAEgH - { - break; - } - } - - // XgbvRfBVs -// iic_mcu_send_sp(); // ISRŊO̊֐ĂԂ͓̂siėpWX^ҔĵœWJ - { - ST0 = 0x0004; - SOE0 = 0; // M̎͂ƑOɁuvݒ肵ĂB(NACKo) - SO0 = 0x0000 | TAUS_MASK; // SCL - nop8(); //. |ȂBO̊֐Ă -/* - NOP(); NOP(); NOP(); NOP(); - NOP(); NOP(); NOP(); NOP(); -*/ - SO0 = 0x0400 | TAUS_MASK; // SCL - nop8(); -/* - NOP(); NOP(); NOP(); NOP(); - NOP(); NOP(); NOP(); NOP(); -*/ - SO0 = 0x0404 | TAUS_MASK; - } - - IICMK10 = 1; - - // f[^̓r NAK AxgCB - /// 蔲 - if( SIR02 != 0 ) - { - SIR02 = SSR02; - - if( !in_retry ) - { - in_retry = true; - - IICIF10 = 0; - iic_mcu_call_slave( last_slave ); // NAK͍mPA - - while( DST1 ){;} - DRA1 = (u16)( &iic_send_work[0] ); // CNgĂ܂Ă̂ōăZbg - DBC1 = last_size; // fNgĂ܂Ă̂ōăZbg - // ق̐ݒ͑Ô܂ - - DMAIF1 = 0; - DMAMK1 = 0; - DST1 = 1; - - SIO10 = last_reg_adrs; // ςȂI 荞݂DMAX^[g - return; - // ܂ - } - else - { - // G[xځBmȂ - dbg_nop(); - // ̂܂܏I - } - } - - // I - in_retry = false; - DMAMK1 = 1; - DEN1 = 0; - iic_mcu_busy = false; -} - - - -/********************************************//** - IIC MCŨoCgo荞 - - DMAgp͎gp܂B - - @̊荞ݏDMÅ荞݂ɂ΂ȂꍇA - @IIC荞݂̃ZbgԂɍ킸邱Ƃ܂B - ***********************************************/ -__interrupt void int_iic10( ) -{ - EI(); - if( iic_send_wo_dma_len != 0 ) // ܂MĂȂH - { - SIO10 = *p_iic_send_wo_dma_dat; - p_iic_send_wo_dma_dat ++; - iic_send_wo_dma_len --; - return; - // ܂ // - } - - // Ō̃oCgMAXgbvRfBVs - IICMK10 = 1; -// iic_mcu_send_sp(); // ISRŊO̊֐ĂԂ͓̂siėpWX^ҔĵœWJ - { - ST0 = 0x0004; - SOE0 = 0; // M̎͂ƑOɁuvݒ肵ĂB(NACKo) - SO0 = 0x0000 | TAUS_MASK; // clear SCL - NOP(); NOP(); NOP(); NOP(); // NOP8Ăł͂ - NOP(); NOP(); NOP(); NOP(); - SO0 = 0x0400 | TAUS_MASK; // set SCL - NOP(); NOP(); NOP(); NOP(); - NOP(); NOP(); NOP(); NOP(); - SO0 = 0x0404 | TAUS_MASK; // set CSL adn SDA - } - - iic_mcu_wo_dma = false; - iic_mcu_busy = false; -} - - - -/********************************************//** - X[ǔĂяo - -@X[uAhXĂŁAACK̊mFB - - ACK@@@@@@@@@@@@@@@@@@ԁFI2C_ERR_OK - -@NACK @XgbvRfBVoB@ԁFI2C_ERR_NOSLAVE - ***********************************************/ -i2c_err iic_mcu_call_slave( u8 slave ) -{ - iic_mcu_send_st( ); - -/* -// dbg - if( SSR02 != 0 ) - { - P1.5 = P1.0 = P1.3 = 1; - } -*/ - - SIR02 = SSR02; // NAKG[̃tONA - if( iic_mcu_send_a_byte( slave ) != I2C_ERR_OK ) - { - iic_mcu_send_sp( ); - return ( I2C_ERR_NOSLAVE ); // w̃X[uȂ - } - - return ( I2C_ERR_OK ); -} - - - -/********************************************//** - قƂɂPoCĝ - - I܂ŋA܂ - ***********************************************/ -i2c_err iic_mcu_send_a_byte( u8 dat ) -{ - IICMK10 = 1; - IICIF10 = 0; - SIO10 = dat; - while( IICIF10 == 0 ) - { -// NOP( ); - } // ʐM - - if( SSR02 != 0 ) // 炩G[? - { - SIR02 = SSR02; // G[NA - return( I2C_ERR_NAK ); - } - return( I2C_ERR_OK ); -} - - - -/********************************************//** - X^[gRfBV𔭍s - - \tgEFA - ***********************************************/ -static void iic_mcu_send_st( ) -{ - SO0 &= ~0x0004; // SDA - nop8(); - - SO0 &= ~0x0400; // SCL - SOE0 = 0x0004; // n[h - - SCR02 = TXE0 | 1 << SLC02 | 7 << DLS02; // MAf[^͂WrbgP - SS0 = 0x0004; // ʐMҋ@ -} - - - -/********************************************//** - X^[gs - ***********************************************/ -void iic_mcu_send_re_st( ) -{ - ST0 |= 0x0004; - SO0 |= 0x0400 | TAUS_MASK; // ( SDA = H ), SCL -> H - nop8(); - - SOE0 &= ~0x0004; // ( SCL = H ), SDA -> L - nop8(); - - iic_mcu_send_st( ); -} - - - -/********************************************//** - XgbvRfBVs - - ̑OɁAuŌ̃oCg̑Mv̎ɑOKvłB - ***********************************************/ -void iic_mcu_send_sp( ) -{ - ST0 = 0x0004; - SOE0 = 0; // M̎͂ƑOɁuvݒ肵ĂB(NACKo) - SO0 = 0x0000 | TAUS_MASK; // SCL - nop8(); - - SO0 = 0x0400 | TAUS_MASK; // SCL - nop8(); - - SO0 = 0x0404 | TAUS_MASK; -} - - - - -/********************************************//** - ytFW[̏ - ***********************************************/ -void iic_mcu_start( ) -{ - if( iic_mcu_initialized ) - { - return; - } - - iic_mcu_busy = true; -// DST1 = 0; - - I2C_PU_on(); -// DEN1 = 0; // DST1 = 0 2clḱADSTn==0|[OĂ - - wait_ms( 1 ); // オ̂50usʂ - - SAU0EN = 1; - nop8(); - - SPS0 = 0x0000; // VAjbg̃NbNOB(8M/2)/1 - SMR02 = bSMR0n_FIXEDBIT | bMD0n2; // ȈI2Cɐݒ - SDR02 = 10 << 9; // {[[gݒ 8M/1/(x+1)/2 - - SO0 = 0x0404 | TAUS_MASK; // ŏHH - iic_mcu_wo_dma = false; - - - // oX̃Zbg - { - IICIF10 = 0; - IICMK10 = 1; - - iic_mcu_send_st(); - - SIO10 = 0xFF; - while( IICIF10 == 0 ){;} // ʐM - iic_mcu_send_sp(); - - SIR02 = SSR02; - } - - iic_mcu_busy = false; - iic_mcu_initialized = true; -} - - - -/********************************************//** - W[̒~ - - ēxgƂ͏Kv - ***********************************************/ -void iic_mcu_stop( ) -{ - while( iic_mcu_busy ) - {;} // DMA쒆͂҂ - iic_mcu_send_re_st( ); // SCL,SDALLɂ - I2C_PU_off(); - SAU0EN = 0; - iic_mcu_initialized = false; -} - diff --git a/snake_branches/2.4_q_test/i2c_mcu.h b/snake_branches/2.4_q_test/i2c_mcu.h deleted file mode 100644 index 16eeba8..0000000 --- a/snake_branches/2.4_q_test/i2c_mcu.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef __ic2_mcu__ -#define __ic2_mcu__ - - -// ======================================================== -typedef enum{ - I2C_ERR_OK = 0, - I2C_ERR_NAK, - I2C_ERR_NOSLAVE, - I2C_ERR_TIMEOUT, - I2C_ERR_UNDEF = 0xFF -}i2c_err; - - - -// ======================================================== -extern volatile bit iic_mcu_busy; -extern bit iic_mcu_wo_dma; - -extern i2c_err iic_mcu_result; - - -// ======================================================== -i2c_err iic_mcu_read( u8 SLA, u8 adrs, u8 len, u8 * dest ); -u8 iic_mcu_read_a_byte( u8 SLA, u8 adrs ); - -i2c_err iic_mcu_write( u8 SLA, u8 adrs, u8 len, void * src ); -i2c_err iic_mcu_write_a_byte( u8 SLA, u8 adrs, u8 dat ); - -i2c_err iic_mcu_write_a_byte_codec( u8 adrs, u8 dat ); // codecoO@\t - - -// ̒ʐM܂B -#define iic_mcu_set_wo_dma() { while( iic_mcu_busy ){;} iic_mcu_wo_dma = true; } - -void iic_mcu_start( ); -void iic_mcu_stop( ); - - -#endif diff --git a/snake_branches/2.4_q_test/i2c_mcu_sub.h b/snake_branches/2.4_q_test/i2c_mcu_sub.h deleted file mode 100644 index a2c192e..0000000 --- a/snake_branches/2.4_q_test/i2c_mcu_sub.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef __ic2_mcu_sub__ -#define __ic2_mcu_sub__ - -// $Id: asdf$ - -i2c_err iic_mcu_write_a_byte_codec( u8 adrs, u8 dat ); -void codec_dummy_write( void ); - -#endif diff --git a/snake_branches/2.4_q_test/i2c_twl.c b/snake_branches/2.4_q_test/i2c_twl.c deleted file mode 100644 index 3c91ce8..0000000 --- a/snake_branches/2.4_q_test/i2c_twl.c +++ /dev/null @@ -1,246 +0,0 @@ -/* ======================================================== - TWL ݊I2C - - $Id: i2c_twl.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ -#ifndef _WIN32 - -#pragma sfr /* @\WX^gp */ - -#endif - - -/*============================================================================*/ -#ifndef _WIN32 -# pragma interrupt INTIICA0 int_iic_twl RB2 -#endif - -#include "incs_loader.h" -#include "i2c_twl_defs.h" -#include "i2c_twl.h" -#include "vreg_twl.h" -#include "WDT.h" - - -#ifdef _MCU_BSR_ -//#ifdef _MODEL_TS0_ || _MODEL_WM0_ - -// [LOfI2Ct -#define ACKD ACKD0 -#define ACKE ACKE0 -#define COI COI0 -#define IICAEN IICA0EN -#define IICRSV IICRSV0 -#define IICA IICA0 -#define IICAIF IICAIF0 -#define IICAMK IICAMK0 -#define IICAPR0 IICAPR00 -#define IICAPR1 IICAPR10 -#define IICCTL0 IICCTL00 -#define IICE IICE0 -#define IICF IICF0 -#define IICS IICS0 -#define IICWH IICWH0 -#define IICWL IICWL0 -#define LREL LREL0 -#define SPD SPD0 -#define SPIE SPIE0 -#define STCEN STCEN0 -#define STD STD0 -#define SVA SVA0 -#define WREL WREL0 -#define WTIM WTIM0 -#define SMC SMC0 -#define TRC TRC0 -#define DFC DFC0 -#define PortMode PM6 -#define Port P6 - -#endif // _MCU_BSR_ - -#ifndef _MCU_BSR_ - -// ke3̎̓_~[֐ -void IIC_twl_Stop( void ) -{ -} -void IIC_twl_Init( void ) -{ -} -#else // _MCU_BSR_ - - - -enum IIC_TWL_STATE{ - WAIT_ADRS = 0, - WAIT_DATA, - DATA_READED -}; - - - - -/*============================================================================*/ - -// I@̓}NȂ̂ŁAreturn̓C[vɖ߂܂B -#define wait_next { \ - tot = 0; \ - while( IICAIF != 1 ){ \ - tot ++; \ - if( tot == 0 ){ \ - LREL = 1; \ - return; \ - } \ - } \ -} - - -/********************************************//** - isr - - TWL̓EFCg𗝉ĂꂸA܂Ao[XgR/W - ȂłĂ̂ŁAXgbvRfBV܂ňCɂĂ܂B - ***********************************************/ -__interrupt void int_iic_twl( ) -{ - u8 vreg_adrs; - u8 state; - - // @ - WREL = 1; // EFCgĎ̃oCg҂ - WDT_Restart(); - state = WAIT_ADRS; - - while( 1 ) - { - u8 my_iics; - - { - u16 tot; - wait_next; // PoCgM҂ - } - - my_iics = IICS; - IICAIF = 0; - - if( my_iics & 0x02 ) // ( STD && !SPD ) - { - // X^[gRfBV - if( ( my_iics & 0x08 ) == 0 ) // ( TRC ) MtO 0:}CRM - { - // @f}CRłATWLgCƂƂ - // ɗ̂̓X[uĂяo̎ // - WREL = 1; - state = WAIT_ADRS; - /// WX^AhX̂҂ - } - else - { - // BR Rł̃X[uĂяo(X^[gRfBV) // - IICA = vreg_twl_read( vreg_adrs ); // f[^M - // Xgbv҂ALREL = 1 ɂȂƁAMobt@j󂳂邱Ƃ - state = DATA_READED; - } - } - else if( ( my_iics & 0x03 ) == 0 ) // ( !STD && !SPD ) - { - u8 rcvd; - - // 炩M - rcvd = IICA; - WREL = 1; - - if( state == WAIT_ADRS ) - { - // A - vreg_adrs = adrs_table_twl_ext2int( rcvd ); - /// f[^邩AX^[gœǂݏô҂ - state = WAIT_DATA; - } - else if( state == DATA_READED ) - { - // f[^1oCgM㔭 - LREL = 1; - return; - } - else - { - // BW - // f[^܂ - SVA = 0x5A; // _~[ - LREL = 1; // X^[gRfBV҂(AݖΉ̂) - vreg_twl_write( vreg_adrs, rcvd ); - SVA = IIC_T_SLAVEADDRESS; - return; // M܂ // - } - } - else if( my_iics & 0x01 ) // SPD - { - // I - LREL = 1; - return; - } - else - { - // NOP(); - } - } -} - - - -/********************************************//** - W[ - ***********************************************/ -void IIC_twl_Init( void ) -{ - - IICAEN = 1; - - IICE = 0; /* IICA disable */ - - IICAMK = 1; /* INTIICA disable */ - IICAIF = 0; /* clear INTIICA interrupt flag */ - - IICAPR0 = 0; /* set INTIICA high priority */ - IICAPR1 = 0; /* set INTIICA high priority */ - Port &= ~0x03; - - SVA = IIC_T_SLAVEADDRESS; - IICF = 0x01; - - STCEN = 1; // X^[g̋ - IICRSV = 1; // ʐM\Ȃ:X[uɓO - - SPIE = 0; // XgbvRfBVł̊荞݂֎~ - WTIM = 1; // ACKԂclkLɌŒ肷 - ACKE = 1; // _CPU͖Ď̒ʐM͂߂邩ȂőclkJȂƂȂ - - IICWH = 9; - IICWL = 11; // LԂ̒iHj - - SMC = 1; - DFC = 1; // fW^tB^on (@fast mode) - - IICAMK = 0; // 荞݂ - - IICE = 1; - - PortMode &= ~0x03; - - LREL = 1; -} - - - -/********************************************//** - W[~ - ***********************************************/ -void IIC_twl_Stop( void ) -{ - IICE = 0; /* IICA disable */ - IICAEN = 0; -} - - -#endif diff --git a/snake_branches/2.4_q_test/i2c_twl.h b/snake_branches/2.4_q_test/i2c_twl.h deleted file mode 100644 index 0f608b0..0000000 --- a/snake_branches/2.4_q_test/i2c_twl.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef _iic_twl_ -#define _iic_twl_ - -void IIC_twl_Init( void ); -void IIC_twl_Stop( void ); - -#endif diff --git a/snake_branches/2.4_q_test/i2c_twl_defs.h b/snake_branches/2.4_q_test/i2c_twl_defs.h deleted file mode 100644 index be5d566..0000000 --- a/snake_branches/2.4_q_test/i2c_twl_defs.h +++ /dev/null @@ -1,196 +0,0 @@ -#ifndef _MDSERIAL_ -#define _MDSERIAL_ - - -/* IIC operation enable (IICE0) */ -#define IIC0_OPERATION 0x80 -#define IIC0_OPERATION_DISABLE 0x00 /* stop operation */ -#define IIC0_OPERATION_ENABLE 0x80 /* enable operation */ - -/* Exit from communications (LREL0) */ -#define IIC0_COMMUNICATION 0x40 -#define IIC0_COMMUNICATION_NORMAL 0x00 /* normal operation */ -#define IIC0_COMMUNICATION_EXIT 0x40 /* exit from current communication */ - -/* Wait cancellation (WREL0) */ -#define IIC0_WAITCANCEL 0x20 -#define IIC0_WAIT_NOTCANCEL 0x00 /* do not cancel wait */ -#define IIC0_WAIT_CANCEL 0x20 /* cancel wait */ - -/* Generation of interrupt when stop condition (SPIE0) */ -#define IIC0_STOPINT 0x10 -#define IIC0_STOPINT_DISABLE 0x00 /* disable */ -#define IIC0_STOPINT_ENABLE 0x10 /* enable */ - -/* Wait and interrupt generation (WTIM0) */ -#define IIC0_WAITINT 0x08 -#define IIC0_WAITINT_CLK8FALLING 0x00 /* generate at the eighth clocks falling edge */ -#define IIC0_WAITINT_CLK9FALLING 0x08 /* generated at the ninth clocks falling edge */ - -/* Acknowledgement control (ACKE0) */ -#define IIC0_ACK 0x04 -#define IIC0_ACK_DISABLE 0x00 /* enable acknowledgement */ -#define IIC0_ACK_ENABLE 0x04 /* disable acknowledgement */ - -/* Start condition trigger (STT0) */ -#define IIC0_STARTCONDITION 0x02 -#define IIC0_START_NOTGENERATE 0x00 /* do not generate start condition */ -#define IIC0_START_GENERATE 0x02 /* generate start condition */ - -/* Stop condition trigger (SPT0) */ -#define IIC0_STOPCONDITION 0x01 -#define IIC0_STOP_NOTGENERATE 0x00 /* do not generate stop condition */ -#define IIC0_STOP_GENERATE 0x01 /* generate stop condition */ - -/* - IIC Status Register 0 (IICS0) -*/ -/* Master device status (MSTS0) */ -#define IIC0_MASTERSTATUS 0x80 -#define IIC0_STATUS_NOTMASTER 0x00 /* slave device status or communication standby status */ -#define IIC0_STATUS_MASTER 0x80 /* master device communication status */ - -/* Detection of arbitration loss (ALD0) */ -#define IIC0_ARBITRATION 0x40 -#define IIC0_ARBITRATION_NO 0x00 /* arbitration win or no arbitration */ -#define IIC0_ARBITRATION_LOSS 0x40 /* arbitration loss */ - -/* Detection of extension code reception (EXC0) */ -#define IIC0_EXTENSIONCODE 0x20 -#define IIC0_EXTCODE_NOT 0x00 /* extension code not received */ -#define IIC0_EXTCODE_RECEIVED 0x20 /* extension code received */ - -/* Detection of matching addresses (COI0) */ -#define IIC0_ADDRESSMATCH 0x10 -#define IIC0_ADDRESS_NOTMATCH 0x00 /* addresses do not match */ -#define IIC0_ADDRESS_MATCH 0x10 /* addresses match */ - -/* Detection of transmit/receive status (TRC0) */ -#define IIC0_STATUS 0x08 -#define IIC0_STATUS_RECEIVE 0x00 /* receive status */ -#define IIC0_STATUS_TRANSMIT 0x08 /* transmit status */ - -/* Detection of acknowledge signal (ACKD0) */ -#define IIC0_ACKDETECTION 0x04 -#define IIC0_ACK_NOTDETECTED 0x00 /* ACK signal was not detected */ -#define IIC0_ACK_DETECTED 0x04 /* ACK signal was detected */ - -/* Detection of start condition (STD0) */ -#define IIC0_STARTDETECTION 0x02 -#define IIC0_START_NOTDETECTED 0x00 /* start condition not detected */ -#define IIC0_START_DETECTED 0x02 /* start condition detected */ - -/* Detection of stop condition (SPD0) */ -#define IIC0_STOPDETECTION 0x01 -#define IIC0_STOP_NOTDETECTED 0x00 /* stop condition not detected */ -#define IIC0_STOP_DETECTED 0x01 /* stop condition detected */ - -/* - IIC Flag Register 0 (IICF0) -*/ -/* STT0 clear flag (STCF) */ -#define IIC0_STARTFLAG 0x80 -#define IIC0_STARTFLAG_GENERATE 0x00 /* generate start condition */ -#define IIC0_STARTFLAG_UNSUCCESSFUL 0x80 /* start condition generation unsuccessful */ - -/* IIC bus status flag (IICBSY) */ -#define IIC0_BUSSTATUS 0x40 -#define IIC0_BUS_RELEASE 0x00 /* bus release status */ -#define IIC0_BUS_COMMUNICATION 0x40 /* bus communication status */ - -/* Initial start enable trigger (STCEN) */ -#define IIC0_STARTWITHSTOP 0x02 -#define IIC0_START_WITHSTOP 0x00 /* generation of a start condition without detecting a stop condition */ -#define IIC0_START_WITHOUTSTOP 0x02 /* generation of a start condition upon detection of a stop condition */ - -/* Communication reservation function disable bit (IICRSV) */ -#define IIC0_RESERVATION 0x01 -#define IIC0_RESERVATION_ENABLE 0x00 /* enable communication reservation */ -#define IIC0_RESERVATION_DISABLE 0x01 /* disable communication reservation */ - -/* - IIC clock selection register 0 (IICCL0) -*/ -#define IICCL0_INITIALVALUE 0x00 -/* Detection of SCL0 pin level (CLD0) */ -#define IIC0_SCLLEVEL 0x20 -#define IIC0_SCL_LOW 0x00 /* clock line at low level */ -#define IIC0_SCL_HIGH 0x20 /* clock line at high level */ - -/* Detection of SDA0 pin level (DAD0) */ -#define IIC0_SDALEVEL 0x10 -#define IIC0_SDA_LOW 0x00 /* data line at low level */ -#define IIC0_SDA_HIGH 0x10 /* data line at high level */ - -/* Operation mode switching (SMC0) */ -#define IIC0_OPERATIONMODE 0x08 -#define IIC0_MODE_STANDARD 0x00 /* operates in standard mode */ -#define IIC0_MODE_HIGHSPEED 0x08 /* operates in high-speed mode */ - -/* Digital filter operation control (DFC0) */ -#define IIC0_DIGITALFILTER 0x04 -#define IIC0_FILTER_OFF 0x00 /* digital filter off */ -#define IIC0_FILTER_ON 0x04 /* digital filter on */ - -/* Operation mode switching (CL01, CL00) */ -#define IIC0_CLOCKSELECTION 0x03 - -/* Combine of (SMC0, CL01, CL00)*/ -#define IIC0_CLOCK0 0x00 -#define IIC0_CLOCK1 0x01 -#define IIC0_CLOCK2 0x02 -#define IIC0_CLOCK3 0x03 -#define IIC0_CLOCK4 0x08 -#define IIC0_CLOCK5 0x09 -#define IIC0_CLOCK6 0x0a -#define IIC0_CLOCK7 0x0b - -/* - IIC function expansion register 0 (IICX0) -*/ -/* IIC clock expension (CLX0) */ -#define IIC0_CLOCKEXPENSION 0x01 -#define IIC0_EXPENSION0 0x00 -#define IIC0_EXPENSION1 0x01 - -/* Operation clock (CLX0, SMC0, CL01, CL00) - | IIC0_EXPENSION0 | IIC0_EXPENSION1 | -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK0 | fprs/2 | prohibited | selection clock(fw) - | fprs/88 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK1 | fprs/2 | prohibited | selection clock(fw) - | fprs/172 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK2 | fprs/2 | prohibited | selection clock(fw) - | fprs/344 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK3 |prohibited/fexscl0 | prohibited | selection clock(fw) - | fw/66 | | transfer clock - | normal | | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK4 | fprs/2 | fprs/2 | selection clock(fw) - | fprs/48 | fprs/24 | transfer clock - | high speed | high speed | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK5 | fprs/2 | fprs/2 | selection clock(fw) - | fprs/48 | fprs/24 | transfer clock - | high speed | high speed | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK6 | fprs/4 | fprs/4 | selection clock(fw) - | fprs/96 | fprs/48 | transfer clock - | high speed | high speed | mode -------------|-------------------|-------------------|---------------------- -IIC0_CLOCK7 |prohibited/fexscl0 | prohibited | selection clock(fw) - | fw/18 | | transfer clock - | high speed | | mode -------------|-------------------|-------------------|---------------------- -*/ - -#define ADDRESS_COMPLETE 0x80 -#define IIC_MASTER_FLAG_CLEAR 0x00 - -#endif diff --git a/snake_branches/2.4_q_test/incs.h b/snake_branches/2.4_q_test/incs.h deleted file mode 100644 index f9c1c4a..0000000 --- a/snake_branches/2.4_q_test/incs.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef _WIN32 -#pragma SFR -#pragma di -#pragma ei -#pragma nop -#pragma stop -#pragma halt -#endif - -#ifndef _WIN32 -#pragma section @@CODE ROM_CODE -//#pragma section @@CNST ROM_CNST -#endif - -#ifdef _WIN32 -// VC̐Ԑǂɂ -#include "sim/simOnWin.h" -# endif - - - -//========================================================= -#ifndef _incs_h_ -#define _incs_h_ - -// v_pc_ƂŐ؂ւĂ܂ -#define _mcu_ - -#include "jhl_defs.h" -#include "config.h" -#include "user_define.h" - -#include "hal.h" - -#include "bsr_system.h" -#include "renge\renge.h" - -#include "vreg_ctr.h" - -#include "util_funcs.h" - -//========================================================= - -#endif diff --git a/snake_branches/2.4_q_test/incs_loader.h b/snake_branches/2.4_q_test/incs_loader.h deleted file mode 100644 index 0569b9f..0000000 --- a/snake_branches/2.4_q_test/incs_loader.h +++ /dev/null @@ -1,49 +0,0 @@ -/* ======================================================== - @sԂvolatileȂ̂Ń^C~OˑŊ҂ȂɂȂ̂@ - - Hardware abstruct layer - - $Id: asdf$ - ======================================================== */ -#ifndef _WIN32 -#pragma SFR -#pragma di -#pragma ei -#pragma nop -#pragma stop -#pragma halt - - -#pragma section @@CODE LDR_CODE -#pragma section @@CODEL LDR_CODL - -//#pragma section @@R_INIT FSL_RINT // ƃX^[gAbv[`l -//#pragma section @@CNST FSL_CNST // ZbgĂȂ -#pragma section @@CNSTL LDR_CNSL - -#endif - -# ifdef _WIN32 -// VC̐Ԑǂɂ -#include "sim/simOnWin.h" -# endif - - -//========================================================= -#include "jhl_defs.h" -#include "config.h" - -#include "user_define.h" - -#include "hal.h" - -#include "bsr_system.h" -#include "renge\renge.h" - -#include "vreg_ctr.h" -#include "vreg_twl.h" - - -//========================================================= -void firm_update( ); -void firm_restore( ); diff --git a/snake_branches/2.4_q_test/ini_VECT.c b/snake_branches/2.4_q_test/ini_VECT.c deleted file mode 100644 index 84da25c..0000000 --- a/snake_branches/2.4_q_test/ini_VECT.c +++ /dev/null @@ -1,347 +0,0 @@ -/* ======================================================== - 荞݃xN^e[u - $Id$ - ======================================================== */ - -#ifndef _WIN32 - -#pragma nop - -#endif - -#include "config.h" - -#ifndef _WIN32 - -#ifdef _WDT_CHECK_ -#pragma interrupt INTWDTI fn_intwdti // wdt debug -#endif - -//#pragma interrupt INTLVI fn_intlvi // gp - -//#pragma interrupt INTP0 intp0_slp // SLP (CPUAv) |[O -//#pragma interrupt INTP1 fn_intp1 // (I2C) -//#pragma interrupt INTP2 fn_intp2 // (I2C) -//#pragma interrupt INTP3 fn_intp3 // -#pragma interrupt INTP4 intp4_extdc // EXTDC, doffN̂݁Bʏ̓|[O -#pragma interrupt INTP5 intp5_shell // SHELL_CLOSE, doffN̂݁Bʏ̓|[O -#pragma interrupt INTP6 intp6_PM_irq // CODECoRŋPMICւ̃R}h - -//#ifdef _MCU_BSR_ // 荞݂͎̂̂g܂ -//#pragma interrupt INTP21 intp21_RFTx // dgMpX -//#else -//#pragma interrupt INTP7 intp21_RFTx -//#endif - - -/* - - accero -#ifdef _MCU_BSR_ -#pragma interrupt INTP23 intp23_ACC_ready RB3 // xZTAf[^ -#endif -*/ - -//#pragma interrupt INTCMP0 fn_intcmp0 -//#pragma interrupt INTCMP1 fn_intcmp1 -//#pragma interrupt INTDMA0 fn_intdma0 -#pragma interrupt INTDMA1 int_dma1 - -//#pragma interrupt INTST0 fn_intst0 -/* #pragma interrupt INTCSI00 fn_intcsi00 */ -//#pragma interrupt INTSR0 fn_intsr0 -/* #pragma interrupt INTCSI01 fn_intcsi01 */ -//#pragma interrupt INTSRE0 fn_intsre0 - -//#pragma interrupt INTST1 fn_intst1 -/* #pragma interrupt INTCSI10 fn_intcsi10 */ -#pragma interrupt INTIIC10 int_iic10 -//#pragma interrupt INTSR1 fn_intsr1 -//#pragma interrupt INTSRE1 fn_intsre1 - - -/* -// TS̓}U{ŃeRAWM͉H}eRŌLjvc -#pragma interrupt INTIICA1 int_iic_ctr RB1 - -#pragma interrupt INTIICA0 int_iic_twl RB2 -*/ - -//#pragma interrupt INTTM00 fn_inttm00 -//#pragma interrupt INTTM01 fn_inttm01 -//#pragma interrupt INTTM02 fn_inttm02 -//#pragma interrupt INTTM03 fn_inttm03 - -#pragma interrupt INTAD int_adc -#pragma interrupt INTRTC int_rtc -#pragma interrupt INTRTCI int_rtc_int -#pragma interrupt INTKR int_kr -//#pragma interrupt INTMD fn_intmd - -//#pragma interrupt INTTM04 fn_inttm04 -//#pragma interrupt INTTM05 fn_inttm05 -//#pragma interrupt INTTM06 fn_inttm06 -//#pragma interrupt INTTM07 fn_inttm07 - - -//#define _irq_debug_ -/****************************************************/ -/* gp̃_~[֐` */ -/****************************************************/ -#ifdef _WDT_CHECK_ -__interrupt void fn_intwdti( ) -{ - while( 1 ) - { - NOP(); - } -} -#endif - -#ifdef _irq_debug_ -__interrupt void fn_intlvi( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intp0(){ -while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intp1( ) -{ - while( 1 ) - { - NOP(); - } -} // -__interrupt void fn_intp2( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intp3( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void intp21_RFTx( ) -{ - while( 1 ) - { - NOP(); - } -} - - -//__interrupt void fn_intp4(){ while(1){} } // pm.c -//__interrupt void fn_intp5(){ while(1){} } // pm.c -//__interrupt void fn_intp6(){ while(1){} } // pm.c -//__interrupt void fn_intp7(){ while(1){} } // led.c -//__interrupt void fn_intp21(){ while(1){} } // led.c - -__interrupt void fn_intcmp0( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intcmp1( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intdma0( ) -{ - while( 1 ) - { - NOP(); - } -} - -//__interrupt void fn_intdma1(){} // i2c_mcu.cɂ - -__interrupt void fn_intst0( ) -{ - while( 1 ) - { - NOP(); - } -} - -/* __interrupt void fn_intcsi00(){} */ -__interrupt void fn_intsr0( ) -{ - while( 1 ) - { - NOP(); - } -} - -/* __interrupt void fn_intcsi01(){} */ -__interrupt void fn_intsre0( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intst1( ) -{ - while( 1 ) - { - NOP(); - } -} - -/* __interrupt void fn_intcsi10(){} */ -//__interrupt void fn_intiic10(){ while(1){} } -__interrupt void fn_intsr1( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_intsre1( ) -{ - while( 1 ) - { - NOP(); - } -} - -//__interrupt void fn_intiica(){} // i2c.cɂ -/* __interrupt void fn_inttm00(){} *//* sub.cɂĒ` */ -__interrupt void fn_inttm01( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_inttm02( ) -{ - while( 1 ) - { - NOP(); - } -} -__interrupt void fn_inttm03( ) -{ - while( 1 ) - { - NOP(); - } -} - -//__interrupt void fn_intad(){ while(1){} } // adc.c -__interrupt void fn_intrtc( ) -{ - while( 1 ) - { - NOP(); - } -} - -//__interrupt void int_rtcint(){} // rtc.cɂ -//__interrupt void fn_intkr(){} // main.c -__interrupt void fn_intmd( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_inttm04( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_inttm05( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_inttm06( ) -{ - while( 1 ) - { - NOP(); - } -} - -__interrupt void fn_inttm07( ) -{ - while( 1 ) - { - NOP(); - } -} - -#endif - - - -/* ======================================================== - L[^[荞 - ======================================================== */ -__interrupt void int_kr( ) -{ - // N邾 -} - - - -/* ======================================================== - ext dc - ======================================================== */ -__interrupt void intp4( ) -{ - // N邾 -} - - - -/* ======================================================== - shell close - ======================================================== */ -__interrupt void intp5( ) -{ - // N邾 -} - - -#else - -#include "sim/sim_interrupt_decrare.c" - -#endif - diff --git a/snake_branches/2.4_q_test/jhl_defs.h b/snake_branches/2.4_q_test/jhl_defs.h deleted file mode 100644 index 9a21ab3..0000000 --- a/snake_branches/2.4_q_test/jhl_defs.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __jhl_defs_h__ -#define __jhl_defs_h__ - -typedef unsigned char u8; -typedef signed char s8; -typedef unsigned short u16; -typedef signed short s16; - -typedef unsigned short ux16; -typedef signed short sx16; - -#define true 1 -#define false 0 - - -#define set_bit( cond, reg, pos ) \ -{ \ - if( cond ){ \ - reg |= pos; \ - }else{ \ - reg &= ~pos; \ - } \ -} - -#endif diff --git a/snake_branches/2.4_q_test/kanaria.asm b/snake_branches/2.4_q_test/kanaria.asm deleted file mode 100644 index 9deaddb..0000000 --- a/snake_branches/2.4_q_test/kanaria.asm +++ /dev/null @@ -1,12 +0,0 @@ -PUBLIC _END_1,_END_2,_END_3,_END_4 - -@@DATA DSEG BASEP -_END_1: -@@INIT DSEG BASEP -_END_2: -@@INITL DSEG UNIT64KP -_END_3: -@@DATAL DSEG UNIT64KP -_END_4: -; -END diff --git a/snake_branches/2.4_q_test/kanaria_c.c b/snake_branches/2.4_q_test/kanaria_c.c deleted file mode 100644 index bbb5ec7..0000000 --- a/snake_branches/2.4_q_test/kanaria_c.c +++ /dev/null @@ -1,18 +0,0 @@ -/********************************************//** - X^bN̍Ō̒lǂ - - X^bNj󌟍̂ - - $Id$ - ***********************************************/ -#include "incs.h" - -extern unsigned char END_4; - -void f() -{ - unsigned char *tp; - - tp = &END_4; -} - diff --git a/snake_branches/2.4_q_test/led.c b/snake_branches/2.4_q_test/led.c deleted file mode 100644 index bf62e07..0000000 --- a/snake_branches/2.4_q_test/led.c +++ /dev/null @@ -1,399 +0,0 @@ -/* ======================================================== - LED.c - - $Id: LED.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ -#ifndef _WIN32 - -#pragma sfr - -#endif - -#include "incs.h" -#include "led.h" - - -// ======================================================== -static void LED_oshirase_init(); - - - -// ======================================================== -// TPS0 -#define BIT_PRS012 ( 1 << 2 ) -#define BIT_PRS002 ( 1 << 6 ) - -// TMR0 -#define BIT_CKS0 15 -#define BIT_CCS0 12 -#define BIT_MASTER0 11 -#define BIT_STS0 8 -#define BIT_CIS0 6 -#define BIT_MD123 1 -#define BIT_MD0 0 - - - -// ======================================================== -bit ledInitialized; - - -// m点LED -uni_info_LED info_LED; // p^[f[^ -bit info_led_off; // doffȂǁAtO -bit info_led_override; // drcʋ͏_ŏ㏑rbg - -// wifi led Xe[g -static u8 state_wifi_tx; -static u8 flag_wifi_TX; - - -// ======================================================== -#define led_fade_to( now, goal ) now = fade_to( now, goal ) - - -/********************************************//** - now goal ɂȂ܂ inc / dec BxĂԂƃOf[V - - Ƃ肠AXebvŒ - ***********************************************/ -u8 fade_to( u8 now, u8 goal ) -{ - if( now != goal ) - { - if( now > goal ) - { - now --; - } - else - { - now ++; - } - } - return( now ); -} - - - - -/********************************************//** - XlăOf[V - ***********************************************/ -#define led_fade_to2( led, status ) \ - led = fade_to2( status ) - - -u8 fade_to2( st_LED_dim_status* status ) -{ - if( status->now != status->to ) - { - if( abs(( status->to - status->now )) > abs(status->delta) ) - { - status->now += status->delta; - } - else - { - // delta Ƃ to ̒lɂԂ‚Ă܂ - status->now = status->to; - } - } - return( status->now / 128 ); -} - - - - -/********************************************//** - LED̏ - - HW^C}[ĝł̏s - ***********************************************/ -void LED_init( ) -{ -/** - PWM̃ZbgAƂ肠S - - }X^`lFO@(P01:/reset2)@}X^[͋`lłȂ - X[u@@@@P@rksnB(Rc kdcH) - @@@@@@@@Q@J - @@@@@@@@R@WiFi - @@@@@@@@S@(s͂qsb32kHz out Ɏgp) - @@@@@@@@T@[d - @@@@@@@@U@d k - @@@@@@@@V@d g - */ -// LED_oshirase_init(); // m点p^[ - - /// ytF /// - TAU0EN = 1; - TPS0 = BIT_PRS012 | BIT_PRS002; // }X^[NbNCK01,8M/2 /2^4 = 250kHz - - TMR00 = - 1 << BIT_CKS0 | 0 << BIT_CCS0 | 1 << BIT_MASTER0 | 0 << BIT_STS0 | 0 - << BIT_CIS0 | 0 << BIT_MD123 | 1 << BIT_MD0; - TMR01 = TMR02 = TMR03 = TMR04 = TMR05 = TMR06 = TMR07 = - 1 << BIT_CKS0 | 0 << BIT_CCS0 | 0 << BIT_MASTER0 | 4 << BIT_STS0 | 0 - << BIT_CIS0 | 4 << BIT_MD123 | 1 << BIT_MD0; - ISC = 0; - TOM0 = 0x00FE; // o̓[hB4PWMo͂Ȃ1ɂȂTO5ȍ~ɃNbN͂Ȃ - - TOL0 = 0x0000; // o͂𔽓]邩tO - - TO0 = 0x0000; // ^C}[쒆ŁA^C}[o͂ɂĂȂƂ̃s̃b`B^C}[o͂gȂȂO - TOE0 = 0x00EE; // TOx^C}[W[H - - TS0 = 0x00EF; // Jn - - TDR00 = LED_BRIGHT_MAX - 1; // 10bit - - // Abvf[gȂǂŃ}CR̂݃u[gƂ - if( system_status.reboot ) - { - // SoC ̃R}h҂Aœd LED ‚ - vreg_ctr[VREG_C_LED_POW] = LED_POW_ILM_AUTO; - LED_duty_pow_blu = LED_BRIGHT_MAX; - } - info_led_off = false; // - ledInitialized = true; -} - - -static void LED_oshirase_init() -{ - char* p_tgt = &info_LED; - int i; - - for( i = 0; i < sizeof(info_LED); i++ ) - { - *p_tgt = 0; - p_tgt++; - } -} - - - - - -/********************************************//** - LED̒~B - - HW^C}[̒~ - ***********************************************/ - -void LED_stop( ) -{ - TT0 = 0x00EF; // Ē~iȂƂ߁j - TOE0 = 0x0000; // TOx^C}[W[H(GPIOɂȂ) - TAU0EN = 0; - LED_pow_red = 0; - LED_CAM = 0; - - LED_duty_notify_red = 0; - LED_duty_notify_blu = 0; - LED_duty_notify_grn = 0; - LED_pow_red = 0; - LED_CAM = 0; - - WIFI_txLatch = 0; - flag_wifi_TX = 0; - state_wifi_tx = 0; - - ledInitialized = false; -} - - - - -/********************************************//** - WiFi LED ̍XV - - - WX^̐ݒ on / off - - off łĂW[̑MpX -_-_-_--------_-_-_-------̃p^[_ - ***********************************************/ -void tsk_led_wifi( ) -{ - static u8 task_interval; - - if( task_interval-- != 0 ) - { - return; - } - - // MpX̃b` - if( WIFI_txLatch ) // 荞݃tÔ̂gĂ܂ - { - WIFI_txLatch = 0; - flag_wifi_TX = 1; - } - - if( flag_wifi_TX != 0 ) - { - vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_WIFI_TX; - // Mp^[ - switch ( state_wifi_tx ) - { - case ( 1 ): - case ( 3 ): - case ( 5 ): - LED_duty_WiFi = 0; - break; - default: - LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT]; - } - state_wifi_tx ++; - if( state_wifi_tx == 32 ) // _ŌA_ĂԂ̒ - { - state_wifi_tx = 0; - flag_wifi_TX = 0; - } - task_interval = 25; - return; - } - else - { - task_interval = 30; - // MtO҂ - vreg_ctr[ VREG_C_STATUS_1 ] &= ~REG_BIT_WIFI_TX; - - if( vreg_ctr[VREG_C_LED_WIFI] == WIFI_LED_OFF ) - { - LED_duty_WiFi = 0; - return; - } - else - { - if( LED_duty_WiFi == vreg_ctr[VREG_C_LED_BRIGHT] ) - { - return; - } - else if( LED_duty_WiFi < vreg_ctr[VREG_C_LED_BRIGHT] ) - { - LED_duty_WiFi ++; - } - else - { - LED_duty_WiFi --; - } - } - task_interval = 3; - return; - } -} - - - - -bit info_led_pattern_updated; -/********************************************//** - m点LED - - tF[hAEgvZ - ***********************************************/ -static void calc_info_led_fade_out( st_LED_dim_status* tgt_led ) -{ - tgt_led -> to = 0; - tgt_led -> delta = ( 0 - tgt_led -> now ) / 64; - // tF[hAEg([ɌĂB̌z肵Ă܂B) - if(( tgt_led -> now != 0 ) && ( tgt_led -> delta == 0 )) - { - tgt_led -> delta = (sx16)-1; - } -} - - -/********************************************//** - m点LED - - Of[VvZ - ***********************************************/ -static void calc_info_led_next_frame( st_LED_dim_status* tgt_led, u8 color ) -{ - tgt_led -> to = color * 128; - // Of[Ṽf^vZ - tgt_led -> delta = (( tgt_led -> to - tgt_led -> now ) ) / info_LED.info_LED.fade_time; -} - - -/********************************************//** - m点LED - ***********************************************/ -void tsk_led_notify( ) -{ - static u8 time_to_next_frame; - static u8 frame; - static u8 loops; - static st_LED_dim_status LED_dim_status_info_R, LED_dim_status_info_G, LED_dim_status_info_B; - - if( info_led_override ) - { - // dr؂ꂪD悷 - return; - } - - if( system_status.pwr_state == ON_TRIG ) - { - LED_duty_notify_blu = 0; - LED_duty_notify_red = 0; - LED_duty_notify_grn = 0; - LED_dim_status_info_R.now = 0; - LED_dim_status_info_G.now = 0; - LED_dim_status_info_B.now = 0; - } - - if( info_led_off ) // doffȂNjoff - { - // tF[hAEg - calc_info_led_fade_out( &LED_dim_status_info_R ); - calc_info_led_fade_out( &LED_dim_status_info_G ); - calc_info_led_fade_out( &LED_dim_status_info_B ); - } - else - { - // ʏ^] - if( info_led_pattern_updated ) - { - info_led_pattern_updated = false; - vreg_ctr[ VREG_C_LED_NOTIFY_FLAG ] &= ~REG_BIT_IN_LOOP; - frame = 0; // Ə - time_to_next_frame = 0; - } - else - { - // ̃t[ɐi߂H - if( time_to_next_frame == 0 ) - { - time_to_next_frame = info_LED.info_LED.term; - - if( frame >= NOTIFY_LED_TERM -1 ) - { - vreg_ctr[ VREG_C_LED_NOTIFY_FLAG ] |= REG_BIT_IN_LOOP; - if( info_LED.info_LED.last_loop != 255 ) // 255:[v - { - loops ++; - if( loops > info_LED.info_LED.last_loop ) - { - frame = 0; - } - } - } - else - { - frame = (( frame + 1 ) & 0x1F ); // Ń}XNĂȂƍŏIt[`擪Ԃ̃OfȂ - vreg_ctr[ VREG_C_LED_NOTIFY_FLAG ] &= ~REG_BIT_IN_LOOP; - loops = 0; - } - - // Of[VvZ - calc_info_led_next_frame( &LED_dim_status_info_R, info_LED.info_LED.red[frame] ); - calc_info_led_next_frame( &LED_dim_status_info_G, info_LED.info_LED.grn[frame] ); - calc_info_led_next_frame( &LED_dim_status_info_B, info_LED.info_LED.blu[frame] ); - - } - time_to_next_frame --; - } - } - - led_fade_to2( LED_duty_notify_red, &LED_dim_status_info_R ); - led_fade_to2( LED_duty_notify_grn, &LED_dim_status_info_G ); - led_fade_to2( LED_duty_notify_blu, &LED_dim_status_info_B ); -} diff --git a/snake_branches/2.4_q_test/led.h b/snake_branches/2.4_q_test/led.h deleted file mode 100644 index ce8541f..0000000 --- a/snake_branches/2.4_q_test/led.h +++ /dev/null @@ -1,142 +0,0 @@ -#ifndef __led__ -#define __led__ - - - -// ==================================== - -//#define LED_CHARGE P2.4 // PMŒ` - -// LED_DUTY -#define LED_duty_pow_blu TDR06 -#define LED_duty_WiFi TDR03 - -#define LED_duty_3d TDR01 -#define LED_duty_notify_red TDR07 -#define LED_duty_notify_grn TDR05 -#define LED_duty_notify_blu TDR02 - -// dutyς܂ -#ifndef _WIN32 -#define LED_pow_red P4.2 -#define LED_CAM P7.5 -#else -#define LED_pow_red mcuRegP[ _P4_2 ] -#define LED_CAM mcuRegP[ _P7_5 ] -#endif - -#define NOTIFY_LED_TERM 32 - - -#define LED_BRIGHT_MAX 0x00FF - -// ==================================== -#define WIFI_txLatch PIF21 // dgMpX - - - -// ==================================== -enum LED_ILUM_MODE -{ - LED_POW_ILM_AUTO = 0, - LED_POW_ILM_ON, - LED_POW_ILM_SLEEP, - LED_POW_ILM_OFF, - LED_POW_ILM_ONLY_RED, - LED_POW_ILM_ONLY_BLUE, - LED_POW_ILM_FORCE_BT_EMPTY -}; - - -enum LED_MODE_3D -{ - LED_3D_ILM_OFF = 0, - LED_3D_ILM_ON -}; - - -// VREG_C_WIFI_LED -enum WIFI_LED_MODE -{ - WIFI_LED_OFF = 0, - WIFI_LED_ON -}; - - -// VREG_C_WIFI_NOTIFY -enum NOTIFY_LED_MODE -{ - NOTIFY_LED_OFF = 0, - NOTIFY_LED_ON, - NOTIFY_LED_PTN0, - NOTIFY_LED_PTN1, - NOTIFY_LED_PTN2 -}; - - -// VREG_C_CAM_LED -enum CAM_LED_MODE -{ - CAM_LED_OFF = 0, - CAM_LED_BLINK, - CAM_LED_ON, - CAM_LED_BY_TWL, - CAM_LED_ON_PLUSE, - CAM_LED_OFF_PLUSE -}; - - - -// m点LED֌W // -typedef struct _st_info_LED -{ - u8 term; // 1t[`bNH - u8 fade_time; // `bNŎ̃t[̐FɒB邩 - u8 last_loop; // ŏIt[JԂH - u8 resv1; - u8 red[32]; - u8 grn[32]; - u8 blu[32]; -}st_info_LED; - -typedef union _uni_info_LED -{ - st_info_LED info_LED; - u8 bindata[ sizeof( st_info_LED ) ]; -}uni_info_LED; - -extern uni_info_LED info_LED; - - -// LED _Ō // -typedef struct _st_led_red_batt_empty -{ - u8 dats[4]; -}st_led_red_batt_empty; - -extern st_led_red_batt_empty led_red_batt_empty; - - -/* - m点LED -*/ -typedef struct _st_LED_dim_status -{ - sx16 to; - sx16 delta; - sx16 now; // _ȉoĂȂĂ͂ȂȂ -}st_LED_dim_status; - - - -// ==================================== -void LED_init( ); -void LED_stop( ); - - -// ==================================== -extern bit ledInitialized; -extern bit info_led_override; - - -#endif diff --git a/snake_branches/2.4_q_test/led_cam.c b/snake_branches/2.4_q_test/led_cam.c deleted file mode 100644 index 7d4a1eb..0000000 --- a/snake_branches/2.4_q_test/led_cam.c +++ /dev/null @@ -1,156 +0,0 @@ -/******************************************************//** - LED_Cam TO02 - - BLINK,*_PLUSE ̎́A1͕K̏ԂɂȂ܂B - - ̊Ԃ OFFBLINK ȂǂƁAOFF܂B - - $Id$ - *********************************************************/ -#ifndef _WIN32 - -#pragma sfr - -#endif - -#include "incs.h" -#include "led.h" -#include "vreg_twl.h" - - -// ======================================================== -static u8 state_led_cam = 0; -static u16 task_interval; - -bit cam_led_update; - - - -// ======================================================== -static void cam_led_twl(); - - - - -/********************************************//** - C^[os^XNƁAtwlWX^ւ݂̏̂QJĂ΂܂B - ***********************************************/ -void tsk_led_cam( ) -{ - DI_wt_chk(); // WX^ւ݂̏ŋN邱Ƃ邽 - if( !cam_led_update ) - { - if( task_interval != 0 ) - { - task_interval --; - EI(); - return; - } - } - - cam_led_update = false; // TWL ̃uNݒiꔭ_ĵ - EI(); - - if( system_status.pwr_state == SLEEP ) // sleepA - { - LED_CAM = 0; - state_led_cam = 0; - } - else - { - // uN̂悤ɑ҂ƂȊO͖TN - // (WX^̕ύXɂɔ) - switch ( vreg_ctr[VREG_C_LED_CAM] ) - { - case ( CAM_LED_OFF ): - default: - LED_CAM = 0; - state_led_cam = 0; - break; - - case ( CAM_LED_ON ): - LED_CAM = 1; - state_led_cam = 0; - break; - - case ( CAM_LED_BLINK ): - if( state_led_cam == 0 ) - { - LED_CAM = 1; - state_led_cam = 1; - } - else - { - LED_CAM = 0; - state_led_cam = 0; - } - task_interval = 250; - break; - - case ( CAM_LED_ON_PLUSE ): - if( state_led_cam == 0 ) - { - LED_CAM = 1; - state_led_cam = 1; - task_interval = 250; - } - else - { - vreg_ctr[VREG_C_LED_CAM] = CAM_LED_OFF; - } - break; - - case ( CAM_LED_OFF_PLUSE ): - if( state_led_cam == 0 ) - { - LED_CAM = 0; - state_led_cam = 1; - task_interval = 250; - } - else - { - vreg_ctr[VREG_C_LED_CAM] = CAM_LED_ON; - } - break; - - case( CAM_LED_BY_TWL ): - cam_led_twl(); - } - } // if( system_status.pwr_state == sleep ) ... else ... -} - - -/********************************************//** - TWLJLED𑀍삳 - ***********************************************/ -static void cam_led_twl() -{ - // TWL݊ // - switch ( vreg_twl[ REG_TWL_INT_ADRS_CAM ] ){ - case( TWL_CAMLED_OFF ): - LED_CAM = 0; - state_led_cam = 0; - break; - - case( TWL_CAMLED_BLINK ): - if( state_led_cam == 0 ) - { - LED_CAM = 1; - state_led_cam = 1; - } - else - { - LED_CAM = 0; - state_led_cam = 0; - } - task_interval = (u8)( 600 / SYS_INTERVAL_TICK ) + 250; - break; - - case( TWL_CAMLED_ON ): - case( TWL_CAMLED_DEF_ON ): - default: - LED_CAM = 1; - state_led_cam = 1; - break; - } -} diff --git a/snake_branches/2.4_q_test/led_pow.c b/snake_branches/2.4_q_test/led_pow.c deleted file mode 100644 index 6773d4e..0000000 --- a/snake_branches/2.4_q_test/led_pow.c +++ /dev/null @@ -1,296 +0,0 @@ -/* ======================================================== - dLED - LED_POW_B,R 6,7 - - TDR00@(0x03FFBTPS0250kHzŃJEgAbvB10bitȂ250HzʂɂȂ) - TDR0x@Duty 0ŏATDR00( =0x03FFȏ)œ_łB - - $Id: asdf$ - ======================================================== */ - -/* ======================================================== - enum pwr_state_{ - OFF_TRIG = 0, - ON_CHECK, - ON_TRIG, - ON, - SLEEP -}; - -enum LED_ILUM_MODE{ - LED_POW_ILM_AUTO, - LED_POW_ILM_ON, - LED_POW_ILM_SLEEP, - LED_POW_ILM_CEOFF -}; - ======================================================== */ -#ifndef _WIN32 - -#pragma sfr - -#endif - -#include "incs.h" -#include "led.h" -#include "pm.h" - -// ======================================================== -// X[vł̃e[uB}WB -const u8 LED_PTN_SLEEP[] = { - 25, 38, 52, 68, 83, 98, 110, 119, - 125, 128, 128, 125, 119, 110, 98, 83, - 68, 52, 38, 25, 16, 10, 8, 8, - 8, 8, 8, 8, 8, 8, 10, 16 - }; - - -// LED̓drcLED̓_Ńp^[ -st_led_red_batt_empty led_red_batt_empty = { 0x55, 0x55, 0x55, 0x55 }; -#define LED_SLEEP_FRAME_LEN 71 -#define LED_SLEEP_DIM_LEN 71 -#define LED_SLEEP_FRAME_NUM 32 - - - -// ======================================================== -static void led_pow_normal( ); -static void led_pow_sleep( ); -static void led_pow_bt_empty(); -static u8 led_pow_batt_low(); - -#define led_fade_to( now, goal ) now = fade_to( now, goal ) -extern u8 fade_to( u8 now, u8 goal ); - -#define led_fade_to2( led, status ) led = fade_to2( status ) -extern u8 fade_to2( st_LED_dim_status* status ); - - - -// ======================================================== -// dLED̃X[vp^[̃Xe[^X -static u8 time_to_next_frame_sleep = LED_SLEEP_FRAME_LEN; -static u8 frame_sleep; -static st_LED_dim_status LED_dim_status_sleep; - -extern bit ledInitialized; -extern bit BT_IN_CHG_delayed_n; - - - -/********************************************//** - dLED - - {Iɂ́A - - 쎞A - - drc > 10% “_imaster_brightness̖邳j - - 5% ԓ_ (100%_AHWŒs) - - ȉ ԓ_Am点LEDԂBAA_v^h5%`̓ - - X[v - - drc > 10% “_imaster_brightness̖邳j - - 쎞Ɠ - - X[vɂ͎Ő؂ւȂ̂ŁAWX^삪Kvłi̕s悢ł傤Hj - - ̃p^[͐Ŷ߁B - ***********************************************/ -void tsk_led_pow( ) -{ - if( ! ledInitialized ) - { - return; - // ܂ - } - - info_led_override = false; - - switch ( vreg_ctr[VREG_C_LED_POW] ) - { - case ( LED_POW_ILM_AUTO ): - default: - led_pow_normal( ); - break; - - case ( LED_POW_ILM_SLEEP ): - led_pow_sleep( ); - break; - - case ( LED_POW_ILM_ON ): - led_fade_to( LED_duty_pow_blu, vreg_ctr[VREG_C_LED_BRIGHT] ); - LED_pow_red = 0; - break; - - case ( LED_POW_ILM_OFF ): - led_fade_to( LED_duty_pow_blu, 0 ); - LED_pow_red = 0; - break; - - case ( LED_POW_ILM_ONLY_RED ): - LED_duty_pow_blu = 0; - LED_pow_red = 1; - break; - - case ( LED_POW_ILM_ONLY_BLUE ): - LED_duty_pow_blu = LED_BRIGHT_MAX; - LED_pow_red = 0; - break; - - case ( LED_POW_ILM_FORCE_BT_EMPTY ): - led_pow_bt_empty(); - break; - } - - if( system_status.pwr_state == OFF || system_status.pwr_state == ON_CHECK ) - { - LED_pow_red = 0; - info_led_override = false; - } - - if( info_led_override ) - { - LED_duty_notify_blu = 0; - LED_duty_notify_grn = 0; - LED_duty_notify_red = ( LED_pow_red == 0 )? 0 : 255; - } -} - - - -/********************************************//** - ʏ퓮쎞 - - drcʂŁA@ԁԓ_ - ***********************************************/ -static void led_pow_normal( ) -{ - time_to_next_frame_sleep = LED_SLEEP_FRAME_LEN; - frame_sleep = 0; - LED_dim_status_sleep.now = (sx16)LED_duty_pow_blu * 128; - - if( led_pow_batt_low() != 0 ) // Ԃ̓_łĂ܂ - { - return; - // ܂ - } - - // “_ - led_fade_to( LED_duty_pow_blu, vreg_ctr[VREG_C_LED_BRIGHT] ); -} - - - -/********************************************//** - X[vz^p^[ - - drcʂŐԁԓ_łɂ - ***********************************************/ -static void led_pow_sleep( ) -{ - if( led_pow_batt_low() != 0 ) // Ԃ̓_łĂ܂ - { - time_to_next_frame_sleep = LED_SLEEP_FRAME_LEN; - frame_sleep = 0; - LED_dim_status_sleep.now = (sx16)LED_duty_pow_blu * 128; - return; - // ܂ - } - - LED_dim_status_sleep.to = LED_PTN_SLEEP[frame_sleep] * 128; - - // Of[Ṽf^vZ - LED_dim_status_sleep.delta = (( LED_dim_status_sleep.to - LED_dim_status_sleep.now ) ) / LED_SLEEP_DIM_LEN; - led_fade_to2( LED_duty_pow_blu, &LED_dim_status_sleep ); - - // ̃t[ɐi߂H - time_to_next_frame_sleep --; - if( time_to_next_frame_sleep == 0 ) - { - time_to_next_frame_sleep = LED_SLEEP_FRAME_LEN; - - frame_sleep ++; - if( frame_sleep >= LED_SLEEP_FRAME_NUM -1 ) - { - frame_sleep = 0; - } - } -} - - - -/********************************************//** - drȂƂ̋ - -@ԒlF@0@drȂȂ -@@@@@1@Ȃ̂ŋʃp^[ɂ - ***********************************************/ -static u8 led_pow_batt_low() -{ - if( vreg_ctr[VREG_C_BT_REMAIN] > BATT_TH_LO ) - { - LED_pow_red = 0; - return 0; - // ܂ - } - - if(( vreg_ctr[VREG_C_BT_REMAIN] > BATT_TH_EMPTY ) || !BT_IN_CHG_delayed_n ) - // drcʂ5%i`10%j@܂́Aꖢł[d - { - // ԓ_ - led_fade_to( LED_duty_pow_blu, 0 ); - { - LED_pow_red = 1; - } - - } - else // dr5%@@A_v^Ȃ - { - led_pow_bt_empty(); - } - return 1; -} - - - - -/********************************************//** -@drȂp^[ - -@@wp^[𗬂 - -@@m点㏑ - ***********************************************/ -static void led_pow_bt_empty() -{ - static u8 delay; - static u8 red_blink_poi; - - info_led_override = true; - - // ԓ_ - led_fade_to( LED_duty_pow_blu, 0 ); - - // Ԃ̓_Ńp^[wł - delay ++; - if( delay < 64 ) // t[̕ێԉ҂ - { - return; - } - delay = 0; - - if( led_red_batt_empty.dats[ red_blink_poi / 8 ] & ( 1 << ( red_blink_poi % 8 )) ) - { - LED_pow_red = 1; - } - else - { - LED_pow_red = 0; - } - red_blink_poi ++; - if( red_blink_poi >= 32 ) - { - red_blink_poi = 0; - } -} - - diff --git a/snake_branches/2.4_q_test/loader.c b/snake_branches/2.4_q_test/loader.c deleted file mode 100644 index 78c6468..0000000 --- a/snake_branches/2.4_q_test/loader.c +++ /dev/null @@ -1,416 +0,0 @@ -/* ======================================================== - MCU CTR BSR - 2009/03/30 - - JZp c - - u[g[_[ - zXg̒ʐMƁAȏAt@[̃`FbNsB - - $Id: loader.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma di -#pragma ei -#pragma nop -#pragma stop -#pragma halt -#pragma opc - -#endif -#include "incs_loader.h" - -#include -#include "fsl_user.h" - -#include "i2c_ctr.h" -#include "i2c_mcu.h" -#include "pm.h" -#include "rtc.h" - -#include "reboot.h" - -#include "wdt.h" -#include "magic.h" - - - -#define REG_BIT_RESF_WDT 0x10 -#define REG_BIT_RESF_TRAP 0x80 -#define REG_BIT_RESF_LVI 0x01 - - - -// ======================================================== -#if (FSL_DATA_BUFFER_SIZE>0) -fsl_u08 fsl_data_buffer[FSL_DATA_BUFFER_SIZE]; -#endif - - - -#ifdef FSL_INT_BACKUP -static fsl_u08 fsl_MK0L_bak_u08; /* if (interrupt backup required) */ -static fsl_u08 fsl_MK0H_bak_u08; /* { */ -static fsl_u08 fsl_MK1L_bak_u08; /* reserve space for backup information */ -static fsl_u08 fsl_MK1H_bak_u08; /* of interrupt mask flags */ -static fsl_u08 fsl_MK2L_bak_u08; /* */ -static fsl_u08 fsl_MK2H_bak_u08; /* } */ -#endif - - - -// ======================================================== -void hdwinit(); // static ɂcrt0猩ȂȂ܂BӁI -static void hdwinit2(); -static void chk_platform_type(); -static void chk_firm_broke(); - - -extern void main_loop(); - - -/********************************************//** - * - t@[Abvf[gAWDT̃ZbgA - * - t@[̔jA - * - {̎ނ̎ʁA - * - |[gA - * - ჌xȃytF̏A - * - * main_loop()ĂԁB - ***********************************************/ -void main( ) -{ - while( 1 ) - { - WDT_Restart( ); - - if( RTCEN ) // TRAP(update)ɂgȂBWDTł͗Ȃ - { - system_status.reboot = true; - } - - { - volatile u8 my_resf = RESF; // ǂނƏ - if( ( my_resf & REG_BIT_RESF_WDT ) != 0 ) - { - vreg_ctr[ VREG_C_MCU_STATUS ] |= REG_BIT_STATUS_WDT_RESET; - // set_irq( VREG_C_IRQ0, REG_BIT_IRQ_WDT_RESET ); - // I2C̏ɍs - system_status.reboot = true; - } - else if( ( my_resf & REG_BIT_RESF_TRAP ) != 0 ) // ( FSL_ForceReset, 'r' ) - { - system_status.reboot = true; - } -/* LVIgp - else if(( my_resf & REG_BIT_RESF_LVI ) != 0 ) - { - vreg_ctr[ VREG_C_MCU_STATUS ] |= ( 1 << 2 ); - } -*/ - } -//* ROMǂɂȂȂA]̏RgAEg - if( !system_status.reboot ) - { - // ʏ̓d - // drڑAƑ҂Ă݂(`^O΍) - u16 pwup_delay0; - for( pwup_delay0 = 0xFFFF; pwup_delay0 != 0; pwup_delay0 -- ){;}; - } -//*/ - hdwinit2( ); - -#ifndef _WIN32 - // t@[̐`FbN // - chk_firm_broke(); // ĂAĂȂ -#endif - - // @픻 - chk_platform_type(); - - // HALfobOZbg - hal_reset(); - hal_update(); - - // RTC - RTC_init( ); // Ńu[g肵ď邩f܂ - - // ʏ^] - main_loop( ); - } -} - - - -/********************************************//** - * }WbNio[`FbNāA삳悤ƂĂt@[jĂȂ`FbN܂B - * - * Ăꍇ̓XgA݁AMCU̓Zbg܂B - ***********************************************/ -static void chk_firm_broke() -{ - u8 i; - u8 comp = 0; - - // [_[Ɩ{͓̂o[WH - /// ւ̃Abvf[g̓rŏIĂȂH - for( i = 0; i < sizeof( __TIME__ ); i++ ) // sizeof( __TIME__ ) = 8 炵 - { - comp += ( *( __far u8 * )( MGC_LOAD + i ) == *( u8 * )( MGC_FOOT + i ) ) ? 0 : 1; - comp += ( *( u8 * )( MGC_HEAD + i ) == *( u8 * )( MGC_FOOT + i ) ) ? 0 : 1; - } - - if( *( u8 * )( MGC_FOOT +2 ) != ':' ) // ς̂܂ - { - comp ++; - } - - if( comp != 0 ) - { - // t@[XgA݂ - firm_restore( ); - // AĂȂBZbgB - } -} - - -/********************************************//** -vbgtH[̔sAsystem_statusɃZbg܂B - - fobK‚ȂłƏɔłȂƂ܂B - -CTRt@~ - - DEV_DET(P12.[2:1]) - - -CTR̊J@ - - P40,41 !! fobOLP40LMCUN܂I - - - HH @ - - HL NBDV - - LH X^hAV - - LL ISfobK - - ***********************************************/ -void chk_platform_type() -{ - // CTRt@~ // - system_status.family = (enum family_)( DEV_DET >> 1 ); /// ... - -#ifdef _DBG_FORCE_FLOWER - // Iɋ@ݒăfobOƂ -// system_status.family = FAMILY_FLOWER; -#endif - -#ifdef _MCU_ARR - if( system_status.family == FAMILY_SPFL ) - { - system_status.family = FAMILY_CLOSER; - } -#endif - - if( system_status.family == FAMILY_CTR ) - { - system_status.LCD_is_CGS = true; - } - else - { - // FAMILY_SPFL or FAMILY_SNAKE or FAMILY_FLOWER // At@XYȂ - system_status.LCD_is_CGS = false; - } - - if( system_status.LCD_is_CGS == true ) - { - pm_reg_bit_vddlcd = PM_REG_BIT_VDDLCD_CGS; - } - else - { - pm_reg_bit_vddlcd = PM_REG_BIT_VDDLCD_AMO; - } - set_vdd_voltages( system_status.family ); - - // CTR̊J@ // - // ꉞ - system_status.is_dev = false; - system_status.taikendai = false; - system_status.taikendai_nbd = false; - - switch( DIPSW ) - { - case DIPSW_TAIKENDAI: - system_status.taikendai = true; - break; - - case DIPSW_TAIKENDAI_NBD: - system_status.taikendai_nbd = true; - break; - - case DIPSW_ISDEV: - system_status.is_dev = true; - break; - } -#ifdef _FORCE_TAIKENDAI_ - system_status.taikendai = true; -#endif - -#ifdef _FORCE_TAIKENDAI_NBD_ - system_status.taikendai_nbd = true; -#endif -} - - - - -/********************************************//** - ŏ̃WX^s܂B - - gݍ݃X^[gAbv[`Ă΂܂B - ***********************************************/ -void hdwinit( void ) -{ // X^[gAbv[`ɌĂт܂ - DI( ); /* }X^荞݋֎~ */ - - CMC = bits8(0,0,0,1, 0,0,0,0); /* X1U(̓|[g)AXT1gpAd͔U͕sɕtʏ */ - CSC = bits8(1,0,0,0, 0,0,0,0); /* X1UȂAXT1UAU */ - OSMC = bits8(0,0,0,0, 0,0,0,1); /* BWX^ */ - NOP();NOP();NOP(); // 3clkJ - CKC = bits8(0,0,0,0, 1,0,0,0); /* CPU/ӃNbN=fMAINAfMAIN=fMXAfCLK=fMX */ - - /*--- doH̐ݒ ---*/ - /* Zbg̃ftHǵAIvVEoCgɂĎw肳 */ - LVIS = 0x00; /* VLVI = 4.22}0.1V */ -// LVIM = 0x00; /* LVI֎~ */ - /* dd(VDD)od(VLVI)Ɋ */ - /* dd(VDD)od tempA[0][1], "offset" => tempA[0][2], "type" => tempA[0][3], "data" => tempA[0][4], "CRC" => tempA[0][5] } - - break if src_in["type"].hex == 01 - break if src_in["len"].hex == 00 - # next if src_in["type"].hex != 00 - if( src_in["type"].hex != 00 ) -# p dat - next - end - - offset = src_in["offset"].hex - next if(( 0x1000 <= offset ) && ( offset < 0x2000 )) - - dataTemp = src_in["data"].scan(/\w\w/) - - ( 0...(src_in["len"].to_s.hex) ).each{|i| - bindata[ offset + i ] = ( dataTemp[ i ] ).to_s.hex - } -end - -### debug enable bit check ############# -# fobO‚ɂȂĂISfobKŋNȂiMCU삵Ȃj -p bindata[0xC3] -if( bindata[0xC3] != 0x04 ) - print( "!E debug enable!!" ) - exit( 1 ) -end - - -### format data and output ############# -4096.times{ - bindata.delete_at(4096) -} -dest.write( bindata[0..(0x4FFF - 0x1000)].pack("c*") ) -dest.close - -printf( "intel-HEX to bsr bin converter\n file converted!\n\n" ) diff --git a/snake_branches/2.4_q_test/pedo_alg_thre_det2.c b/snake_branches/2.4_q_test/pedo_alg_thre_det2.c deleted file mode 100644 index 4e69a04..0000000 --- a/snake_branches/2.4_q_test/pedo_alg_thre_det2.c +++ /dev/null @@ -1,567 +0,0 @@ -/* ******************************************************** - v - - 3x̃A^Cf[^AxNg̃moA - 臒l𒴂鎞ԁAԊuAm̑傫臒l؂ւȂ - - $Id$ -********************************************************* */ -#ifndef _WIN32 - -#pragma mul -#pragma div -#pragma bcd - -#endif - -#include "incs.h" - -#ifndef _WIN32 -#include -#endif - -#include "accero.h" -#include "pedometer.h" - -#include "pool.h" - -// ======================================================== -// ̍ŏIL^ -// ̏Ԃ̓OǂݏȍԂł̂łȂł -// ԂɃAhX̎Ⴂ̂mۂ̂҂Ă܂... -typedef struct{ - u8 hour_bcd; - u8 day_bcd; - u8 month_bcd; - u8 year_bcd; - u8 min_bcd; - u8 sec_bcd; -}st_calender; - - - -// ======================================================== -static u16 get_long_hour(); -static u16 calc_hours_spend( u8 ); - - - -// ======================================================== -bit pedolog_overflow; // 192ԋL^ς݃tO(i2cœǂ߂) -extern uni_pool pool; // O͂̍\̂̒ -static u8 p_record; // Ȍ݈ʒu -static st_calender cal_log_latest; // ŌɕXV -static u16 last_hour_fny; // fny:from new year -static st_calender cal_temp; -static u16 now_longhour; - - - - - - -// ======================================================== -#define _use_my_sqrt_ -#ifdef _use_my_sqrt_ -static unsigned long my_sqrt( unsigned long ); -#endif - -// N͉[NH -#define is_leapyear( y ) (( y & 0x03 ) == 0 ) -// uNv͉[NH -#define is_firstyear( y ) (( y & 0x03 ) == 1 ) - - -// xZTlFIR-LPFɒʂB̌W -extern const s8 lpf_coeff[]; -#define TAP 64 -#define FIL_COEFF_QUANT 10 - - -/********************************************//** -@v - ***********************************************/ -void pedometer() -{ - static s16 th_H = 15000; // 臒lBIύX܂ - static s16 th_L = 11000; - static u16 acc_norm[3]; // x̑傫̃qXgB傫 - static u16 acc_norm_temp; - static u8 interval_hh = 0xFF; // R-RԂ̎ԁBZ߂͂B - static u8 time_l; // Őɏ̌oߎ - static u16 peak_l; // J̐[ - static u16 norm_hist[TAP]; - - static u8 hist_indx; - - signed long filterd; - - u8 i; - - u16 sx16,sy16,sz16; - - DI_wt_chk(); - sx16 = abs( (u16)vreg_ctr[VREG_C_ACC_XH] * 256 + vreg_ctr[VREG_C_ACC_XL] ); - sy16 = abs( (u16)vreg_ctr[VREG_C_ACC_YH] * 256 + vreg_ctr[VREG_C_ACC_YL] ); - sz16 = abs( (u16)vreg_ctr[VREG_C_ACC_ZH] * 256 + vreg_ctr[VREG_C_ACC_ZL] ); - EI(); - - // xNg̃m -#ifdef _mcu_ -# ifndef _use_my_sqrt_ - norm_hist[ hist_indx & TAP-1 ] = sqrt( (long)sx16 * ( sx16 / 2 ) + - (long)sy16 * ( sy16 / 2 ) + - (long)sz16 * ( sz16 / 2 ) - ); -# else - norm_hist[ hist_indx & TAP-1 ] = my_sqrt( (long)sx16 * ( sx16 / 2 ) + - (long)sy16 * ( sy16 / 2 ) + - (long)sz16 * ( sz16 / 2 ) - ); -# endif -#endif - -#ifdef _pc_ - norm_hist[ hist_indx & TAP-1 ] = normh * 256 + norml; -#endif - - hist_indx ++; - - // qXgɃtB^(fir)|āA̒l߂ // - filterd = 0; -// for( i = 8; i != 55; i++ ) // WO΂̂ - for( i = 0; i != 46; i++ ) // We[u܂Bp[^ - { - filterd += (signed long)norm_hist[ ( hist_indx + i ) & TAP-1 ] * lpf_coeff[ i ]; - } - - filterd += (4096)*512; // DCZ...Ǝv - acc_norm_temp = (s16)( filterd /1024 & 0xFFFF ); // FIL_COEFF_QUANT琳K -/* - if( acc_norm[0] < acc_norm_temp ) - { - t_rise ++; - if( t_rise == 0 ) - t_rise == 254; - } - else - { - t_rise = 0; - } -*/ - if( acc_norm[0] != acc_norm_temp ) - { - acc_norm[2] = acc_norm[1]; // qXg - acc_norm[1] = acc_norm[0]; - acc_norm[0] = acc_norm_temp; - } - - if( acc_norm[2] <= acc_norm[1] && acc_norm[1] > acc_norm[0] - && acc_norm[0] > th_H ) - // ɑŁA臒l𒴂Ă - { - if( 21 < interval_hh ) - // Őɑ傩̊Ԋuقǂ悢 - { - if(( interval_hh < 160 ) && ( time_l < interval_hh )) - // Jł - { - if( acc_norm[0] - peak_l > 4200 ){ - // ܂ - hosu_increment_if_necessary(); - } - } - interval_hh = 0; - } - // Ȃ񂿂臒l̓IύX - if( acc_norm[0] > 18000 ) - { - th_L = acc_norm[0] - 10000; - } - else - { - th_L = 11000; - } - } - else - { - if( interval_hh != 255 ) // OaZĊyɏ炢̂ - { - interval_hh ++; - } - } - - // (2) ߂̋ɏ̎ - if( acc_norm[2] >= acc_norm[1] && acc_norm[1] < acc_norm[0] - && acc_norm[0] < th_L ) - { - // ɏo - time_l = 0; - peak_l = acc_norm[0]; - } - else - { - if( time_l != 255 ) - { - time_l ++; - } - } -} - - -/********************************************//** -@{P - - - ݐςCNg - - XV - - *2011/01/20 - - dlύX@OςɂȂ炻Ŏ~߂ - ***********************************************/ -#define HOSU_NODATA 0xFFFF -#define HOSU_MAX 0xFFFE - -void hosu_increment_if_necessary() -{ - u8 year_compd; // hourE␳ς݌ݔNBcomp(ensation -ed) - - // ݎ擾 - DI_wt_chk(); - RWAIT = 1; - while( !RWST ){;} - - cal_temp.hour_bcd = HOUR; - cal_temp.day_bcd = DAY; - cal_temp.month_bcd = MONTH; - cal_temp.year_bcd = YEAR; - cal_temp.min_bcd = MIN; - cal_temp.sec_bcd = SEC; - - RWAIT = 0; - EI(); - - year_compd = bcdtob( cal_temp.year_bcd ); - - now_longhour = get_long_hour(); - - // ݃|C^̍XV - if( ! ( vreg_ctr[ VREG_C_ACC_HOSU_L ] == 0 && // vonAŏ̈܂ł͑O񂩂̌oߎԂvZȂ - vreg_ctr[ VREG_C_ACC_HOSU_M ] == 0 && - vreg_ctr[ VREG_C_ACC_HOSU_H ] == 0 )) //. SrbgORŃ[肷̂̓fW^H݂̕ - { - // v~܂ĂԂlĕKvȂi߂ - // ␳vZ@U뎞ōɂȂꍇAA23ɏ㏑ - if( now_longhour == (u16)-1 ) // NA23䈵̂ƂAvZʂ -1 ɂȂĂ - { - now_longhour = 365 * 24 -1; - if( is_firstyear(year_compd) ) - { - now_longhour += 24; - } - year_compd --; - } - fill_hosu_hist_hours( calc_hours_spend( year_compd ) ); // ݃|C^̍XVs - - // OӂŋL^~H - if( pedolog_overflow ) - { - return; - // ܂BO̍XVȂB - } - } - - // CNgėǂ - cal_log_latest = cal_temp; // OXV - last_hour_fny = now_longhour; - - // O@CNg - if( pool.vreg_c_ext.pedo_log[ p_record ] == HOSU_MAX ) - { - // Ȃł܂ - //. v̍vƗ݌vȂȂ̂邽߂낤ǁAǂȂ́H - return; - } - else if( pool.vreg_c_ext.pedo_log[ p_record ] == HOSU_NODATA ) // ̎ԑэŏ̃JEg̎ - { // ꂵȂ1Ȃ - pool.vreg_c_ext.pedo_log[ p_record ] = 1; - } - else - { - // ʏpX - pool.vreg_c_ext.pedo_log[ p_record ] ++; - } - - // ݐς̍XV // - DI_wt_chk(); - if( ++vreg_ctr[ VREG_C_ACC_HOSU_L ] == 0 ) // JXg`FbN - { - if( ++vreg_ctr[ VREG_C_ACC_HOSU_M ] == 0 ) - { - if( ++vreg_ctr[ VREG_C_ACC_HOSU_H ] == 0 ){ - vreg_ctr[ VREG_C_ACC_HOSU_L ] = 255; //. 낢뎸s... - vreg_ctr[ VREG_C_ACC_HOSU_M ] = 255; - vreg_ctr[ VREG_C_ACC_HOSU_H ] = 255; - } - } - } - EI(); -} - - -/********************************************//** -󔒂̎ԂK؂0ɂāA -܂ނPԂ̃f[^ʒuɃ|C^Hi߂ - ***********************************************/ -static void fill_hosu_hist_hours( u16 hours ) -{ - // OӂH - if( (u16)p_record + hours >= PEDOMETER_LOG_SIZE ) - { - pedolog_overflow = true; - return; - } - - // 󔒂̐Ԃ̐ݒ - while( hours != 0 ) - { - // Vdl@ςŒ~ - p_record ++; -#if 1 // debug - if( p_record >= PEDOMETER_LOG_SIZE ) - { - pedolog_overflow = true; -// dbg_nop(); // ɗ悤ƃoO - break; - } - else -#endif - { - pool.vreg_c_ext.pedo_log[ p_record ] = 0; - } - hours --; - } - - return; -} - - - -/********************************************//** -NAAuf[^vɏ - ***********************************************/ -void clear_hosu_hist() -{ - u8 hours = PEDOMETER_LOG_SIZE; - do - { - hours --; - pool.vreg_c_ext.pedo_log[ hours ] = 0xFFFF; - } - while( hours != 0 ); - - DI_wt_chk(); - vreg_ctr[ VREG_C_ACC_HOSU_L ] = 0; - vreg_ctr[ VREG_C_ACC_HOSU_M ] = 0; - vreg_ctr[ VREG_C_ACC_HOSU_H ] = 0; - p_record = 0; - pedolog_overflow = false; - EI(); -} - - -extern u8 iic_burst_state; -bit pedolog_read_msb; -/********************************************//** - ṽqXgԂB - - PĂԓxɁAqXg̉ʁAʁAꎞԑkĉʏ... - ***********************************************/ -u8 hosu_read( ) -{ - u8 rv; - static u8 p_record_buffer; - static st_calender cal_buff; // ꉞAAg~bN - - if( iic_burst_state == 0 ) - { - p_record_buffer = p_record; - DI_wt_chk(); - cal_buff = cal_log_latest; - EI(); - } - - if( iic_burst_state <= 5 ) - { - rv = *( (u8*)&cal_buff + iic_burst_state ); // - iic_burst_state ++; - return( rv ); - } - else - { - u16 temp; - // 16rbgŋL^Ă̂ł΂炵đ /// Ɗy@񂶂 - temp = pool.vreg_c_ext.pedo_log[ p_record_buffer ]; - if( !pedolog_read_msb ) - { - rv = (u8)( temp & 0x00FF ); - } - else - { - rv = (u8)(( temp >> 8 ) & 0x00FF ); - if( p_record_buffer == 0 ) - { - p_record_buffer = PEDOMETER_LOG_SIZE-1; - } - else - { - p_record_buffer --; - } - } - pedolog_read_msb ^= 1; - return( rv ); - } - -} - - - -/********************************************//** - ŇǓoߎ(hour)ԂB - - - - Ԓl u16 long_hour - ***********************************************/ -const u16 DAYS_FROM_HNY[] = { - 0, - 31, - 31+28, // =59B@cRO͂PTX - 31+28+31, - 31+28+31+30, - 31+28+31+30+31, - 31+28+31+30+31+30, - 31+28+31+30+31+30+31, - 31+28+31+30+31+30+31+31, - 31+28+31+30+31+30+31+31+30, - 31+28+31+30+31+30+31+31+30+31, - 31+28+31+30+31+30+31+31+30+31+30 - }; - -static u16 get_long_hour() -{ - u8 year = bcdtob( cal_temp.year_bcd ); - u8 month = bcdtob( cal_temp.month_bcd ); - u8 day = bcdtob( cal_temp.day_bcd ); - u8 hour = bcdtob( cal_temp.hour_bcd ); - u8 min_bcd = cal_temp.min_bcd; // 召rȂ̂bcd̂܂܂ł悢 - u8 sec_bcd = cal_temp.sec_bcd; - u16 long_hour; - - // ܂̕ - long_hour = DAYS_FROM_HNY[ month -1 ]; // -1̓CfbNX킹 - if( is_leapyear(year) && ( 3 <= month )) - { - // [NŁA[ - long_hour ++; - } - long_hour += day - 1; - long_hour *= 24; // - - long_hour += hour; - - // EȆOHH - if( ( min_bcd > vreg_ctr[ VREG_C_ACC_HOSU_HOUR_BOUNDARY ] ) - || ( ( min_bcd >= vreg_ctr[ VREG_C_ACC_HOSU_HOUR_BOUNDARY ] ) - && ( sec_bcd >= vreg_ctr[ VREG_C_ACC_HOSU_HOUR_BOUNDARY_SEC ] )) - ) - { - return( long_hour ); - } - else - { - return( long_hour -1 ); // 1ԑOɊ܂߂ ӁFUōNɂƂB-1 ɂȂ - } -} - - - -/********************************************//** -@yʕB - -@Kv\Ȑxőł؂ - - pcŃV~[Vđv - ***********************************************/ -static unsigned long my_sqrt(unsigned long x) -{ - unsigned long s, t; - - if (x <= 0) return 0; - - s = 1; - t = x; - while (s < t) - { - s <<= 1; - t >>= 1; - } - do - { - t = s; - s = (x / s + s) >> 1; - } while (s < t); - - return t; -} - - - - -/********************************************//** -@‚ OĂ΂ꂽƁAݎ̍߂BԂ̂fill_hosu_hist_hours ɂ̂܂ܓn - //. year_bcd Ȃ̂Ƃ₾... - ***********************************************/ -static u16 calc_hours_spend( u8 year ) -{ - u8 cal_log_latest_year = bcdtob( cal_log_latest.year_bcd ); - - // N̓ - if( cal_log_latest_year == year ) - { - if( now_longhour > last_hour_fny ) - { - return( now_longhour - last_hour_fny ); - } - else if( now_longhour == 0 && last_hour_fny != 0 ) - { - // N΂ŁAEzځBȂƍNŌɉZĂ܂B - return( 1 ); - } - else - { - return( 0 ); // ԑ(ƁA߂B@ǂȂĂmȂ) - } - } - else if( cal_log_latest_year == ( year -1 ) ) - { - // N܂łƂ - u16 temp = 365 * 24 - last_hour_fny + now_longhour; - if( is_firstyear(year) ) - { - temp += 24; - } - return( temp ); - } - else if( cal_log_latest_year < year ) - { - // Nu - return( PEDOMETER_LOG_SIZE +1 ); - } - else - { - // J_[߂Ȃ - // m[PAł悢cAslƂ킯ɂȂ - return( 0 ); - } -} diff --git a/snake_branches/2.4_q_test/pedo_lpf_coeff.c b/snake_branches/2.4_q_test/pedo_lpf_coeff.c deleted file mode 100644 index 877ef98..0000000 --- a/snake_branches/2.4_q_test/pedo_lpf_coeff.c +++ /dev/null @@ -1,87 +0,0 @@ -/********************************************//** - vŎgpALPF̃tB^W - $Id$ - ***********************************************/ - -#include "incs.h" - -// ========================================================= -#define TAP 64 -#define FIL_COEFF_QUANT 10 -const s8 lpf_coeff[]={ -/* -Window Function Algorithm LPF -Sampling Frequency = 100.0 -cutoff1 = 6.0000000 -Tap Count =64 -Kaiser Constant = 7.000000 -Quantized by 11 [bits] - */ -/* 0,// [0] - 0, - 0, - 0, - 0, - 0, - 0, - 0, -*/ - 1,// 8 - 2, - 2, - 3, - 3, - 2, - 0, - -2, - -5,// 16 - -9, - -13, - -16, - -16, - -13, - -6, - 4, - 18,// 24 - 37, - 56, - 77, - 95, - 110, - 119, - 122, - 119,// 32 - 110, - 95, - 77, - 56, - 37, - 18, - 4, - -6,// 40 - -13, - -16, - -16, - -13, - -9, - -5, - -2, - 0,// 48 - 2, - 3, - 3, - 2, - 2, - 1, -/* - 0, - 0,// 56 - 0, - 0, - 0, - 0, - 0, - 0, - 0 -*/ -}; diff --git a/snake_branches/2.4_q_test/pedo_lpf_coeff.h b/snake_branches/2.4_q_test/pedo_lpf_coeff.h deleted file mode 100644 index f81d6c2..0000000 --- a/snake_branches/2.4_q_test/pedo_lpf_coeff.h +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef _pedo_coeff_h_ -#define _pedo_coeff_h_ - -// ========================================================= -#define TAP 64 -#define FIL_COEFF_QUANT 10 -const s8 lpf_coeff[]={ -/* -Window Function Algorithm LPF -Sampling Frequency = 100.0 -cutoff1 = 6.0000000 -Tap Count =64 -Kaiser Constant = 7.000000 -Quantized by 11 [bits] - */ -/* 0,// [0] - 0, - 0, - 0, - 0, - 0, - 0, - 0, -*/ - 1,// 8 - 2, - 2, - 3, - 3, - 2, - 0, - -2, - -5,// 16 - -9, - -13, - -16, - -16, - -13, - -6, - 4, - 18,// 24 - 37, - 56, - 77, - 95, - 110, - 119, - 122, - 119,// 32 - 110, - 95, - 77, - 56, - 37, - 18, - 4, - -6,// 40 - -13, - -16, - -16, - -13, - -9, - -5, - -2, - 0,// 48 - 2, - 3, - 3, - 2, - 2, - 1, -/* - 0, - 0,// 56 - 0, - 0, - 0, - 0, - 0, - 0, - 0 -*/ -}; -#endif diff --git a/snake_branches/2.4_q_test/pedometer.h b/snake_branches/2.4_q_test/pedometer.h deleted file mode 100644 index 8760308..0000000 --- a/snake_branches/2.4_q_test/pedometer.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef _pedo_ -#define _pedo_ - -#ifdef WIN32 -typedef unsigned char bit; -typedef unsigned char u8; -typedef unsigned short u16; - - -#endif - - -// ========================================================= -extern bit pedolog_read_msb; - - - -// ========================================================= -//void hosu_read_end( ); }N -#define hosu_read_end() pedolog_read_msb = 0 - -u8 hosu_read( ); -void hosu_increment_if_necessary(); -void fill_hosu_hist_hours( u16 ); -void clear_hosu_hist(); -void pedometer(); - - - -// ========================================================= -#define PEDOMETER_LOG_SIZE ( 24 * 7 ) - - - -// ========================================================= -#endif diff --git a/snake_branches/2.4_q_test/pm.c b/snake_branches/2.4_q_test/pm.c deleted file mode 100644 index 1599397..0000000 --- a/snake_branches/2.4_q_test/pm.c +++ /dev/null @@ -1,1508 +0,0 @@ -/* ======================================================== - PMIC - cJZ - nintendo - '08 Dec - - $Id: pm.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ -#ifndef _WIN32 - -#pragma nop - -#endif - -#include "incs.h" -#include "adc.h" -#include "led.h" -#include "pm.h" -#include "renge\renge.h" - -#include "batt_params.h" - -#include -#include "fsl_user.h" - -#include "vreg_twl.h" -#include "i2c_mcu.h" - -// ======================================================== -u8 raw_adc_temperature; -BT_VENDER battery_manufacturer = BT_VENDER_NOT_CHECKED; -static u8 ntr_pm_reg_shadow; // NTR PMIC WX^~[ -bit bt_authorized; // obep[^MρB[dJn -u8 chg_led_override; // A_v^ƂA[d邵ȂɊւ炸΂炭_ - -static u16 bt_volt16; - -static bit ntr_pm_bt_low_old; - -bit BT_IN_CHG_delayed_n; -bit temp_zone_charge_disable; // xŏ[d~鎞ɃqXeVXt邽 - -u8 pmic_version; -u8 mgic_version[2]; - -u8 pm_reg_bit_vddlcd; - -static bt_param_* p_bt_param; -extern const bt_param_ bt_param[]; - -bit pm_extdc_old; // OA_v^`FbNƂhĂH - -u8 pmreg_v_core; // SoC̃RAdݒBSNAKE(LAGER)ŕύX邽߁B - -// [d~x֌W -static u8 raw_temp_lh; -static u8 raw_temp_ll; -#define RAW_TEMP_HL 184 // 1 -#define RAW_TEMP_HH 189 // -1 -#define RAW_TEMP_LH_CTR 75 // 50 [degC] -#define RAW_TEMP_LL_CTR 61 // 59 -#define RAW_TEMP_LH_SNAKE 84 // 45 -#define RAW_TEMP_LL_SNAKE 68 // 54 - - -// ======================================================== -static void BT_model_detect(); -static void BT_mgic_quick_start(); -static void BT_mgic_init(); -static void bt_chk_temparature(); -static void bt_get_charge_status(); -static void bt_param_select(); -static void bt_batt_update_twl(); -static void bt_batt_update_ntr(); -static void update_chg_led(); - - -// bp[ -static err send_cmd_mgic_2B( u8 reg, u16 dat ); -static err read_mgic_2B( u8 reg, u8* dat ); -static err read_BT_SOC( u8* dest ); -static err read_BT_voltage( u8* dest ); -static u8 conv_ctr_bt_to_twl_bt(); - - - -// ======================================================== -#define swap_endian_16( x ) (unsigned int)(( x << 8 ) | ( x >> 8 )) - - - -// ======================================================== -const u8 BT_MANUF_BORDER[] = { - 5, 33, 79, 123, 158, 197, 233 - }; - - - -/********************************************//** - dr̊Ǘ - - ȉ̃s͎ɂőEĎ܂B - - PM_BT_AUTH AGPI in - - PM_CHARGE_n CCIC /CHG in - - PM_EXTDC_n /DOK INTP4 in - - PM_CHARGE_EN_n /CEN out - - ȉ͊̕֌W肻łʂ̂ƂŊĎĂ܂B - - LED Charge tsk_LED - - BT_TEMP,_P tsk_ADC - - PM_EXTDC͊荞݃Cɂ邩 - ***********************************************/ -#define INTERVAL_TSK_BATT 60 -// 100Ə[dG[ɂ܂_łȂ̂ - -/********************************************//** - d̊Ď - - A_v^̊Ď - - [dALEDXV - - cʎ擾ALEDXV - ***********************************************/ -void tsk_batt( ) -{ - static u8 task_interval; - - if( task_interval -- != 0 ) - { - return; - } - else - { - task_interval = (u8)( INTERVAL_TSK_BATT / SYS_INTERVAL_TICK ); - } - - // A_v^Xe[^XXV // - pm_chk_adapter(); - - // [d // - bt_chk_temparature(); // x`FbN - if( !temp_zone_charge_disable && bt_authorized && !PM_EXTDC_n ) - { - BT_CHG_ENABLE(); // x͈OKŏ[dĊJ - } - else - { - BT_CHG_DISABLE(); // x댯I@[d~ - } - - bt_get_charge_status(); // [d󋵃`FbN - update_chg_led(); // chg ledXV - - // drc // - BT_get_left(); -} - - -/********************************************//** - [dLEDXV - - - CCIC[dƂΓ_B - - łȂĂAA_v^h΂Ȃ5b_ - - Aw^drΉʼnR[d̎Aq[Y؂iMGICNAKjȂ - ***********************************************/ -static void update_chg_led() -{ - static bit temp_led_chg; // static ‚ȂƃRpCʂ炸 - - temp_led_chg = false; - - // A_v^‚ȂuԁA[dłb킴Ɠ_BdĂ邱Ƃ킩点邽߁B - if( chg_led_override != 0 ) - { - chg_led_override --; - temp_led_chg = true; - } - - // CCIC ͏[dƌĂ邩H - if( ! BT_IN_CHG_delayed_n // bt_get_charge_status()ōXV܂B - && ! PM_EXTDC_n ) - { - temp_led_chg = true; - } - - LED_CHARGE = temp_led_chg; - - // WX^̏[drbgLEDɓ - set_bit( LED_CHARGE, vreg_ctr[VREG_C_STATUS], REG_BIT_BATT_CHARGE ); // set_bit̂݁B - /// 荞݂task_status()ōs -} - - - -/********************************************//** - x`FbN - xtqXeVXL - ***********************************************/ -#define AVG_COUNT 40 -void bt_chk_temparature() -{ - static u8 heikinka_h,heikinka_l; - - if(( raw_temp_lh <= raw_adc_temperature ) - && ( raw_adc_temperature <= RAW_TEMP_HL )) - { - if( heikinka_h < AVG_COUNT ) - { - heikinka_h++; - } - else - { - temp_zone_charge_disable = false; // [d - } - } - else if(( raw_adc_temperature <= raw_temp_ll ) - || ( RAW_TEMP_HH <= raw_adc_temperature )) - { - if( heikinka_l < AVG_COUNT ) - { - heikinka_l++; - } - else - { - temp_zone_charge_disable = true; // [d֎~ - } - } - else - { - // temp_zone_charge_disable ̂܂ - heikinka_h = 0; - heikinka_l = 0; - } -} - - - -/********************************************//** - [d̃`FbN - - [dIC̃oO΍sB - ***********************************************/ -#define TIME_DENOIZE (u8)( 1000 / INTERVAL_TSK_BATT ) -void bt_get_charge_status() -{ - // CCIC̕s̂߁A/CHG̃lQ[gƒJɒx - static u8 anti_chatter; - - if( !BT_IN_CHG_n ) - { - // Ƀ`^O - if( anti_chatter < 2 ) // drŃA_v^āAdɂ킳 - { // Ə[dLED̂ - anti_chatter++; - } - else - - { - BT_IN_CHG_delayed_n = 0; // [d - } - } - else - { - if( !BT_CHG_Ena_n - && ( vreg_ctr[ VREG_C_BT_REMAIN ] < 60 ) - && !( is_mgic_error ) - ) - { - BT_IN_CHG_delayed_n = 0; // [dƈB[dIĂ͂Ȃ - } - else - { - BT_IN_CHG_delayed_n = 1; - anti_chatter = 0; - } - } -} - - - -/********************************************//** - A_v^̗L`FbN - ***********************************************/ -void pm_chk_adapter() -{ - set_bit( !PM_EXTDC_n, vreg_ctr[VREG_C_STATUS], REG_BIT_POW_SUPPLY ); - - if( pm_extdc_old != PM_EXTDC_n ) // HAL ʂ߁A PM_EXTDC_n volatile ɂSzȂ - { - pm_extdc_old = PM_EXTDC_n; - if( !PM_EXTDC_n ) - { - // h - set_irq( VREG_C_IRQ1, REG_BIT_BT_DC_CONNECT ); - chg_led_override = (u8)( 2500 / INTERVAL_TSK_BATT ); // bt_chckwait_ms(5)̂ŐL΂B - } - else - { - u8 temp_v[2]; - - // - set_irq( VREG_C_IRQ1, REG_BIT_BT_DC_DISC ); - chg_led_override = 0; - - // drcʂ1%ŁAA_v^L̎ɂ͖{̂NAQ[ - // 1%ɉ񕜂OɃA_v^ƂA荞݂ȂƊҒʂ - // łȂBʑΉ̂߂őΉ - if( read_mgic_2B( BT_GAUGE_REG_VCELL, temp_v ) == ERR_SUCCESS ) - { - bt_volt16 = ( temp_v[0] * 256 + temp_v[1] ); - } - - if(( bt_volt16 < V_TH_ZERO ) || ( vreg_ctr[ VREG_C_BT_REMAIN ] == 0 )) - { - set_irq( VREG_C_IRQ1, REG_BIT_BT_REMAIN ); - } - } - } -} - - - -/******************************************************** -dr֌W̏ - -@@@Q[W@@b@L@@@@@b@ -@@[[[[[[[[[[[[[[[[[[[[[[[ -@@@dr@Lb@@@@@@@b@H -@@[[[[[[[[[[[[[[[[[[[[[[[ -@@@@@@b@@@@@@b@sr -@@@@@@@@b@@dr@b -@@[[[[[[[[[[[[[[[[[[[[[[[ - -@@Q[WLAdr@̔^@ʂ́A -@drxŔ肷 - - ԒlF@dr 0xFF - drςĂȂ 0 - drς 1 - -***********************************************************/ -bit bt_force_update; - - - -/********************************************//** - obẽ`FbNAƁA{̎ʎʁisp̂߁j - ***********************************************/ -void BT_chk() -{ - static BT_VENDER battery_manufacturer_old; - - battery_manufacturer_old = battery_manufacturer; - - BT_model_detect(); - bt_param_select(); // obecʕ␳p[^ȂǃZbg @łAƂ肠̒l(pi)wɂĂB - - if( system_status.model != MODEL_JIKKI ) - { - bt_authorized = false; - return; - // ܂ - } - - if(( battery_manufacturer_old != battery_manufacturer ) || - bt_force_update ) - { - bt_force_update = false; - iic_mcu_start( ); // ŏtOĂ̂ŌĂт܂ėǂ@ȂƂɁcorz - if( (( battery_manufacturer_old == BT_VENDER_OPEN ) || - ( battery_manufacturer_old == BT_VENDER_NOT_CHECKED )) && - !system_status.reboot ) - { - BT_mgic_quick_start(); - } - BT_mgic_init(); // @픻s܂ - } - bt_authorized = true; - renge_task_immed_add( tski_BT_temp_update ); // drxĎ -} - - - -/********************************************//** - {̎ʎ - ***********************************************/ -void BT_model_detect() -{ - u8 temp; - - BT_DET_P = 1; - BT_TEMP_P = 1; - wait_ms( 3 ); // dオ̂ɎԂ| - - raw_adc_temperature = get_adc( ADC_SEL_BATT_TEMP ); - temp = get_adc( ADC_SEL_BATT_DET ); - BT_DET_P = 0; - - system_status.captureBox = false; - // vbgtH[ // - if( raw_adc_temperature > 0xF0 ) - { - // TS // - system_status.model = MODEL_TS_BOARD; - system_status.family = FAMILY_CTR; // Hł̌딻㏑ - pm_reg_bit_vddlcd = PM_REG_BIT_VDDLCD_CGS; -// set_voltages( system_status.family ); svH - } - else if( raw_adc_temperature < 4 ) - { - // (KuC) // - system_status.model = MODEL_KUC_DEBUGGER; - } - else - { - // @AcIC NACK( obe܂͎cIC̏ ) - system_status.model = MODEL_JIKKI; // obe̎́ŏ㏑ - } - - // Lv`H // - if( iic_mcu_read_a_byte( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_VERSION ) == 0x01 ) - { - if( iic_mcu_result == I2C_ERR_OK ) // oɏȂƕ]nˑ - { - system_status.captureBox = true; - } - } - - // TShome{^A@͖ڑȂ̂ŗv[q /// gndɂƂ΂悩c - if( system_status.model == MODEL_TS_BOARD ) - { - PM_SW_HOME_n_TSBOARD = 1; - } - else - { - PM_SW_HOME_n_TSBOARD = 0; - SW_HOME_n_TSBOARD_RAW = 0; /// @open ǂł񂾂 - } - - // dr[J[̎ // - { - u8 i; - - battery_manufacturer = BT_VENDER_OPEN; // ftHgl - for(i=0; i<=7; i++) - { - if( temp <= BT_MANUF_BORDER[ i ] ) - { - battery_manufacturer = (BT_VENDER)i; - break; - /* - BT_VENDER_MAXELL; // = 0 - BT_VENDER_1; - BT_VENDER_2; - BT_VENDER_3; - BT_VENDER_4; - BT_VENDER_PANA; - BT_VENDER_6; - - BT_VENDER_OPEN; - */ - } - } - } - - - if( ( battery_manufacturer == BT_VENDER_OPEN ) && - ( system_status.model == MODEL_JIKKI ) ) - { - system_status.model = MODEL_JIKKI_NOBATT; - } -} - - - -#define MGIC_CMD_QUICKSTART 0x4000 -/********************************************//** - MGICNCbNX^[giɃoO΍j - ***********************************************/ -static void BT_mgic_quick_start() -{ - wait_ms( 10 ); // MGIC̋NɊ| - - // 0. obecIC NCbNX^[g - send_cmd_mgic_2B( BT_GAUGE_REG_MODE, swap_endian_16( MGIC_CMD_QUICKSTART ) ); - - wait_ms( 150 ); -} - - -/********************************************//** - drcʑ菉 - - drp[^Ȃǂ] - ***********************************************/ - -#define MGIC_CMD_UNLOCK_KEY 0x4A57 -#define MGIC_CMD_RESET 0x5400 -static void BT_mgic_init() -{ - u8 origParam[4]; - - /* - // -1. ZbgĂ݂ - Ⴞ! - i2c_send_buff_2B._u16 = swap_endian_16( MGIC_CMD_RESET ); - send_cmd_mgic_2B( BT_GAUGE_REG_COMMAND ); // ‚NACKԂ - */ - - if( system_status.model != MODEL_JIKKI ) - { - return; - // ܂ - } - - // 1. bN - if( send_cmd_mgic_2B( BT_GAUGE_REG_LOCK, swap_endian_16( MGIC_CMD_UNLOCK_KEY ) ) != ERR_SUCCESS ) - { - // cIC NACK - vreg_set_mgic_error; - return; - // ܂ - } - - vreg_clear_mgic_error; - - // wait_ms( 5 + 1 ); OɃEFCgĂ̂ŕsv - - // 2. p[^ꎞۑ - iic_mcu_read( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_RCOMP, 4, origParam ); - - // 3. ꎞIOCVύX - send_cmd_mgic_2B( BT_GAUGE_REG_OCV, swap_endian_16( p_bt_param->ocv )); // }WbNio[IȂ́B[J[w - - // 4. ꎞIRCOMPύX - send_cmd_mgic_2B( BT_GAUGE_REG_RCOMP, swap_endian_16( 0xFF00 ) ); - - // 5.[J[ʃp[^̃[h - { - u8 loop; - - // 16oCgƂɋ؂Ƃ̂Ɓ@imCY΍Ƃ񂾂ǁAӖ񂩁Hj - for( loop = 0; loop < 4; loop ++ ) - { - iic_mcu_set_wo_dma( ); - iic_mcu_write( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_BT_PARAM + loop*16, 16, p_bt_param->mg_param + loop*16 ); - } - } - - // 6. 150msȏ҂ - wait_ms( 150 + 15 ); - - // 7. OCVɁuƂlv - send_cmd_mgic_2B( BT_GAUGE_REG_OCV, swap_endian_16( p_bt_param->ocv ) ); // }WbNio[IȂ́B[J[w - - // 8. 150`600ms҂B600ms͌ - wait_ms( 150 + 15 ); - - // 9. SOCǂށBxt@Ĉ߁B - { - u8 temp; - temp = iic_mcu_read_a_byte( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_SOC ); - - if(( p_bt_param->verify.low <= temp ) && ( temp <= p_bt_param->verify.hi )) - { - // JX^fOKI - }else{ - // s烊gĈH - // dbg_nop(); - } - } - - // 10.RCOMPOCV߂ - iic_mcu_write( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_RCOMP, 4, origParam ); - - // 11. bN - send_cmd_mgic_2B( BT_GAUGE_REG_LOCK, swap_endian_16( 0x0000 ) ); // lock key -} - - - -extern u16 _dbg_rcomp; -/********************************************//** - raw_adc_temperatureɓĂlɕϊƂƂɁA - - WX^ɃZbg - - cICɃZbg - ***********************************************/ -task_status_immed tski_BT_temp_update( ) -{ - static u8 rawdat_old; - static s8 temperature; - s16 newrcomp; - static u8 heikinka; - -/* - T[~X^ - 10k_̎A - pxł͕̃J[uقڃjAŁA - c T[] = 81.48 - 111.97 x ratio - TDK T = 81.406 - 111.81 x ratio -*/ - - if( rawdat_old != raw_adc_temperature ) - { - if( heikinka < 40 ) - { - heikinka ++; - } - else - { - heikinka = 0; - rawdat_old = raw_adc_temperature; - // temperature = 81.45 - 111.9 * raw_adc_temperature/256.0; - // ꂼ256{Ă - temperature = (u8)(( 20851 - 112 * raw_adc_temperature + (256/2) ) /256); - vreg_ctr[VREG_C_BT_TEMP] = temperature; - - newrcomp = 0; - if( temperature > 20 ) - { - newrcomp = ( ( temperature - 20 ) * p_bt_param->rcomp.up )/256; - } - else - { - newrcomp = ( ( temperature - 20 ) * p_bt_param->rcomp.down )/256; - } - newrcomp = p_bt_param->rcomp.rcomp + newrcomp; - - if( newrcomp > 255 ) - { - newrcomp = 255; - } - if( newrcomp < 0 ) - { - newrcomp = 0; - } - _dbg_rcomp = newrcomp; - - if( send_cmd_mgic_2B( BT_GAUGE_REG_RCOMP, newrcomp ) == ERR_SUCCESS ) // swapsv - { - rawdat_old = raw_adc_temperature; - } - else - { - vreg_set_mgic_error; - } - } - } - return ( TSKI_FINISHED ); -} - - - -/********************************************//** - drcICcʂ擾AWX^ɏށB - - @drcICȄȂǂ̎͂Ƃ肠c99%ƂB - - @@@@@@@@ status_1ŊmF”\BdɃ`FbNĂ܂B - - @BT_chk()sĂKv܂B - ***********************************************/ -void BT_get_left(){ - u8 temp[2]; - u8 reg_volatile_temp_bt_remain,reg_volatile_temp_bt_remain_fine; // I2C̔񓯊ǂݍ݂ł̂‚h~ Lbv̏ - u8 fuel_cap_by_voltage; // dŃLbvɎg - - // drc - if( system_status.model == MODEL_TS_BOARD - || system_status.model == MODEL_KUC_DEBUGGER ) - { - // TS & // - if( read_BT_SOC( temp ) == ERR_SUCCESS ) - { - reg_volatile_temp_bt_remain = temp[0]; - reg_volatile_temp_bt_remain_fine = temp[1]; - } - else - { - // G~[V@\ - // @œdf͕sւ邾낤 - reg_volatile_temp_bt_remain = 99; - reg_volatile_temp_bt_remain_fine = 0; - } - } - else - { - // @ // - // cʃ[h - if( read_BT_SOC( temp ) != ERR_SUCCESS ) - { - // cICNACK cobe͂ꂽ - vreg_set_mgic_error; - bt_authorized = false; - reg_volatile_temp_bt_remain = 0; - force_off = true; - } - else - { - u16 temp_u16; - - vreg_clear_mgic_error; - // obep[^̊֌WŃrbgVtgKv - temp_u16 = temp[0] * 256 + temp[1]; - temp_u16 /= p_bt_param->v_scale; - reg_volatile_temp_bt_remain = (u8)(( temp_u16 >> 8 ) & 0xFF ); - if( reg_volatile_temp_bt_remain == 0 ) - { - // 0%̎1.00%ɏグ - // [dJn΂炭͓drcʂ̂ - // 0%ɓBĂ܂Ƃ̂ - reg_volatile_temp_bt_remain = 1; - reg_volatile_temp_bt_remain_fine = 0; - } - else - { - reg_volatile_temp_bt_remain_fine = (u8)(temp_u16 & 0xFF); - } -#ifdef _DBG_BT_FULL_ - reg_volatile_temp_bt_remain = 100; - reg_volatile_temp_bt_remain_fine = 0; -#endif - } - } - - // drd - { - if( read_BT_voltage( temp ) != ERR_SUCCESS ) // 2byte read - { - temp[0] = (u8)( V_BT_4000MV / 256 ); // drdǂ߂Ȃ4000mVƂɂĂB - temp[1] = 0; - } - vreg_ctr[ VREG_C_BT_VOLTAGE ] = temp[0]; - bt_volt16 = ( temp[0] * 256 + temp[1] ); - } - - - // dŃLbv...̏ - { - static u16 hysteresis; - - if( bt_volt16 > V_TH_30 ) - { - fuel_cap_by_voltage = 100; - hysteresis = 0; - } - else if( bt_volt16 - hysteresis > V_TH_LO ) // lqXeVXĂBǂނƂӁB - { - fuel_cap_by_voltage = 30; - hysteresis = 0; - } - else if( bt_volt16 > V_TH_EMPTY ) - { - fuel_cap_by_voltage = BATT_TH_LO; // - hysteresis = 500; - } - else if( bt_volt16 > V_TH_ZERO ) - { - fuel_cap_by_voltage = BATT_TH_EMPTY; - hysteresis = 500; - } - else if( bt_volt16 > V_TH_FORCE_OFF ) - { - fuel_cap_by_voltage = 0; - hysteresis = 500; - } - else - { - force_off = true; - hysteresis = 500; - } - } - - - // [diA_v^hĂĵɏ[dĂȂ - // AiȂƂjf̓drcʂ60%ȏiCCICoOABT_IN_CHG_delayed_nɐD荞ݍς݁j - // = [dBdrւĂMGIC100%ԂȂ - if( !BT_CHG_Ena_n && BT_IN_CHG_delayed_n ){ - reg_volatile_temp_bt_remain = 100; - reg_volatile_temp_bt_remain_fine = 0; - } - else - { // dł̃Lbv|邩H - if( fuel_cap_by_voltage < reg_volatile_temp_bt_remain ) - { - reg_volatile_temp_bt_remain = fuel_cap_by_voltage; - reg_volatile_temp_bt_remain_fine = 0; - } - } - - /* - \ɖȂdĂ炵̂ŃPAł悵 - if( system_status.taikendai_nbd && system_status.model != MODEL_TS_BOARD ) // dr[qɓd‚ȂĂĒlsȂߏ㏑B - { - reg_volatile_temp_bt_remain = 100; - } - */ - - vreg_ctr[ VREG_C_BT_REMAIN ] = reg_volatile_temp_bt_remain; - vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = reg_volatile_temp_bt_remain_fine; - - // twl̃WX^XV@(CTRɊ荞ݓOɍXVȂƊ荞݂̃^C~O܂Ȃ) - bt_batt_update_twl(); - - // cʂŊ荞݁B}ɌƔԂƂ // - { - static u8 bt_remain_old_ctr; - - if( bt_remain_old_ctr != reg_volatile_temp_bt_remain ) - // CTRɒʒm - { - if( (( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO ) && ( BATT_TH_LO < bt_remain_old_ctr ))|| - (( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_EMPTY ) && ( BATT_TH_EMPTY < bt_remain_old_ctr ))|| - (( vreg_ctr[ VREG_C_BT_REMAIN ] == 0 ) && ( bt_remain_old_ctr != 0 )) ) - { - set_irq( VREG_C_IRQ1, REG_BIT_BT_REMAIN ); - } - } - bt_remain_old_ctr = vreg_ctr[ VREG_C_BT_REMAIN ]; - } - - // PMIC-NTRɓdrcʂĂ - bt_batt_update_ntr(); -} - - - -/********************************************//** - tn̓d - - @Xe[^XtO͂ɗĂĂ܂B - - @sԂ邵A - - NsłΓd - - ʂ̃^XNœd͊ĎĂāAXe[^XNA - ***********************************************/ -err PM_LCD_on( ) -{ - err rv = ERR_ERR; - - PM_VDDLCD_on( ); // CGS AMO ؂ւĂ܂ - - if( system_status.LCD_is_CGS == true ) - { - // CTR - wait_ms( DELAY_PM_TSS_50B_AND_TCOM ); - } - else - { - // SPFL/SNAKE ȂAt@XHV on Ԃɋ - wait_ms( 10 ); - SPFL_LCD_AMOL_HV_CONT = 1; - wait_ms( DELAY_PM_TSS_50B_AND_TCOM - 10 ); - } - - PM_TCOM_on( ); - - wait_ms( DELAY_PM_TCOM_TO_VCS ); - - PM_VCS_on( ); - - wait_ms( DELAY_PM_VCS_TO_BL ); - - if( PM_chk_LDSW() != 0 ) // pX - { - // dNG[Ȃd؂Ă܂Bł̓PAȂ - vreg_ctr[VREG_C_STATUS] |= REG_BIT_LCD_POW; - set_irq( VREG_C_IRQ3, REG_BIT_LCD_ON ); - rv = ERR_SUCCESS; - } - - return rv; -} - - -void PM_LCD_off() -{ - // BL‚ĂB// `FbN̂͊荞݂̊֌W - if( ( read_pmic( PM_REG_ADRS_BL ) & 0x03 ) != 0 ) - { - u8 tot; - - PM_BL_set( REG_BIT_CMD_BL_U_OFF | REG_BIT_CMD_BL_L_OFF ); - vreg_ctr[VREG_C_STATUS] &= bits8(1,0,0,1, 1,1,1,1); - - if( (( REG_BIT_BL_U_OFF | REG_BIT_BL_L_OFF ) & ~vreg_ctr[ VREG_C_IRQ_MASK3 ] ) != 0 ) - { - vreg_ctr[ VREG_C_IRQ3 ] |= ( ( REG_BIT_BL_U_OFF | REG_BIT_BL_L_OFF ) & ~vreg_ctr[ VREG_C_IRQ_MASK3 ] ); - IRQ0_neg; - tot = 0; - while( !IRQ0 && ( ++tot != 0 ) ){;} - IRQ0_ast; - } - vreg_ctr[VREG_C_COMMAND2] &= ~( REG_BIT_CMD_BL_U_OFF | REG_BIT_CMD_BL_L_OFF ); - } - - - - // 50msƂ҂‚AmF܂傤ˁc - if( read_pmic( PM_REG_ADRS_VDD_LCD ) != 0 ) - { - PM_TCOM_off(); - wait_ms( 1 ); - PM_TCOM_VCS_off( ); - wait_ms( DELAY_PM_LCD_OFF ); - - if( system_status.LCD_is_CGS == false ) - { - // At@XȂ|[g - SPFL_LCD_AMOL_HV_CONT = 0; // ̃t@~łLȂ̂ŕQȂ - wait_ms( 10 ); // At@X15V؂Ƃ̃EFCgB - } - - PM_VDDLCD_off( ); // cĂ̑S~߂܂B - vreg_ctr[VREG_C_STATUS] &= ~REG_BIT_LCD_POW; - } - - set_irq( VREG_C_IRQ3, REG_BIT_LCD_OFF ); // ɔB}XN΁B -} - - - -/********************************************//** -@obNCǧ•on/off - -@󂩂@on/off/ێ@̃tOȂ̂Ŗʓ| - -@BL on/on ̏ԂŁAon/onɂƌĂAon/on荞݂܂B - ***********************************************/ -err PM_BL_set( u8 dat ) -{ - u8 blset; // PMIC WX^ɏޒl - u8 intset = 0; // 荞݃WX^ɔfl - // RMWs - - // Read - blset = read_pmic( PM_REG_ADRS_BL ); - - // Modify - // - if(( dat & REG_BIT_CMD_BL_U_ON ) != 0 ) - { - blset |= PM_REG_BIT_BL_U; - intset |= REG_BIT_BL_U_ON; - } - else if(( dat & REG_BIT_CMD_BL_U_OFF ) != 0 ) - { - blset &= ~PM_REG_BIT_BL_U; - intset |= REG_BIT_BL_U_OFF; - } - - // - if(( dat & REG_BIT_CMD_BL_L_ON ) != 0 ) - { - blset |= PM_REG_BIT_BL_L; - intset |= REG_BIT_BL_L_ON; - } - else if(( dat & REG_BIT_CMD_BL_L_OFF ) != 0 ) - { - blset &= ~PM_REG_BIT_BL_L; - intset |= REG_BIT_BL_L_OFF; - } - - if( system_status.family == FAMILY_FLOWER ) - { - // plꖇȂ̂ŁAoff/off łȂΓ_ALX1iڑj𗧂グȂ - // A荞݂͉R‚ SoC ݒ肵Ǝv񂾒lɂB - // todo: vmB - if( blset != 0 ) - { - blset = PM_REG_BIT_BL_L; - } - } - - // write - if( blset != 0 ) // BLtꍇ̓EFCg܂ȂPWMĂ炸 - // Vbg_E邱Ƃ - { - wait_ms( 16 + 10 ); - } - send_cmd_pmic( PM_REG_ADRS_BL, blset ); - - // SoCPWMo悤WX^ZbgĂxL邽߁AXe[^X - // XVĂ܂BĂقƂ̗vB - - // PMICBL̃rbgƁAMCUSTATUSWX^̃rbgʒutȂߓւ - vreg_ctr[VREG_C_STATUS] = (( vreg_ctr[VREG_C_STATUS] & bits8(1,0,0,1, 1,1,1,1) ) - | ( (( blset << 6 ) | ( blset << 4 )) & bits8(0,1,1,0, 0,0,0,0) )); - - // 荞 - /// rbg܂Ƃ߂čŝŁAset_irq()gȂ - { - u8 tot; - - if( ( intset & ~vreg_ctr[ VREG_C_IRQ_MASK3 ] ) != 0 ) - { - vreg_ctr[ VREG_C_IRQ3 ] |= ( intset & ~vreg_ctr[ VREG_C_IRQ_MASK3 ] ); - IRQ0_neg; - tot = 0; - while( !IRQ0 && ( ++tot != 0 ) ){;} - IRQ0_ast; - } - } - - return( ERR_SUCCESS ); // łُ͈`FbNsv -} - - - -/********************************************//** - t̑Όd̐ݒs܂B - - zWX^̓e𑗂邾 - ***********************************************/ -void PM_LCD_vcom_set( ) -{ - send_cmd_pmic( PM_REG_ADRS_POW_DAC1, vreg_ctr[VREG_C_VCOM_T] ); // ȂƂɁAPMIC̓o[Xgݕs - send_cmd_pmic( PM_REG_ADRS_POW_DAC2, vreg_ctr[VREG_C_VCOM_B] ); - return; -} - - - -/********************************************//** - ŁAWX^݂Ăяo鎞̂ - - @I2C̎荇̊֌WłĂ - ***********************************************/ -task_status_immed tski_vcom_set( ) -{ - PM_LCD_vcom_set( ); - return ( TSKI_FINISHED ); -} - - -void set_vdd_voltages( enum family_ family ) -{ - if(( family == FAMILY_SNAKE ) || ( family == FAMILY_CLOSER )) - { - // SNAKE - pmreg_v_core = PM_REG_BIT_VDD1P_1R05; - } - else - { - // NORMAL - pmreg_v_core = PM_REG_BIT_VDD1P_1R15; - } -} - -/********************************************//** - V[PX̒ʂd𗧂グĂ䂫܂B - - - Ԓl 0 Ō܂ŐɊB - - 1 V[gȂǂœd肫Ȃ - ***********************************************/ -err PM_sys_pow_on( ) -{ - // dグ -// PM_reset_ast( ); sv PM_LDSW_on܂ - RESET2_ast; - FCRAM_RST_ast; - GYRO_DISABLE(); - - PM_LDSW_on( ); - - wait_ms( 1 + DELAY_PM_TW_PWUP ); - - PM_VDD_normMode(); - PM_VDD_on( ); -// wait_ms( DELAY_PM_TW_PWUP ); // GYROނ - wait_ms( 10 ); - GYRO_ENABLE(); - wait_ms( DELAY_PM_TW_PWUP - 10 ); - - PM_VDD50A_on( ); // tdł͂ȂAledɎg - - wait_ms( DELAY_PM_TW_PWUP ); - - // dN`FbNB - if( !PM_chk_LDSW() ) - { - return ( ERR_ERR ); // reset1͂قƂėǂ - } - - // dIC - pmic_version = read_pmic( PM_REG_ADRS_VER ); - read_mgic_2B( BT_GAUGE_REG_VERSION, mgic_version ); - - return ( ERR_SUCCESS ); -} - - - -void reset_release() -{ - // ZbgȂǁBVXeNI - PM_reset_neg(); - FCRAM_RST_neg; - RESET2_neg; - - codec_reg_init(); // CODEC s背WX^(reset2̌łȂƂȂ̂) - ntr_pm_reg_shadow = 0; // @V@ȂƂ... -} - - - - -/********************************************//** - dOFFV[PX - ***********************************************/ -void PM_sys_pow_off( ) -{ -// if( RESET1_n ) - if( PM_chk_LDSW() ) - { - // ُIłȂƂ - PM_BL_set( REG_BIT_CMD_BL_U_OFF | REG_BIT_CMD_BL_L_OFF ); - PM_LCD_off(); // TCOM,VCS OFF Ă܂B - wait_ms( 20 ); - - PM_reset_ast(); - } - - RESET2_ast; - FCRAM_RST_ast; - - wait_ms( 20 ); - - PM_off( ); - PM_LDSW_off( ); - -} - - - -/********************************************//** - extDC荞 - - dOFFNi[d̉xĎ̂߁ĵ - - i̓|[O(pm) - ***********************************************/ -__interrupt void intp4_extdc( ) -{ -} - - - -/********************************************//** - t^J‚ߊ荞 - - i̓|[O(misc) - ***********************************************/ -__interrupt void intp5_shell( ) -{ - ; -} - - -/********************************************//** - PMICւ̃R}h - ***********************************************/ -__interrupt void intp6_PM_irq( ) -{ - EI(); - if( system_status.pwr_state == ON ) - { - renge_task_immed_add( tski_ntr_pmic_comm ); - } -} - - -/********************************************//** - CODEC̊荞݂󂯂āANTR PMIC݊WX^烊[h - ***********************************************/ -task_status_immed tski_ntr_pmic_comm( ) -{ - u8 reg1_old; - u8 irq_work = 0; - - reg1_old = ntr_pm_reg_shadow; - ntr_pm_reg_shadow = iic_mcu_read_a_byte( IIC_SLA_CODEC, CODEC_REG_PM ); - if( iic_mcu_result != ERR_SUCCESS ) - { - return ( TSKI_FINISHED ); - } - -// DI( ); - - // obNCg //////////////////////////////////// - if( ( ( reg1_old ^ ntr_pm_reg_shadow ) & REG_BIT_TWL_REQ_BL_U ) != 0 ) - { - if( ( ntr_pm_reg_shadow & REG_BIT_TWL_REQ_BL_U ) == 0 ) // - { - irq_work = REG_BIT_TWL_BL_U_OFF; - } - else - { - irq_work = REG_BIT_TWL_BL_U_ON; - } - } - - // obNCg - if( ( ( reg1_old ^ ntr_pm_reg_shadow ) & REG_BIT_TWL_REQ_BL_L ) != 0 ) - { - if( ( ntr_pm_reg_shadow & REG_BIT_TWL_REQ_BL_L ) == 0 ) // - { - irq_work |= REG_BIT_TWL_BL_L_OFF; - } - else - { - irq_work |= REG_BIT_TWL_BL_L_ON; - } - } - -// EI(); - - vreg_ctr[ VREG_C_STATUS_1 ] = ( vreg_ctr[ VREG_C_STATUS_1 ] & ~REG_BIT_MASK_STATUS1_NTR_PM_REG ) - | ( ntr_pm_reg_shadow & REG_BIT_MASK_STATUS1_NTR_PM_REG ); // TWLobNCg̃~[ - - irq_work &= ~vreg_ctr[ VREG_C_IRQ_MASK2 ]; - // set_irq i - if( irq_work != 0 ) - { - u8 tot; - - vreg_ctr[ VREG_C_IRQ2 ] |= irq_work; - IRQ0_neg; // uグăpX𑗂蒼 - tot = 0; - while( !IRQ0 && ( ++tot != 0 ) ){;} // O.DȂ̂łƂ̂҂ IRQ_mcu LɔĂƍ(•s) - IRQ0_ast; - } - - /// obNCgAC𗘂ď肵܂B - - // offNGXg ////////////////////////////////////// - if( ( ntr_pm_reg_shadow & REG_BIT_TWL_REQ_OFF_REQ ) != 0 ) - { - set_irq( VREG_C_IRQ2, REG_BIT_TWL_OFF_REQ ); - } - - // ZbgNGXg ///////////////////////////////// - if( ( ntr_pm_reg_shadow & REG_BIT_TWL_REQ_RST_REQ ) != 0 ) - { - set_irq( VREG_C_IRQ2, REG_BIT_TWL_RESET_REQ ); - } - - // obNCg}XNď߂ - EI( ); - if( ( ntr_pm_reg_shadow & ( REG_BIT_TWL_REQ_OFF_REQ | REG_BIT_TWL_REQ_RST_REQ )) != 0 ) - { - ntr_pm_reg_shadow &= ~( REG_BIT_TWL_REQ_OFF_REQ | REG_BIT_TWL_REQ_RST_REQ ); - iic_mcu_write_a_byte_codec( CODEC_REG_PM, ntr_pm_reg_shadow ); - } - return ( TSKI_FINISHED ); -} - - - -/********************************************//** - command2 tn - -@ bp[IȕBERR_SUCCESSԂȂc - ***********************************************/ -task_status_immed tski_PM_LCD_on() -{ - PM_LCD_on(); - return( TSKI_FINISHED ); -} - -task_status_immed tski_PM_LCD_off() -{ - PM_LCD_off(); - return( TSKI_FINISHED ); -} - -task_status_immed tski_PM_BL_set() -{ - u8 cmd_BL; // volatileƂtȂĂv݂ - - do - { - cmd_BL = vreg_ctr[VREG_C_COMMAND2]; - PM_BL_set( cmd_BL ); // }XNς - } - while( cmd_BL != vreg_ctr[VREG_C_COMMAND2] ); // <- PM_BL_setXV - vreg_ctr[VREG_C_COMMAND2] = 0; - - return( TSKI_FINISHED ); -} - - - -/********************************************//** -@reset2 CODEC ɃZbgAWX^sɂȂ邽 - ***********************************************/ -void codec_reg_init() -{ - wait_ms( 100 ); - - ntr_pm_bt_low_old = conv_ctr_bt_to_twl_bt(); - - iic_mcu_write_a_byte_codec( CODEC_REG_BT, (u8)ntr_pm_bt_low_old ); // SoC 珑 - - vol_reset(); -// renge_task_immed_add( tski_vol_update ); |[ÔŁB - vol_polling = 3; -} - - -/********************************************//** - wp[Ƃbp[ƂH - - ROMߖ̂ - ***********************************************/ -err send_cmd_mgic_2B( u8 reg, u16 dat ) -{ - u16 temp = dat; // Mobt@ - return iic_mcu_write( IIC_SLA_BT_GAUGE, reg, 2, &temp ); // DMA]̂őMf[^obt@̃|C^ǂKv -} - -err read_mgic_2B( u8 reg, u8* dat ) // Mobt@͌Œ -{ - return iic_mcu_read( IIC_SLA_BT_GAUGE, reg, 2, dat ); -} - -err send_cmd_pmic( u8 reg, u8 dat ) -{ - return iic_mcu_write_a_byte( IIC_SLA_PMIC, reg, dat ); -} - -u8 read_pmic( u8 reg ) -{ - return iic_mcu_read_a_byte( IIC_SLA_PMIC, reg ); -} - - -/********************************************//** - dr[J[ƃfAgdrp[^̌ - ***********************************************/ -void bt_param_select() -{ - BT_TYPE bt_type_temp; - - // obe[J[ - if( battery_manufacturer <= BT_VENDER_3 ) // ]TĒԂ臒lƂ - { - bt_type_temp = BT_PARAM_CTR_MAXELL; - } - else - { - bt_type_temp = BT_PARAM_CTR_PANA; - } - - // f - switch( system_status.family ) - { - case( FAMILY_SPFL ): bt_type_temp += BT_PARAM_SPFL_MAXELL; break; // ItZbg cOȎŁcB - case( FAMILY_SNAKE ): bt_type_temp += BT_PARAM_SNAKE_MAXELL; break; - case( FAMILY_CLOSER ): bt_type_temp += BT_PARAM_SPFL_MAXELL; break; - case( FAMILY_CTR ): - case( FAMILY_FLOWER ): // CTR Ɠ - default: /* bt_type_temp ̂܂ */ break; - } - - p_bt_param = &bt_param[ bt_type_temp ]; - - // [d~x̐ݒ - /// tȂ̂ƁA򂪏Ȃ̂ł - if(( system_status.family == FAMILY_SNAKE ) || - ( system_status.family == FAMILY_CLOSER )) - { - raw_temp_lh = RAW_TEMP_LH_SNAKE; - raw_temp_ll = RAW_TEMP_LL_SNAKE; - } - else - { - raw_temp_lh = RAW_TEMP_LH_CTR; - raw_temp_ll = RAW_TEMP_LL_CTR; - } -} - - - - -#define TWL_BT_LEVEL_THREASH_F 60 -#define TWL_BT_LEVEL_THREASH_B 30 -#define TWL_BT_LEVEL_THREASH_1 0 - -/********************************************//** - TWLɓdrcʂĂ - ***********************************************/ -static void bt_batt_update_twl() -{ - if (vreg_ctr[VREG_C_BT_REMAIN] > TWL_BT_LEVEL_THREASH_F ) - { - vreg_twl[REG_TWL_INT_ADRS_POWER_INFO] = 0x0F; - } - else if (vreg_ctr[VREG_C_BT_REMAIN] > TWL_BT_LEVEL_THREASH_B ) - { - vreg_twl[REG_TWL_INT_ADRS_POWER_INFO] = 0x0B; - } - else if (vreg_ctr[VREG_C_BT_REMAIN] > BATT_TH_LO) - { - vreg_twl[REG_TWL_INT_ADRS_POWER_INFO] = 0x07; - } - else if (( vreg_ctr[ VREG_C_BT_REMAIN ] > BATT_TH_EMPTY )|| - !BT_CHG_Ena_n ) - { // A_v^̗LŒグ - vreg_twl[REG_TWL_INT_ADRS_POWER_INFO] = 0x03; - } - else if (vreg_ctr[VREG_C_BT_REMAIN] > TWL_BT_LEVEL_THREASH_1 ) - { - vreg_twl[REG_TWL_INT_ADRS_POWER_INFO] = 0x01; - } - else - { - vreg_twl[REG_TWL_INT_ADRS_POWER_INFO] = 0x00; - } -} - - -/********************************************//** - NTRɓdrcʂĂ - ***********************************************/ -static void bt_batt_update_ntr() -{ - static bit initialized; - static bit flag; // HstaticłȂƃRpCɓ{ - - if( system_status.pwr_state == OFF_TRIG ) - { - initialized = false; - } - else - { - - flag = conv_ctr_bt_to_twl_bt(); - - if(( ntr_pm_bt_low_old != flag ) || !initialized ) - { - initialized = true; - ntr_pm_bt_low_old = flag; - iic_mcu_write_a_byte_codec( CODEC_REG_BT, (u8)flag ); - } - } -} - - -/********************************************//** - drcʂǂł - ***********************************************/ -static err read_BT_SOC( u8* dest ) -{ -#ifdef _ENABLE_HAL_ - if( vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ] != 0xFF ) // trueȂHALL -#else - if( 0 ) -#endif - { - *dest = vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ]; - *(dest+1) = 0x00; - return ERR_SUCCESS; - } - else - { - return( read_mgic_2B( BT_GAUGE_REG_SOC, dest ) ); - } -} - - -/********************************************//** - drdǂł - ***********************************************/ -static err read_BT_voltage( u8* dest ) -{ -#ifdef _ENABLE_HAL_ - if( vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ] != 0xFF ) // trueȂHALL -#else - if( 0 ) -#endif - { - *dest = vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ]; -// *(dest+1) = 0x00; // gȂ@ǂQoCg[h֐pӂĂȂ̂ł - return ERR_SUCCESS; - } - else - { - return( read_mgic_2B( BT_GAUGE_REG_VCELL, dest ) ); - } -} - - -/********************************************//** - drcʂtwlɃtOɕϊ - ***********************************************/ -static u8 conv_ctr_bt_to_twl_bt() -{ -// ntr_pm_bt_low_old = ( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO )? NTR_PM_BT_EMPTY: NTR_PM_BT_ENOUGH; // 1œdr؂ - if( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO ) - { - return NTR_PM_BT_EMPTY; - } - else - { - return NTR_PM_BT_ENOUGH; - } -} diff --git a/snake_branches/2.4_q_test/pm.h b/snake_branches/2.4_q_test/pm.h deleted file mode 100644 index b6cb8bc..0000000 --- a/snake_branches/2.4_q_test/pm.h +++ /dev/null @@ -1,220 +0,0 @@ -#ifndef __PM__ -#define __PM__ - -// $Id: asdf$ - - -#define IIC_SLA_PMIC 0x84 -#define IIC_SLA_BT_GAUGE 0x6C - -#define VCOM_DEFAULT_T 92 -#define VCOM_DEFAULT_B 95 - - - -#define BATT_TH_LO 10 -#define BATT_TH_EMPTY 5 - -// dWX^ƒڔrłpɃItZbg -#define V_BT_4000MV (u16)( 4000 * 12.8 ) // dǂݏosp 4000mVݒ -#define V_TH_30 (u16)( 3300 * 12.8 ) // 30% -#define V_TH_LO (u16)( 3200 * 12.8 ) // 10% -#define V_TH_EMPTY (u16)( 3150 * 12.8 ) // 5% -#define V_TH_ZERO (u16)( 3100 * 12.8 ) // 0% -#define V_TH_FORCE_OFF (u16)( 2900 * 12.8 ) // 2.9V ŏIf - - -//========================================================= -#ifdef _WIN32 -#define LED_CHARGE mcuRegP[ _P2_4 ] -#else -#define LED_CHARGE P2.4 -#endif - - -//========================================================= -enum PMIC_REG_ADRS -{ - PM_REG_ADRS_VER = 0x00, // verinfo Ȃ - PM_REG_ADRS_VDD_SYS, // VXegpd - PM_REG_ADRS_VDD_LCD, // td - PM_REG_ADRS_CONT, // /RESET1, LoadSwitch - PM_REG_ADRS_BL, // obNCg on/off - PM_REG_ADRS_POW_SAVE, // ȓd͐ݒ - PM_REG_ADRS_POW_DAC1, - PM_REG_ADRS_POW_DAC2 -}; - -enum BT_GAUGE_REG_ADRS -{ - BT_GAUGE_REG_VCELL = 0x02, // ꂼ16rbĝ - BT_GAUGE_REG_SOC = 0x04, - BT_GAUGE_REG_MODE = 0x06, - BT_GAUGE_REG_VERSION = 0x08, - BT_GAUGE_REG_OCV = 0x0E, - BT_GAUGE_REG_RCOMP = 0x0C, - BT_GAUGE_REG_LOCK = 0x3E, - BT_GAUGE_REG_BT_PARAM = 0x40, - BT_GAUGE_REG_COMMAND = 0xFE -}; - - -typedef enum BT_VENDER -{ - BT_VENDER_MAXELL = 0, // V[g - BT_VENDER_1, // 120 - BT_VENDER_2, // 360 - BT_VENDER_3, // 750 - BT_VENDER_4, // 1.3k - BT_VENDER_PANA = 5, // 2.7k - BT_VENDER_6, // 8.2k - BT_VENDER_OPEN = 7, // open - BT_VENDER_NOT_CHECKED = 0xFF, -}BT_VENDER; - - - -enum NTR_PM_BT_STATUS{ - NTR_PM_BT_ENOUGH, - NTR_PM_BT_EMPTY, - NTR_PM_BT_NOT_INITIALIZED = 0xFF -}; - - - -//========================================================= -// CODECPMIC݊WX^ -#define CODEC_REG_PM 0x10 -#define CODEC_REG_BL 0x11 -#define CODEC_REG_BT 0x12 -//#define CODEC_REG_VOL 0x13 // ...sɂAadc.hŒ` - -// TWLSPIPMICɓR}h -#define REG_BIT_TWL_REQ_OFF_REQ ( 1 << 6 ) -#define REG_BIT_TWL_REQ_RST_REQ ( 1 << 0 ) -#define REG_BIT_TWL_REQ_BL ( 3 << 2 ) - - - -// 0x03 pw cnt3 -#define PM_REG_BIT_LDSW ( 1 << 0 ) -#define PM_REG_BIT_nRST1 ( 1 << 1 ) - -// 0x01 pw cnt1 -#define PM_REG_BIT_VDD_CTR 0x0F -#define PM_REG_BIT_VDD50A ( 1 << 4 ) - -// 0x02 pw cnt2 -#define PM_REG_BIT_VDDLCD_CGS 0x07 -#define PM_REG_BIT_VDDLCD_AMO 0x05 -#define PM_REG_BIT_LCD_VCS ( 0x01 << 4 ) -#define PM_REG_BIT_LCD_TCOM ( 0x01 << 3 ) - -// 0x04 bl cnt -#define PM_REG_BIT_BL_U 0x01 -#define PM_REG_BIT_BL_L 0x02 - - -// 0x05 pow save -#define PM_REG_BIT_VDD1P_1R15 bits8(0,0,0,0, 0,0,0,0) -#define PM_REG_BIT_VDD1P_1R05 bits8(0,0,0,0, 1,0,0,0) -#define PM_REG_BIT_VDD1P_1R00 bits8(0,0,0,1, 0,0,0,0) -#define PM_REG_BIT_VDD1P_0R90 bits8(0,0,1,0, 0,0,0,0) -#define PM_REG_BIT_VDD_AUTO bits8(0,0,0,0, 0,1,1,1) -#define PM_REG_BIT_VDD_PWM bits8(0,0,0,0, 0,0,0,0) - - -#define DELAY_PM_TW_PWUP 16 + 2 -#define DELAY_PM_TSS_50B_AND_TCOM 17 + 1 -#define DELAY_PM_5V_TO_TCOM 17 + 1 -#define DELAY_PM_TCOM_TO_VCS 3 -#define DELAY_PM_VCS_TO_BL ( 17 + 5 ) -#define DELAY_PM_LCD_OFF ( 50 + 1 ) - - -//========================================================= -extern u8 raw_adc_temperature; -extern BT_VENDER battery_manufacturer; -extern bit bt_force_update; - -extern u8 pmic_version; -extern u8 mgic_version[]; - -extern u8 pm_reg_bit_vddlcd; // At@XΉ(dV[PXႤ) - -extern u8 pmreg_v_core; // SoC̃RAdݒBSNAKE(LAGER)ŕύX邽߁B - -//========================================================= -err PM_sys_pow_on( ); -void PM_sys_pow_off( ); -//err PM_bt_auth( ); -void PM_LCD_vcom_set( ); - -err PM_LCD_on( ); -void PM_LCD_off( ); -err PM_BL_set( u8 ); - -void BT_chk(); -void BT_get_left(); -void pm_chk_adapter(); - -void codec_reg_init(); - -void set_vdd_voltages( enum family_ family ); - -void reset_release(); - -task_status_immed tski_BT_temp_update( ); -task_status_immed tski_vcom_set( ); -task_status_immed tski_PM_LCD_on(); -task_status_immed tski_PM_LCD_off(); -task_status_immed tski_PM_BL_set(); - - -err send_cmd_pmic( u8 reg, u8 dat ); -u8 read_pmic( u8 reg ); - - -#define PM_Chg_Stop() { BT_TEMP_P = 0; BT_CHG_DISABLE(); LED_CHARGE = 0; bt_authorized = false; } -// @ĂԑOɁA݉xĂKv܂B -#define PM_reset() ( send_cmd_pmic( PM_REG_ADRS_CONT, 0x00 ) ) - - -//========================================================= - - -// // -#define PM_LDSW_on() ( send_cmd_pmic( PM_REG_ADRS_CONT, PM_REG_BIT_LDSW )) -#define PM_LDSW_off() ( send_cmd_pmic( PM_REG_ADRS_CONT, 0 )) - - -// VXed // -#define PM_VDD_on() ( send_cmd_pmic( PM_REG_ADRS_VDD_SYS, PM_REG_BIT_VDD_CTR )) -#define PM_VDD50A_on() ( send_cmd_pmic( PM_REG_ADRS_VDD_SYS, ( PM_REG_BIT_VDD_CTR | PM_REG_BIT_VDD50A ))) -#define PM_VDD_off() ( send_cmd_pmic( PM_REG_ADRS_VDD_SYS, 0 )) -#define PM_off() PM_VDD_off() - -// CPUd -#define PM_VDD_normMode() ( send_cmd_pmic( PM_REG_ADRS_POW_SAVE, pmreg_v_core | PM_REG_BIT_VDD_PWM )) -#define PM_VDD_ecoMode() ( send_cmd_pmic( PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_0R90 | PM_REG_BIT_VDD_AUTO )) - -// ق // -#define PM_reset_neg() ( send_cmd_pmic( PM_REG_ADRS_CONT, ( PM_REG_BIT_LDSW | PM_REG_BIT_nRST1 ))) -#define PM_reset_ast() ( send_cmd_pmic( PM_REG_ADRS_CONT, ( PM_REG_BIT_LDSW ))) -#define PM_chk_LDSW() ( read_pmic( PM_REG_ADRS_CONT ) & PM_REG_BIT_LDSW ) -// 1̂ƂAdon - -// tnd // -#define PM_VDDLCD_on() ( send_cmd_pmic( PM_REG_ADRS_VDD_LCD, pm_reg_bit_vddlcd )) -#define PM_TCOM_on() ( send_cmd_pmic( PM_REG_ADRS_VDD_LCD, ( pm_reg_bit_vddlcd | PM_REG_BIT_LCD_TCOM ))) -#define PM_VCS_on() ( send_cmd_pmic( PM_REG_ADRS_VDD_LCD, ( pm_reg_bit_vddlcd | PM_REG_BIT_LCD_VCS | PM_REG_BIT_LCD_TCOM ))) -#define PM_TCOM_off() ( send_cmd_pmic( PM_REG_ADRS_VDD_LCD, ( pm_reg_bit_vddlcd | PM_REG_BIT_LCD_VCS ))) -#define PM_TCOM_VCS_off() PM_VDDLCD_on() -#define PM_VDDLCD_off() ( send_cmd_pmic( PM_REG_ADRS_VDD_LCD, 0 ) ) - -#define PM_set_BL( dat ) ( send_cmd_pmic( PM_REG_ADRS_BL, dat ) ) -#define PM_set_adc1( dat ) ( send_cmd_pmic( PM_REG_ADRS_POW_DAC1, dat ) ) -#define PM_set_adc2( dat ) ( send_cmd_pmic( PM_REG_ADRS_POW_DAC2, dat ) ) - - -#endif // __PM__ diff --git a/snake_branches/2.4_q_test/pool.h b/snake_branches/2.4_q_test/pool.h deleted file mode 100644 index 81c8091..0000000 --- a/snake_branches/2.4_q_test/pool.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef _pool_h_ -#define _pool_h_ - - -#include "pedometer.h" - -#define VREG_C_FREE_SIZE 200 - -// 󂢂Ă郁 -typedef struct _st_vreg_c_ext{ - unsigned short pedo_log[ PEDOMETER_LOG_SIZE ]; - unsigned char vreg_c_free[ VREG_C_FREE_SIZE ]; -}st_vreg_c_ext; - -typedef union _uni_pool -{ - st_vreg_c_ext vreg_c_ext; - u8 self_update_work[ 256 ]; // 256ȏ͂܂ƂߏłȂ -}uni_pool; - -extern uni_pool pool; - - -#endif diff --git a/snake_branches/2.4_q_test/reboot.c b/snake_branches/2.4_q_test/reboot.c deleted file mode 100644 index 53912a5..0000000 --- a/snake_branches/2.4_q_test/reboot.c +++ /dev/null @@ -1,23 +0,0 @@ -/********************************************************//* - ނ胊u[g - - t@CɃCCAZuƁA - ̃W[SœKȂȂ邽ߒǂo - $Id$ - **********************************************************/ -#pragma SFR - -#include "incs_loader.h" - - -void my_reboot(){ -#asm - - MOV PSW,#06H ; _~[PSWZbg - MOVW AX,#000d0h ; Zbg̃xN^l荞ł܂B - PUSH PSW - PUSH AX ; RETÎ߂̃X^bN - RETI ; ŃZbgExN^ɕ - -#endasm -} diff --git a/snake_branches/2.4_q_test/reboot.h b/snake_branches/2.4_q_test/reboot.h deleted file mode 100644 index c20e11e..0000000 --- a/snake_branches/2.4_q_test/reboot.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef __MYREBOOT__ -#define __MYREBOOT__ - -void my_reboot(); - -#endif diff --git a/snake_branches/2.4_q_test/renge/renge.c b/snake_branches/2.4_q_test/renge/renge.c deleted file mode 100644 index 19bee20..0000000 --- a/snake_branches/2.4_q_test/renge/renge.c +++ /dev/null @@ -1,313 +0,0 @@ -#ifndef _WIN32 - -#pragma section @@CODE ROM_CODE -#pragma nop -#pragma ei -#pragma di -#pragma sfr - -#endif - - -#ifdef _WIN32 -typedef unsigned char bit; -typedef unsigned char u8; -#endif - -/****************************************************************************** - ^XNVXeH - ȂقǁAiTRONɂ̓RtBM[^͂B - ܂ - ctr_mcu_config.rb QƁB task_config.h쐬܂B - *****************************************************************************/ -#include "renge.h" -#include "renge_task_intval.h" -#include "renge_task_immediate.h" -#include "..\WDT.h" -#include "..\config.h" -#include "..\user_define.h" -#include "..\util_funcs.h" - - -#ifdef _WIN32 -#include "../sim/simOnWin.h" -#endif -//#define _renge_test_ - -#define true 1 -#define false 0 - -//****************************************************************************** -u8 renge_flg_interval; -bit renge_task_interval_run_force; -bit renge_task_immediate_not_empty; - - -#include "..\bsr_system.h" -extern system_status_ system_status; - - -//****************************************************************************** -static void renge_task_immed_init(); -static void renge_task_immed_del(); - - - -//****************************************************************************** -task_status_immed ( *tasks_immed[ TASK_IMMED_RUN_LIST_MAX ] )(); - - - -/****************************************************************************** - -E^XNVXe̓Ȉ -EC^[o^C} - *****************************************************************************/ -void renge_init(){ - renge_task_immed_init(); - /* - Cxg^C}̃ZbgȂ - RTC𗬗pĂ̂ŃRgAEg - #define renge_tick 19xxxxxxx [ms] - renge_interval_init(); RTC_init(); - */ -} - - - -/****************************************************************************** - VXe`bNi߂ - *****************************************************************************/ -/* -void renge_interval(){ -// RTCĂ -__interrupt void int_rtc_int(); -} -*/ - - - -/****************************************************************************** - RpCɌ܂ĂAC^[oÑ^XN - ̂ANƍ邩ȂB - *****************************************************************************/ -__callt err renge_task_interval_run(){ - u8 i; - - // C^[oN - DI_wt_chk(); - if(( renge_flg_interval != 0 ) || - ( renge_task_interval_run_force )) /// ȁc - { - renge_task_interval_run_force = false; // N^XNA荞ރ^XNŃtO‚Ȃ̂ - if( renge_flg_interval != 0 ) - { - renge_flg_interval --; - WDT_Restart( ); - } - EI(); - for( i = 0; i != TSK_LAST; i ++ ) - { - tasks[ i ](); - // N^XNԂɋ - renge_task_immed_run(); - } - } - EI(); - return( ERR_SUCCESS ); -} - - - -/***************************************************************************** - N^XN - - task_immed Ԃ֐B - VXetickA炩̊荞݁iI2CʐMȂǁj - X[v畜A^C~OŎs܂B - -Ԓl@TSKI_FINISHED@^XN폜 -@@@@ȊO ̃^C~Oł܂s - - *****************************************************************************/ - - -/************************************** - **************************************/ -void renge_task_immed_init(){ - u8 i; - - for( i = 0; i < TASK_IMMED_RUN_LIST_MAX; i++ ){ - tasks_immed[ i ] = TSK_IMM_EMPTY_; - } -} - - - -/************************************** - s^XN̓o^ - 荞݋֎~ 36us - **************************************/ -__callt err renge_task_immed_add( task_status_immed (*new_task)() ){ - u8 i; - - // Xg̋󂫂̐擪ɓo^ - // 폜΂̃^XŃA폜}[N(TSK_IMM_DELETED_)ƂȂA󂫂Ƃ͖Iɋʂ - // do^ - for( i = 0; i < TASK_IMMED_RUN_LIST_MAX; i ++ ) - { - DI_wt_chk(); - if( tasks_immed[ i ] == TSK_IMM_EMPTY_ ) - { - // 󂫂‚ - tasks_immed[ i ] = new_task; - EI(); - return( ERR_SUCCESS ); - } - else - { - // do^`FbN - /// ɂȂĂȂAOl߂ĂO - if( tasks_immed[ i ] == new_task ) - { - // do^͂Ȃ - EI(); - return( ERR_ERR ); - } - } - EI(); - } - // ^XNo^(͂ - return( ERR_ERR ); -} - - - -/************************************** - s^XN̎s - **************************************/ -__callt err renge_task_immed_run(){ - u8 list_id; - -// while( tasks_immed[ 0 ] != TSK_IMM_EMPTY_ ) - if( tasks_immed[ 0 ] != TSK_IMM_EMPTY_ ) - { - DI_wt_chk(); - for( list_id = 0; list_id < TASK_IMMED_RUN_LIST_MAX; list_id ++ ){ - if( tasks_immed[ list_id ] == TSK_IMM_EMPTY_ ){ - // Xg - EI(); - break; - } -#ifdef _renge_test_ - else if( tasks_immed[ list_id ] == TSK_IMM_DELETED_ ) - { - EI(); - NOP(); - // ^XNǗ̕s - // ݂Ȃ^XNs悤Ƃ - // ^XN̍폜̏܂ - // \Ȃ^C~O immed_run Ă΂ꂽ - } -#endif - else - { - u8 rv; - - EI(); - rv = tasks_immed[ list_id ](); // ^XNs - if( rv == ERR_SUCCESS ) - { - tasks_immed[ list_id ] = TSK_IMM_DELETED_; - } - // ǂ^C~Oœ^XN̓o^ƍ̂DIԂłė鎖 - } - DI_wt_chk(); - } - // Xg̃^XNʂs - - // ^XN폜 // - { - u8 i = 0; // Xg̕בւ - u8 j = 1; - - // K i < jAj < TASK_IMMED_RUN_LIST_MAX (łȂƃ^XNӂ) - while( 1 ) - { - if( tasks_immed[ i ] == TSK_IMM_EMPTY_ ) - { - // Olߊ && Xg - // break; - goto imm_list_sort_fin; - } - else if( tasks_immed[ i ] == TSK_IMM_DELETED_ ) - { - for( ; j < TASK_IMMED_RUN_LIST_MAX; j++ ) - { - if( tasks_immed[ j ] == TSK_IMM_DELETED_ ) - { - // ׁiHj폜Ώۂ - // next j - } - else - { - DI_wt_chk(); - if( tasks_immed[ j ] == TSK_IMM_EMPTY_ ) - { - do{ - j --; - tasks_immed[ j ] = TSK_IMM_EMPTY_; - // XgOlߊ - }while( i < j ); - EI(); - goto imm_list_sort_fin; - } - else - { - // Ol߂ׂ^XN‚ - tasks_immed[ i ] = tasks_immed[ j ]; - tasks_immed[ j ] = TSK_IMM_DELETED_; - i ++; - EI(); - } - } - } - } - else - { - // ̃^XNAؗ - } - i ++; - } - } - } - -imm_list_sort_fin: - // ܂łŊSɑOl߂Ă -#ifdef _renge_test_ - /// ق? - { - u8 a,b; - - a = 0; - for( b = 0 ; b < TASK_IMMED_RUN_LIST_MAX; b++ ) - { - if( tasks_immed[ b ] == TSK_IMM_EMPTY_ ) - { - a = 1; - } - else - { - if( a != 0 ) - { - NOP(); // EMPTYɃ^XNdeletedL - } - } - } - } -#else - NOP(); // Ȃ񂩖ƃJ{ -#endif -// } - return( ERR_SUCCESS ); -} diff --git a/snake_branches/2.4_q_test/renge/renge.h b/snake_branches/2.4_q_test/renge/renge.h deleted file mode 100644 index 9c7b2e4..0000000 --- a/snake_branches/2.4_q_test/renge/renge.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef __renge__ -#define __renge__ - -//****************************************************************************** - - - -//****************************************************************************** -#include "renge_defs.h" -#include "renge_task_immediate.h" -// #include "renge_task_interval_run.h" // O狭N֎~I - -//****************************************************************************** -void renge_init(); -void renge_task_immed_init(); -__callt err renge_task_immed_run(); -__callt err renge_task_immed_add( task_status_immed (*p_task_func)() ); -// static err renge_task_immed_del( u8 ); - - -//****************************************************************************** -__callt err renge_task_interval_run(); -extern u8 renge_flg_interval; -extern bit renge_task_interval_run_force; // ^XNstO - -#endif diff --git a/snake_branches/2.4_q_test/renge/renge_defs.h b/snake_branches/2.4_q_test/renge/renge_defs.h deleted file mode 100644 index 03c98a6..0000000 --- a/snake_branches/2.4_q_test/renge/renge_defs.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef __renge_defs__ -#define __renge_defs__ -/****************************************************************************** - Renge Ver.0 (2009/04/09) - 2009- 7k4jhl R.Fujita @ RED.nintendo - - OSɂ͂قljAȈՓIȃ^XNVXeB - Range Typo ł͂ȂłBQłB - - Ȃ Q ͑̂œ{ QQ - ǖɗ–𑐂łB - 傫ĂˁI - ******************************************************************************/ - -typedef unsigned char u8; -typedef signed char s8; -typedef unsigned short u16; -typedef signed short s16; - - -// ************************************ -#define SYS_INTERVAL_TICK 1.953 - - - -// ************************************ -typedef enum _ERR -{ - ERR_SUCCESS = 0, - ERR_ERR -}err; - - -typedef enum _IMMED_TASK_ERR -{ - TSKI_FINISHED = 0, - TSKI_CONTINUE -}IMMED_TASK_ERR; - - - -/************************************** - C^[oN - *************************************/ -typedef void task_status; - - -/************************************** - Ñ^XNXg - p~ɂȂ邩Ȃ - *************************************/ -typedef IMMED_TASK_ERR task_status_immed; - - -#endif diff --git a/snake_branches/2.4_q_test/renge/renge_task_config.rb b/snake_branches/2.4_q_test/renge/renge_task_config.rb deleted file mode 100644 index c2de509..0000000 --- a/snake_branches/2.4_q_test/renge/renge_task_config.rb +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/ruby -Ks - -tasklist = Array.new - - -if( ARGV[0] == nil ) - printf( "t@C renge_tasks.txt gp܂" ) - datfile = "renge_tasks.txt" -else - datfile = ARGV[0] -end - -if( !File.exist?( datfile ) ) - printf("ݒt@C‚܂B") - exit( 1 ) -end - - -setting = File.open( datfile ) - -setting.each{|dat| - dat.chomp! - if( dat != nil ) - tasklist << dat - end -} - -tasklist.each{|dat| - printf( "\n%s" , dat ) -} -printf( "\n----------\n^XN %d \n", tasklist.size ) - - -#----- ÓI^XN̗ ------------------------------------------------------- -conf = File.new( "renge_task_intval.h", "w+" ) - -conf << "/*XNvgɂ鎩łB蓮ŏȂ悢ł*/\n\n" -conf << "#ifndef __renge_task__\n#define __renge_task__\n\n" -conf << "#include \"renge_defs.h\"\n\n" - -conf << "enum {\n " -tasklist.each{|dat| - conf << "TSK_" << dat.upcase << ", " -} -conf << "TSK_LAST \n };\n\n" - - -tasklist.each{|dat| - conf << "extern void tsk_" << dat << "();\n" -} -conf << "\n" - -conf << "const void ( *tasks[ TSK_LAST ] )() = {\n" -tasklist.each{|dat| - conf << " tsk_" << dat << ",\n" -} -conf << " };\n" - -conf << "\n#endif\n" diff --git a/snake_branches/2.4_q_test/renge/renge_task_immediate.h b/snake_branches/2.4_q_test/renge/renge_task_immediate.h deleted file mode 100644 index 9ac3bd2..0000000 --- a/snake_branches/2.4_q_test/renge/renge_task_immediate.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __tasks__ -#define __tasks__ - -#include "renge_defs.h" - -// ************************************* -#define TASK_IMMED_RUN_LIST_MAX 10 - - -extern task_status_immed tski_do_command0( ); -extern task_status_immed tski_ntr_pmic_comm(); -extern task_status_immed tski_acc_read(); -extern task_status_immed tski_acc_write(); -//extern task_status_immed tski_acc_setup(); // accero.h -extern task_status_immed tski_mcu_reset(); -extern task_status_immed tski_vol_update(); - - -// ************************************* -#define TSK_IMM_EMPTY_ ( void * )( 0x0000 ) -#define TSK_IMM_DELETED_ ( void * )( 0x0001 ) - - - -#endif diff --git a/snake_branches/2.4_q_test/renge/renge_task_intval.h b/snake_branches/2.4_q_test/renge/renge_task_intval.h deleted file mode 100644 index 9b0d9ea..0000000 --- a/snake_branches/2.4_q_test/renge/renge_task_intval.h +++ /dev/null @@ -1,37 +0,0 @@ -/*XNvgɂ鎩łB蓮ŏȂ悢ł*/ - -#ifndef __renge_task__ -#define __renge_task__ - -#include "renge_defs.h" - -enum TSK -{ - TSK_SW, TSK_ADC, TSK_BATT, TSK_LED_POW, TSK_LED_WIFI, TSK_LED_NOTIFY, TSK_LED_CAM, TSK_MISC, TSK_STATUS, TSK_SYS, TSK_LAST - }; - -extern void tsk_sw(); -extern void tsk_adc(); -extern void tsk_batt(); -extern void tsk_led_pow(); -extern void tsk_led_wifi(); -extern void tsk_led_notify(); -extern void tsk_led_cam(); -extern void tsk_misc(); -extern void tsk_status(); -extern void tsk_sys(); - -const void ( *tasks[ TSK_LAST ] )() = { - tsk_sw, - tsk_adc, - tsk_batt, - tsk_led_pow, - tsk_led_wifi, - tsk_led_notify, - tsk_led_cam, - tsk_misc, - tsk_status, - tsk_sys, - }; - -#endif diff --git a/snake_branches/2.4_q_test/renge/renge_tasks.txt b/snake_branches/2.4_q_test/renge/renge_tasks.txt deleted file mode 100644 index 73af545..0000000 --- a/snake_branches/2.4_q_test/renge/renge_tasks.txt +++ /dev/null @@ -1,11 +0,0 @@ -sw -adc -batt -led_pow -led_wifi -led_notify -led_cam -misc -status -debug -sys diff --git a/snake_branches/2.4_q_test/rtc.c b/snake_branches/2.4_q_test/rtc.c deleted file mode 100644 index dd2d1a9..0000000 --- a/snake_branches/2.4_q_test/rtc.c +++ /dev/null @@ -1,182 +0,0 @@ -/* ======================================================== - RTC - $Id$ - ======================================================== */ -#ifndef _WIN32 - -#pragma sfr -#pragma inline - -#endif - -#include "incs.h" - - -#define RTC_DATA_SIZE 7 -// ======================================================== -static u8 rtc_work[RTC_DATA_SIZE]; -static bit rtc_lock; -static bit rtc_dirty; -bit rtc_alarm_dirty; - - -/********************************************//** - ytF̏ - - WX^̓drrbg̃Zbg - ***********************************************/ -void RTC_init( void ) -{ - - if( !RTCEN ) // rbgĂ烊u[g - { - RTCEN = 1; // W[ON - - // RTCݒ - RTCC0 = bits8(0,0,0,0, 1,0,0,0); /* ~A24ԐA32kóu܂ȂvA荞݂Ȃ */ - // (RTCE 0 RCLOE1 RCLOE0 AMPM CT2 CT1 CT0) - RTCC1 = bits8(1,1,0,0, 0,0,0,0); /* A[荞ݗLJn */ - // (WALE WALIE 0 WAFG RIFG 0 RWST RWAIT) - RTCC2 = bits8(1,0,0,0, 0,0,0,0); /* C^[o:32k/2^6=2msARTCDIVo͂Ȃ */ - // (RINTE RCLOE2 RCKDIV 0 0 ICT2 ICT1 ICT0) - - HOUR = 0x00; - MIN = 0x00; - SEC = 0x00; - MONTH = 0x01; - DAY = 0x01; - WEEK = 0x01; // Mon - YEAR = 0x01; - - ALARMWW = 0x7F; - - vreg_ctr[VREG_C_MCU_STATUS] |= REG_BIT_RTC_BLACKOUT; - } - // 荞ݐݒ - RTCIF = 0; - RTCIIF = 0; - RTCMK = 1; /* 荞()֎~ */ - RTCIMK = 0; /* 荞(A[&C^[o) */ - - RTCE = 1; /* Jn */ - - RWAIT = 1; - while( !RWST ) - {;} - RWAIT = 0; - - rtc_lock = false; - rtc_dirty = false; - rtc_alarm_dirty = false; -} - - - -/********************************************//** - RTC A[荞 - ***********************************************/ -__interrupt void int_rtc( ) -{ - RWAIT = 1; - while( !RWST ) - {;} - // tw - if( ( vreg_ctr[VREG_C_RTC_ALARM_DAY] == DAY ) - && ( vreg_ctr[VREG_C_RTC_ALARM_MONTH] == MONTH ) - && ( vreg_ctr[VREG_C_RTC_ALARM_YEAR] == YEAR ) ) - { - set_irq( VREG_C_IRQ1, REG_BIT_RTC_ALARM ); - } - RWAIT = 0; -} - - - -/********************************************//** - RTC ̃[h - - WX^́Asec,min,hour,week,day,month,year ̏ - ***********************************************/ -void rtc_buf_refresh( ) -{ - if( !rtc_lock ) - { - rtc_lock = true; - RWAIT = 1; - while( !RWST ) - {;} - - memcpy( &vreg_ctr[VREG_C_RTC_SEC], &SEC, RTC_DATA_SIZE ); - RWAIT = 0; -// renge_task_immed_add( tski_rtc_close ); - } -} - - - -/********************************************//** - RTC ̃Cg - - set_rtc_close Ƒ΂ŎgĉB - - ‚̓obt@ɃRs[邾ŁA - ۂRTCɃZbĝset_rtc_close()łB - ***********************************************/ -void set_rtc( u8 adrs, u8 data ) -{ - if( !rtc_dirty ) - { - rtc_dirty = true; - memcpy( rtc_work, &SEC, RTC_DATA_SIZE ); -// renge_task_immed_add( tski_rtc_close ); // I2CIɍs - } - rtc_work[adrs] = data; -} - - - -/********************************************//** - KvȂ΁ARTCWX^̍XV - ***********************************************/ -// task_status_immed tski_rtc_close(){ -void rtc_unlock( ) -{ - // [hbN - rtc_lock = false; - - // CgbN - if( rtc_dirty ) - { - rtc_dirty = false; - RWAIT = 1; - while( !RWST ) - {;} - memcpy( &SEC, rtc_work, RTC_DATA_SIZE ); - RWAIT = 0; - } - - // A[Zbg - if( rtc_alarm_dirty ) - { - rtc_alarm_dirty = false; - WALE = 0; - ALARMWM = vreg_ctr[VREG_C_RTC_ALARM_MIN]; - ALARMWH = vreg_ctr[VREG_C_RTC_ALARM_HOUR]; - WALE = 1; - } -} - - - - -/********************************************//** - RTC VXe`bN^C}荞݃xN^ - - 2^6/fXTi1.953125 msj - ***********************************************/ -__interrupt void int_rtc_int( ) -{ -// renge_flg_interval ++; // CNg/fNg߂ĝ DI()sv - renge_flg_interval = 1; // set1߂ĝ DI()sv -} - diff --git a/snake_branches/2.4_q_test/rtc.h b/snake_branches/2.4_q_test/rtc.h deleted file mode 100644 index a203e83..0000000 --- a/snake_branches/2.4_q_test/rtc.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef __rtc_h__ -#define __rtc_h__ - -// $Id: asdf$ - - -void RTC_init( void ); -void rtc_buf_refresh( ); -void set_rtc( u8 adrs, u8 data ); - -//task_status_immed tski_rtc_close(); -void rtc_unlock( ); - -// ------------------------------------ -#define RTC_32k_on() { /*RCLOE2 = 0;*/ RCLOE0 = 1; /*P1.2 = 0;*/ PM1.2 = 0; } -#define RTC_32k_off() { PM1.2 = 0; RCLOE0 = 0; } -#define RTC_32k_HI_Z() { PM1.2 = 1; } - - -// ------------------------------------ -extern bit rtc_alarm_dirty; - - -#endif diff --git a/snake_branches/2.4_q_test/self_flash.c b/snake_branches/2.4_q_test/self_flash.c deleted file mode 100644 index a662d07..0000000 --- a/snake_branches/2.4_q_test/self_flash.c +++ /dev/null @@ -1,635 +0,0 @@ -/* ======================================================== - ȃAbvf[^ - $Id$ - ======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma di -#pragma ei -#pragma nop -#pragma stop -#pragma halt - -#endif - -#include "incs_loader.h" - -#include -#include "fsl_user.h" -#include "i2c_ctr.h" -#include "i2c_mcu.h" - -#include "pool.h" -#include "magic.h" - -#include "pm.h" -#include "WDT.h" -#include "util_funcs.h" - - -// ======================================================== -const u8 fsl_fx_MHz_u08 = 8; -const u8 fsl_low_voltage_u08 = 1; - - -// ȃtbVp[^ -#define SAM_BLOCK_SIZE 1024 - // 256oCgȏ͂܂Ƃ߂Ă܂B -#define SELF_UPDATE_BUFF_SIZE 256 -#define SELF_UPDATE_SPLIT_WRITE_NUM ( SAM_BLOCK_SIZE / SELF_UPDATE_BUFF_SIZE ) -#define SAM_WORD_SIZE 4 - -// ubNԍi1ubN1kBj -#define INACTIVE_BOOTSECT_TOP 4 -#define FIRM_TOP 8 -#define FIRM_SIZE 12 -#define ALTERNATE_FIRMTOP 20 - - -#ifdef _MCU_BSR_ -#define ACKD ACKD1 -#define ACKE ACKE1 -#define COI COI1 -#define IICAEN IICA1EN -#define IICAPR0 IICAPR10 -#define IICRSV IICRSV1 -#define IICA IICA1 -#define IICAIF IICAIF1 -#define IICAMK IICAMK1 -#define IICAPR1 IICAPR11 -#define IICCTL0 IICCTL01 -#define IICE IICE1 -#define IICF IICF1 -#define IICS IICS1 -#define IICWH IICWH1 -#define IICWL IICWL1 -#define LREL LREL1 -#define SPD SPD1 -#define SPIE SPIE1 -#define STCEN STCEN1 -#define STD STD1 -#define SVA SVA1 -#define WREL WREL1 -#define WTIM WTIM1 -#endif - -#ifndef _WIN32 -#define LED_POW1 P4.2 -#define LED_PM_POW1 PM4.2 -#else -#define LED_POW1 mcuRegP[ _P4_2 ] -#define LED_PM_POW1 mcuRegPM[ _P4_2 ] -#endif - -// ======================================================== -static void FSL_Open( void ); -static void FSL_Close( void ); -void firm_restore( ); - -static err my_FSL_Init(); -static err firm_duplicate( u8 block_src, u8 block_dest ); - -#ifdef _DBG_LED_PRINT_ -void alert( u8 ); -void led_print( u8 ); -#else -# define alert( x ) ; -# define led_print( x ) ; -#endif - - -// ======================================================== -extern uni_pool pool; - - -// 0.Dȍ~ VAbvf[^ -// Vt@[͑vH -#define N_MGC_L 0x1FF6 -#define N_MGC_T 0x4FF6 - - - -/********************************************//** - I2CŎMāA - - ݁A - - `FbNOK@@Vt@[ɐ؂ւčċN - - @@@@NG@@ijt@[ɖ߂čċN - - i̊֐͖߂܂j - ***********************************************/ -void firm_update( ) -{ - u8 target_block; - u8 split_write_count; // ubNւ܂܏ރJE^ - - // ւO ///////////////////////////////////// - my_FSL_Init(); - - /* t@[̃obNAbv - JnAhXAݐ̐擪hubNԍh (TCY FIRM_SIZE) - 0x2000 - 0x4FFF - 0x5000 - 0x7FFF (ubN 20 - 31) ɃRs[ - */ - firm_duplicate( FIRM_TOP, - ALTERNATE_FIRMTOP ); - - // SubN폜 ///////////////////////////////////// - // df𔻒肷邽߁AŏɑSNX^ - //iVt@[ƂɎcĂAȑÕt@[̃tb^j - for( target_block = INACTIVE_BOOTSECT_TOP; - target_block < ALTERNATE_FIRMTOP; - target_block ++ ) - { - FSL_Erase( target_block ); - } - - - // ւ /////////////////////////////////////////// - // XgbvRfBV܂ő - // IAX^[gAbv[`ɔ - for( target_block = INACTIVE_BOOTSECT_TOP; - target_block < ALTERNATE_FIRMTOP; - target_block ++ ) - { - u8 my_spd; - -/* łɏĂBłȂƒfꂽƂIĂ邩ʏoȂ -// // Vt@[̈폜 -// FSL_Erase( target_block ); -*/ - // - for( split_write_count = 0; - split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM; - split_write_count ++ ) - { - u8* p_buffer = &pool.self_update_work[0]; - u16 buff_written_size = 0; - - WDT_Restart( ); - - // I2C珑݃f[^obt@ɂ߂ - do - { - while( !IICAIF && !SPD ) - {;} - my_spd = SPD; - IICAIF = 0; - *p_buffer = IICA; - WREL = 1; - p_buffer ++; - buff_written_size ++; - } - while( ( buff_written_size != SELF_UPDATE_BUFF_SIZE ) - && !SPD ); - - my_spd += SPD; - - // - // ŌゾƁAS~pfBO邪ʂɂ܂Ȃ - if( FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE - + split_write_count * SELF_UPDATE_BUFF_SIZE ), - ( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) ) - - != FSL_OK ) - { - alert(1); - // ݌̃`FbNG[ - // XgA - firm_duplicate( ALTERNATE_FIRMTOP, FIRM_TOP ); - FSL_ForceReset(); // Zbg - // FSL_SwapBootCluster( ); // u[gXbvuɁvċNďoȂ炵 - // ߂ĂȂ // - } - - if( my_spd != 0 ) - { - break; - } - } - - // 1ubN݊Bxt@Cs - if( FSL_IVerify( target_block ) != FSL_OK ){ - alert(2); - // ēx xt@CJԂ_ł... /// ďׂ݂H - // XgA - firm_duplicate( ALTERNATE_FIRMTOP, FIRM_TOP ); - FSL_ForceReset(); // Zbg - // FSL_SwapBootCluster( ); // u[gXbvuɁvċNďoȂ炵 - // ߂ĂȂ // - } - - if( my_spd != 0 ) - { - break; - } - } - - LREL = 1; - - // 񂾃t@[̃`FbN // - { - u8 i; - u8 comp = 0; - - // [_[̃}WbNƁA{̖̃}WbN͓mF - for( i = 0; i < sizeof( __TIME__ ); i++ ) - { - comp += (u8)(( (*( __far u8 * ) ( N_MGC_L + i )) == (*( u8 * ) ( N_MGC_T + i ) )) ? 0 : 1); - } - if( *( __far u8 * )( N_MGC_L +2 ) != ':' ) // ς̂܂ - { - comp ++; - } - - if( comp == 0 ) - { - // OK! - FSL_InvertBootFlag( ); - FSL_SwapBootCluster( ); // ZbgɓBFSL_Close͕sv - } - else - { - // f[^(}WbNio[ĂȂ)G[ - // XgA - alert(3); - - firm_duplicate( ALTERNATE_FIRMTOP, FIRM_TOP ); - FSL_ForceReset(); // Zbg - // FSL_SwapBootCluster( ); // u[gXbvuɁvċNďoȂ炵 - } - // ߂ĂȂ // - } -} - - - - -/********************************************//** -t@[obNAbv̈悩烊XgA܂B - -`FbNAŌ̍ŌŃu[gXbv̂ŁA -ł̓u[gXbv͕svłB - ***********************************************/ -void firm_restore( ) -{ - DBG_LED_on; - LED_PM_POW1 = 0; - - // obNAbv͐H // - { - u16 i; - u8 comp = 0; - - for( i = 0; i < sizeof( __TIME__ ); i++ ) // sizeof( __TIME__ ) = 8 炵 - { - comp += ( *( __far u8 * )( MGC_LOAD + i ) == *( u8 * )( MGC_HEAD_BKUP + i ) ) ? 0 : 1; - comp += ( *( u8 * )( MGC_HEAD_BKUP + i ) == *( u8 * )( MGC_FOOT_BKUP + i ) ) ? 0 : 1; - } - if( *( u8 * )( MGC_FOOT_BKUP ) == 0xFF ) - { - comp ++; - } - - if( comp != 0 ) - { - // obNAbv̈ꂽ... - comp = 0; - - // 3.3VオȂƍ - EI( ); - iic_mcu_start( ); - RESET2_ast; - FCRAM_RST_ast; - GYRO_DISABLE(); - PM_LDSW_on(); - wait_ms( 1 + DELAY_PM_TW_PWUP ); - PM_VDD_on( ); - - while(1) - { - WDT_Restart(); - - { - // LED sRsR - comp++; - LED_POW1 = ( comp == 1 || comp == 3 )? 1: 0; - if( comp == 8 ) - { - comp = 0; - } - } - - { - // d{^œdoff - static u8 sw_hold_count; - - if( !SW_POW_n_RAW ) - { - sw_hold_count++; - } - else - { - sw_hold_count = 0; - } - - if( sw_hold_count > 16 ) - { - sw_hold_count = 0; - // doff - PM_LDSW_off( ); - - // pwsw҂ŐQ - KRM = ( KR_SW_POW ); // Mask ł͂ȂAMode - MK0 = 0xFFFF; - MK1 = ~( INT_MSK1_KR ); - MK2L = 0xFF; - - // PU5 ̂܂ - PU7 = bits8(0,0,0,0, 1,0,0,0); // PWSWI - PU20 = bits8(0,0,0,0, 0,0,0,0); // SW_HOME ~ - - STOP( ); - -// mcu_wdt_reset; // [v̂͂悭ȂƎv - -// while(1){ -// NOP(); // Ȃ -// } - } - } - - // EFCg - for( i = 1; i != 0; i++ ) - { - NOP(); - NOP(); - NOP(); - NOP(); - } - } - } - } - - // else{ // obNAbv͐Ă - - while( my_FSL_Init() != ERR_SUCCESS ){ // FSLs悤Ȃ~Ȃ... - // todo gC񐔏H - alert(1); - } - - /* t@[̃XgA - 0x4800 - 0x7FFF (ubN 18 - 27) - 0x2000 - 0x47FF (ubN 8 - 17) փRs[ - */ - if( firm_duplicate( ALTERNATE_FIRMTOP, FIRM_TOP ) != ERR_SUCCESS ) - { - alert(2); - } - DBG_LED_off; - - // todo XgAsALEDƂāAT[rXɂĂ炤H - - FSL_ForceReset(); // ZbgA߂ĂȂ -} - - - -/********************************************//** -tbV̏̂߂̑O - ***********************************************/ -static void FSL_Open( void ) -{ - /* save the configuration of the interrupt controller and set */ -#ifdef FSL_INT_BACKUP - fsl_MK0L_bak_u08 = MK0L; /* if (interrupt backup required) */ - fsl_MK0H_bak_u08 = MK0H; /* { */ - fsl_MK1L_bak_u08 = MK1L; /* */ - fsl_MK1H_bak_u08 = MK1H; /* save interrupt controller */ - fsl_MK2L_bak_u08 = MK2L; /* configuration */ - fsl_MK2H_bak_u08 = MK2H; /* */ - MK0L = FSL_MK0L_MASK; /* */ - MK0H = FSL_MK0H_MASK; /* */ - MK1L = FSL_MK1L_MASK; /* prepare interrupt controller */ - MK1H = FSL_MK1H_MASK; /* for selfprogramming */ - MK2L = FSL_MK2L_MASK; /* */ - MK2H = FSL_MK2H_MASK; /* } */ -#endif - - while( DST1 ){;} // DMA~ - DEN1 = 0; - - MK0 = 0xFFFF; - MK1 = 0xFFFF; - MK2 = 0xFFFF; -/* - LVIM = bits8(0,0,0,0, 0,0,1,0); - LVIS = bits8(0,0,0,0, 1,0,0,0); - LVIM = bits8(1,0,0,0, 0,0,1,0); -*/ - FSL_FLMD0_HIGH; // tbVւ -} - - - -/********************************************//** -tbV̏I - ***********************************************/ -static void FSL_Close( void ) -{ - // nH - - FSL_FLMD0_LOW; // tbVCgveNg - -#ifdef FSL_INT_BACKUP - MK0L = fsl_MK0L_bak_u08; /* do{ */ - MK0H = fsl_MK0H_bak_u08; /* restore interrupt controller */ - MK1L = fsl_MK1L_bak_u08; /* configuration */ - MK1H = fsl_MK1H_bak_u08; /* */ - MK2L = fsl_MK2L_bak_u08; /* */ - MK2H = fsl_MK2H_bak_u08; /* } */ -#endif -} - - - -/********************************************//** -@}CRŃt@[Rs[܂B - - __far u8 * p_rom Rs[̐擪AhX - - block_dest Rs[̐擪ubN - - Rs[ɏ悤my_FSL_Init炩ߎsKv܂B - ***********************************************/ -static err firm_duplicate( u8 block_src, - u8 block_dest ) -{ - u8 target_block; - u8 split_write_count; // ubNւ܂܏ރJE^ - __far u8* p_src = ( __far u8* )( block_src * 0x400 ); - u8 retry_error; - - led_print(1); - - // ݐubN̐JԂ - for( target_block = block_dest; - target_block < ( block_dest + FIRM_SIZE ); - target_block ++ ) - { - led_print(2); - WDT_Restart( ); - // ubN - retry_error = 5 + 1; - while( FSL_BlankCheck( target_block ) != FSL_OK ) - { - led_print(3); - FSL_Erase( target_block ); - if( -- retry_error == 0 ) - { - // tbVH - FSL_Close( ); - return ( ERR_ERR ); // ZbgA݂@ǂȂ邩m - } - } - - led_print(4); - // ݕJԂ - for( split_write_count = 0; - split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM; - split_write_count ++ ) - { - u16 buff_written_size; - u8* p_buff; - - // ݃f[^obt@ɂ߂ - buff_written_size = 0; - p_buff = &pool.self_update_work[0]; - do - { - *p_buff = *p_src; - p_src ++; - p_buff ++; - buff_written_size ++; - } - while( buff_written_size != SELF_UPDATE_BUFF_SIZE ); - - // - if( FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE - + split_write_count * SELF_UPDATE_BUFF_SIZE ), - ( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) ) - != FSL_OK ) - { - // Jo̓u[g // - FSL_Close( ); - led_print(5); -// while(1){} - return ( ERR_ERR ); - } - } - led_print(6); - - // 1ubN݊Bd`FbNs - while( FSL_IVerify( target_block ) != FSL_OK ) - { - // Jo̓u[g // - led_print(7); - return ( ERR_ERR ); - } - } - return( ERR_SUCCESS ); - -} - - - -/********************************************//** -ƔœtbV̏ - ***********************************************/ -static err my_FSL_Init() -{ - u8 rv; - - RTCE = 0; - - // ւO // - DI( ); - FSL_Open( ); // 荞݋֎~Ȃ - - FSL_Init( &pool.self_update_work[0] ); // CuB荞ݒfl - rv = FSL_ModeCheck( ); // CgveNg`FbNBs邱Ƃl - - return( (err)rv ); -} - - -/********************************************//** -MCUZbg - -system_status.reboot ܂B - ***********************************************/ -task_status_immed tski_mcu_reset() -{ - // ʂɍċN - my_FSL_Init(); - - FSL_ForceReset(); // Zbg - FSL_Close( ); - - // یH // - mcu_wdt_reset; - return( ERR_SUCCESS ); // no reach -} - - - -/********************************************//** -ɃG[ۂLED_łăG[ʒm - -l悤ł͂ȂAIVȂǂŃpX`FbN - -fobKgȂԂȂ̂ LEDprintf fobÔ߁B - ***********************************************/ -#ifdef _DBG_LED_PRINT_ -// P1.5 = led_pow_red_old -void alert( u8 num ) -{ - u8 i; - - while(1) - { - WDT_Restart(); - LED_POW1 = 1; - for( i = 0; i < num; i++ ) - { - DBG_LED_on; - DBG_LED_off; - } - LED_POW1 = 0; - } -} - - -/********************************************//** -ɃG[ۂLED_łăG[ʒmiQj - -l悤ł͂ȂAIVȂǂŃpX`FbN - -fobKgȂԂȂ̂ LEDprintf fobÔ߁B - ***********************************************/ -void led_print( u8 num ) -{ - u8 i; - - DBG_LED_on; - for( i = 0; i < num; i++ ) - { - LED_POW1 = 1; - LED_POW1 = 0; - } - DBG_LED_off; -} -#endif diff --git a/snake_branches/2.4_q_test/self_flash.h b/snake_branches/2.4_q_test/self_flash.h deleted file mode 100644 index 768565e..0000000 --- a/snake_branches/2.4_q_test/self_flash.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _self_flash_h_ -#define _self_flash_h_ - - -void firm_update(); - - -#endif - diff --git a/snake_branches/2.4_q_test/sw.c b/snake_branches/2.4_q_test/sw.c deleted file mode 100644 index be26b65..0000000 --- a/snake_branches/2.4_q_test/sw.c +++ /dev/null @@ -1,213 +0,0 @@ -/* ======================================================== -XCb` -EHOME -EPOWER -EWiFi -̊Ď^XN - - $Id$ -======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma NOP -#pragma HALT -#pragma STOP - -#endif - -#include "incs.h" - -#include "i2c_twl.h" -#include "i2c_ctr.h" -#include "led.h" -#include "pm.h" -#include "rtc.h" -#include "sw.h" - - -//========================================================= -/* - vreg_ctrǂ݂̂Ńwb_ -#define INTERVAL_TSK_SW -#define CLICK_THRESHOLD - -#define HOLD_THREASHOLD -#define FORCEOFF_THREASHOLD -*/ -#define TIME_MUKAN ( u8)( 300 / INTERVAL_TSK_SW ) -#define TIME_MUKAN_PWSW_RED_TRIAL (u16)( 15000 / INTERVAL_TSK_SW ) // VAhome}XN - -//========================================================= -u16 SW_pow_count; -bit SW_pow_mask; - -static u8 SW_home_count, SW_wifi_count, SW_home_count_rel; -static u8 sw_wifi_mukan_time; - -u16 off_timeout_timer; - -static u16 sw_pwsw_mukan_time; - - - -/********************************************//** - Ԃ𐔂BςȂł0ɖ߂Ȃ - - mask0̎́Ax܂Ŗ - ***********************************************/ -#define count_sw_n( sw, counter, mask ) \ - { \ - if( sw ){ \ - mask = 0; \ - counter = 0; \ - }else{ \ - if( mask != 0 ){ \ - counter = 0; \ - }else{ \ - counter ++; \ - if( counter == 0 ) counter = -1; \ - } \ - } \ - } - - -/********************************************//** - NbN(`^O)BKvɉĊ荞 - ***********************************************/ -#define chk_clicked( button, count, irq_bit_name ) \ - if( !button ) \ - { \ - if( count < CLICK_THRESHOLD ) \ - { \ - count ++; \ - if( count == CLICK_THRESHOLD ) \ - { \ - count ++; \ - set_irq( VREG_C_IRQ0, irq_bit_name ); \ - } \ - } \ - } \ - else \ - { \ - count = 0; \ - } - - - -/********************************************//** - XCb`̊Ď - - @`^O͂˂AAgKȂǂ̌os - ***********************************************/ -void tsk_sw( ) -{ - static u8 task_interval; - - if( system_status.pwr_state == OFF_TRIG ) - { - SW_pow_count = 0; // dɔăNA -// task_interval = 0; - } - - if( system_status.pwr_state != ON_CHECK ) // 莞(PWSW_POWON_TIME)ẐŃvXP[@łȂƃ`^܂肫Ȃ - { - if( task_interval != 0 ) - { - task_interval--; - return; - // ܂ - } - - task_interval = (u8)( INTERVAL_TSK_SW / SYS_INTERVAL_TICK ) -1; // vXP[ɎgĂ܂ˁc - // -1̓|XgfNĝ߂̒ - } - - // 8ms ɂ܂ - switch ( system_status.pwr_state ) - { - case ( ON ): - case ( SLEEP ): - case ( OFF ): - case ( ON_CHECK ): - // @̏ꍇ - if( ! system_status.taikendai ) - { - - // dXCb`̊Ď // - if( SW_pow_count == ( TIME_PWSW_CLICK ) ) // NbNԂɓB - { - if( is_wifi_calib_resets_ast ) // wifi Lu[VȂASoCɒʒmoffɑJ - { - system_status.pwr_state = OFF_TRIG; - } - set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_CLICK ); - } - else if( SW_pow_count == ( HOLD_THREASHOLD ) ) // ɓB - { - set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_HOLD ); - if( off_timeout_timer == 0 ) // dfJEg_EJnAxȂ悤ɁB - { - off_timeout_timer = vreg_ctr[ VREG_C_OFF_DELAY ] * 16; - } - } - - if( off_timeout_timer != 0 ) // 荞݌A^CAEgŋItB - { - off_timeout_timer --; - if( off_timeout_timer == 0 ) - { - force_off = true; - } - } - - }else{ - // X^hAV - // dXCb`̊Ď // - if( SW_pow_count == ( TIME_PWSW_CLICK ) ) - { - if( sw_pwsw_mukan_time == 0 ) - { - set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_CLICK ); - // ȃ^C~OPWSWHOMEj[ɓĂ܂̂邽߂̃}XN^C}[ - sw_pwsw_mukan_time = TIME_MUKAN_PWSW_RED_TRIAL; - } - } - else if( SW_pow_count == ( HOLD_THREASHOLD ) ) - { - force_off = true; - } - - if( sw_pwsw_mukan_time != 0 ) - { - sw_pwsw_mukan_time--; - } - } - - // @Ě䋤 - count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // {^Ԃ̃JEg - - // HOME sw // - chk_clicked( SW_HOME_n, SW_home_count, REG_BIT_SW_HOME_CLICK ); - chk_clicked( !SW_HOME_n, SW_home_count_rel, REG_BIT_SW_HOME_RELEASE ); - - // wifi sw // - /// ňȎȂ̂͂킩Ă邪AsɏoĂ܂sǃXCb`~ - if( sw_wifi_mukan_time != 0 ) - { - sw_wifi_mukan_time--; - } - else - { - chk_clicked( SW_WIFI_n, SW_wifi_count, REG_BIT_SW_WIFI_CLICK ); - if( SW_wifi_count == CLICK_THRESHOLD +1 ) // 蔭I - { - sw_wifi_mukan_time = TIME_MUKAN; - } - } - break; - default: - break; - }// switch() -} - diff --git a/snake_branches/2.4_q_test/sw.h b/snake_branches/2.4_q_test/sw.h deleted file mode 100644 index abe9715..0000000 --- a/snake_branches/2.4_q_test/sw.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef _sw_ -#define _sw_ - -#include "config.h" - -extern u16 SW_pow_count; -extern bit SW_pow_mask; - -#define INTERVAL_TSK_SW 8 -#define CLICK_THRESHOLD 5 - -#define HOLD_THREASHOLD (u16)( 3000 /INTERVAL_TSK_SW ) -#define TIME_PWSW_CLICK (u8)( 220 /INTERVAL_TSK_SW ) -#define FORCEOFF_THREASHOLD (u8)( 12000 /INTERVAL_TSK_SW /16 ) - - -extern u16 off_timeout_timer; -#define clear_pow_off_countdown(){ off_timeout_timer = 0; force_off = false; } - -#endif diff --git a/snake_branches/2.4_q_test/task_debug.c b/snake_branches/2.4_q_test/task_debug.c deleted file mode 100644 index e5b502c..0000000 --- a/snake_branches/2.4_q_test/task_debug.c +++ /dev/null @@ -1,122 +0,0 @@ -/* ======================================================== - fobO^XN - $Id$ - ======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma NOP -#pragma HALT -#pragma STOP - -#endif - -#include "incs_loader.h" -//#include "incs.h" -#include "renge\renge.h" -#include "pm.h" -#include "accero.h" - - -// ======================================================== -// 7ZO 4oCg -#define IIC_SLA_DBG_MONITOR 0x44 - - - -#if 0 // fobOj^p^XN - -ӁI@^XNXgOĂ܂̂ŁAgȂ畜ĉI - -/********************************************//** - fobOp^XN - ***********************************************/ -void tsk_debug( ) -{ -// u8 temp; - - /* - if( system_status.pwr_state == ON_TRIG ){ - { - static u8 count = 0; - // fobOLEDi8bitj̏ - temp = iic_mcu_read_a_byte( IIC_SLA_8LEDS, IIC_8LEDS_REG_DO ); - count ++; - iic_mcu_write_a_byte( IIC_SLA_8LEDS, IIC_8LEDS_REG_DO, count ); - iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 3, count ); - } - } - */ - -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 2, vreg_ctr[ VREG_C_IRQ1 ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, boot_ura ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, vreg_ctr[ VREG_C_SND_VOL ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, vreg_ctr[ VREG_3D ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 0, vreg_ctr[ VREG_C_ACC_ZH ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 3, vreg_ctr[ VREG_C_3D ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 2, vreg_ctr[ VREG_C_SND_VOL ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, vreg_ctr[ VREG_C_STATUS ] ); -// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 0, vreg_ctr[ VREG_C_ACC_ZH ] ); - - /* - { - u8 str[4]; - - if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == SLEEP ) ) - { - str[3] = vreg_ctr[ VREG_C_FREE0 ]; - str[2] = vreg_ctr[ VREG_C_FREE1 ]; - str[1] = vreg_ctr[ VREG_C_STATUS ]; - str[0] = vreg_ctr[ VREG_C_RTC_SEC ]; - - str[3] = vreg_ctr[ VREG_C_SND_VOL ]; - str[2] = vreg_ctr[ VREG_C_3D ]; - str[1] = vreg_ctr[ VREG_C_ACC_CONFIG ]; - str[0] = SEC; - iic_mcu_write( IIC_SLA_DBG_MONITOR, 0x03, 4, &str ); - } - } - */ -} - -#endif - - -#if 0 // ^XNЂȌ` -/********************************************//** -^XNЂȌ` - ***********************************************/ -task_interval tsk_hina( ) -{ - switch ( system_status.pwr_state ) - { - case ON_CHECK: - case ON_TRIG: - case ON: - case SLEEP: - case OFF_TRIG: - default: - } - - return; // tic Ă΂邱ƂɂȂ܂ -} - - -// |C^ʼn炤̂͊댯ȋCĂ -/* ̂悤Ɏg - renge_task_immed_add( ^XN֐ւ̃|C^ ); -*/ - -/********************************************//** -^XNЂȌ`(s) - ***********************************************/ -task_status_immed tski_hina( u8 * arg ) -{ - return ( TSKI_FINISHED ); - // TSKI_FINISHED ^XN폜 - // TSKI_CONTINUE ɂȂ񂩊荞݂ȂA[U[ȂAVXe`bN - // Ƃɍēxs -} - - -#endif diff --git a/snake_branches/2.4_q_test/task_misc.c b/snake_branches/2.4_q_test/task_misc.c deleted file mode 100644 index edbecca..0000000 --- a/snake_branches/2.4_q_test/task_misc.c +++ /dev/null @@ -1,429 +0,0 @@ -/* ======================================================== - ̑Gȃ^XN - ^XN𕪂₷ȂC邪A\[X̖ŕȂ - - $Id: task_misc.c 418 2011-09-22 01:35:37Z n2232 $ - ======================================================== */ - -#ifndef _WIN32 - -#pragma SFR -#pragma NOP -#pragma HALT -#pragma STOP - -#endif - -#include "incs.h" -#include "renge\renge.h" -#include "pm.h" - -#include "accero.h" -#include "adc.h" -#include "i2c_mcu.h" -#include "led.h" -#include "vreg_twl.h" - - - -#ifdef _MCU_BSR_ -#define ACKD ACKD1 -#define ACKE ACKE1 -#define COI COI1 -#define IICAEN IICA1EN -#define IICRSV IICRSV1 -#define IICA IICA1 -#define IICAIF IICAIF1 -#define IICAMK IICAMK1 -#define IICAPR0 IICAPR11 -#define IICAPR1 IICAPR01 -#define IICCTL0 IICCTL10 -#define IICE IICE1 -#define IICF IICF1 -#define IICS IICS1 -#define IICWH IICWH1 -#define IICWL IICWL1 -#define LREL LREL1 -#define SPD SPD1 -#define SPIE SPIE1 -#define STCEN STCEN1 -#define STD STD1 -#define SVA SVA1 -#define WREL WREL1 -#define WTIM WTIM1 -#define TRC TRC1 -#define SMC SMC1 -#define DFC DFC1 -#endif - -// ======================================================== -extern void f(); // X^bN̍Ō𓾂 - - -// ======================================================== -bit twl_ver_read; // twl home menuverǂ񂾂݊J[lɊ荞݂邽 -bit going_to_sleep; // SoCAsleepɓʒm炤Bslp_i HԂ0ɂȂ - // X[v畜AłȂȂ̂h - - -// eXgp -bit reserve_pedo_increnent; - - -// ======================================================== -static void update_LED_3D(); -static void check_twl_vol_irq(); - - - -/********************************************//** - PiŃ^XNɂȂGȏ - - xZT荞݂̎肱ڂmF(Ö) - - TWL PM݊WX^ւ݂̏Γǂ݂ɍs - - ݊J[lTWL`[̋Nʒm - - TWL̉ʕω荞݂`FbN - - 3Dv̍XV - - (HAL) vA₷ - - (fobO) SELWDTZbg𔭐 - ***********************************************/ -void tsk_misc( ) -{ - // 荞݂̎肱ڂH - if( ACC_VALID && ( ( vreg_ctr[ VREG_C_STATUS_1 ] & REG_BIT_ACCERO_ERR ) == 0 )) - { - if( renge_task_immed_add( tski_cbk_accero ) == ERR_SUCCESS ){ - // dbg_nop(); - } - } - - if( system_status.pwr_state == ON ) - { - /* ======================================================== - PM݊WX^ւ̏ - |[OőΉ - ======================================================== */ - if( !PM_IRQ_n ) - { - renge_task_immed_add( tski_ntr_pmic_comm ); - // dbg_nop(); - } - - /* ======================================================== - TWL`[NƂCTRm肽炵 - ======================================================== */ - if( twl_ver_read ) - { - twl_ver_read = false; - set_irq( VREG_C_IRQ2, REG_BIT_TWL_VER_READ ); - } - - // TWL ̉ʕω荞݃`FbN // - check_twl_vol_irq(); - } - - // 3D vXV // - update_LED_3D(); - -#ifdef _ENABLE_HAL_ - // fobOHAL ₷ // - if( reserve_pedo_increnent ) - { - reserve_pedo_increnent = 0; - hosu_increment_if_necessary(); - } -#endif - -#ifdef _ENABLE_PRESS_SEL_TO_WDT_ - if(( system_status.pwr_state == ON ) - || ( system_status.pwr_state == SLEEP )) - { - static u16 timer; - if( !SW_SEL_n ) - { - timer += 1; - if( timer == 2000 ) - { - DI(); - timer = 0; - while(1) - { - NOP(); // ̂WDT - } - } - } - } -#endif - - //. X^bNeXg -// f(); -} - - - -/********************************************//** -TWLVol̂ƁAXC_̑삪obeBO -sN鎖Ah - - TWLł͒ʏ펞A{^8iKBɍ킹Ċ荞݂B - ***********************************************/ -void check_twl_vol_irq() -{ - static u8 vol_level_twl_sent; - static u8 mabiki; - - if( !is_TWL ) - { - return; - // ܂ - } - - if( mabiki != 0 ) - { - mabiki--; - return; - // ܂ - } - - mabiki = 9; // 1t[͊J - if( vol_level_twl != vol_level_twl_sent ) - { - vol_level_twl_sent = vol_level_twl; - set_irq( VREG_C_IRQ2, REG_BIT_SLIDE_VOL_ACROSS_TWL_BOUNDARY ); - } -} - - -/********************************************//** -3DvXV - ***********************************************/ -void update_LED_3D() -{ - if( system_status.pwr_state != ON ) - { - LED_duty_3d = 0; - return; - // ܂ // - } - - if( vreg_ctr[VREG_C_LED_3D] == LED_3D_ILM_OFF ) - { - if( LED_duty_3d != 0 ) - { - LED_duty_3d --; - } - } - else - { - if( LED_duty_3d != vreg_ctr[VREG_C_LED_BRIGHT] ) - { - if( LED_duty_3d < vreg_ctr[VREG_C_LED_BRIGHT] ) - { - LED_duty_3d ++; - } - else - { - LED_duty_3d --; - } - } - } -} - - - - -/********************************************//** - COMMANDWX^ւ̏ - - 0ȂĂ΂܂BPAsv - - - sleep ʒm() - - ZbgnR}h - ***********************************************/ -task_status_immed tski_do_command0( ) -{ - u8 temp_command; - - // command0 {̓dȂ - DI_wt_chk(); - temp_command = vreg_ctr[VREG_C_COMMAND0]; - vreg_ctr[VREG_C_COMMAND0] = 0; - EI(); - - // SLPO(SoC->mcu) 񓯊̂߁ApX[ɂȂĂ܂Amcu SoC̈u - // X[vooASLPIgOoȂB炩ߒʒmĂ炢A - // ^CAEgsB - if( temp_command & REG_BIT_GOING_TO_SLEEP ) - { - going_to_sleep = true; - } - - // ZbgñR}h // - if( ( temp_command & ( REG_BIT_OFF_REQ | REG_BIT_RESET1_REQ | REG_BIT_FCRAM_RESET_REQ | REG_BIT_RESET2_REQ )) != 0x00 ) - { - if( temp_command & REG_BIT_OFF_REQ ) - { - system_status.pwr_state = OFF_TRIG; - } - else - { - if( temp_command & REG_BIT_RESET1_REQ ) - { - PM_reset_ast( ); - RESET2_ast; - FCRAM_RST_ast; - } - if( temp_command & REG_BIT_RESET2_REQ ) - { - RESET2_ast; - if( vreg_twl[ REG_TWL_INT_ADRS_MODE ] == 0 ) - { - FCRAM_RST_ast; // twlntr[hœ삵Ă - } - // TWL[hDS[hւ̐؂ւɃZbg - // IRQǂ܂Ȃꍇ̂TWLWX^ - vreg_twl_init(); - } - if( temp_command & REG_BIT_FCRAM_RESET_REQ ) - { - FCRAM_RST_ast; - } - wait_ms( 5 ); // ԉ҂ - FCRAM_RST_neg; - PM_reset_neg(); - RESET2_neg; - - // CODEC s背WX^ // - codec_reg_init(); - } - } -/* - X[vvɓdOFFEZbgR}h͗܂ - if( vreg_ctr[VREG_C_COMMAND0] != 0 ) - { - return ( TSKI_CONTINUE ); - } -*/ - return ( TSKI_FINISHED ); -} - - - -/* fobOEeXgp ============================== */ -u16 _dbg_rcomp; -extern u8 raw_adc_temperature; - -extern u8 iic_burst_state; -extern bit temp_zone_charge_disable; -extern bit bt_authorized; - - - - -#define KOUMOKU 19 - -static u8 infos_bits[2]; -static u8 infos_temp[5]; - -static const u8 *infos_table[ KOUMOKU ] = { - &infos_temp[0], /* 0 */ - &pmic_version, - (u8*)&battery_manufacturer, - &mgic_version[0], - &mgic_version[1], - &infos_temp[1], /* 5 */ - &raw_adc_temperature, - &infos_temp[2], - &infos_temp[3], - (u8*)&system_status.family, /* 9 */ - &infos_bits[0], /* 10 */ - (u8*)&LED_duty_pow_blu, - (u8*)&LED_duty_3d, - (u8*)&LED_duty_notify_red, - (u8*)&LED_duty_notify_grn, - (u8*)&LED_duty_notify_blu, /* 15 */ - &infos_bits[1], - (u8*)&LED_duty_WiFi, - &infos_temp[4] /* 18 */ - /* ڑƂ KOUMOKU ɒ */ -}; - -/********************************************//** -@fobOpɃXe[^XԂBigXe[^X 0x7Fj - -@Ԓl̓f[^̂ - - oĂ鏇́A - - - 1) vbgtH[ - - 2) PMIC o[W - - 3) dr[J[ - - 4) KXQ[Wo[W - - 5) V - - 6) ( rcomp & 0xFF ) - - 7) raw_adc_temperature - - 8) ( !temp_zone_charge_disable | ( bt_authorized << 1 ) ) - - 9) m点LED̓tJ[H - - 10) system_status.family - ***********************************************/ -u8 extinfo_read(void) -{ - u8 ret = 0xFF; - - /* - * temp͌vZKvȃf[^Bɗ]TȂ̂ŌvZKv - * ϐ́Av/svɊւ炸vZ|V[ - */ - - if( iic_burst_state < KOUMOKU ) - { - infos_temp[0] = system_status.captureBox? ( system_status.is_dev? MODEL_IS_CAPTURE :MODEL_KUC_CAPTURE ) - : ( system_status.is_dev? MODEL_IS_DEBUGGER: (u8)system_status.model ); - infos_temp[1] = (u8)( _dbg_rcomp & 0xFF ); - infos_temp[2] = ( !temp_zone_charge_disable | ( bt_authorized << 1 ) ); - infos_temp[3] = 1; /* dlύXɂ1ŒɂȂ */ - infos_temp[4] = 0 -// | ( PM_EXTDC_n ? REG_BIT_HAL0_PM_EXTDC_n : 0 ) // status0ɂ - | ( BT_IN_CHG_n ? REG_BIT_HAL0_BT_IN_CHG_n : 0 ) - | ( BT_CHG_Ena_n ? REG_BIT_HAL0_RSV_5 : 0 ) // 󂫃rbggp,out pin - | 0 // WL_TX gȂ -// | ( SHELL_OPEN ? REG_BIT_HAL0_SHELL_OPEN : 0 ) // status0ɂ - | ( SW_WIFI_n ? REG_BIT_HAL0_SW_WIFI_n : 0 ) - | ( SW_HOME_n ? REG_BIT_HAL0_SW_HOME_n : 0 ) - | ( SW_POW_n ? REG_BIT_HAL0_SW_POW_n : 0 ); - - infos_bits[0] = (u8)LED_pow_red; - infos_bits[1] = (u8)LED_CAM; - - ret = *infos_table[iic_burst_state]; - -#if 0 -// debug // - /// VXeɋ@펯ʂʼnR‚ - if( iic_burst_state == 9 ) - { - ret = (u8)FAMILY_FLOWER; - } -#endif - iic_burst_state ++; - } - - return ret; -} - - -#ifdef i2c_timeout_test -/********************************************//** -ifobOpjI2C_mcu ɃvgRᔽ(g`)oꂽSLED_Ēʒm - ***********************************************/ -void i2c_mcu_error_monitor() -{ - LED_duty_pow_blu = 0xff; - LED_duty_3d = 0xff; - LED_duty_notify_red = 0xff; - LED_duty_notify_grn = 0xff; - LED_duty_notify_blu = 0xff; - LED_pow_red = 1; - LED_CAM = 1; -} -#endif - diff --git a/snake_branches/2.4_q_test/task_status.c b/snake_branches/2.4_q_test/task_status.c deleted file mode 100644 index 361497b..0000000 --- a/snake_branches/2.4_q_test/task_status.c +++ /dev/null @@ -1,89 +0,0 @@ -/* ******************************************************** - ꕔ̃Xe[^XWX^XVAKvɉĊ荞݂܂B - - $Id$ -********************************************************* */ - -#ifndef _WIN32 - -#pragma SFR -#pragma NOP -#pragma HALT -#pragma STOP - -#endif - -#include "incs_loader.h" -#include "renge\renge.h" - -#include "pm.h" - -#include "accero.h" -#include "adc.h" -#include "i2c_mcu.h" -#include "led.h" - - -/********************************************//** - Xe[^XWX^́A - - WJ - - Ŋ荞݂KvłΔ܂B - todo: H - ***********************************************/ -void tsk_status( ) -{ - static u8 state_old; // Xe[^Xωo荞 ̈ - u8 diff; - - // WJ`FbN - set_bit( SHELL_OPEN, vreg_ctr[VREG_C_STATUS], REG_BIT_ST_SHELL_OPEN ); - - // Xe[^XWX^֌W 荞 // - // pm.c ŁȀōs܂B - // REG_BIT_LCD_ON/OFF - // REG_BIT_BL_ON/OFF - // REG_BIT_BT_DC_CONNECT/DISC - // REG_BIT_BT_CHG_START/STOP - - diff = (u8)( vreg_ctr[VREG_C_STATUS] ^ state_old ); - if( diff != 0 ) - { - state_old = vreg_ctr[VREG_C_STATUS]; - - if( system_status.pwr_state == ON ) - { - if( diff & REG_BIT_BATT_CHARGE ) - { - // [dԔf - if( is_bt_charging ) // set_irqʁXɌĂԕRpNg - { - set_irq( VREG_C_IRQ1, REG_BIT_BT_CHG_START ); - } - else - { - set_irq( VREG_C_IRQ1, REG_BIT_BT_CHG_STOP ); - } - } - } - - if(( system_status.pwr_state == ON ) || - ( system_status.pwr_state == SLEEP ) - ) - { - if( diff & REG_BIT_ST_SHELL_OPEN ) - { - // W̊J‚ - if( is_shell_open ) - { - set_irq( VREG_C_IRQ0, REG_BIT_SHELL_OPEN ); - } - else - { - set_irq( VREG_C_IRQ0, REG_BIT_SHELL_CLOSE ); - } - } - } - } -} - diff --git a/snake_branches/2.4_q_test/task_sys.c b/snake_branches/2.4_q_test/task_sys.c deleted file mode 100644 index 457ab56..0000000 --- a/snake_branches/2.4_q_test/task_sys.c +++ /dev/null @@ -1,667 +0,0 @@ -/* ======================================================== - task_sys - dĩ^XN - - $Id$ - ======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma NOP -#pragma HALT -#pragma STOP - -#endif - -#include "incs.h" - -#include "i2c_twl.h" -#include "i2c_ctr.h" -#include "led.h" -#include "accero.h" -#include "pm.h" -#include "rtc.h" -#include "sw.h" -#include "adc.h" -#include "self_flash.h" -#include "i2c_mcu.h" -#include "vreg_twl.h" - - -//========================================================= -#define WAIT_SHIROBAKO_POW_CONTROL 240 - - -//========================================================= -extern void nop8(); - - -static void chk_emergencyExit(); -static void force_off_check(); -static void send_getup_to_soc(); -#ifdef _DBG_CHK_OFF_LEAK_ -static void leak_check(); -#endif - - - -//========================================================= -extern bit info_led_off; -extern bit going_to_sleep; -extern bit bt_authorized; - -static u8 timeout_sleep; -extern u8 chg_led_override; - -#ifdef i2c_timeout_test -extern bit i2c_mcu_time_out_error; -#endif - - -//========================================================= -#define PWSW_POWON_TIME (u8)( 20 / SYS_INTERVAL_TICK ) // [ms] // INTERVAL_TSK_SW ŊȂBl珬̂ -#define PWSW_ON_CHECK_TIMEOUT 100 // K donׂ̈ɓdXCb`삳ꂽƂA̎Ԍo߂mcuȓd͂ɖ߂ - - - -/********************************************//** - d̗グX[vȂǂǗ - ***********************************************/ -void tsk_sys( ) -{ - static u8 pwsw_timeout = 0; // d{^`^OB@^CAEg܂łɓdm肵Ȃoffɖ߂ - - hal_update(); - - switch ( system_status.pwr_state ) - { - case ON_CHECK: //------------------------------------------------------- - // dfJEg_E^C}NA - clear_pow_off_countdown(); - - // ̊荞݂HALT(X[v) ^@A_v^L - - // dXCb`HALT // - if( system_status.poweron_reason == RSN_PWSW ) - { - if( PM_EXTDC_n ) - { - // A_v^Ȃ - if( SW_pow_count != 0 ) - { - pwsw_timeout = 0; - } - else - { - pwsw_timeout ++; - } - - if( pwsw_timeout > PWSW_ON_CHECK_TIMEOUT ) - { - SW_pow_count = 0; - system_status.pwr_state = OFF_TRIG; // XCb`̓mCYBQB - renge_task_interval_run_force = true; - return; - } - } - else - { - BT_chk(); - } - - - if( SW_pow_count < PWSW_POWON_TIME ) - { - // ԂZēdonɓBĂȂ - return; - } - } - // else { if( system_status.poweron_reason == RSN_TRIALAc ) d } - - SW_pow_mask = true; // pwswςȂœd/ JԂȂ悤 - - // d // - iic_mcu_start( ); - - bt_force_update = false; - BT_chk(); // @obe̔AdrcIC̐ݒ - -#ifndef _ALLOW_NOBATT_ - if( system_status.model == MODEL_JIKKI_NOBATT ) - { - renge_task_interval_run_force = true; - system_status.pwr_state = OFF_TRIG; - return; - } -#endif - - // cʃ`FbN - BT_get_left(); // ɁABT_chk()sĂKv܂B - if( -// ( vreg_ctr[VREG_C_BT_REMAIN] < 1 ) // Ŕ肷ƓdrقƂǖƂ -// // A_v^ĂNłȂȂႤ - ( vreg_ctr[VREG_C_BT_VOLTAGE] < ( V_TH_ZERO / 256 ) ) // dr - ) - { - // drȂ̂ŋNȂ(d`FbNĂ) - renge_task_interval_run_force = true; - system_status.pwr_state = OFF_TRIG; - return; - } - - // |[g̕ݒ@dOɁB - PM_SW_WIFI_n = 1; - PM_SW_HOME_n_JIKKI = 1; - PM_WL_TX = 1; - PM_SW_SEL_n = 1; - PM_ACCEL_INT1 = 1; - PM_ACC_VALID = 1; - - if( PM_sys_pow_on( ) != ERR_SUCCESS ) - { // dNsƒG[ - renge_task_interval_run_force = true; - system_status.pwr_state = OFF_TRIG; - return; - } - - // ܂ŗƁAdm // - // vAbvon - PU_BT_IN_CHG_n = 1; - PU7 = bits8(0,0,0,1, 1,1,0,1); // 4:SW_WIFI 3:SW_PWSW 2:PM_IRQ 0:PM_EXTDC_n - PU_SW_HOME_n_JIKKI = 1; // SW_HOME - - reset_release(); - - if( system_status.poweron_reason == RSN_PWSW || - system_status.poweron_reason == RSN_TRIAL ) - { - // d{^łon̎́ALED_ - vreg_ctr[VREG_C_LED_POW] = LED_POW_ILM_AUTO; - } - else - { - // Ƃ肠ALEDԂŋN - vreg_ctr[VREG_C_LED_POW] = LED_POW_ILM_OFF; - } - - system_status.pwr_state = ON_TRIG; - - PM_LCD_vcom_set( ); // LCD̑ΌdlȂǏ - - break; - - case ON_TRIG: //------------------------------------------------------- -#ifdef i2c_timeout_test - LED_duty_pow_blu = 0; // debug - LED_duty_3d = 0; - LED_duty_notify_red = 0; - LED_duty_notify_grn = 0; - LED_duty_notify_blu = 0; - LED_pow_red = 0; - LED_CAM = 0; - i2c_mcu_time_out_error = false; -#endif - IIC_ctr_Init( ); - IIC_twl_Init( ); - - vreg_twl_init( ); - vreg_ctr_reset( ); - - KRM = bits8(0,0,0,0, 0,0,0,0); - PIF0 = 0; - - system_status.poweron_reason = NONE; - renge_task_interval_run_force = true; - - MK0 = INT_MSK0_RSV; - MK1 = INT_MSK1_RSV; - - iic_mcu_start(); - -// MK2 = ~( INT_MSK2_IIC_TWL | INT_MSK2_WIFI_TX_BSR | INT_MSK2_CODEC_PMIRQ ); -// PMK21 = 0; // wifi gȂ - PMK6 = 0; // pm_irq - - // u[gAXe[^XƂȂXV - if( system_status.reboot ) - { - u8 bl_status_temp; - - bl_status_temp = read_pmic( PM_REG_ADRS_BL ); - vreg_ctr[ VREG_C_STATUS ] |= (( bl_status_temp & 0x03 ) << 5 ); - set_bit( ( read_pmic( PM_REG_ADRS_VDD_LCD ) != 0 ), - vreg_ctr[ VREG_C_STATUS ], REG_BIT_LCD_POW ); - BT_chk(); - } - - LED_init( ); // reboot́BT_Chk,BT_chkɍs - - system_status.reboot = 0; - system_status.pwr_state = ON; - - // WDTZbgAI2C̏܂Ŋ荞ݕۗ - // قƂ͂ɂׂȂ... - if( ( vreg_ctr[ VREG_C_MCU_STATUS ] & REG_BIT_STATUS_WDT_RESET ) != 0 ) - { - set_irq( VREG_C_IRQ0, REG_BIT_IRQ_WDT_RESET ); - } - - break; - - case ON: //--------------------------------------------- - // PMICɂ鋭df`FbN - // fobKreset1AT[g邱ƂB̂Ƃ͑SZbg - chk_emergencyExit(); - - // SLPĎ - if( going_to_sleep ) // ΂ SLP_REQ ̑Oɗ\ - { - timeout_sleep ++; - if( timeout_sleep == 0 || // I[o[t[ҁBsleepČLjuŋNċC‚Ȃ - ( PIF0 && !SLP_REQ )) // slp荞݂CANĂ܂ - { - PIF0 = 0; - send_getup_to_soc(); - } - if( PIF0 && SLP_REQ ){ - PIF0 = 0; - PM_VDD_ecoMode(); - system_status.pwr_state = SLEEP; - renge_task_interval_run_force = true; - } - } - - // offJEg - force_off_check(); - -#ifndef _TAIKENDAI_SEISAN_SPECIAL_ - if( system_status.taikendai ) // A_v^玩œdoff - { - if( PM_EXTDC_n ) - { - system_status.pwr_state = OFF_TRIG; - } - } -#endif - - break; - - case SLEEP: //------------------------------------------ - chk_emergencyExit(); - // X[v畜A - if( !SLP_REQ ){ - PM_VDD_normMode(); - wait_ms( 5 ); // tdly_sw - send_getup_to_soc(); - system_status.pwr_state = ON; - } - - force_off_check(); -// leak_check(); - -#ifndef _TAIKENDAI_SEISAN_SPECIAL_ - if( system_status.taikendai ) // A_v^玩œdoff - { - if( PM_EXTDC_n ) - { - system_status.pwr_state = OFF_TRIG; - } - } - break; // ł悢B -#else - /* FALLTHROUGH */ -#endif - - default: //--------------------------------------- - system_status.pwr_state = OFF_TRIG; // 蓾ȂXe[gBfobOp -// dbg_nop(); - /* FALLTHROUGH */ - - case OFF_TRIG: //--------------------------------------- - // LED҂ - vreg_ctr[ VREG_C_LED_POW ] = LED_POW_ILM_OFF; - vreg_ctr[ VREG_C_LED_WIFI ] = WIFI_LED_OFF; - vreg_ctr[ VREG_C_LED_3D ] = LED_3D_ILM_OFF; - info_led_off = true; - if( LED_duty_pow_blu != 0 ) - { - return; - } - - // dfJEg_E^C}NA - clear_pow_off_countdown(); - - // xZT~ - vreg_ctr[ VREG_C_ACC_CONFIG ] = 0x00; - tski_acc_setup(); - EI(); // DIԂłė̂ŁAI2C_mcu ̂ɕKv - - // ̑ytF~ - LED_stop( ); - IIC_ctr_Stop( ); - IIC_twl_Stop( ); - RTC_32k_off(); - -// dI̊荞݃Zbg -// PWSW KR3 L -// BG24 KR4 -// ӂJ INTP5 ‚L -// ACA_v^ INTP4 A_v^L -// RTC - while( iic_mcu_busy ) - {;} - - // irq}XNݒ - KRM = ( KR_SW_POW ); // Mask ł͂ȂAModeȂ̂B킵 - MK0 = ~( INT_MSK0_EXTDC | INT_MSK0_WDTI ); - MK1 = ~( INT_MSK1_KR | INT_MSK1_RTCINTVAL ); // INT_MSK1_RTCALARM | RTCA[ - MK2L = 0xFF; - - // irqtONA - vreg_ctr[VREG_C_IRQ0] = 0; - vreg_ctr[VREG_C_IRQ1] = 0; - vreg_ctr[VREG_C_IRQ2] = 0; - vreg_ctr[VREG_C_IRQ3] = 0; - - // PU5 ̂܂ - PU7 = bits8(0,0,0,0, 1,0,0,1); // PWSWI,PM_EXTTDC,( IRQ0_deactive(), PM_IRQ_deactive ) - PU_SW_HOME_n_JIKKI = 0; // SW_HOME ~ - - IF0 = 0; - IF1 = 0; - IF2 = 0; - - IRQ0_disable; - - PM_sys_pow_off( ); // dJbgIt - - // |[gނ~[hɁBHłALo͂ɂȂႾ߂ȁB - SW_WIFI_n_RAW = 0; - PM_SW_WIFI_n = 0; - - SW_HOME_n_JIKKI_RAW = 0; - PM_SW_HOME_n_JIKKI = 0; - - WL_TX = 0; - PM_WL_TX = 0; - - SW_SEL_n = 0; - PM_SW_SEL_n = 0; - - ACCEL_INT1 = 0; - PM_ACCEL_INT1 = 0; - ACC_VALID = 0; - PM_ACC_VALID = 0; - - system_status.pwr_state = OFF; - SW_pow_mask = true; - SW_pow_count = 0; - - // HALfobOZbg@YƓdonoȂȂ邱Ƃc - hal_reset(); - /* FALLTHROUGH */ - - case OFF: - // Fł͓d{^d͂܂B - - system_status.poweron_reason = NONE; - pwsw_timeout = 0; - - if( !PM_EXTDC_n - || chg_led_override != 0 ) // ꂪ[ɂȂ܂ő҂ - { - // A_v^L /////////////////////////////// ܂́AA_v^ĂRb͏[dLED_Ă - - // d{^`FbN - system_status.poweron_reason = RSN_PWSW; - system_status.pwr_state = ON_CHECK; - -#ifndef _TAIKENDAI_SEISAN_SPECIAL_ - // VȂ玩œdē - if( system_status.taikendai ) - { - vreg_ctr[ VREG_C_HAL_OVW_CONT0 ] = vreg_ctr[ VREG_C_HAL_OVW_CONT1 ] = 0; - wait_ms(46); // pmic̓dēdl̂ - system_status.poweron_reason = RSN_TRIAL; - system_status.pwr_state = ON_CHECK; - } -#endif - } - else - { - // A_v^Ȃ /////////////////////////////// - - // ȓd͂ֈڍs - iic_mcu_stop( ); - pm_chk_adapter(); - PM_Chg_Stop(); - - bt_force_update = true; - - while( RWST ) - {;} - - // 荞ݑ҂ŐQ // - RTCIMK = 1; // systickpC^[o^C}[荞݃}XN - -#ifdef _DBG_CHK_OFF_LEAK_ - leak_check(); -#endif - CKC = bits8(0,0,0,0, 1,0,0,1); // 4MHzɗƂ(bit0)STOPȂĂ͂ȂȂ - OSMC = bits8(0,0,0,0, 0,0,0,0); // 5MHzȉ[hցB - - if( PM_EXTDC_n_RAW ) // ǂ^C~Oő}N邱ƂBHALʂȂׂioffłj - { - STOP(); - } - - // N // - // N - // EKeyReturn荞݁id{^j - // ERTCA[iݕj - - // NbNA - OSMC = bits8(0,0,0,0, 0,0,0,1); // 8MHz쏀 - renge_flg_interval = 0; - hal_update(); - - CKC = bits8(0,0,0,0, 1,0,0,0); // OSMC.FSEL = 1 3clkȏJ - - // NŔH - if( !PM_EXTDC_n ){ - system_status.pwr_state = OFF; // ĂāAON_CHECKɍs - } -/* // RTCA[B - else if( vreg_ctr[ VREG_C_IRQ1 ] & REG_BIT_RTC_ALARM ) - { - system_status.poweron_reason = RSN_RTC_ALARM; - system_status.pwr_state = ON_CHECK; - } - // else if( ̊荞݂œdon ){ - // 󑼂̗vł͋NȂ - // } -*/ - else // if( !SW_POW_n ) // iȊOȂjd{^ŋN - { - SW_pow_mask = false; - system_status.poweron_reason = RSN_PWSW; - system_status.pwr_state = ON_CHECK; - } - - RTCIMK = 0; // sys tick ^C}[L - -#ifndef _TAIKENDAI_SEISAN_SPECIAL_ - if( system_status.taikendai ) - { - system_status.pwr_state = OFF_TRIG; - } -#endif - } - } -} - - - -/********************************************//** - PMICdُŎ~߂mF - - ***********************************************/ -static void chk_emergencyExit(){ - static u8 shirobako_power_control_count; - - // wifi W[Lu[V[hreset1牺ĂƂ̓`FbNpX - if( is_wifi_calib_resets_ast ) - { - return; - } - - if( shirobako_power_control_count == 0 ) - { - if( !RESET1_n ) // PM_chk_LDSW() I2C_mgpARXg - { - if( !PM_chk_LDSW() ) - { - // ZbgĂ - /// PMICُIf - system_status.pwr_state = OFF_TRIG; - renge_task_interval_run_force = true; - } - else - { - // ̎d - shirobako_power_control_count = 1; - } - } - } - else - { - if( shirobako_power_control_count == WAIT_SHIROBAKO_POW_CONTROL ) // }WbNio[ - // fobKBreset1܂ł͖ - { - if( RESET1_n ) // ZbglQ[g҂ - { - shirobako_power_control_count = 0; - } - else - { - // nothing to do - } - } - else if( shirobako_power_control_count == 200 ) // * (sys_tick)[ms] - // fobK炵 - { -#ifndef _RVD_ - // ͓d؂肽炵 - system_status.pwr_state = OFF_TRIG; - renge_task_interval_run_force = true; - shirobako_power_control_count = WAIT_SHIROBAKO_POW_CONTROL; -#endif - } - else - { - if( !RESET1_n ) - { - if( shirobako_power_control_count != 255 ) - shirobako_power_control_count ++; - } - else - { - // (TS{[hŎ蓮/fobK)Zbg炵 - send_cmd_pmic( PM_REG_ADRS_BL, 0 ); - vreg_ctr[VREG_C_STATUS] = ( vreg_ctr[VREG_C_STATUS] & bits8(1,0,0,1, 1,1,1,1) ); - vreg_ctr[VREG_C_COMMAND0] |= REG_BIT_RESET1_REQ; - renge_task_immed_add( tski_do_command0 ); - shirobako_power_control_count = WAIT_SHIROBAKO_POW_CONTROL; - } - } - } -} - - - -/********************************************//** - - d{^ - - dr؂ - - dr - - ł̋OFFBƉs\ - ***********************************************/ -static void force_off_check() -{ - if( force_off ) - { - system_status.pwr_state = OFF_TRIG; - renge_task_interval_run_force = true; - } -} - - - -/********************************************//** - SoCN - -@@dʏɖ߂ĂĂʼnB - ***********************************************/ -void send_getup_to_soc() -{ - going_to_sleep = false; - timeout_sleep = 0; -#ifdef _MODEL_CTR_ - SLP_ACK = 1; - nop8(); - SLP_ACK = 0; -#endif -} - - - - -/********************************************//** - ȃAbvf[g firm_update() ĂԁiisrsłȂ̂Łj - - task_status_immed^ Ԃ悤ɂ΂̂ł... - ***********************************************/ -task_status_immed tski_firm_update(){ - firm_update(); - return( ERR_SUCCESS ); -} - - - -#ifdef _DBG_CHK_OFF_LEAK_ -/********************************************//** - pinݒ~X`FbN - ***********************************************/ -static void leak_check() -{ - volatile u8 ports_i[12]; - volatile u8 ports_o[12]; - - ports_i[0] = ( PM0 & PU0 & ~P0 ); // vAbv؂YH - ports_i[1] = ( PM1 & PU1 & ~P1 ); - ports_i[2] = 0; - ports_i[3] = ( PM3 & PU3 & ~P3 ); - ports_i[4] = ( PM4 & PU4 & ~P4 ); - ports_i[5] = ( PM5 & PU5 & ~P5 ); - ports_i[6] = 0; - ports_i[7] = ( PM7 & PU7 & ~P7 ); - ports_i[8] = ( PM12 & PU12 & ~P12 ); - ports_i[9] = ( PM14 & PU14 & ~P14 ); - ports_i[10] = 0; - ports_i[11] = ( PM20 & PU20 & ~P20 ); - - ports_o[0] = ( ~PM0 & P0 ); // H o͂Ă邩 - ports_o[1] = ( ~PM1 & P1 ); - ports_o[2] = ( ~PM2 & P2 ); - ports_o[3] = ( ~PM3 & P3 & ~POM3 ); - ports_o[4] = ( ~PM4 & P4 ); // bit3chg_enȂ̂1ł悢 - ports_o[5] = ( ~PM5 & P5 ); - ports_o[6] = ( ~PM6 & P6 ); - ports_o[7] = ( ~PM7 & P7 ); - ports_o[8] = ( ~PM12 & P12 ); - ports_o[9] = ( ~PM14 & P14 ); - ports_o[10] = ( ~PM15 & P15 ); - ports_o[11] = ( ~PM20 & P20 ); - NOP(); // u[Nu -} -#endif _DBG_CHK_OFF_LEAK_ diff --git a/snake_branches/2.4_q_test/user_define.h b/snake_branches/2.4_q_test/user_define.h deleted file mode 100644 index 48e334c..0000000 --- a/snake_branches/2.4_q_test/user_define.h +++ /dev/null @@ -1,214 +0,0 @@ -#ifndef _USER_DEF_ -#define _USER_DEF_ - -// $Id: asdf$ - -#define IIC_T_SLAVEADDRESS 0x4A -#define IIC_C_SLAVEADDRESS 0x4A -#define IIC_C_SLAVEADDRESS_DMY 0x4C - -//#define IIC_SLA_DCP 0x50 - -#define bits8(a,b,c,d,e,f,g,h) ( a<<7 | b<<6 | c<<5 | d<<4 | e<<3 | f<<2 | g<<1 | h ) - -#ifndef _WIN32 -// @‹ - -#ifdef _debug_led_ -/*spflΉȍ~AncłȂȂ̂Ŏg܂ -# define DBG_LED_on { PM2.1 = 0; P2.1 = 1; } -# define DBG_LED_off { P2.1 = 0; } -# define DBG_LED_toggle ( P2.1 ^= 1 ) -# define DBG_LED2_on { PM2.2 = 0; P2.2 = 1; } -# define DBG_LED2_off { P2.2 = 0; } -# define DBG_LED2_toggle ( P2.2 ^= 1 ) -*/ -#else -# define DBG_LED_on ; -# define DBG_LED_off ; -# define DBG_LED_toggle ; -# define DBG_LED2_on ; -# define DBG_LED2_off ; -# define DBG_LED2_toggle ; -#endif // _debug_led_ - -#define IIC_SLA_CODEC 0xA4 -#define IIC_SLA_ACCEL 0x30 // ST LIS331DLH - - -#define SLP_ACK P7.7 - - -// PMx0ŏo̓[h - -// SoC -#define IRQ0_ast { P7.6 = 0; PM7.6 = 0; } // B4 -#define IRQ0_neg { P7.6 = 1; } -#define IRQ0_enable { PM7.6 = 0; } -#define IRQ0_disable { PM7.6 = 1; } -#define IRQ0 ( P7.6 ) - - -// h~ -#define RESET1_n ( P0.0 ) // G7 - -#if 1 // iPM_RESET1gAWiFiW[̃eXg̎͒ -# define RESET1_ast { P0.0 = 0; PM0.0 = 0; } -# define RESET1_neg { PM0.0 = 1; } -#endif - -#define RESET2_ast { P0.1 = 0; PM0.1 = 0; } // F7 -#define RESET2_neg { PM0.1 = 1; } - -#define SLP_REQ P12.0 // H8 - -// CTR,SPFL,SNAKE,܂ʔh@ -#define DEV_DET ( P12 & 0b00000110 ) // [2:1] = D8,C8 -#define DEV_CTR ( 0b00 << 1 ) -#define DEV_SPFL ( 0b01 << 1 ) -#define DEV_SNAKE ( 0b10 << 1 ) -#define DEV_RSV2 ( 0b11 << 1 ) - -// FCRAM -#define FCRAM_RST P3.0 // B6 -#define FCRAM_RST_ast { P3.0 = 0; } -#define FCRAM_RST_neg { P3.0 = 1; } - -// CODEC -#define PM_IRQ_n P7.2 // A3 -// INTP6 - -// PM -#define PM_EXTDC_n_RAW P7.0 // B2 -// INTP7 -//#define BT_TEMP P15.0 // G3(a) -// ANI8 -//#define BT_DET P15.1 // H2(a) -// ANI9 -#define BT_DET_P P1.6 // D4 -#define BT_TEMP_P P1.7 // C4 - - -// SPFL̃At@XLCDŕKvȁ}15V̓dB -#define SPFL_LCD_AMOL_HV_CONT P20.2 // F2 - - -// [d(out) -// _łBӁB -#define BT_CHG_ENABLE() ( P4.3 = 0 ) // F6 -#define BT_CHG_DISABLE() ( P4.3 = 1 ) -#define BT_CHG_Ena_n ( P4.3 ) - -// [d(in) -#define BT_IN_CHG_n_RAW P5.1 // B1 -#define PM_BT_IN_CHG_n PM5.1 -#define PU_BT_IN_CHG_n PU5.1 - -#define SW_WIFI_n_RAW P7.4 // C3 -#define PM_SW_WIFI_n PM7.4 -// KR4 -#define SW_POW_n_RAW P7.3 // B3 -// KR3 -#define SW_SEL_n P2.3 // G5 -#define PM_SW_SEL_n PM2.3 -//#define VOL P2.7 // H4(a) -// ANI7 - -#define SW_HOME_n_JIKKI_RAW P20.4 // G2 -#define PM_SW_HOME_n_JIKKI PM20.4 -#define PU_SW_HOME_n_JIKKI PU20.4 - -// INTP22 -#define SW_HOME_n_TSBOARD_RAW P2.0 // TS}U[pull up(P2͓p.u.) // G6 -#define PM_SW_HOME_n_TSBOARD PM2.0 - -// WiFi -#define WL_TX P20.3 // INTP21 // F3 -#define PM_WL_TX PM20.3 // INTP21 - -//#define VOL_P P2.1 // E5 open -//#define VOL_N P2.2 // F5 V - -//#define LED_CAM P1.0 // TO02 // E4 -//#define LED_WIFI P1.1 // TO03 // E3 -//#define LED_NOTIFY P1.3 // TO05 // D3 -//#define LED_3D P5.2 // SLTO TO01 // A2 -//#define LED_POW2 P1.4 // TO06 ( ) // D2 -//#define LED_POW1 P1.5 // TO07 ( ) // D1 -//#define LED_CHARGE P2.4 // H5 - -// P5.3 ɉAP5.5, P140 P141 -// P140o͐pȂ̂... -#define I2C_PU_on() { P14 |= 0x03; PM5.3 = 0; PM3.3 = 0; } // P14[1:0] H6,H7 P5.3,3.3 A1,C5 -#define I2C_PU_off() { PM5.3 = 1; PM3.3 = 1; P14 &= ~0x03; } - -#define GYRO_ENABLE() P5.0 = 0 // C1 -#define GYRO_DISABLE() P5.0 = 1 - -//#define I2C_M_SDA P3.1 // SDA10 // C6 -//#define I2C_M_SCL P3.2 // SCL10 // B5 - -//#define I2C_0_SCL P6.0 // IIC_TWL SCL0 // A7 -//#define I2C_0_SDA P6.1 // SDA0 // A6 - -//#define I2C_1_SCL P20.0 // IIC CTR SCL1 // E1 -//#define I2C_1_SDA P20.1 // SDA1 // F1 - -//#define 32kHz_O P1.2 // RTCCL // E2 -//#define 32k_I1 P12.3 // XT1 // F8 -//#define 32k_I2 P12.4 // XT2 // G8 - -// @AJ@AV䔻ʁB -#define DIPSW ( P4 & 0b00000011 ) // mini cube & \tgEFAfBbvXCb` TOOL0,1B P4.0 L ӁI -#define DIPSW_CTR 0b11 // gp -#define DIPSW_ISDEV 0b00 // KuCBattGaugeŔ -#define DIPSW_TAIKENDAI 0b10 -#define DIPSW_TAIKENDAI_NBD 0b01 - - -#define SHELL_OPEN_RAW P7.1 // INTP5 ӂJ (‚L) // C2 - -#define ACC_VALID P20.5 // H3 -#define PM_ACC_VALID PM20.5 -#define ACCEL_INT1 P2.5 // F4 -#define PM_ACCEL_INT1 PM2.5 - - -#endif // _WIN32 - -// win32 sim‹Ƌ - -#define KR_SW_POW ( 1 << 3 ) -#define KR_SW_WIFI ( 1 << 4 ) - -/////////////////////////////////////////////////////////// -#ifdef _WDT_CHECK_ -# define INT_MSK0_WDTI 1<<15 -#else -# define INT_MSK0_WDTI 0 -#endif - -#define INT_MSK0_IIC_M_DMA 1<<12 -#define INT_MSK0_SHELL 1<<7 -#define INT_MSK0_EXTDC 1<<6 -//#define INT_MSK0_SLP 1<<2 -#define INT_MSK0_RSV ~( INT_MSK0_IIC_M_DMA | INT_MSK0_SHELL | INT_MSK0_EXTDC | INT_MSK0_WDTI ) - -#define INT_MSK1_KR 1<<11 -#define INT_MSK1_RTCINTVAL 1<<10 -#define INT_MSK1_RTCALARM 1<<9 -#define INT_MSK1_ADC 1<<8 -#define INT_MSK1_IIC_CTR 1<<3 -#define INT_MSK1_IIC_MCU 1<<0 -#define INT_MSK1_RSV ~( INT_MSK1_KR | INT_MSK1_RTCINTVAL | INT_MSK1_RTCALARM | INT_MSK1_ADC \ - | INT_MSK1_IIC_CTR | INT_MSK1_IIC_MCU ) - -#define INT_MSK2_WIFI_TX_KE3 1<<4 -#define INT_MSK2L_RSV ~( INT_MSK2_WIFI_TX_KE3 ) - -#define INT_MSK2_IIC_TWL 1<<8 -#define INT_MSK2_WIFI_TX_BSR 1<<10 -#define INT_MSK2_CODEC_PMIRQ 1<<3 -#define INT_MSK2_RSV ~( INT_MSK2_IIC_TWL | INT_MSK2_WIFI_TX_BSR | INT_MSK2_CODEC_PMIRQ ) - -#endif // dupe include guard diff --git a/snake_branches/2.4_q_test/util_funcs.c b/snake_branches/2.4_q_test/util_funcs.c deleted file mode 100644 index 2edea63..0000000 --- a/snake_branches/2.4_q_test/util_funcs.c +++ /dev/null @@ -1,65 +0,0 @@ -/* ======================================================== - util_funcs - - Gȃ[eBeB֐ - - $Id$ - ======================================================== */ -#ifndef _WIN32 - -#pragma SFR -#pragma di -#pragma ei -#pragma nop -#pragma stop -#pragma halt -#pragma opc - -#endif -#include "incs_loader.h" -#include "wdt.h" - - - -/********************************************//** - Pʂ ms - - NOP񂷂Aw莞CPU *L܂* B - - 荞݂ƂƂ̕x܂B - - 덷܂B - ***********************************************/ -void wait_ms( u8 ms ){ - u16 fine; - - WDT_Restart(); - while( ms != 0 ){ - ms--; - fine = 860; - while( fine != 0 ){ - fine --; - } - } -} - - - - -extern unsigned char get_ei(); - -#ifdef _DI_WITH_CHECK_ -/********************************************//** - ł 荞݋֎~ԉ`FbNĂ犄荞݋֎~ɂ - - ]̌ʁAA#ifdef Ń`FbN DI - ***********************************************/ -void DI_wt_chk() -{ - if( !get_ei() ) - { - dbg_nop(); - } - DI(); -} -#endif // _DI_WITH_CHECK_ diff --git a/snake_branches/2.4_q_test/util_funcs.h b/snake_branches/2.4_q_test/util_funcs.h deleted file mode 100644 index 4229413..0000000 --- a/snake_branches/2.4_q_test/util_funcs.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _util_funcs_h_ -#define _util_funcs_h_ - - -void wait_ms( u8 ); - - -# ifdef _DI_WITH_CHECK_ -void DI_wt_chk(); -# else -# define DI_wt_chk() DI() -# endif /* _DI_WITH_CHECK_ */ - - -#endif - diff --git a/snake_branches/2.4_q_test/voltable.c b/snake_branches/2.4_q_test/voltable.c deleted file mode 100644 index 4d2e14a..0000000 --- a/snake_branches/2.4_q_test/voltable.c +++ /dev/null @@ -1,64 +0,0 @@ -/* ======================================================== - voltable.c - - $Id$ - ======================================================== */ -#include "incs.h" - -#define _10db_ - - - -/********************************************//** - XC_l CODEC ɃZbgہAőVol̊֌W - KɃXP[OKv - - yȂ̂Ńe[u - ***********************************************/ - - - -#ifdef _10db_ -// max -10db -const u8 slider_to_codec[64] = -{ - 127, 126, 125, 124, 122, 121, 120, 119, - 118, 117, 116, 114, 113, 112, 111, 110, - 109, 108, 106, 105, 104, 103, 102, 101, - 100, 98, 97, 96, 95, 94, 93, 92, - 90, 89, 88, 87, 86, 85, 83, 82, - 81, 80, 79, 78, 77, 75, 74, 73, - 73, 72, 71, 70, 69, 67, 66, 65, - 64, 63, 62, 61, 59, 58, 57, 56 - }; -#endif - -#ifdef _15db_ -// max -15db -const u8 slider_to_codec[64] = -{ - 127, 127, 127, 127, 127, 126, 125, 123, - 122, 121, 120, 119, 118, 117, 116, 115, - 114, 113, 112, 110, 109, 108, 107, 106, - 105, 104, 103, 102, 101, 100, 99, 97, - 96, 95, 94, 93, 92, 91, 90, 89, - 88, 87, 86, 85, 84, 83, 82, 81, - 80, 79, 78, 77, 76, 75, 74, 73, - 71, 70, 69, 68, 67, 66, 66, 66 -}; -#endif - -#ifdef _4db_ -// max -4db -const u8 slider_to_codec[64] = -{ - 127, 127, 126, 125, 123, 122, 121, 119, - 118, 117, 115, 114, 112, 111, 110, 108, - 107, 106, 104, 103, 101, 100, 99, 97, - 96, 94, 93, 92, 90, 89, 88, 86, - 85, 83, 82, 81, 79, 78, 77, 75, - 74, 72, 71, 70, 68, 67, 66, 64, - 64, 63, 61, 60, 59, 57, 56, 54, - 53, 52, 50, 49, 48, 46, 44, 44 -}; -#endif diff --git a/snake_branches/2.4_q_test/voltable.h b/snake_branches/2.4_q_test/voltable.h deleted file mode 100644 index 6ff34ab..0000000 --- a/snake_branches/2.4_q_test/voltable.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifdef _10db_ -// max -10db -/* -const u8 slider_to_codec[64] = -{ - 127, 127, 127, 127, 126, 125, 123, 122, - 121, 120, 118, 117, 116, 115, 113, 112, - 111, 110, 108, 107, 106, 105, 103, 102, - 101, 100, 98, 97, 96, 95, 93, 92, - 91, 90, 88, 87, 86, 85, 83, 82, - 81, 80, 78, 77, 76, 75, 73, 72, - 72, 71, 70, 68, 67, 66, 64, 63, - 62, 61, 59, 58, 57, 56, 55, 55 - }; -*/ -const u8 slider_to_codec[64] = -{ - 127, 126, 125, 124, 122, 121, 120, 119, - 118, 117, 116, 114, 113, 112, 111, 110, - 109, 108, 106, 105, 104, 103, 102, 101, - 100, 98, 97, 96, 95, 94, 93, 92, - 90, 89, 88, 87, 86, 85, 83, 82, - 81, 80, 79, 78, 77, 75, 74, 73, - 73, 72, 71, 70, 69, 67, 66, 65, - 64, 63, 62, 61, 59, 58, 57, 56 - }; -#endif - -#ifdef _15db_ -// max -15db -const u8 slider_to_codec[64] = -{ - 127, 127, 127, 127, 127, 126, 125, 123, - 122, 121, 120, 119, 118, 117, 116, 115, - 114, 113, 112, 110, 109, 108, 107, 106, - 105, 104, 103, 102, 101, 100, 99, 97, - 96, 95, 94, 93, 92, 91, 90, 89, - 88, 87, 86, 85, 84, 83, 82, 81, - 80, 79, 78, 77, 76, 75, 74, 73, - 71, 70, 69, 68, 67, 66, 66, 66 -}; -#endif - -#ifdef _4db_ -// max -4db -const u8 slider_to_codec[64] = -{ - 127, 127, 126, 125, 123, 122, 121, 119, - 118, 117, 115, 114, 112, 111, 110, 108, - 107, 106, 104, 103, 101, 100, 99, 97, - 96, 94, 93, 92, 90, 89, 88, 86, - 85, 83, 82, 81, 79, 78, 77, 75, - 74, 72, 71, 70, 68, 67, 66, 64, - 64, 63, 61, 60, 59, 57, 56, 54, - 53, 52, 50, 49, 48, 46, 44, 44 -}; -#endif diff --git a/snake_branches/2.4_q_test/vreg_ctr.c b/snake_branches/2.4_q_test/vreg_ctr.c deleted file mode 100644 index aae1669..0000000 --- a/snake_branches/2.4_q_test/vreg_ctr.c +++ /dev/null @@ -1,638 +0,0 @@ -/* ======================================================== - - CTR MCU I2CWX^ - - $Id$ - ====================================================== */ -#include "incs.h" -#include "vreg_ctr.h" -#include "rtc.h" -#include "led.h" -#include "accero.h" -#include "pm.h" -#include "pool.h" -#include "vreg_twl.h" -#include "sw.h" -#include "WDT.h" - -#include -#include "fsl_user.h" - - - - -extern u8 extinfo_read(); // task_misc.c - -extern u8 iic_burst_state; // o[XgANZX鎞̃JE^ -extern bit info_led_pattern_updated; // m点LED̃p^[擪ɖ߂ - -extern bit pedolog_overflow; -extern bit reserve_pedo_increnent; - - - -// ******************************************************** -u8 vreg_ctr[VREG_C_ENDMARK_]; - -static u8 vreg_free_adrs; // AhXł̂ł΂炭͂ -bit irq_readed; // AAA^̂߁B - - - -// ******************************************************** -extern task_status_immed tski_firm_update(); -extern task_status_immed tski_mcu_reset(); -extern unsigned char get_ei(); - - - -// ******************************************************** -#ifdef _MCU_BSR_ -#define IICAMK IICAMK1 -#endif - - -/********************************************//** - - - [̏l̎w肪KvȃAhX - - }CRZbgɌĂ΂܂ - ***********************************************/ -void vreg_ctr_init( ) -{ - vreg_ctr[ VREG_C_VCOM_T ] = VCOM_DEFAULT_T; - vreg_ctr[ VREG_C_VCOM_B ] = VCOM_DEFAULT_B; - - vreg_ctr[ VREG_C_OFF_DELAY ] = FORCEOFF_THREASHOLD; - - vreg_ctr[ VREG_C_VOL_CAL_MIN ] = 0x36; - vreg_ctr[ VREG_C_VOL_CAL_MAX ] = 0xFF - 0x36; -} - - -/********************************************//** - lZbg - - VXeZbgɌĂ΂܂ - ***********************************************/ -void vreg_ctr_reset( ) -{ - vreg_ctr[ VREG_C_MCU_VER_MAJOR ] = MCU_VER_MAJOR | 0x10; - vreg_ctr[ VREG_C_MCU_VER_MINOR ] = MCU_VER_MINOR; - -// vreg_ctr[ VREG_C_STATUS ] &= bits8(0,0,0,1, 1,1,1,1); - vreg_ctr[ VREG_C_LED_BRIGHT ] = 0xFF; - vreg_ctr[ VREG_C_LED_POW ] = 0; - vreg_ctr[ VREG_C_LED_WIFI ] = 0; - vreg_ctr[ VREG_C_LED_CAM ] = 0; - vreg_ctr[ VREG_C_LED_3D ] = 0; - { - u8 i; - for( i = 0; i < sizeof( uni_info_LED ); i++ ) - { - info_LED.bindata[ i ] = 0; - } - } - - vreg_ctr[ VREG_C_WIFI_CALIB ] = 0; - // ł̂͋Cc - RTC_32k_on(); - RESET1_neg; - RESET2_neg; - FCRAM_RST_neg; -} - - - -/********************************************//** - I2CzWX^ɏ܂B - - @ adrs ͓AhX - - @ȂAhXɃANZXꍇA܂B - - 񂾌ʁAI2C_mcuʐMꍇArenge_task_immed_add() - gpȂƁAI2C_mcugpŃG[IꍇɃgC܂B - ***********************************************/ -void vreg_ctr_write( u8 adrs, u8 data ) -{ - switch ( adrs ) - { - - case VREG_C_COMMAND0: - if( data != 0 ) - { - renge_task_immed_add( tski_do_command0 ); - vreg_ctr[ VREG_C_COMMAND0 ] |= data; - } - break; - - case VREG_C_COMMAND2: - // 炩̊荞݂҂ĂȂłB #--) ̂߂̊荞݂ - // td - if(( data & REG_BIT_CMD_LCD_ON ) != 0 ) - { - renge_task_immed_add( tski_PM_LCD_on ); - } - else if(( data & REG_BIT_CMD_LCD_OFF ) != 0 ) - { - renge_task_immed_add( tski_PM_LCD_off ); - } - - // obNCgݒ - /// ̂Ƃ낳ɍׂ͕Ȃǁc - if(( data & REG_BITS_CMD_BL ) != 0 ) - { - renge_task_immed_add( tski_PM_BL_set ); - vreg_ctr[adrs] = (u8)( data & REG_BITS_CMD_BL ); - } - break; - - case VREG_C_COMMAND1: - if( data != 0 ) - { - // u8 temp; ԕϐg΂łȂ... - // TWLɊ荞݂ - /// ۂɊ荞݂̂SoC - /// rbg̕тႤʓ| - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] = ( ( data & REG_BIT_SEND_TWL_PWSW_DET ) != 0 ) ? REG_BIT_TWL_IRQ_PWSW_DET : 0x00; //pwsw_det - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_RESET_DET ) != 0 ) ? REG_BIT_TWL_IRQ_RESET : 0x00; //reset_req - - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_OFF_DET ) != 0 ) ? REG_BIT_TWL_IRQ_OFF : 0x00; //off_req - - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_BATT_LOW ) != 0 ) ? REG_BIT_TWL_IRQ_BT_LOW : 0x00; //batt_low - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_BATT_EMPTY ) != 0 ) ? REG_BIT_TWL_IRQ_BT_EMPTY : 0x00; //batt_empty - - if(( data & REG_BIT_SEND_TWL_VOL_CLICK ) != 0 ) - { - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= REG_BIT_TWL_IRQ_VOL_CHANGE; //vol_changed - } - } - break; - - case VREG_CX_FREE_DATA: - if( vreg_free_adrs < VREG_C_FREE_SIZE ) - { - pool.vreg_c_ext.vreg_c_free[ vreg_free_adrs ] = data; - vreg_free_adrs ++; - } - else - { - dbg_nop(); - } - break; - - case VREG_CX_FREE_ADRS: - vreg_free_adrs = data; - break; - - case VREG_C_LED_POW: - if( iic_burst_state == 0 ) - { - vreg_ctr[ VREG_C_LED_POW ] = data; - iic_burst_state ++; - } - else if( iic_burst_state < 5 ) - { - led_red_batt_empty.dats[ iic_burst_state -1 ] = data; - iic_burst_state ++; - } - break; - - case VREG_C_LED_WIFI: - case VREG_C_LED_CAM: - case VREG_C_LED_3D: - vreg_ctr[adrs] = (u8)( data & 0x0F ); - break; - - case VREG_C_LED_NOTIFY_DATA: - if( iic_burst_state < sizeof( uni_info_LED ) ) - { - if(( iic_burst_state == 1 ) && ( data == 0 )) // fade_time == 0 ֎~ - { - data = 1; - } - info_LED.bindata[ iic_burst_state ] = data; - iic_burst_state ++; - if( iic_burst_state > 4 ) // p^[1ł - { - info_led_pattern_updated = true; - } - } - break; - - case VREG_C_MCU_STATUS: -// vreg_twl[ REG_TWL_INT_ADRS_MODE ] = (u8)( ( data >> 6 ) & 0x03 ); Rł悢B̑胊ZbgŃNA - vreg_ctr[ VREG_C_MCU_STATUS ] &= data; // bitNA͂邪Zbg͂ȂB - // ̕twlWX^~[͓ǂݏoꎞɍ - break; - - case VREG_C_VCOM_T: - case VREG_C_VCOM_B: - renge_task_immed_add( tski_vcom_set ); - vreg_ctr[adrs] = data; - break; - - case VREG_C_DBG03: - if( ( vreg_ctr[VREG_C_DBG01] == 'j' ) - && ( vreg_ctr[VREG_C_DBG02] == 'h' ) - && ( data == 'l' ) ) - { - renge_task_immed_add( tski_firm_update ); - IICAMK = 1; - } - vreg_ctr[ VREG_C_DBG03 ] = data; - break; - - /// 񓯊œĂ邽߂ł͏ȂB - // \񂷂邾stopŏ - case VREG_C_RTC_SEC: - case VREG_C_RTC_MIN: - set_rtc( adrs - VREG_C_RTC_SEC, data & 0x7F ); - break; - - case VREG_C_RTC_DAY: - case VREG_C_RTC_HOUR: - set_rtc( adrs - VREG_C_RTC_SEC, data & 0x3F ); - break; - - case VREG_C_RTC_YOBI: - set_rtc( adrs - VREG_C_RTC_SEC, data & 0x07 ); - break; - - case VREG_C_RTC_MONTH: - set_rtc( adrs - VREG_C_RTC_SEC, data & 0x1F ); - break; - - case VREG_C_RTC_YEAR: - set_rtc( adrs - VREG_C_RTC_SEC, data ); - break; - - case VREG_C_RTC_COMP: - WDT_Restart(); - while(1) - { - RWAIT = 1; - while( !RWST ){} - if( SEC != 0 ) - { - break; - } - RWAIT = 0; - } - SUBCUD = data; - RWAIT = 0; - vreg_ctr[ VREG_C_RTC_COMP ] = data; - break; - - case VREG_C_RTC_ALARM_MIN: - rtc_alarm_dirty = true; - vreg_ctr[ VREG_C_RTC_ALARM_MIN ] = (u8)( data & 0x7F ); - break; - - case VREG_C_RTC_ALARM_HOUR: - rtc_alarm_dirty = true; - vreg_ctr[ VREG_C_RTC_ALARM_HOUR ] = (u8)( data & 0x3F ); - break; - - // ł悢 - case VREG_C_RTC_ALARM_DAY: - vreg_ctr[ VREG_C_RTC_ALARM_DAY ] = (u8)( data & 0x3F ); - break; - - case VREG_C_RTC_ALARM_MONTH: - vreg_ctr[ VREG_C_RTC_ALARM_MONTH ] = (u8)( data & 0x1F ); - break; - - case VREG_C_ACC_CONFIG: - renge_task_immed_add( tski_acc_setup ); - vreg_ctr[ VREG_C_ACC_CONFIG ] = data; - break; - - case VREG_C_ACC_R_ADRS: - renge_task_immed_add( tski_acc_read ); - vreg_ctr[ VREG_C_ACC_R_ADRS ] = data; - break; - - case VREG_C_ACC_W_BUF: - renge_task_immed_add( tski_acc_write ); - vreg_ctr[ VREG_C_ACC_W_BUF ] = data; - break; - - case VREG_C_ACC_HOSU_SETTING: - if( ( data & 0x01 ) != 0 ) - { - clear_hosu_hist(); // NA - } - break; - - case VREG_C_WIFI_CALIB: - if( data & REG_BIT_WIFI_CALIB_32K_HI_Z ) - { - RTC_32k_HI_Z(); - } - else{ - RTC_32k_on(); - } - if( data & REG_BIT_WIFI_CALIB_RSTS_AST ) - { - RESET1_ast; - // RESET2_ast; RESET1̂݁B - // FCRAM_RST_ast; - } - else{ -/* - SoC ~܂Ă܂̂łɗȂ - RESET1_neg; - RESET2_neg; - FCRAM_RST_neg; -*/ - } - vreg_ctr[ VREG_C_WIFI_CALIB ] = data; - break; - - case VREG_C_COMMAND3: - switch ( data ) - { -#ifdef _ENABLE_COMMAND3_ - case 'r': - // 荞݃[`FSLCuĂԂ̂͋֎~ - // }CRċNB@WX^ނB - renge_task_immed_add( tski_mcu_reset ); - break; - - case 'w': - // WDTōċNieXgj -// mcu_wdt_reset; // ̃R}hgӖȂłI - while(1) - { - dbg_nop(); - } - break; -#endif //_ENABLE_COMMAND3_ - -#ifdef _ENABLE_HAL_ - case 'p': - reserve_pedo_increnent = 1; - // ő₷ɂ̓X^bNȂBŗ\̂݁Atask_miscŏ -// hosu_increment_if_necessary(); // A - break; -#endif //_ENABLE_HAL_ - - } -// vreg_ctr[ VREG_C_COMMAND3 ] = data; // KvȂ - break; - - case VREG_C_RBR_CONTROL: -// vreg_ctr[ VREG_C_RBR_CONTROL ] = data; // todo debug u[N|Cgu߁BAt[WX^ - break; - - - // read only ////////////////////////////////////////// - case VREG_C_MCU_VER_MAJOR: - case VREG_C_MCU_VER_MINOR: - case VREG_C_3D: // ɃtbV - case VREG_C_SND_VOL: // ɃtbV - case VREG_C_BT_TEMP: // ɃtbV - case VREG_C_BT_REMAIN: // ɃtbV - case VREG_C_BT_REMAIN_FINE: // ɃtbV - case VREG_C_BT_VOLTAGE: // ɃtbV - case VREG_C_STATUS_1: // KɃtbV - case VREG_C_STATUS: // KɃtbV - case VREG_C_IRQ0: // ̂‚łɊ荞݋NĂقȂ... - case VREG_C_IRQ1: - case VREG_C_IRQ2: - case VREG_C_IRQ3: - case VREG_C_IRQ4: - case VREG_C_LED_NOTIFY_FLAG: // tbV - case VREG_C_RTC_SEC_FINE_L: // tbV - case VREG_C_RTC_SEC_FINE_H: // tbV - // VREG_C_ACC_RESERVE, // NȂ - // VREG_C_ACC_HOSU_HIST = 0x4F, - case VREG_C_ACC_XH: // tbV - case VREG_C_ACC_XL: - case VREG_C_ACC_YH: - case VREG_C_ACC_YL: - case VREG_C_ACC_ZH: - case VREG_C_ACC_ZL: -// dbg_nop(); - // return( ERROR ) - break; - - case VREG_C_ACC_HOSU_L: // ĂǁAfobOpB(AhX0x4B == mcu sla(r)) -// dbg_nop(); - /* FALLTHROUGH */ - - // ʂɏ邾 ///////////////////////////////// - default: - /* - case VREG_C_IRQ_MASK0: - case VREG_C_IRQ_MASK1: - case VREG_C_IRQ_MASK2: - case VREG_C_IRQ_MASK3: - case VREG_C_IRQ_MASK4: - case VREG_C_DBG01: - case VREG_C_DBG02: - case VREG_C_LED_BRIGHT: - case VREG_C_ACC_HOSU_L: - case VREG_C_ACC_HOSU_M: - case VREG_C_ACC_HOSU_H: - case VREG_C_ACC_HOSU_HOUR_BOUNDARY: - case VREG_C_FREE_ADRS: - case VREG_C_RTC_ALARM_YEAR: - case VREG_C_ACC_W_ADRS: - case VREG_C_OFF_DELAY: - case VREG_C_HAL_OVW_CONT0: - case VREG_C_HAL_OVW_DAT0: - case VREG_C_HAL_OVW_CONT1: - case VREG_C_HAL_OVW_DAT1: - */ - if( adrs < VREG_C_ENDMARK_ ) - { - vreg_ctr[adrs] = data; - break; - } - else - { -// dbg_nop(); // `AhXɏ@Ȃ񂩃oOĂȂH - // return( ERROR ) - break; - } - } -// return( SUCCESS ) - return; -} - - - -/********************************************//** - I2CzWX^ǂ݂܂B - - ߂F xx f[^ - - ӁF̃AhX̏ŌĂ΂ ̂ŁA - [hꂽNAȂǂ͋C‚ - - ( vreg_ctr_after_read( u8 adrs ) ) - ***********************************************/ -u8 vreg_ctr_read( u8 adrs ) -{ - static u16 rsub_temp; - u8 temp; - - // RTC͓ǂݏorɌJオ̂邽 - if( ( VREG_C_RTC_SEC <= adrs ) && ( adrs <= VREG_C_RTC_YEAR ) ) - { - rtc_buf_refresh( ); - } - else if( adrs == VREG_C_MCU_STATUS ) - { - return( ( vreg_ctr[ VREG_C_MCU_STATUS ] & 0x03 ) | - ( ( vreg_twl[ REG_TWL_INT_ADRS_MODE ] & 0x03 ) << 6 ) | // sys_mode - ( ( vreg_twl[ REG_TWL_INT_ADRS_MODE ] & 0x80 ) >> 2 )); // vol32 - } - else if( adrs == VREG_C_RTC_SEC_FINE_L ) - { - rsub_temp = RSUBC; - return( (u8)( rsub_temp & 0xFF ) ); - } - else if( adrs == VREG_C_RTC_SEC_FINE_H ) - { - return( (u8)( ( rsub_temp >> 8 ) & 0xFF ) ); - } -/* - // debug I - else if( adrs == VREG_C_IRQ_MASK0 ) - { - return( vreg_ctr[ VREG_C_IRQ_MASK0 ] & 0x7F ); // `MSB0B1ȂʐMG[ - } -*/ - else if( adrs == VREG_C_ACC_HOSU_HIST ) - { - return( hosu_read() ); - } - else if( adrs == VREG_CX_FREE_DATA ) - { - if( vreg_free_adrs >= VREG_C_FREE_SIZE ) - { - temp = 0x00; - } - else - { - temp = pool.vreg_c_ext.vreg_c_free[ vreg_free_adrs ]; - // vreg_free_adrs ++; // ʼnZĂ܂ƃCfbNX - } - return( temp ); - } - else if( adrs == VREG_CX_INFO ) - { - return( extinfo_read() ); - } - else if( adrs == VREG_C_ACC_HOSU_SETTING ) - { - if( pedolog_overflow ) - { - return( 0x10 ); - } - else - { - return( 0 ); - } - } - - if( adrs >= VREG_C_ENDMARK_ ) - { - // VREG_C_INFO > VREG_C_ENDMARK_ Ȃ̂łƂ - return( 0xFF ); - } - return ( vreg_ctr[adrs] ); -} - - -/********************************************//** - I2CzWX^ǂ܂ĉ郌WX^ - ***********************************************/ -void vreg_ctr_after_read( u8 adrs, u8 data ) -{ - // 荞݃tO̓[hŃNA - switch( adrs ) - { - case VREG_C_IRQ0: - case VREG_C_IRQ1: - case VREG_C_IRQ2: - case VREG_C_IRQ3: - case VREG_C_IRQ4: - DI_wt_chk(); - vreg_ctr[ adrs ] ^= data; - EI(); - irq_readed = true; - break; - - case VREG_CX_FREE_DATA: - vreg_free_adrs ++; - break; - - default: - break; - } -} - - - - - - -/********************************************//** - 荞݂ - - - @}XNĂAtOuĂȂvA荞ݓȂB - - - @荞݂AǂݏoOɃ}XNƂ́ASoC̏L[ɂ - IRQǂރ^XNςł̂ŁAǂ݂ɂ͗B - - @ƁAÔ߁A}XNƂ͋ǂ݂Ă炤B - - łDĨ`FbNsvB - - @DIɗ̂I2C_twlARTC_A[B̒ŖڒEIĎgpȂ - ***********************************************/ -void set_irq( u8 irqreg, u8 irq_flg ) -{ - u8 tot; -//0 u8 ei_orig; // EItOۑ - - if(( system_status.pwr_state == ON ) || - ( system_status.pwr_state == SLEEP )) - { -/*0 łDIԂȂPAKvȂ - ei_orig = get_ei(); - - //. debug - if( !ei_orig ) - { - dbg_nop(); - } - - DI_wt_chk(); -*/ - DI(); - if( ( vreg_ctr[ irqreg + 8 ] & irq_flg ) == 0 ) - { - vreg_ctr[ irqreg ] |= irq_flg; - IRQ0_neg; // uグ... -//0 if( ei_orig ) - { - EI(); - } - tot = 0; - while( !IRQ0 && ( ++tot != 0 ) ){;} // O.D.Ȃ̂łƂ̂҂ IRQ_mcu LɔĂƍ(•s) - IRQ0_ast; // ƂBiGbW荞ׁ݂̈j - } -//0 if( ei_orig ) - { - EI(); - } - } -} - diff --git a/snake_branches/2.4_q_test/vreg_ctr.h b/snake_branches/2.4_q_test/vreg_ctr.h deleted file mode 100644 index 00c2140..0000000 --- a/snake_branches/2.4_q_test/vreg_ctr.h +++ /dev/null @@ -1,327 +0,0 @@ -#ifndef __vreg_ctr__ -#define __vreg_ctr__ -/* - - - $Id$ -*/ - -#include "config.h" - -// VREG_C_MCU_STATUS -// bit[7.6] twl.sys_mode[1.0] ctr珑ȂAfcr_resetɓKɃZbg -// bit[5] V [7] ctr珑ȂAfcr_resetɓKɃZbg -#define REG_BIT_STATUS_WDT_RESET ( 1 << 1 ) -#define REG_BIT_RTC_BLACKOUT ( 1 << 0 ) - - -// VREG_C_STATUS, -#define REG_BIT_LCD_POW ( 1 << 7 ) -#define REG_BIT_BL_U ( 1 << 6 ) -#define REG_BIT_BL_L ( 1 << 5 ) -#define REG_BIT_BATT_CHARGE ( 1 << 4 ) -#define REG_BIT_POW_SUPPLY ( 1 << 3 ) -// gp ( 1 << 2 ) -#define REG_BIT_ST_SHELL_OPEN ( 1 << 1 ) -// gp ( 1 << 0 ) - - -// VREG_C_STATUS_X -// gp ( 1 << 6 ) -// gp ( 1 << 5 ) -#define REG_BIT_WIFI_TX ( 1 << 4 ) -// twl bl ̃~[[1: ( 1 << 3 ) -// 0]( 1 << 2 ) -#define REG_BIT_ACCERO_ERR ( 1 << 1 ) -#define REG_BIT_MGIC_ERR ( 1 << 0 ) - -#define REG_BIT_MASK_STATUS1_NTR_PM_REG 0x0C - - -// VREG_C_IRQ0 -#define REG_BIT_IRQ_WDT_RESET ( 1 << 7 ) -#define REG_BIT_SHELL_OPEN ( 1 << 6 ) -#define REG_BIT_SHELL_CLOSE ( 1 << 5 ) -#define REG_BIT_SW_WIFI_CLICK ( 1 << 4 ) -#define REG_BIT_SW_HOME_RELEASE ( 1 << 3 ) -#define REG_BIT_SW_HOME_CLICK ( 1 << 2 ) -#define REG_BIT_SW_POW_HOLD ( 1 << 1 ) -#define REG_BIT_SW_POW_CLICK ( 1 << 0 ) - -// VREG_C_IRQ1 -#define REG_BIT_BT_CHG_START ( 1 << 7 ) -#define REG_BIT_BT_CHG_STOP ( 1 << 6 ) -#define REG_BIT_BT_REMAIN ( 1 << 5 ) -#define REG_BIT_ACC_DAT_RDY ( 1 << 4 ) -#define REG_BIT_ACC_ACK ( 1 << 3 ) -#define REG_BIT_RTC_ALARM ( 1 << 2 ) -#define REG_BIT_BT_DC_CONNECT ( 1 << 1 ) -#define REG_BIT_BT_DC_DISC ( 1 << 0 ) - -// VREG_C_IRQ2 -#define REG_BIT_TWL_VER_READ ( 1 << 7 ) -//#define REG_BIT_TWL_SNDVOL_CHANGE ( 1 << 6 ) p~ -#define REG_BIT_SLIDE_VOL_ACROSS_TWL_BOUNDARY ( 1 << 6 ) -#define REG_BIT_TWL_BL_U_ON ( 1 << 5 ) -#define REG_BIT_TWL_BL_U_OFF ( 1 << 4 ) -#define REG_BIT_TWL_BL_L_ON ( 1 << 3 ) -#define REG_BIT_TWL_BL_L_OFF ( 1 << 2 ) -#define REG_BIT_TWL_OFF_REQ ( 1 << 1 ) -#define REG_BIT_TWL_RESET_REQ ( 1 << 0 ) - -// VREG_C_IRQ3 -#define REG_BIT_BL_U_ON ( 1 << 5 ) -#define REG_BIT_BL_U_OFF ( 1 << 4 ) -#define REG_BIT_BL_L_ON ( 1 << 3 ) -#define REG_BIT_BL_L_OFF ( 1 << 2 ) -#define REG_BIT_LCD_ON ( 1 << 1 ) -#define REG_BIT_LCD_OFF ( 1 << 0 ) - - -// ̂ǂ... -//#define REG_BIT_VR_3D_CHANGE ( 1 << 7 ) - - - -// VREG_C_COMMAND0 -//#define REG_BIT_CMD_LCD_ON ( 1 << 7 ) -//#define REG_BIT_CMD_LCD_OFF ( 1 << 6 ) -//#define REG_BIT_CMD_BL_ON ( 1 << 5 ) -//#define REG_BIT_CMD_BL_OFF ( 1 << 4 ) -#define REG_BIT_GOING_TO_SLEEP ( 1 << 4 ) -#define REG_BIT_FCRAM_RESET_REQ ( 1 << 3 ) -#define REG_BIT_RESET2_REQ ( 1 << 2 ) -#define REG_BIT_RESET1_REQ ( 1 << 1 ) -#define REG_BIT_OFF_REQ ( 1 << 0 ) - -// VREG_C_COMMAND1 (TWLɊ荞݂) -// gp ( 1 << 7 ) -// gp ( 1 << 6 ) -#define REG_BIT_SEND_TWL_VOL_CLICK ( 1 << 5 ) -#define REG_BIT_SEND_TWL_BATT_EMPTY ( 1 << 4 ) -#define REG_BIT_SEND_TWL_BATT_LOW ( 1 << 3 ) -#define REG_BIT_SEND_TWL_OFF_DET ( 1 << 2 ) -#define REG_BIT_SEND_TWL_RESET_DET ( 1 << 1 ) -#define REG_BIT_SEND_TWL_PWSW_DET ( 1 << 0 ) - -// VREG_C_COMMAND2 t֌W -#define REG_BIT_CMD_BL_U_ON ( 1 << 5 ) -#define REG_BIT_CMD_BL_U_OFF ( 1 << 4 ) -#define REG_BIT_CMD_BL_L_ON ( 1 << 3 ) -#define REG_BIT_CMD_BL_L_OFF ( 1 << 2 ) -#define REG_BIT_CMD_LCD_ON ( 1 << 1 ) -#define REG_BIT_CMD_LCD_OFF ( 1 << 0 ) -#define REG_BITS_CMD_BL ( REG_BIT_CMD_BL_U_ON | REG_BIT_CMD_BL_U_OFF | REG_BIT_CMD_BL_L_ON | REG_BIT_CMD_BL_L_OFF ) - - -// TWLɒʒmIRQWX^ -#define REG_BIT_TWL_IRQ_PWSW_DET 0x08 -#define REG_BIT_TWL_IRQ_RESET 0x01 -#define REG_BIT_TWL_IRQ_OFF 0x02 -#define REG_BIT_TWL_IRQ_BT_LOW 0x20 -#define REG_BIT_TWL_IRQ_BT_EMPTY 0x10 -#define REG_BIT_TWL_IRQ_VOL_CHANGE 0x40 - - -// CODECPMIC NTR ̑㗝WX^ -#define REG_BIT_TWL_REQ_OFF ( 1 << 6 ) -#define REG_BIT_TWL_REQ_BL_U ( 1 << 3 ) -#define REG_BIT_TWL_REQ_BL_L ( 1 << 2 ) -#define REG_BIT_TWL_REQ_RESET ( 1 << 0 ) - - -// VREG_C_LED_NOTIFY_FLAG -#define REG_BIT_IN_LOOP ( 1 << 0 ) - -// RBR control (0x57) -#define REG_BIT_FLIGHT ( 1 << 1 ) -#define REG_BIT_RESET_n ( 1 << 0 ) - - -// HAL bitfields 0 -#define REG_BIT_HAL0_PM_EXTDC_n ( 1 << 7 ) -#define REG_BIT_HAL0_BT_IN_CHG_n ( 1 << 6 ) -//#define REG_BIT_HAL0_PM_IRQ_n // gȂ -#define REG_BIT_HAL0_RSV_5 ( 1 << 5 ) -#define REG_BIT_HAL0_WL_TX ( 1 << 4 ) -#define REG_BIT_HAL0_SHELL_OPEN ( 1 << 3 ) // statusɂ܂ -#define REG_BIT_HAL0_SW_WIFI_n ( 1 << 2 ) -#define REG_BIT_HAL0_SW_HOME_n ( 1 << 1 ) -#define REG_BIT_HAL0_SW_POW_n ( 1 << 0 ) - - -// HAL bitfields 1 -#define REG_BIT_HAL1_DIPSW_1 ( 1 << 3 ) -#define REG_BIT_HAL1_DIPSW_0 ( 1 << 2 ) -#define REG_BIT_HAL1_HW_DET_1 ( 1 << 1 ) -#define REG_BIT_HAL1_HW_DET_0 ( 1 << 0 ) - - -// VREG_C_WIFI_CALIB -#define REG_BIT_WIFI_CALIB_32K_HI_Z ( 1 << 1 ) -#define REG_BIT_WIFI_CALIB_RSTS_AST ( 1 << 0 ) - - -/* - ev -#define REG_BIT_ ( 1 << 7 ) -#define REG_BIT_ ( 1 << 6 ) -#define REG_BIT_ ( 1 << 5 ) -#define REG_BIT_ ( 1 << 4 ) -#define REG_BIT_ ( 1 << 3 ) -#define REG_BIT_ ( 1 << 2 ) -#define REG_BIT_ ( 1 << 1 ) -#define REG_BIT_ ( 1 << 0 ) -*/ - - - -/*============================================================================*/ -extern u8 vreg_ctr[]; - -/*============================================================================*/ -enum VREG_C_ADRS -{ // `AhX֏񂾍ۂ͕̓s - VREG_C_MCU_VER_MAJOR = 0x00, - VREG_C_MCU_VER_MINOR, - VREG_C_MCU_STATUS, - - VREG_C_VCOM_T = 0x03, - VREG_C_VCOM_B, - - VREG_C_DBG01 = 0x05, - VREG_C_DBG02, - VREG_C_DBG03, - - VREG_C_3D = 0x08, - VREG_C_SND_VOL, - VREG_C_BT_TEMP, - VREG_C_BT_REMAIN, - VREG_C_BT_REMAIN_FINE, - VREG_C_BT_VOLTAGE, - - VREG_C_STATUS_1 = 0x0E, - VREG_C_STATUS = 0x0F, - - VREG_C_IRQ0 = 0x10, - VREG_C_IRQ1, - VREG_C_IRQ2, - VREG_C_IRQ3, - VREG_C_IRQ4, - - VREG_C_IRQ_MASK0 = 0x18, - VREG_C_IRQ_MASK1, - VREG_C_IRQ_MASK2, - VREG_C_IRQ_MASK3, - VREG_C_IRQ_MASK4, - - VREG_C_COMMAND0 = 0x20, - VREG_C_COMMAND1, - VREG_C_COMMAND2, - VREG_C_COMMAND3, // 'r' Ń}CRZbgA 'w' WDTZbg - - VREG_C_OFF_DELAY = 0x24, -// VREG_C_VOL_DIGITAL = 0x25, // todo -// VREG_C_VOL_OPTION, - VREG_C_VOL_ADC_RAW = 0x27, - - VREG_C_LED_BRIGHT = 0x28, - VREG_C_LED_POW, - VREG_C_LED_WIFI, - VREG_C_LED_CAM, - VREG_C_LED_3D, - VREG_C_LED_NOTIFY_DATA, - VREG_C_LED_NOTIFY_FLAG, - - VREG_C_RBR_CONTROL = 0x2F, // p~ - - VREG_C_RTC_SEC = 0x30, - VREG_C_RTC_MIN, - VREG_C_RTC_HOUR, - VREG_C_RTC_YOBI, - VREG_C_RTC_DAY, - VREG_C_RTC_MONTH, - VREG_C_RTC_YEAR, - - VREG_C_RTC_COMP, - - VREG_C_RTC_ALARM_MIN = 0x38, - VREG_C_RTC_ALARM_HOUR, - VREG_C_RTC_ALARM_DAY, - VREG_C_RTC_ALARM_MONTH, - VREG_C_RTC_ALARM_YEAR, - - VREG_C_RTC_SEC_FINE_L, - VREG_C_RTC_SEC_FINE_H, - - VREG_C_WIFI_CALIB = 0x3F, - - VREG_C_ACC_CONFIG = 0x40, - VREG_C_ACC_R_ADRS, - VREG_C_ACC_RESERVE, - VREG_C_ACC_W_ADRS, - VREG_C_ACC_W_BUF, // r,w p - - VREG_C_ACC_XL = 0x45, - VREG_C_ACC_XH, - VREG_C_ACC_YL, - VREG_C_ACC_YH, - VREG_C_ACC_ZL, - VREG_C_ACC_ZH, - - VREG_C_ACC_HOSU_L = 0x4B, - VREG_C_ACC_HOSU_M, - VREG_C_ACC_HOSU_H, - VREG_C_ACC_HOSU_SETTING, - VREG_C_ACC_HOSU_HIST = 0x4F, - - VREG_C_ACC_HOSU_HOUR_BOUNDARY = 0x50, - VREG_C_ACC_HOSU_HOUR_BOUNDARY_SEC, - - VREG_C_HAL_OVW_CONT0 = 0x52, - VREG_C_HAL_OVW_DAT0, - VREG_C_HAL_OVW_CONT1, // reserved - VREG_C_HAL_OVW_DAT1, // reserved - - VREG_C_HAL_OVW_BT_FUEL = 0x56, - VREG_C_HAL_OVW_BT_VOLTAGE, - - VREG_C_VOL_CAL_MIN = 0x58, - VREG_C_VOL_CAL_MAX, - - VREG_C_HAL_OVW_TEMPERATURE = 0x5A, - - VREG_C_ENDMARK_ -}; - -// Ԃ͔ɂāAmۂȂ߂ ʂ define Ă -#define VREG_CX_INFO 0x7F -#define VREG_CX_FREE_ADRS 0x60 -#define VREG_CX_FREE_DATA 0x61 -// VREG_C_AMBIENT_BRIGHTNESS = 0xXX, - - - - -/*============================================================================*/ -void vreg_ctr_init( ); -void vreg_ctr_reset( ); -void vreg_ctr_write( u8 adrs, u8 data ); -u8 vreg_ctr_read( u8 phy_adrs ); -void vreg_ctr_after_read( u8 adrs, u8 data ); -void set_irq( u8 irqreg, u8 irq_flg ); - - -#define is_wifi_calib_resets_ast ( vreg_ctr[ VREG_C_WIFI_CALIB ] & REG_BIT_WIFI_CALIB_RSTS_AST ) -#define vreg_stop_acc ( vreg_ctr[ VREG_C_ACC_CONFIG ] &= ~( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ) ) -#define vreg_set_acc_error ( vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_ACCERO_ERR ) -#define is_acc_on ( vreg_ctr[VREG_C_ACC_CONFIG] & VREG_BITMASK_ACC_CONF_ACQ ) -#define is_pedo_on ( vreg_ctr[VREG_C_ACC_CONFIG] & VREG_BITMASK_ACC_CONF_HOSU ) -#define is_mgic_error ( vreg_ctr[ VREG_C_STATUS_1 ] & REG_BIT_MGIC_ERR ) -#define vreg_set_mgic_error ( vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_MGIC_ERR ) -#define vreg_clear_mgic_error ( vreg_ctr[ VREG_C_STATUS_1 ] &= ~(REG_BIT_MGIC_ERR) ) -#define is_bt_charging ( vreg_ctr[VREG_C_STATUS] & REG_BIT_BATT_CHARGE ) -#define is_shell_open ( vreg_ctr[VREG_C_STATUS] & REG_BIT_ST_SHELL_OPEN ) - - -#endif diff --git a/snake_branches/2.4_q_test/vreg_twl.c b/snake_branches/2.4_q_test/vreg_twl.c deleted file mode 100644 index 1cb1225..0000000 --- a/snake_branches/2.4_q_test/vreg_twl.c +++ /dev/null @@ -1,169 +0,0 @@ -/* ======================================================== - TWL݊I2CWX^ - - $Id$ - ======================================================== */ -#include "incs.h" -#include "jhl_defs.h" -#include "led.h" - -#include "vreg_twl.h" -//#include "vreg_ctr.h" -#include "adc.h" - - -// ======================================================== -#define TWL_REG_VER_INFO 0x35 -#define NON_EXIST_REG 0xFF - -// ======================================================== -u8 vreg_twl[_REG_TWL_INT_ADRS_ENDMARK]; - - -extern bit twl_ver_read; -extern bit cam_led_update; -extern bit vol_changed_by_twl; - - -// ======================================================== -extern void tsk_led_cam(); - - - - -/********************************************//** - zWX^̏ - ***********************************************/ -void vreg_twl_init( ) -{ - vreg_twl[ REG_TWL_INT_ADRS_MODE ] = 0x03; - vreg_twl[ REG_TWL_INT_ADRS_IRQ ] = 0; - vreg_twl[ REG_TWL_INT_ADRS_CAM ] = 0; - vreg_twl[ REG_TWL_INT_ADRS_TEMP0 ] = 0; -} - - - -/********************************************//** - I2CzWX^ɏEANV - - @ adrs ͓AhX - - @݂ȂAhXɃANZXꍇA܂B - ***********************************************/ -void vreg_twl_write( u8 adrs, u8 data ) -{ - switch ( adrs ) - { - case ( REG_TWL_INT_ADRS_VOL ): - { - vol_changed_by_twl = true; - vreg_twl[ REG_TWL_INT_ADRS_VOL ] = data; - //renge_task_immed_add( tski_vol_update ); - vol_polling = 3; - break; - } - - case ( REG_TWL_INT_ADRS_MODE ): - vreg_twl[ REG_TWL_INT_ADRS_MODE ] = ( data & 0x83 ); // [8]vol32 [1:0]nand - break; - - case ( REG_TWL_INT_ADRS_CAM ): - vreg_twl[ REG_TWL_INT_ADRS_CAM ] = ( data & 0x03 ); - if( ( data & 0x03 ) == TWL_CAMLED_BLINK ) - { - cam_led_update = true; // łȂƈꔭɕs邽 - } - tsk_led_cam(); // uN̓sŋN - break; - - case ( REG_TWL_INT_ADRS_TEMP0 ): - vreg_twl[ REG_TWL_INT_ADRS_TEMP0 ] = data; - break; - - case ( REG_TWL_INT_ADRS_COMMAND ): -/* - if( data <= 2 ){ - if( ( data & REG_BIT_TWL_OFF_REQ ) != 0 ) - { - set_irq( VREG_C_IRQ2, REG_BIT_TWL_OFF_REQ ); // OFFĂ炵B - break; - } - else if( ( data & REG_BIT_TWL_RESET_REQ ) != 0 ) - { - set_irq( VREG_C_IRQ2, REG_BIT_TWL_RESET_REQ ); //ZbgȂB̂́ASPI痈܂B - break; - } - } -*/ - if( data == REG_BIT_TWL_RESET_REQ ) - { - set_irq( VREG_C_IRQ2, REG_BIT_TWL_RESET_REQ ); //ZbgȂB̂́ASPI痈܂B - break; - } - } - return; -} - - - -/********************************************//** - I2CzWX^ǂ݂܂B - - @ adrs O猩Ƃ́AAhX - - @߂ xx f[^ - - @݂ȂAhXɃANZXꍇA߂l0x5A - ***********************************************/ -u8 vreg_twl_read( u8 phy_adrs ) -{ - u8 temp; - - switch( phy_adrs ){ - // 10%ȉŐԂɂȂ - case( REG_TWL_INT_ADRS_POWER_INFO ): - // x̃Zbg get_batt_left()ixĖłj - return( vreg_twl[ REG_TWL_INT_ADRS_POWER_INFO ] | ( !PM_EXTDC_n ? 0x80: 0x00 ) ); // A_v^bit(A_v^L) - - case( REG_TWL_INT_ADRS_IRQ ): - temp = vreg_twl[ REG_TWL_INT_ADRS_IRQ ]; - vreg_twl[ REG_TWL_INT_ADRS_IRQ ]= 0; - return( temp ); - - case( REG_TWL_INT_ADRS_VER_INFO ): -// set_irq( VREG_C_IRQ2, REG_BIT_TWL_VER_READ ); // xIɖȂ̂ - twl_ver_read = true; - return( TWL_REG_VER_INFO ); - - case( REG_TWL_ADRS_NON_EXIST ): - return( 0x00 ); - - default: - return( vreg_twl[ phy_adrs ] ); - } -} - - - -/********************************************//** - O猩钎HAhXA̘AAhXɓǂݑւ - - 0xFF݂͑ȂAhXB - ***********************************************/ -u8 adrs_table_twl_ext2int( u8 img ) -{ - switch( img ){ - case( REG_TWL_ADRS_IRQ ): return( REG_TWL_INT_ADRS_IRQ ); - case( REG_TWL_ADRS_COMMAND ): return( REG_TWL_INT_ADRS_COMMAND ); - case( REG_TWL_ADRS_POWER_INFO ): return( REG_TWL_INT_ADRS_POWER_INFO ); - case( REG_TWL_ADRS_VOL ): return( REG_TWL_INT_ADRS_VOL ); - case( REG_TWL_ADRS_CAM ): return( REG_TWL_INT_ADRS_CAM ); - case( REG_TWL_ADRS_TEMP0 ): return( REG_TWL_INT_ADRS_TEMP0 ); - case( REG_TWL_ADRS_VER_INFO ): return( REG_TWL_INT_ADRS_VER_INFO ); - case( REG_TWL_ADRS_MODE ): return( REG_TWL_INT_ADRS_MODE ); - default: return( REG_TWL_ADRS_NON_EXIST ); -// 0ǂ߂΂悢AȂėǂ -// case( REG_TWL_ADRS_WIFI ): return( REG_TWL_INT_ADRS_WIFI ); - } -} diff --git a/snake_branches/2.4_q_test/vreg_twl.h b/snake_branches/2.4_q_test/vreg_twl.h deleted file mode 100644 index 63cdd94..0000000 --- a/snake_branches/2.4_q_test/vreg_twl.h +++ /dev/null @@ -1,127 +0,0 @@ -#ifndef __vreg_twl__ -#define __vreg_twl__ -/* ========================================================================= */ -extern u8 vreg_twl[]; - - -/* - * O猩Ƃ̃}CRWX^AhXB - * gȂǂlĔєтɂĂB - */ -/* - * 荞ݗvtO - * MSB:OdL/Ȃω ij - * 6:VolL[iύXɌ炸BMAXɁ{łBj - * 5:drd o - * 4: - * 3:dXCb` ꌟo - * 2:iݒj - * 1:dXCb` OFF ԉꌟo - * LSB: Zbg - */ -enum REG_TWL_ADRS -{ // `AhX֏񂾍ۂ͖ - REG_TWL_ADRS_VER_INFO = 0x00, - REG_TWL_ADRS_PMIC_INFO, - REG_TWL_ADRS_BATT_INFO, - REG_TWL_ADRS_IRQ = 0x10, - REG_TWL_ADRS_COMMAND, - REG_TWL_ADRS_MODE, - REG_TWL_ADRS_POWER_INFO = 0x20, - REG_TWL_ADRS_POWER_SAVE, - REG_TWL_ADRS_WIFI = 0x30, - REG_TWL_ADRS_CAM, - REG_TWL_ADRS_VOL = 0x40, - REG_TWL_ADRS_BL, - REG_TWL_ADRS_CODEC_MIC_GAIN = 0x50, - REG_TWL_ADRS_ADC_CALIB = 0x60, - REG_TWL_ADRS_ADC_CALIB_STATUS, - REG_TWL_ADRS_ADC_CALIB_VALUE, - REG_TWL_ADRS_POWER_LED, - REG_TWL_ADRS_TEMP0 = 0x70, - REG_TWL_ADRS_TEMP1, - REG_TWL_ADRS_TEMP2, - REG_TWL_ADRS_TEMP3, - REG_TWL_ADRS_TEMP4, - REG_TWL_ADRS_TEMP5, - REG_TWL_ADRS_TEMP6, - REG_TWL_ADRS_TEMP7, - REG_TWL_ADRS_TIME_PWSW_DELAY = 0x80, - REG_TWL_ADRS_TIME_PWSW_THRESHOLD -}; - -#define REG_TWL_ADRS_NON_EXIST 0xFF - -/* - * }CRł̃WX^̎ - * ‚߂Ă - */ -enum REG_TWL_ADRS_INT -{ - REG_TWL_INT_ADRS_VER_INFO = 0x00, -// REG_TWL_INT_ADRS_PMIC_INFO, -// REG_TWL_INT_ADRS_BATT_INFO, - REG_TWL_INT_ADRS_IRQ, // 0x10, - REG_TWL_INT_ADRS_COMMAND, - REG_TWL_INT_ADRS_MODE, - REG_TWL_INT_ADRS_POWER_INFO, // 0x20, -// REG_TWL_INT_ADRS_POWER_SAVE, -// REG_TWL_INT_ADRS_WIFI, // 0x30, - REG_TWL_INT_ADRS_CAM, - REG_TWL_INT_ADRS_VOL, // 0x40, -// REG_TWL_INT_ADRS_BL, -// REG_TWL_INT_ADRS_CODEC_MIC_GAIN, // 0x50, -// REG_TWL_INT_ADRS_CODEC_MIC_GAIN_RELOAD, -// REG_TWL_INT_ADRS_ADC_CALIB, // 0x60, -// REG_TWL_INT_ADRS_ADC_CALIB_STATUS, -// REG_TWL_INT_ADRS_ADC_CALIB_VALUE, -// REG_TWL_INT_ADRS_POWER_LED, - REG_TWL_INT_ADRS_TEMP0, // 0x70 - 0x77 - REG_TWL_INT_ADRS_TEMP1, - REG_TWL_INT_ADRS_TEMP2, - REG_TWL_INT_ADRS_TEMP3, - REG_TWL_INT_ADRS_TEMP4, - REG_TWL_INT_ADRS_TEMP5, - REG_TWL_INT_ADRS_TEMP6, - REG_TWL_INT_ADRS_TEMP7, -// REG_TWL_INT_ADRS_TIME_PWSW_DELAY, -// REG_TWL_INT_ADRS_TIME_PWSW_THRESHOLD - _REG_TWL_INT_ADRS_ENDMARK, -}; - - - -/* ========================================================================= */ -#define is_TWL ( vreg_twl[ REG_TWL_INT_ADRS_MODE ] & 0x01 ) -#define with_NAND ( vreg_twl[ REG_TWL_INT_ADRS_MODE ] & 0x02 ) -#define volSteps32 ( vreg_twl[ REG_TWL_INT_ADRS_MODE ] & 0x80 ) - -#define reg_wifi_led ( vreg_twl[ REG_TWL_INT_ADRS_WIFI ] & 0x01 ) -#define reg_wifi_led_blink ( vreg_twl[ REG_TWL_INT_ADRS_WIFI ] & 0x02 ) - -#define REG_TWL_ADRS_MODE__VOL32 ( 1 << 7 ) - -typedef enum CAM_LED_TWL_MODE -{ - TWL_CAMLED_OFF, - TWL_CAMLED_ON, - TWL_CAMLED_BLINK, - TWL_CAMLED_DEF_ON -}twl_camLed_mode; - - -/* ========================================================================= */ -void vreg_twl_init( ); -void vreg_twl_write( u8 adrs, u8 data ); -u8 adrs_table_twl_ext2int( u8 img ); -u8 vreg_twl_read( u8 phy_adrs ); - - -// ǂ񂾂NAȂǂ̏ -#define vreg_twl_after_read( reg_adrs ); \ - if( reg_adrs == REG_TWL_INT_ADRS_IRQ ) \ - { \ - vreg_twl[ REG_TWL_INT_ADRS_IRQ ]= 0;\ - } - -#endif diff --git a/snake_branches/2.4_q_test/yav_mcu_bsr.plg b/snake_branches/2.4_q_test/yav_mcu_bsr.plg deleted file mode 100644 index 160064e..0000000 --- a/snake_branches/2.4_q_test/yav_mcu_bsr.plg +++ /dev/null @@ -1,33 +0,0 @@ -C:\Windows\system32\cmd.exe /c c:\cygwin\bin\touch magic.c -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"C:\Program Files (x86)\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no magic.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"C:\Program Files (x86)\NEC Electronics Tools\DEV" -_msgoff -pinter_asm -ks -kx inter_asm\magic.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\lk78k0r.exe" -y"C:\Program Files (x86)\NEC Electronics Tools\DEV" -_msgoff -obsr.lmf "..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\s0rm.rel" -gi1B339499E033F240BFAAh -pbsr_k0r.map -nkd -gb7EFBFFh -b"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\fsl.lib" -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r" -dbsr_mcu.dr -s -w2 loader.rel pm.rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_twl.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel adc.rel renge.rel accero.rel self_flash.rel sw.rel task_debug.rel task_misc.rel task_sys.rel pedo_alg_thre_det2.rel ini_VECT.rel task_status.rel led_cam.rel led_pow.rel hal.rel batt_params.rel voltable.rel pedo_lpf_coeff.rel kanaria.rel kanaria_c.rel get_ei.rel util_funcs.rel i2c_mcu-sub.rel -RA78K0R warning W3420: File 'loader.rel' already has had error(s)/warning(s) by 'CC78K' - Read Device File Directory : C:\PROGRAM FILES (X86)\NEC ELECTRONICS TOOLS\DEV\ -RA78K0R warning W3420: File 'pm.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'i2c_mcu.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'led.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'vreg_ctr.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'vreg_twl.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'adc.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'accero.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'self_flash.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'task_misc.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'task_sys.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'pedo_alg_thre_det2.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'led_pow.rel' already has had error(s)/warning(s) by 'CC78K' -RA78K0R warning W3420: File 'batt_params.rel' already has had error(s)/warning(s) by 'CC78K' - -Link complete, 0 error(s) and 14 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\oc78k0r.exe" -y"C:\Program Files (x86)\NEC Electronics Tools\DEV" -_msgoff -o.\bsr.hex -nu -ki bsr.lmf -Object Conversion Complete, 0 error(s) and 0 warning(s) found. -C:\Windows\system32\cmd.exe /c ruby nec_s_2_bsrbin2.rb bsr.hex -nec_s_2_bsrbin2.rb:2: warning: variable $KCODE is no longer effective; ignored -4 -intel-HEX to bsr bin converter - file converted! - - -Build Total error(s) : 0 Total warning(s) : 14 diff --git a/snake_branches/2.4_q_test/yav_mcu_bsr.pri b/snake_branches/2.4_q_test/yav_mcu_bsr.pri deleted file mode 100644 index b018509..0000000 --- a/snake_branches/2.4_q_test/yav_mcu_bsr.pri +++ /dev/null @@ -1,1031 +0,0 @@ -[Project.ID] -Ver=200 -Target=IDK0R32G -[Configuration] -Chip=uPD79F0104 -Internal Rom=32KB -Internal Ram=1536B -Clock=Target -Sub Clock=Target -Peripheral Break=0x3 -Firm Clock=System -Flash Programming=Permit -Low-voltage Flash Rewriting=On -Fail Safe Break=0x2000 -Port=1 -NMI=OFF -TRESET=OFF -IRESET=OFF -WAIT=OFF -SysClock=None -SubClock=None -[Mapping] -Count=0 -[Main] -Geometry=154, 154, 1188, 812 -Window=Max -MDI_MAX=OFF -Button=ON -Mode=Auto -Trace=Uncond ON -Trace2=Non Stop -Coverage=OFF -Timer=OFF -Tracer=OFF -[Load File] -Dir=\\tsclient\C\78k_data\yav-mcu-basara\trunk\ -SaveFilter=0 -Start=0 -End=0 -LoadFilter=5 -Offset=0 -Object=ON -Symbol=ON -Erase=OFF -HighSpeed=OFF -Symbol Reset=ON -CPU Reset=ON -File1=\\tsclient\C\78k_data\yav-mcu-basara\trunk\bsr.lmf -LoadFilter1=5 -Offset1=0 -Object1=ON -Symbol1=ON -Erase1=OFF -HighSpeed1=OFF -CPU Reset1=ON -Symbol Reset1=ON -[View File] -Dir=\\tsclient\C\78k_data\yav-mcu-basara\trunk\ -Filter=Source -[Debugger Option] -Source Path="\\tsclient\C\78k_data\yav-mcu-basara\trunk\renge" -Symbol Size=Byte -Symbol Format=Hex -Register Name=Func -Offset Label=OFF -Offset Mnemonic=ON -Tab Count=4 -Tab Size1=*.*, 8 -Tab Size2=*.c, 8 -Tab Size3=*.s, 8 -Tab Size4=*.asm, 8 -Default Source=*.c;*.s;*.asm -Default Module=*.lnk;*.lmf -Startup Start=_@cstart -Startup End=_@cend -Main Symbol=_main -Symbol Type=OFF -Language=C -Kanji=SJIS -[Source] -Geometry=762, 184, 689, 822 -Window=Normal -DispStart=82 -CaretPos=83,0 -Mode=Normal -DispFile= -Address1= -Address2= -Address3= -Address4= -Address5= -Address6= -Address7= -Address8= -Address9= -Address10= -Address11= -Address12= -Address13= -Address14= -Address15= -Address16= -Data1= -Data2= -Data3= -Data4= -Data5= -Data6= -Data7= -Data8= -Data9= -Data10= -Data11= -Data12= -Data13= -Data14= -Data15= -Data16= -Option=0 -Case=ON -Direction=Down -File1= -File2= -File3= -File4= -File5= -File6= -File7= -File8= -File9= -File10= -File11= -File12= -File13= -File14= -File15= -File16= -SaveRange=Screen -SaveStart= -SaveEnd= -Accumulative=ON -[Source1] -Geometry=100, 100, 689, 822 -Window=Normal -DispStart=55 -CaretPos=1,0 -Mode=Normal -DispFile=\\tsclient\C\78k_data\yav-mcu-basara\trunk\hal.c -Accumulative=ON -[Assemble] -Geometry=0, 0, 0, 0 -Window=Hide -DispStart=847627264 -CaretPos=0,0 -Address1= -Address2= -Address3= -Address4= -Address5= -Address6= -Address7= -Address8= -Address9= -Address10= -Address11= -Address12= -Address13= -Address14= -Address15= -Address16= -Data1= -Data2= -Data3= -Data4= -Data5= -Data6= -Data7= -Data8= -Data9= -Data10= -Data11= -Data12= -Data13= -Data14= -Data15= -Data16= -Case=ON -Scan=OFF -Direction=Down -FindStart= -FindEnd= -SaveRange=Screen -SaveStart= -SaveEnd= -[Memory] -Geometry=0, 0, 0, 0 -Window=Hide -Boundary=0 -Format=Hex -Mode=Byte -Endian= -Ascii=OFF -Idtag=OFF -Address= -DispStart=FFFFFFFF -CaretPosData=0, 0 -CaretPosAscii=0, 0 -Address1= -Address2= -Address3= -Address4= -Address5= -Address6= -Address7= -Address8= -Address9= -Address10= -Address11= -Address12= -Address13= -Address14= -Address15= -Address16= -Data1= -Data2= -Data3= -Data4= -Data5= -Data6= -Data7= -Data8= -Data9= -Data10= -Data11= -Data12= -Data13= -Data14= -Data15= -Data16= -Binary=ON -Scan=OFF -Direction=DOWN -FindStart= -FindEnd= -Unit=Byte -SaveRange=Screen -SaveStart= -SaveEnd= -Accumulative=ON -[Memory fill] -Scope=0, 0 -Code=0 -[Memory copy] -Scope=0, 0 -To=0 -[Memory compare] -Source=0, 0 -Destination=0 -[I/O Port] -Line=0 -[Stack] -Geometry=0, 0, 0, 0 -Window=Hide -Boundary=0 -Mode=Proper -[Sfr] -Geometry=0, 0, 0, 0 -Window=Hide -Address1= -Address2= -Address3= -Address4= -Address5= -Address6= -Address7= -Address8= -Address9= -Address10= -Address11= -Address12= -Address13= -Address14= -Address15= -Address16= -Boundary=0, 0 -Mode=Hex -Attribute=Show -Sort=Address -Pickup=OFF -SelectSort=Address -Last Name= -Line=531 -L1=P0 -L2=P1 -L3=P2 -L4=P3 -L5=P4 -L6=P5 -L7=P6 -L8=P7 -L9=P12 -L10=P14 -L11=P15 -L12=SDR00 -L13=SIO00 -L14=TXD0 -L15=SDR01 -L16=RXD0 -L17=SIO01 -L18=TDR00 -L19=TDR01 -L20=ADCRH -L21=PM0 -L22=PM1 -L23=PM2 -L24=PM3 -L25=PM4 -L26=PM5 -L27=PM6 -L28=PM7 -L29=PM12 -L30=PM14 -L31=PM15 -L32=ADM -L33=ADCE -L34=ADCS -L35=ADS -L36=KRM -L37=EGP0 -L38=EGN0 -L39=ISC -L40=TIS0 -L41=SDR02 -L42=SIO10 -L43=TXD1 -L44=SDR03 -L45=RXD1 -L46=IICA0 -L47=IICS0 -L48=SPD0 -L49=STD0 -L50=ACKD0 -L51=TRC0 -L52=COI0 -L53=EXC0 -L54=ALD0 -L55=MSTS0 -L56=IICF0 -L57=IICRSV0 -L58=STCEN0 -L59=IICBSY0 -L60=STCF0 -L61=TDR02 -L62=TDR03 -L63=TDR04 -L64=TDR05 -L65=TDR06 -L66=TDR07 -L67=RSUBC -L68=SEC -L69=MIN -L70=HOUR -L71=WEEK -L72=DAY -L73=MONTH -L74=YEAR -L75=SUBCUD -L76=ALARMWM -L77=ALARMWH -L78=ALARMWW -L79=RTCC0 -L80=RCLOE0 -L81=RCLOE1 -L82=RTCE -L83=RTCC1 -L84=RWAIT -L85=RWST -L86=RIFG -L87=WAFG -L88=WALIE -L89=WALE -L90=RTCC2 -L91=RCKDIV -L92=RCLOE2 -L93=RINTE -L94=CMC -L95=CSC -L96=HIOSTOP -L97=XTSTOP -L98=MSTOP -L99=OSTC -L100=OSTS -L101=CKC -L102=MCM0 -L103=MCS -L104=CSS -L105=CLS -L106=CKS0 -L107=PCLOE0 -L108=CKS1 -L109=PCLOE1 -L110=RESF -L111=LVIM -L112=LVIF -L113=LVIMD -L114=LVISEL -L115=LVION -L116=LVIS -L117=WDTE -L118=DSA0 -L119=DSA1 -L120=DRA0 -L121=DRA0L -L122=DRA0H -L123=DRA1 -L124=DRA1L -L125=DRA1H -L126=DBC0 -L127=DBC0L -L128=DBC0H -L129=DBC1 -L130=DBC1L -L131=DBC1H -L132=DMC0 -L133=DWAIT0 -L134=DS0 -L135=DRS0 -L136=STG0 -L137=DMC1 -L138=DWAIT1 -L139=DS1 -L140=DRS1 -L141=STG1 -L142=DRC0 -L143=DST0 -L144=DEN0 -L145=DRC1 -L146=DST1 -L147=DEN1 -L148=BECTL -L149=FLMDPUP -L150=PFCMD -L151=PFS -L152=FPRERR -L153=FLPMC -L154=BFAEN -L155=FWEPR -L156=BRAMEN -L157=IF2 -L158=IF2L -L159=TMIF05 -L160=TMIF06 -L161=TMIF07 -L162=PIF6 -L163=IF2H -L164=IICAIF1 -L165=PIF20 -L166=PIF21 -L167=PIF22 -L168=PIF23 -L169=MK2 -L170=MK2L -L171=TMMK05 -L172=TMMK06 -L173=TMMK07 -L174=PMK6 -L175=MK2H -L176=IICAMK1 -L177=PMK20 -L178=PMK21 -L179=PMK22 -L180=PMK23 -L181=PR02 -L182=PR02L -L183=TMPR005 -L184=TMPR006 -L185=TMPR007 -L186=PPR06 -L187=PR02H -L188=IICAPR01 -L189=PPR020 -L190=PPR021 -L191=PPR022 -L192=PPR023 -L193=PR12 -L194=PR12L -L195=TMPR105 -L196=TMPR106 -L197=TMPR107 -L198=PPR16 -L199=PR12H -L200=IICAPR11 -L201=PPR120 -L202=PPR121 -L203=PPR122 -L204=PPR123 -L205=IF0 -L206=IF0L -L207=WDTIIF -L208=LVIIF -L209=PIF0 -L210=PIF1 -L211=PIF2 -L212=PIF4 -L213=PIF5 -L214=IF0H -L215=DMAIF0 -L216=DMAIF1 -L217=CSIIF00 -L218=STIF0 -L219=CSIIF01 -L220=SRIF0 -L221=SREIF0 -L222=IF1 -L223=IF1L -L224=CSIIF10 -L225=IICIF10 -L226=STIF1 -L227=SRIF1 -L228=SREIF1 -L229=IICAIF0 -L230=TMIF00 -L231=TMIF01 -L232=TMIF02 -L233=TMIF03 -L234=IF1H -L235=ADIF -L236=RTCIF -L237=RTCIIF -L238=KRIF -L239=MDIF -L240=TMIF04 -L241=MK0 -L242=MK0L -L243=WDTIMK -L244=LVIMK -L245=PMK0 -L246=PMK1 -L247=PMK2 -L248=PMK4 -L249=PMK5 -L250=MK0H -L251=DMAMK0 -L252=DMAMK1 -L253=CSIMK00 -L254=STMK0 -L255=CSIMK01 -L256=SRMK0 -L257=SREMK0 -L258=MK1 -L259=MK1L -L260=CSIMK10 -L261=IICMK10 -L262=STMK1 -L263=SRMK1 -L264=SREMK1 -L265=IICAMK0 -L266=TMMK00 -L267=TMMK01 -L268=TMMK02 -L269=TMMK03 -L270=MK1H -L271=ADMK -L272=RTCMK -L273=RTCIMK -L274=KRMK -L275=MDMK -L276=TMMK04 -L277=PR00 -L278=PR00L -L279=WDTIPR0 -L280=LVIPR0 -L281=PPR00 -L282=PPR01 -L283=PPR02 -L284=PPR04 -L285=PPR05 -L286=PR00H -L287=DMAPR00 -L288=DMAPR01 -L289=CSIPR000 -L290=STPR00 -L291=CSIPR001 -L292=SRPR00 -L293=SREPR00 -L294=PR01 -L295=PR01L -L296=CSIPR010 -L297=IICPR010 -L298=STPR01 -L299=SRPR01 -L300=SREPR01 -L301=IICAPR00 -L302=TMPR000 -L303=TMPR001 -L304=TMPR002 -L305=TMPR003 -L306=PR01H -L307=ADPR0 -L308=RTCPR0 -L309=RTCIPR0 -L310=KRPR0 -L311=MDPR0 -L312=TMPR004 -L313=PR10 -L314=PR10L -L315=WDTIPR1 -L316=LVIPR1 -L317=PPR10 -L318=PPR11 -L319=PPR12 -L320=PPR14 -L321=PPR15 -L322=PR10H -L323=DMAPR10 -L324=DMAPR11 -L325=CSIPR100 -L326=STPR10 -L327=CSIPR101 -L328=SRPR10 -L329=SREPR10 -L330=PR11 -L331=PR11L -L332=CSIPR110 -L333=IICPR110 -L334=STPR11 -L335=SRPR11 -L336=SREPR11 -L337=IICAPR10 -L338=TMPR100 -L339=TMPR101 -L340=TMPR102 -L341=TMPR103 -L342=PR11H -L343=ADPR1 -L344=RTCPR1 -L345=RTCIPR1 -L346=KRPR1 -L347=MDPR1 -L348=TMPR104 -L349=MDAL -L350=MULA -L351=MDAH -L352=MULB -L353=MDBH -L354=MULOH -L355=MDBL -L356=MULOL -L357=PMC -L358=MAA -L359=ADPC -L360=PU0 -L361=PU1 -L362=PU3 -L363=PU4 -L364=PU5 -L365=PU7 -L366=PU12 -L367=PU14 -L368=PIM3 -L369=PIM7 -L370=POM3 -L371=POM7 -L372=NFEN0 -L373=NFEN1 -L374=NFEN2 -L375=MDCL -L376=MDCH -L377=MDUC -L378=DIVST -L379=DIVMODE -L380=PER0 -L381=SAU0EN -L382=IICA0EN -L383=ADCEN -L384=RTCEN -L385=PER2 -L386=TAU0EN -L387=OSMC -L388=BCDADJ -L389=SSR00 -L390=SSR00L -L391=SSR01 -L392=SSR01L -L393=SSR02 -L394=SSR02L -L395=SSR03 -L396=SSR03L -L397=SIR00 -L398=SIR00L -L399=SIR01 -L400=SIR01L -L401=SIR02 -L402=SIR02L -L403=SIR03 -L404=SIR03L -L405=SMR00 -L406=SMR01 -L407=SMR02 -L408=SMR03 -L409=SCR00 -L410=SCR01 -L411=SCR02 -L412=SCR03 -L413=SE0 -L414=SE0L -L415=SS0 -L416=SS0L -L417=ST0 -L418=ST0L -L419=SPS0 -L420=SPS0L -L421=SO0 -L422=SOE0 -L423=SOE0L -L424=SOL0 -L425=SOL0L -L426=TCR00 -L427=TCR01 -L428=TCR02 -L429=TCR03 -L430=TCR04 -L431=TCR05 -L432=TCR06 -L433=TCR07 -L434=TMR00 -L435=TMR01 -L436=TMR02 -L437=TMR03 -L438=TMR04 -L439=TMR05 -L440=TMR06 -L441=TMR07 -L442=TSR00 -L443=TSR00L -L444=TSR01 -L445=TSR01L -L446=TSR02 -L447=TSR02L -L448=TSR03 -L449=TSR03L -L450=TSR04 -L451=TSR04L -L452=TSR05 -L453=TSR05L -L454=TSR06 -L455=TSR06L -L456=TSR07 -L457=TSR07L -L458=TE0 -L459=TE0L -L460=TS0 -L461=TS0L -L462=TT0 -L463=TT0L -L464=TPS0 -L465=TPS0L -L466=TO0 -L467=TO0L -L468=TOE0 -L469=TOE0L -L470=TOL0 -L471=TOL0L -L472=TOM0 -L473=TOM0L -L474=IICCTL00 -L475=SPT0 -L476=STT0 -L477=ACKE0 -L478=WTIM0 -L479=SPIE0 -L480=WREL0 -L481=LREL0 -L482=IICE0 -L483=IICCTL10 -L484=DFC0 -L485=SMC0 -L486=DAD0 -L487=CLD0 -L488=WUP0 -L489=IICWL0 -L490=IICWH0 -L491=SVA0 -L492=PER3 -L493=IICA1EN -L494=P20 -L495=PM20 -L496=PU20 -L497=EGP2 -L498=EGN2 -L499=IICA1 -L500=IICS1 -L501=SPD1 -L502=STD1 -L503=ACKD1 -L504=TRC1 -L505=COI1 -L506=EXC1 -L507=ALD1 -L508=MSTS1 -L509=IICF1 -L510=IICRSV1 -L511=STCEN1 -L512=IICBSY1 -L513=STCF1 -L514=IICCTL01 -L515=SPT1 -L516=STT1 -L517=ACKE1 -L518=WTIM1 -L519=SPIE1 -L520=WREL1 -L521=LREL1 -L522=IICE1 -L523=IICCTL11 -L524=DFC1 -L525=SMC1 -L526=DAD1 -L527=CLD1 -L528=WUP1 -L529=IICWL1 -L530=IICWH1 -L531=SVA1 -[Local Variable] -Geometry=0, 0, 0, 0 -Window=Hide -Boundary=0 -Mode=Proper -[Trace View] -Geometry=0, 0, 0, 0 -Window=Hide -Mode=Normal -Frame=Show -Timetag=Clock -Address=Show -Data=Hex -Status=Show -Address2=Show -Data2=Hex -Status2=Show -Disasm=Show -Pick Up=Off -Synchronize=0 0 0 0 -Frameno= -Frameno1= -Frameno2= -Frameno3= -Frameno4= -Frameno5= -Frameno6= -Frameno7= -Frameno8= -Frameno9= -Frameno10= -Frameno11= -Frameno12= -Frameno13= -Frameno14= -Frameno15= -Frameno16= -ScanStatus=ALL -Access Size=B -ScanAddress=<>-<> -Mask Address= -ScanData= -Mask Data= -ScanExternal= -Mask External= -Scan=OFF -Direction=Down -FindStart= -FindEnd= -SaveRange=Screen -SaveStart= -SaveEnd= -[Register] -Geometry=0, 0, 0, 0 -Window=Hide -Mode=Hex -Boundary=0 -Pickup=OFF -Name=Functional -Register Bank=0 -RP0=3 -RP1=3 -RP2=3 -RP3=3 -PC=3 -SP=3 -PSW=3 -ES=3 -CS=3 -[Event Manager] -Geometry=0, 0, 0, 0 -Window=Hide -Sort by=Unsort -Detail=OFF -[Event Set] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Count=0 -[Event Link] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Count=0 -[Break] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Count=0 -[Trace] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Delay Count0=2 -Count=0 -[Snap] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Count=0 -[Stub] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Count=0 -[Timer] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -TimerRateRunBreak=0011 -TimerBreakOutRunBreak=OFF -Count=0 -[Timer Monitor] -Count=0 -[Dmm] -Geometry=0, 0, 0, 0 -Window=Hide -Manager=ON -Sort by=Unsort -Detail=OFF -Last Name= -Count=0 -[Variable] -Geometry=1153, 8, 440, 300 -Window=Normal -Boundary=13762700 -0=.BT_IN_CHG_n,P,N,A,+,1 -Line=1 -[Quick Watch] -0=BT_IN_CHG_n,P,A,1 -1= -2= -3= -4= -5= -6= -7= -8= -9= -10= -11= -12= -13= -14= -15= -[Software Break] -Geometry=0, 0, 0, 0 -Window=Hide -Width=150 30 200 100 -Name0=Swb00002 -Address0=pm.c#_tsk_batt+0x27 -Window0=ASM -Status0=ON -Name1=Swb00001 -Address1=pm.c#_tsk_batt+0x24 -Window1=ASM -Status1=ON -Count=2 -[Reset] -Debugger=ON -Symbol=OFF -Target CPU=OFF -[Extended Option] -OnClick Software Break=ON -TraceTimetag=x1 -Redraw=500 -Break When Access Function=OFF -Break When Access Whole=Select -Verify=ON -Break Sound=ON -TraceAutoClear=OFF -RRM Clock=Internal -CKC Register Value=0x09 -RRM Internal Clock Frequency=8.000 -[About] -Version=Program -[Pseudo Emulation] -Geometry=0, 0, 0, 0 -Window=Hide -[Data Flash Option] -Data Flash Emulation=OFF -[List] -Geometry=0, 0, 0, 0 -Window=Hide -[Console] -Geometry=0, 0, 0, 0 -Window=Hide diff --git a/snake_branches/2.4_q_test/yav_mcu_bsr.prj b/snake_branches/2.4_q_test/yav_mcu_bsr.prj deleted file mode 100644 index 13f655f..0000000 --- a/snake_branches/2.4_q_test/yav_mcu_bsr.prj +++ /dev/null @@ -1,1408 +0,0 @@ -[ProjectManager] -Version=6.00 -Path=C:\78k_data\yav-mcu-basara\snake_trunk\ -Title=yav-mcu -Series=78K0R.PM -Device=uPD79F0104 -DeviceVer=E1.00b -DebugMode=1 -Target=bsr.lmf -[BuildMode0] -BuildModeName=Debug Build -TargetFile=0 -[BuildMode1] -BuildModeName=Release Build -TargetFile=0 -[Tools] -MakeFile=yav_mcu_bsr.mak -Debugger=C:\Program Files (x86)\NEC Electronics Tools\ID78K0R-QB\V3.61\BIN\IDK0R32G.EXE -DebOption= -DebCpuReset=1 -DebSymReset=1 -MuitiLoad=0 -LoadPrjNum=0 -CheckVersion=CC78K0R|W2.13;RA78K0R|W1.33 -[Option.IDK0R32G] -File=\\tsclient\C\78k_data\yav-mcu-basara\trunk\yav_mcu_bsr.pri -[BuildMode2] -BuildModeName=K0R_dbg -TargetFile=0 -[BuildMode3] -BuildModeName=BSR_dbg -TargetFile=0 -[BuildMode4] -BuildModeName=BSR_rel -TargetFile=0 -[BuildMode5] -BuildModeName=BSR_WM0 -TargetFile=0 -[Options.OC78K0R 0] -Version=100 -O0=.\bsr.hex -O1=bsr.hex -UC=1 -UN=FF -UST= -USZ= -K=1 -ZF=0 -S=1 -E=0 -CommandFile=0 -[Options.OC78K0R 1] -Version=100 -UC=1 -UN=FF -UST= -USZ= -K=1 -ZF=0 -S=1 -E=0 -CommandFile=0 -[Options.OC78K0R 2] -Version=100 -O0=.\bsr.hex -O1=bsr.hex -UC=0 -UN=FF -UST= -USZ= -K=0 -ZF=0 -S=1 -E=0 -CommandFile=0 -[Options.OC78K0R 3] -Version=100 -O0=.\bsr.hex -O1=bsr.hex -UC=1 -UN=FF -UST= -USZ= -K=1 -ZF=0 -S=1 -E=0 -CommandFile=0 -[Options.OC78K0R 4] -Version=100 -O0=.\bsr.hex -O1=bsr.hex -UC=1 -UN=FF -UST= -USZ= -K=1 -ZF=0 -S=1 -E=0 -CommandFile=0 -[Options.OC78K0R 5] -Version=100 -O0=.\bsr.hex -O1=bsr.hex -UC=1 -UN=FF -UST= -USZ= -K=1 -ZF=0 -S=1 -E=0 -CommandFile=0 -[BuildBefore-AfterCmd] -Before1=c:\cygwin\bin\touch magic.c -After1=ruby nec_s_2_bsrbin2.rb bsr.hex -[ToolSet] -ToolSetName=(ύX)78K0R Software Package V1.10 -Tool1=CC78K0R|W2.13 -Tool2=RA78K0R|W1.33 -Tool3=SK78K0R|V3.10 -Tool4=ID78K0R-QB|V3.61 -[Options.RA78K0R 0] -Version=100 -G=1 -GA=1 -E=0 -COMMON=0 -COMPATI=0 -P=1 -KA=1 -KS=0 -KX=0 -LF=0 -LW=132 -LL=0 -LT=8 -Z=0 -CommandFile=0 -RA_OPT= -[Options.RA78K0R 1] -Version=100 -G=0 -GA=0 -E=0 -COMMON=0 -COMPATI=0 -P=1 -KA=1 -KS=0 -KX=0 -LF=0 -LW=132 -LL=0 -LT=8 -Z=0 -CommandFile=0 -RA_OPT= -[Options.RA78K0R 2] -Version=100 -O0= -O1=obj -G=1 -GA=1 -E=0 -COMMON=0 -COMPATI=0 -P=1 -P0=inter_asm -KA=1 -KS=1 -KX=1 -LF=0 -LW=132 -LL=0 -LT=8 -Z=0 -CommandFile=0 -RA_OPT=-pinter_asm -ks -kx -[Options.RA78K0R 3] -Version=100 -G=1 -GA=1 -E=0 -COMMON=0 -COMPATI=0 -P=1 -KA=1 -KS=0 -KX=0 -LF=0 -LW=132 -LL=0 -LT=8 -Z=0 -CommandFile=0 -RA_OPT= -[Options.RA78K0R 4] -Version=100 -G=1 -GA=1 -E=0 -COMMON=0 -COMPATI=0 -P=1 -KA=1 -KS=0 -KX=0 -LF=0 -LW=132 -LL=0 -LT=8 -Z=0 -CommandFile=0 -RA_OPT= -[Options.RA78K0R 5] -Version=100 -G=1 -GA=1 -E=0 -COMMON=0 -COMPATI=0 -P=1 -KA=1 -KS=0 -KX=0 -LF=0 -LW=132 -LL=0 -LT=8 -Z=0 -CommandFile=0 -RA_OPT= -[SrcFile] -Source1=loader.c -Source2=pm.c -Source3=i2c_ctr.c -Source4=main.c -Source5=magic.c -Source6=WDT.c -Source7=i2c_mcu.c -Source8=i2c_twl.c -Source9=led.c -Source10=rtc.c -Source11=vreg_ctr.c -Source12=vreg_twl.c -Source13=adc.c -Source14=renge\renge.c -Source15=accero.c -Source16=self_flash.c -Source17=sw.c -Source18=task_debug.c -Source19=task_misc.c -Source20=task_sys.c -Source21=pedo_alg_thre_det2.c -Source22=ini_VECT.c -Source23=task_status.c -Source24=led_cam.c -Source25=led_pow.c -Source26=hal.c -Source27=batt_params.c -Source28=voltable.c -Source29=pedo_lpf_coeff.c -Source30=kanaria.asm -Source31=kanaria_c.c -Source32=get_ei.asm -Source33=util_funcs.c -Source34=i2c_mcu-sub.c -[Options.CC78K0R 0] -Version=210 -Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Include1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=0 -Saddrglobal=1066 -Saddrstaticchk=0 -Saddrstatic=1072 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=1 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=0 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=1 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=0 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=0 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=0 -Startupchk=1 -Fixation=1 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rml.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 1] -Version=210 -Memorymodel=2 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=0 -Saddrglobal=1066 -Saddrstaticchk=0 -Saddrstatic=1072 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=1 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=1 -Librarycall=1128 -Aggressivechk=1 -Relativebranchchk=0 -Debugoptchk=0 -Outdebugchk=0 -Outdebug=1153 -Outasmsrcchk=0 -Outasmsrc=1157 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1173 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=0 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=0 -Commentnest=0 -Intunexpand=0 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=1 -Startupchk=1 -Fixation=1 -FarROMization=1 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rll.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 2] -Version=210 -Define0= -Define1=_debug_,_TEG_,proc_is_ke3 -Define2=_debug_,_TEG_,proc_is_ke3,%time% -Define3=_TEG_,proc_is_ke3 -Define4=proc_is_ke3 -Include0=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include1=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Include2=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=1 -Saddrglobal=1063 -Saddrstaticchk=1 -Saddrstatic=1069 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=0 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=1 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=0 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outobjectcmb0= -Outobjectcmb1=obj -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=1 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=1 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=1 -Startupchk=1 -Fixation=0 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rm.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 2 vreg_ctr.c] -Version=210 -Define0= -Define1=_debug_,_TEG_,proc_is_ke3 -Define2=_debug_,_TEG_,proc_is_ke3,%time% -Undefine0= -Include0=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include1=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include2=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include3=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include4=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=1 -Saddrglobal=1063 -Saddrstaticchk=1 -Saddrstatic=1075 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=0 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=1 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=0 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outobjectcmb0= -Outobjectcmb1=obj -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=1 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=1 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=1 -Startupchk=1 -Fixation=0 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rm.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 2 vreg_twl.c] -Version=210 -Define0= -Define1=_debug_,_TEG_,proc_is_ke3 -Define2=_debug_,_TEG_,proc_is_ke3,%time% -Undefine0= -Include0=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include1=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include2=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include3=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include4=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=1 -Saddrglobal=1063 -Saddrstaticchk=1 -Saddrstatic=1075 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=0 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=1 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=0 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outobjectcmb0= -Outobjectcmb1=obj -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=1 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=1 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=1 -Startupchk=1 -Fixation=0 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rm.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 2 renge.c] -Version=210 -Define0= -Define1=_debug_,_TEG_,proc_is_ke3 -Define2=_debug_,_TEG_,proc_is_ke3,%time% -Undefine0= -Include0=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include1=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include2=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include3=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include4=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=1 -Saddrglobal=1063 -Saddrstaticchk=1 -Saddrstatic=1075 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=0 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=1 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=0 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outobjectcmb0= -Outobjectcmb1=obj -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=1 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=1 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=1 -Startupchk=1 -Fixation=0 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rm.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 2 self_flash.c] -Version=210 -Define0= -Define1=_debug_,_TEG_,proc_is_ke3 -Define2=_debug_,_TEG_,proc_is_ke3,%time% -Undefine0= -Include0=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include1=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include2=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include3=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Include4=renge,C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=1 -Saddrglobal=1063 -Saddrstaticchk=0 -Saddrstatic=1072 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=0 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=1 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=0 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outobjectcmb0= -Outobjectcmb1=obj -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=1 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=1 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=1 -Startupchk=1 -Fixation=0 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rm.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 3] -Version=210 -Define0=_debug_,proc_is_bsr,_TEG_ -Define1=_debug_,proc_is_bsr -Define2=proc_is_bsr -Define3=_TEG_,proc_is_ke3 -Define4=proc_is_ke3 -Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Include1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=0 -Saddrglobal=1066 -Saddrstaticchk=0 -Saddrstatic=1072 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=1 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=0 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=1 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=0 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=0 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=0 -Startupchk=1 -Fixation=1 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rml.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 4] -Version=210 -Define0=proc_is_bsr -Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Include1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=0 -Saddrglobal=1066 -Saddrstaticchk=0 -Saddrstatic=1072 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=1 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=0 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=1 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=0 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=0 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=0 -Startupchk=1 -Fixation=1 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rml.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.CC78K0R 5] -Version=210 -Define0= -Define1=_debug_,proc_is_bsr,_TEG_,_WM0_ -Define2=_debug_,proc_is_bsr,_TEG_,_WM0 -Define3=_debug_,proc_is_bsr,_TEG_ -Define4=_debug_,proc_is_bsr -Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Include1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Memorymodel=1 -Flashobj=0 -FlashStartadr= -FlashBranchStartadr= -Mirror=0 -Saddrglobalchk=0 -Saddrglobal=1066 -Saddrstaticchk=0 -Saddrstatic=1072 -Bitfieldmsb=0 -Onebytechk=0 -Pacstructchk=0 -AssignROMchk=0 -AssignROM=0 -Maxoptimizechk=0 -Maxoptimize=1104 -Charunexpandchk=1 -Unsignedchar=0 -Usesaddrchk=0 -Autoallocationchk=1 -Jumpoptimize=1 -Librarycallchk=0 -Librarycall=1129 -Aggressivechk=1 -Relativebranchchk=1 -Debugoptchk=0 -Outdebugchk=1 -Outdebug=1153 -Outasmsrccmb0=inter_asm -Outasmsrccmb1=bsr.asm -Outasmsrcchk=1 -Outasmsrc=1158 -Outasmoptall=1 -Common=0 -Outerrlistchk=0 -Outerrlist=1174 -Xreference=0 -Preprocess=0 -Prenocomment=0 -Predefine=0 -Preifdef=1 -Preinclude=0 -Preline=1 -Prenumber=1 -Formfeed=0 -Columns=132 -Lines=0 -Tablength=8 -Ansi=0 -Cpraspras=1 -Commentnest=0 -Intunexpand=0 -Kanjicode=1210 -Verbose=0 -CommandFile=0 -Warninglevel=0 -Startupchk=1 -Fixation=1 -FarROMization=0 -Objectsel=1305 -Librarychk=1 -Floatingpoint=0 -Muldivunit=1 -Mulunit=1 -Startup=s0rml.rel -Library1=cl0rdm.lib -Library2=cl0rm.lib -Library3=cl0rmf.lib -VfiFileBoot0= -VfiFileBoot1=boot.vfi -VF78K0Rchk=0 -VF78K0Rvs= -[Options.LK78K0R 0] -Version=100 -O0=bsr_k0r.lmf -O1=bsr.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=1 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 1] -Version=100 -O0=a.lmf -G=0 -E=0 -E0=a.elk -GO=0 -GOValue= -GOStart=FC00 -GOSizeValue=1024 -GI=0 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=1 -MemInfoCheck=0 -P=1 -P0=a.map -MI=0 -GB=0 -GBValue= -KM=1 -KD=1 -KP=0 -KL=0 -LF=0 -LL=0 -S=0 -W=1 -SELFCheck=0 -SELF=0 -ZB= -CommandFile=0 -[Options.LK78K0R 2] -Version=100 -O0=bsr.lmf -O1=bsr_k0r.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=0 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=1B339499E033F240BFAA -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=7EFBFF -KM=1 -KD=0 -KP=0 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\fsl.lib -B1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -OFILE=C:\78k_data\yav-mcu-basara\snake_trunk\bsr.lmf -[Options.LK78K0R 3] -Version=100 -O0=bsr_bsr.lmf -O1=bsr_k0r.lmf -O2=bsr.lmf -O3=flash.lmf -O4=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_bsr.map -P1=bsr_k0r.map -P2=bsr.map -P3=flash.map -P4=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 4] -Version=100 -O0=bsr_k0r.lmf -O1=bsr.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=1 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 5] -Version=100 -O0=bsr_bsr.lmf -O1=bsr_k0r.lmf -O2=bsr.lmf -O3=flash.lmf -O4=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_bsr.map -P1=bsr_k0r.map -P2=bsr.map -P3=flash.map -P4=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LCNV78K0R 0] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 1] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 2] -Version=100 -LCNV_GO=0 -O0=inter_asm -E=0 -CommandFile=0 -[Options.LCNV78K0R 3] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 4] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 5] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.78K0R] -BuildMode=2 -BuildMode2=K0R_dbg -BuildMode3=BSR_dbg -BuildMode4=BSR_rel -BuildMode5=BSR_WM0 -DefaultMode2=1 -DefaultMode3=1 -DefaultMode4=1 -DefaultMode5=1 -[IncFile] -Include1=incs_loader.h -Include2=config.h -Include3=jhl_defs.h -Include4=user_define.h -Include5=hal.h -Include6=bsr_system.h -Include7=renge\renge.h -Include8=renge\renge_defs.h -Include9=renge\renge_task_immediate.h -Include10=vreg_ctr.h -Include11=vreg_twl.h -Include12=loader.h -Include13=i2c_mcu.h -Include14=WDT.h -Include15=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h -Include16=fsl_user.h -Include17=i2c_ctr.h -Include18=pm.h -Include19=rtc.h -Include20=reboot.h -Include21=magic.h -Include22=incs.h -Include23=i2c_twl.h -Include24=accero.h -Include25=pedometer.h -Include26=sw.h -Include27=adc.h -Include28=led.h -Include29=batt_params.h -Include30=pool.h -Include31=i2c_twl_defs.h -Include32=renge\renge_task_intval.h -Include33=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h -Include34=self_flash.h -Include35=util_funcs.h -Include36=i2c_mcu_sub.h diff --git a/snake_branches/2.4_q_test/yav_mcu_bsr.prk b/snake_branches/2.4_q_test/yav_mcu_bsr.prk deleted file mode 100644 index bab3fb7..0000000 --- a/snake_branches/2.4_q_test/yav_mcu_bsr.prk +++ /dev/null @@ -1,14 +0,0 @@ -[ProjectManager] -FrameMax=0 -FrameX=30 -FrameY=18 -FrameCX=1358 -FrameCY=849 -OpenFile1=OutputWindow -OutputPos=0,48,579,311,1203 -OpenFile2=ProjectWindow -PrjPos=0,0,706,0,291 -OpenFile3=config.h,0,50,50,1163,530,0,1,0,0 -ActivePRJ=yav_mcu_bsr.prj -[ProjectWindow] -ProjectWindowDispType=0 diff --git a/snake_branches/2.4_q_test/yav_mcu_bsr.prw b/snake_branches/2.4_q_test/yav_mcu_bsr.prw deleted file mode 100644 index 7c0bbd6..0000000 --- a/snake_branches/2.4_q_test/yav_mcu_bsr.prw +++ /dev/null @@ -1,8 +0,0 @@ -[System] -System1=default -[default] -Project1=yav_mcu_bsr.prj -[BATCH_BUILD] -Build1=yav_mcu_bsr.prj,Debug Build,1 -Build2=yav_mcu_bsr.prj,Release Build,0 -Build3=yav_mcu_bsr.prj,BSR_WM0,0 diff --git a/snake_branches/2.4_q_test/yav_mcu_bsr.sdb b/snake_branches/2.4_q_test/yav_mcu_bsr.sdb deleted file mode 100644 index 244e8a4..0000000 --- a/snake_branches/2.4_q_test/yav_mcu_bsr.sdb +++ /dev/null @@ -1,325 +0,0 @@ -[SdbInfo] -Ver=5 -[loader.c] -T=51c8f978 -1=incs_loader.h -2=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h -3=fsl_user.h -4=i2c_ctr.h -5=i2c_mcu.h -6=pm.h -7=rtc.h -8=reboot.h -9=WDT.h -10=magic.h -[pm.c] -T=52298668 -1=incs.h -2=adc.h -3=led.h -4=pm.h -5=renge\renge.h -6=batt_params.h -7=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h -8=fsl_user.h -9=vreg_twl.h -10=i2c_mcu.h -[i2c_ctr.c] -T=51c8f7f4 -1=incs.h -2=rtc.h -3=pedometer.h -[main.c] -T=51c8f7f4 -1=incs.h -2=rtc.h -3=pm.h -4=accero.h -5=led.h -6=adc.h -7=i2c_mcu.h -8=pool.h -[magic.c] -T=522d7dfa -1=magic.h -2=config.h -[WDT.c] -T=51c8f7fd -1=incs_loader.h -[i2c_mcu.c] -T=51c8f7fa -1=incs_loader.h -2=i2c_mcu.h -3=loader.h -4=util_funcs.h -5=i2c_mcu_sub.h -[i2c_twl.c] -T=51c8f7f9 -1=incs_loader.h -2=i2c_twl_defs.h -3=i2c_twl.h -4=vreg_twl.h -5=WDT.h -[led.c] -T=52296ef8 -1=incs.h -2=led.h -[rtc.c] -T=51c8f7f4 -1=incs.h -[vreg_ctr.c] -T=522d6d56 -1=incs.h -2=vreg_ctr.h -3=rtc.h -4=led.h -5=accero.h -6=pm.h -7=pool.h -8=vreg_twl.h -9=sw.h -10=WDT.h -11=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h -12=fsl_user.h -[vreg_twl.c] -T=51c8f7f9 -1=incs.h -2=jhl_defs.h -3=led.h -4=vreg_twl.h -5=adc.h -[adc.c] -T=51c8f7fd -1=incs.h -2=adc.h -3=pm.h -4=led.h -5=vreg_twl.h -6=i2c_mcu.h -[renge\renge.c] -T=511c3fe3 -1=renge\renge.h -2=renge\renge_task_intval.h -3=renge\renge_task_immediate.h -4=WDT.h -5=config.h -6=user_define.h -7=util_funcs.h -8=bsr_system.h -[accero.c] -T=51c8f7f5 -1=incs.h -2=accero.h -3=i2c_mcu.h -4=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h -[self_flash.c] -T=51c8f7fa -1=incs_loader.h -2=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h -3=fsl_user.h -4=i2c_ctr.h -5=i2c_mcu.h -6=pool.h -7=magic.h -8=pm.h -9=WDT.h -10=util_funcs.h -[sw.c] -T=51c91572 -1=incs.h -2=i2c_twl.h -3=i2c_ctr.h -4=led.h -5=pm.h -6=rtc.h -7=sw.h -[task_debug.c] -T=51c8f7f9 -1=incs_loader.h -2=renge\renge.h -3=pm.h -4=accero.h -[task_misc.c] -T=522971da -1=incs.h -2=renge\renge.h -3=pm.h -4=accero.h -5=adc.h -6=i2c_mcu.h -7=led.h -8=vreg_twl.h -[task_sys.c] -T=51c91572 -1=incs.h -2=i2c_twl.h -3=i2c_ctr.h -4=led.h -5=accero.h -6=pm.h -7=rtc.h -8=sw.h -9=adc.h -10=self_flash.h -11=i2c_mcu.h -12=vreg_twl.h -[pedo_alg_thre_det2.c] -T=51c8f7f9 -1=incs.h -2=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h -3=accero.h -4=pedometer.h -5=pool.h -[ini_VECT.c] -T=51c8f7fa -1=config.h -[task_status.c] -T=51c8f7f9 -1=incs_loader.h -2=renge\renge.h -3=pm.h -4=accero.h -5=adc.h -6=i2c_mcu.h -7=led.h -[led_cam.c] -T=51c8f7f9 -1=incs.h -2=led.h -3=vreg_twl.h -[led_pow.c] -T=51c8f7f5 -1=incs.h -2=led.h -3=pm.h -[hal.c] -T=51c8f7f9 -1=incs_loader.h -[batt_params.c] -T=522d7dd3 -1=jhl_defs.h -2=batt_params.h -[voltable.c] -T=51c8f7fa -1=incs.h -[pedo_lpf_coeff.c] -T=51c8f7f9 -1=incs.h -[kanaria.asm] -T=511c3fe7 -[kanaria_c.c] -T=51c8f7f9 -1=incs.h -[get_ei.asm] -T=511c3fe3 -[util_funcs.c] -T=51c8f7fd -1=incs_loader.h -2=WDT.h -[i2c_mcu-sub.c] -T=51c8f7fa -1=incs.h -2=i2c_mcu.h -3=loader.h -4=util_funcs.h -5=i2c_mcu_sub.h -6=pm.h -[incs_loader.h] -T=51c8f7f9 -1=jhl_defs.h -2=config.h -3=user_define.h -4=hal.h -5=bsr_system.h -6=renge\renge.h -7=vreg_ctr.h -8=vreg_twl.h -[config.h] -T=522d7dd8 -[jhl_defs.h] -T=51c8f7f9 -[user_define.h] -T=51c8f7f9 -[hal.h] -T=51c8f7f9 -[bsr_system.h] -T=522d6d56 -[renge\renge.h] -T=511c3fe3 -1=renge\renge_defs.h -2=renge\renge_task_immediate.h -[renge\renge_defs.h] -T=511c3fe3 -[renge\renge_task_immediate.h] -T=511c3fe3 -1=renge\renge_defs.h -[vreg_ctr.h] -T=52004274 -1=config.h -[vreg_twl.h] -T=51c8f7f9 -[loader.h] -T=51c8f7fa -[i2c_mcu.h] -T=51c8f7fd -[WDT.h] -T=51c8f7fd -[..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h] -T=49a3bd4e -[fsl_user.h] -T=51c8f7fa -[i2c_ctr.h] -T=51c8f7f5 -[pm.h] -T=51c8f7fa -[rtc.h] -T=51c8f7f5 -[reboot.h] -T=51c8f7f5 -[magic.h] -T=51c8f7fa -[incs.h] -T=51c8f7f9 -1=jhl_defs.h -2=config.h -3=user_define.h -4=hal.h -5=bsr_system.h -6=renge\renge.h -7=vreg_ctr.h -8=util_funcs.h -[i2c_twl.h] -T=51c8f7f9 -[accero.h] -T=51c8f7f9 -1=jhl_defs.h -2=pedometer.h -[pedometer.h] -T=51c8f7f4 -[sw.h] -T=51c8f7fd -1=config.h -[adc.h] -T=51c8f7fd -1=jhl_defs.h -[led.h] -T=51c8f7f9 -[batt_params.h] -T=52004273 -1=jhl_defs.h -[pool.h] -T=51c8f7fa -1=pedometer.h -[i2c_twl_defs.h] -T=51c8f7fa -[renge\renge_task_intval.h] -T=511c3fe3 -1=renge\renge_defs.h -[..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h] -T=45f12258 -[self_flash.h] -T=51c8f7fa -[util_funcs.h] -T=51c8f7f4 -[i2c_mcu_sub.h] -T=51c8f7fa diff --git a/snake_branches/2.4_q_test/ベースからの変更.xls b/snake_branches/2.4_q_test/ベースからの変更.xls deleted file mode 100644 index 5212dac..0000000 Binary files a/snake_branches/2.4_q_test/ベースからの変更.xls and /dev/null differ diff --git a/snake_branches/2.4_q_test/覚え書き.txt b/snake_branches/2.4_q_test/覚え書き.txt deleted file mode 100644 index 28269c4..0000000 --- a/snake_branches/2.4_q_test/覚え書き.txt +++ /dev/null @@ -1,9 +0,0 @@ -A܂Ƃ wiki ɏȂƂȂǁB - -2.2C -SNAKE Ή (vCg) - -2.2D -SNAKE system updater mcu vZX쐬Ɍ߁A -o[Wԍ̂݁A2.2D ɂȂĂ -