AnsweredAssumed Answered

LPC1833单片系统,关闭外设时钟操作后,再也无法连机通信?

Question asked by 9218 sky on Apr 10, 2017
Latest reply on Apr 16, 2017 by jeremyzhou

1. blinky project 正常运行的单片系统上,发觉功耗较大,偿试关闭外设的时钟。

 

2. 但下载完关闭外设时钟的代码后,悲剧发生了,原来正常运行的 BLINKY PROJECT 不会闪亮 LED 了,而且也无法连机(MDK 通过 ULINK)。

 

    关闭外设时钟代码如下(LPC17xx可以在MDK下操作外设时钟及电源控制, LPC18xx 却没有了):

void PerClk_Config(void) {

Chip_Clock_Disable(CLK_APB3_I2C1); 
Chip_Clock_Disable(CLK_APB3_DAC);

Chip_Clock_Disable(CLK_APB3_ADC0);
Chip_Clock_Disable(CLK_APB3_ADC1);
Chip_Clock_Disable(CLK_APB3_CAN0);
Chip_Clock_Disable(CLK_APB1_MOTOCON);
Chip_Clock_Disable(CLK_APB1_I2C0);
Chip_Clock_Disable(CLK_APB1_I2S);
Chip_Clock_Disable(CLK_APB1_CAN1);

Chip_Clock_Disable(CLK_SPIFI);
Chip_Clock_Disable(CLK_MX_SPIFI);
Chip_Clock_Disable(CLK_MX_LCD);
Chip_Clock_Disable(CLK_MX_ETHERNET);
Chip_Clock_Disable(CLK_MX_USB0);
Chip_Clock_Disable(CLK_MX_EMC);
 Chip_Clock_Disable(CLK_MX_SDIO);

 Chip_Clock_Disable(CLK_MX_DMA);
Chip_Clock_Disable(CLK_MX_USB1);
Chip_Clock_Disable(CLK_MX_EMC_DIV);

 Chip_Clock_Disable(CLK_MX_EEPROM);
 Chip_Clock_Disable(CLK_MX_WWDT);
Chip_Clock_Disable(CLK_MX_UART0);
Chip_Clock_Disable(CLK_MX_UART1);
Chip_Clock_Disable(CLK_MX_SSP0);
Chip_Clock_Disable(CLK_MX_TIMER0);
Chip_Clock_Disable(CLK_MX_TIMER1);
Chip_Clock_Disable(CLK_MX_RITIMER);
Chip_Clock_Disable(CLK_MX_UART2);
Chip_Clock_Disable(CLK_MX_UART3);
Chip_Clock_Disable(CLK_MX_TIMER2);
Chip_Clock_Disable(CLK_MX_TIMER3);
Chip_Clock_Disable(CLK_MX_SSP1);
Chip_Clock_Disable(CLK_MX_QEI);

Chip_Clock_Disable(CLK_USB0);
Chip_Clock_Disable(CLK_USB1);

// Chip_Clock_Disable(CLK_APLL);
Chip_Clock_Disable(CLK_APB2_UART3);
Chip_Clock_Disable(CLK_APB2_UART2);
Chip_Clock_Disable(CLK_APB0_UART1);
Chip_Clock_Disable(CLK_APB0_UART0);
Chip_Clock_Disable(CLK_APB2_SSP1);
Chip_Clock_Disable(CLK_APB0_SSP0);
Chip_Clock_Disable(CLK_APB2_SDIO);

return;
}

 

3. 转而想到 ISP 的操作上去,同样也无法连机。屈闷中。手头上只购得三片 MCU,已搞垮二片了。

 

4. 请问还有办法让 LPC1833 复活吗?需要怎样做?望知情的给于指导。谢谢。

Outcomes