فهرست منبع

fix:使用了HSPI DMA后无法休眠

alienwalker 3 سال پیش
والد
کامیت
a1821076b5
2فایلهای تغییر یافته به همراه4 افزوده شده و 2 حذف شده
  1. 2 0
      bsp/air105/hal/core_pm.c
  2. 2 2
      bsp/air105/hal/core_spi.c

+ 2 - 0
bsp/air105/hal/core_pm.c

@@ -36,6 +36,7 @@ void PM_SetHardwareRunFlag(uint32_t PmHWSn, uint32_t OnOff)
 	{
 		prvPM.HWFlagBit &= ~(1 << PmHWSn);
 	}
+//	PM_Print();
 }
 
 void PM_SetDriverRunFlag(uint32_t PmDrvSn, uint32_t OnOff)
@@ -48,6 +49,7 @@ void PM_SetDriverRunFlag(uint32_t PmDrvSn, uint32_t OnOff)
 	{
 		prvPM.DrvFlagBit &= ~(1 << PmDrvSn);
 	}
+//	PM_Print();
 }
 
 void PM_Print(void)

+ 2 - 2
bsp/air105/hal/core_spi.c

@@ -257,11 +257,11 @@ static int32_t SPI_DMADoneCB(void *pData, void *pParam)
 #endif
 		if (SpiID)
 		{
-			PM_SetHardwareRunFlag(PM_HW_HSPI, 0);
+			PM_SetHardwareRunFlag(PM_HW_SPI_0 + SpiID - 1, 0);
 		}
 		else
 		{
-			PM_SetHardwareRunFlag(PM_HW_SPI_0 + SpiID - 1, 0);
+			PM_SetHardwareRunFlag(PM_HW_HSPI, 0);
 		}
 		prvSPI[SpiID].Callback((void *)SpiID, prvSPI[SpiID].pParam);
 	}