mirror of
https://github.com/rvtr/ctr_mcu.git
synced 2025-10-31 13:51:10 -04:00
2.2F closer時、VDD1PがCTRの電圧だった。修正。
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@545 013db118-44a6-b54f-8bf7-843cb86687b1
This commit is contained in:
parent
b045d28143
commit
fb9acb52fb
@ -7,7 +7,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define MCU_VER_MAJOR 0x02
|
#define MCU_VER_MAJOR 0x02
|
||||||
#define MCU_VER_MINOR 0x2E
|
#define MCU_VER_MINOR 0x2F
|
||||||
|
|
||||||
|
|
||||||
|
// ビルドスイッチ
|
||||||
|
#define _MCU_ARR // snake,closer
|
||||||
|
|
||||||
|
|
||||||
// デバッグ向けスイッチ
|
// デバッグ向けスイッチ
|
||||||
|
|||||||
@ -200,15 +200,17 @@ void chk_platform_type()
|
|||||||
// ●CTRファミリ //
|
// ●CTRファミリ //
|
||||||
system_status.family = (enum family_)( DEV_DET >> 1 ); /// あぁ...
|
system_status.family = (enum family_)( DEV_DET >> 1 ); /// あぁ...
|
||||||
|
|
||||||
#ifdef _DBG_FORCE_xxx
|
#ifdef _DBG_FORCE_FLOWER
|
||||||
// 強制的に機種設定をしてデバッグしたいとき
|
// 強制的に機種設定をしてデバッグしたいとき
|
||||||
// system_status.family = FAMILY_FLOWER;
|
// system_status.family = FAMILY_FLOWER;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MCU_ARR
|
||||||
if( system_status.family == FAMILY_SPFL )
|
if( system_status.family == FAMILY_SPFL )
|
||||||
{
|
{
|
||||||
system_status.family == FAMILY_CLOSER;
|
system_status.family = FAMILY_CLOSER;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if( system_status.family == FAMILY_CTR )
|
if( system_status.family == FAMILY_CTR )
|
||||||
{
|
{
|
||||||
|
|||||||
@ -51,7 +51,6 @@ extern const bt_param_ bt_param[];
|
|||||||
bit pm_extdc_old; // 前回アダプタチェックしたとき刺さっていたか?
|
bit pm_extdc_old; // 前回アダプタチェックしたとき刺さっていたか?
|
||||||
|
|
||||||
u8 pmreg_v_core; // SoCのコア電圧設定。SNAKE(LAGER)で変更があるため。
|
u8 pmreg_v_core; // SoCのコア電圧設定。SNAKE(LAGER)で変更があるため。
|
||||||
u8 pmreg_v_vdd; // SNAKEでは2.8Vを起動しないようにするため
|
|
||||||
|
|
||||||
// 充電停止温度関係
|
// 充電停止温度関係
|
||||||
static u8 raw_temp_lh;
|
static u8 raw_temp_lh;
|
||||||
@ -1040,13 +1039,11 @@ void set_vdd_voltages( enum family_ family )
|
|||||||
{
|
{
|
||||||
// SNAKE
|
// SNAKE
|
||||||
pmreg_v_core = PM_REG_BIT_VDD1P_1R00;
|
pmreg_v_core = PM_REG_BIT_VDD1P_1R00;
|
||||||
pmreg_v_vdd = PM_REG_BIT_VDD_SNK;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// NORMAL
|
// NORMAL
|
||||||
pmreg_v_core = PM_REG_BIT_VDD1P_1R15;
|
pmreg_v_core = PM_REG_BIT_VDD1P_1R15;
|
||||||
pmreg_v_vdd = PM_REG_BIT_VDD_CTR;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1089,6 +1086,13 @@ err PM_sys_pow_on( )
|
|||||||
pmic_version = read_pmic( PM_REG_ADRS_VER );
|
pmic_version = read_pmic( PM_REG_ADRS_VER );
|
||||||
read_mgic_2B( BT_GAUGE_REG_VERSION, mgic_version );
|
read_mgic_2B( BT_GAUGE_REG_VERSION, mgic_version );
|
||||||
|
|
||||||
|
return ( ERR_SUCCESS );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void reset_release()
|
||||||
|
{
|
||||||
// リセット解除など。システム起動!
|
// リセット解除など。システム起動!
|
||||||
PM_reset_neg();
|
PM_reset_neg();
|
||||||
FCRAM_RST_neg;
|
FCRAM_RST_neg;
|
||||||
@ -1096,8 +1100,6 @@ err PM_sys_pow_on( )
|
|||||||
|
|
||||||
codec_reg_init(); // CODEC 不定レジスタ初期化(reset2の後でないといけないので)
|
codec_reg_init(); // CODEC 不定レジスタ初期化(reset2の後でないといけないので)
|
||||||
ntr_pm_reg_shadow = 0; // 〃 こんなところで...
|
ntr_pm_reg_shadow = 0; // 〃 こんなところで...
|
||||||
|
|
||||||
return ( ERR_SUCCESS );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -96,14 +96,12 @@ enum NTR_PM_BT_STATUS{
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 0x03 pw cnt3
|
// 0x03 pw cnt3
|
||||||
#define PM_REG_BIT_LDSW ( 1 << 0 )
|
#define PM_REG_BIT_LDSW ( 1 << 0 )
|
||||||
#define PM_REG_BIT_nRST1 ( 1 << 1 )
|
#define PM_REG_BIT_nRST1 ( 1 << 1 )
|
||||||
|
|
||||||
// 0x01 pw cnt1
|
// 0x01 pw cnt1
|
||||||
#define PM_REG_BIT_VDD_CTR 0x0F
|
#define PM_REG_BIT_VDD_CTR 0x0F
|
||||||
#define PM_REG_BIT_VDD_SNK 0x0B // 2.8V不要
|
|
||||||
#define PM_REG_BIT_VDD50A ( 1 << 4 )
|
#define PM_REG_BIT_VDD50A ( 1 << 4 )
|
||||||
|
|
||||||
// 0x02 pw cnt2
|
// 0x02 pw cnt2
|
||||||
@ -145,7 +143,6 @@ extern u8 mgic_version[];
|
|||||||
extern u8 pm_reg_bit_vddlcd; // アモルファス対応(電源シーケンスが違う)
|
extern u8 pm_reg_bit_vddlcd; // アモルファス対応(電源シーケンスが違う)
|
||||||
|
|
||||||
extern u8 pmreg_v_core; // SoCのコア電圧設定。SNAKE(LAGER)で変更があるため。
|
extern u8 pmreg_v_core; // SoCのコア電圧設定。SNAKE(LAGER)で変更があるため。
|
||||||
extern u8 pmreg_v_vdd; // SNAKEでは2.8V不要
|
|
||||||
|
|
||||||
//=========================================================
|
//=========================================================
|
||||||
err PM_sys_pow_on( );
|
err PM_sys_pow_on( );
|
||||||
@ -157,7 +154,6 @@ err PM_LCD_on( );
|
|||||||
void PM_LCD_off( );
|
void PM_LCD_off( );
|
||||||
err PM_BL_set( u8 );
|
err PM_BL_set( u8 );
|
||||||
|
|
||||||
|
|
||||||
void BT_chk();
|
void BT_chk();
|
||||||
void BT_get_left();
|
void BT_get_left();
|
||||||
void pm_chk_adapter();
|
void pm_chk_adapter();
|
||||||
@ -166,6 +162,8 @@ void codec_reg_init();
|
|||||||
|
|
||||||
void set_vdd_voltages( enum family_ family );
|
void set_vdd_voltages( enum family_ family );
|
||||||
|
|
||||||
|
void reset_release();
|
||||||
|
|
||||||
task_status_immed tski_BT_temp_update( );
|
task_status_immed tski_BT_temp_update( );
|
||||||
task_status_immed tski_vcom_set( );
|
task_status_immed tski_vcom_set( );
|
||||||
task_status_immed tski_PM_LCD_on();
|
task_status_immed tski_PM_LCD_on();
|
||||||
@ -191,8 +189,8 @@ u8 read_pmic( u8 reg );
|
|||||||
|
|
||||||
|
|
||||||
// システム電源 //
|
// システム電源 //
|
||||||
#define PM_VDD_on() ( send_cmd_pmic( PM_REG_ADRS_VDD_SYS, pmreg_v_vdd ))
|
#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, ( pmreg_v_vdd | PM_REG_BIT_VDD50A )))
|
#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_VDD_off() ( send_cmd_pmic( PM_REG_ADRS_VDD_SYS, 0 ))
|
||||||
#define PM_off() PM_VDD_off()
|
#define PM_off() PM_VDD_off()
|
||||||
|
|
||||||
|
|||||||
@ -184,6 +184,7 @@ void tsk_sw( )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 実機・体験台共通
|
||||||
count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // ボタン押し時間のカウント
|
count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // ボタン押し時間のカウント
|
||||||
|
|
||||||
// HOME sw //
|
// HOME sw //
|
||||||
@ -204,6 +205,9 @@ void tsk_sw( )
|
|||||||
sw_wifi_mukan_time = TIME_MUKAN;
|
sw_wifi_mukan_time = TIME_MUKAN;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}// switch()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -157,7 +157,7 @@ void tsk_sys( )
|
|||||||
PM_ACCEL_INT1 = 1;
|
PM_ACCEL_INT1 = 1;
|
||||||
PM_ACC_VALID = 1;
|
PM_ACC_VALID = 1;
|
||||||
|
|
||||||
if( PM_sys_pow_on( ) != ERR_SUCCESS ) // リセット解除もしてきます
|
if( PM_sys_pow_on( ) != ERR_SUCCESS )
|
||||||
{ // 電源起動不可エラー
|
{ // 電源起動不可エラー
|
||||||
renge_task_interval_run_force = true;
|
renge_task_interval_run_force = true;
|
||||||
system_status.pwr_state = OFF_TRIG;
|
system_status.pwr_state = OFF_TRIG;
|
||||||
@ -170,6 +170,8 @@ void tsk_sys( )
|
|||||||
PU7 = bits8(0,0,0,1, 1,1,0,1); // 4:SW_WIFI 3:SW_PWSW 2:PM_IRQ 0:PM_EXTDC_n
|
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
|
PU_SW_HOME_n_JIKKI = 1; // SW_HOME
|
||||||
|
|
||||||
|
reset_release();
|
||||||
|
|
||||||
if( system_status.poweron_reason == RSN_PWSW ||
|
if( system_status.poweron_reason == RSN_PWSW ||
|
||||||
system_status.poweron_reason == RSN_TRIAL )
|
system_status.poweron_reason == RSN_TRIAL )
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user