以CH592EVT\EXAM\BLE\Peripheral例程修改:
peripheral.c:
line 211: uint8_t initial_advertising_enable = FALSE;
line 517: uint8_t advertising_enable = FALSE;
这两个修改禁止蓝牙广播,方便测试电流。此时电流大约在3~4uA.
peripheral_main.c: 工程里面去掉DEBUG=1, 增加LCD初始化,电流变为100多uA。
<font color="#ff8c00">int main(void)
{
#if(defined(DCDC_ENABLE)) && (DCDC_ENABLE == TRUE)
PWR_DCDCCfg(ENABLE);
#endif
SetSysClock(CLK_SOURCE_PLL_60MHz);
#if(defined(HAL_SLEEP)) && (HAL_SLEEP == TRUE)
// GPIOA_ModeCfg(GPIO_Pin_All, GPIO_ModeIN_PU);
// GPIOB_ModeCfg(GPIO_Pin_All, GPIO_ModeIN_PU);
#endif
#ifdef DEBUG
GPIOA_SetBits(bTXD1);
GPIOA_ModeCfg(bTXD1, GPIO_ModeOut_PP_5mA);
UART1_DefInit();
#endif
PRINT("%s\n", VER_LIB);
CH59x_BLEInit();
HAL_Init();
GAPRole_PeripheralInit();
Peripheral_Init();
//PB7(seg0),PB4(seg1),PB23~PB22(seg2~seg3),PA4~PA5(seg4~seg5),PA15~PA12(seg6~seg9),PB11~PB10(seg14~seg15)
//LCD_Init(LCD_1_4_Duty, LCD_1_3_Bias);
R32_PIN_CONFIG2 = 0xffbef03f; // 关闭数字输入
R16_PIN_ALTERNATE |= RB_DEBUG_EN; // 操作LCD时,需关闭debug
R32_LCD_CMD = 0x0c3ff << 8;
R32_LCD_CMD |= RB_LCD_SYS_EN | RB_LCD_ON | (LCD_CLK_128 << 5) | (LCD_1_4_Duty << 3) | (LCD_1_3_Bias << 2);
GPIOA_ModeCfg(GPIO_Pin_6, GPIO_ModeIN_PU);
GPIOA_ModeCfg(GPIO_Pin_7, GPIO_ModeIN_PU);
GPIOA_ModeCfg(GPIO_Pin_8, GPIO_ModeIN_PU);
GPIOA_ModeCfg(GPIO_Pin_9, GPIO_ModeIN_PU);
GPIOB_ModeCfg(GPIO_Pin_0, GPIO_ModeIN_PU);
GPIOB_ModeCfg(GPIO_Pin_6, GPIO_ModeIN_PU);
Main_Circulation();
}</font>
|