| 
 
| MCU:hdsc32l17x 外设:lis3dh
 问题:正常模式下,中断可进,数据可读。进入深度睡眠模式,中断可进,但是数据读不出(进入深度睡眠的函数是官方的库函数),
 非常疑惑,希望大家帮我看看是什么问题。先写过各位了!
 以下为代码:
 
 
 int main(void)
 {
 
 App_LIS3DHIOCfg();    //模拟SPI端口设置
 Lis3dh_Init();                     //LIS3DH寄存器初始化设置
 
 Lpm_GotoDeepSleep(TRUE);    //进入深度睡眠模式
 
 while(1)
 {
 if(Int_Status.Lis3dh_Int == 1)
 {
 Gpio_SetIO(GpioPortB,GpioPin0);//示波器看波形,便于低功耗调试
 Int_Status.Lis3dh_Int = 0;
 for(i=0;i<32;i++)
 {
 Get_Fifo_Data(&result);
 }
 Gpio_ClrIO(GpioPortB,GpioPin0);
 }
 }
 }
 
 void PORTA_IRQHandler(void)
 {
 if(TRUE == Gpio_GetIrqStatus(GpioPortA,GpioPin8))
 {
 Gpio_SetIO(GpioPortB,GpioPin11);
 
 Int_Status.Lis3dh_Int = 1;
 
 LIS3DH_WriteReg(LIS3DH_FIFO_CTRL_REG,0x00);//清除FIFO数据
 LIS3DH_WriteReg(LIS3DH_FIFO_CTRL_REG,0x40);//FIFO设置
 
 Gpio_ClearIrq(GpioPortA,GpioPin8);
 Gpio_ClrIO(GpioPortB,GpioPin11);
 }
 
 }
 
 | 
 |