82 lines
1.8 KiB
C
82 lines
1.8 KiB
C
|
|
/*
|
|||
|
|
*Copyright ,2023 , NANOCHAP
|
|||
|
|
*File name: ENS1_EXTI.C
|
|||
|
|
*Author:
|
|||
|
|
*Version: V1.0
|
|||
|
|
*Date: 2023-11-
|
|||
|
|
*Description:
|
|||
|
|
*Function List:
|
|||
|
|
|
|||
|
|
History:
|
|||
|
|
1.V1.0
|
|||
|
|
Date:
|
|||
|
|
Author:
|
|||
|
|
Modification: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
|
|||
|
|
#include "ENS1_EXTI.h"
|
|||
|
|
|
|||
|
|
|
|||
|
|
/*ÿһλ<D2BB><CEBB><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>·<EFBFBD><C2B7>ʹ<EFBFBD><CAB9>/ʧ<><CAA7><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>жϵ<D0B6><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD> 0-29*/
|
|||
|
|
void EXTI_RisingTriggerSelect(EXTI_NUM NUM , FunctionalState newstate)
|
|||
|
|
{
|
|||
|
|
if(newstate == ENABLE)
|
|||
|
|
CMSDK_EXTI->RTSR |= (1<<NUM);
|
|||
|
|
else
|
|||
|
|
CMSDK_EXTI->RTSR &=~ (1<<NUM);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*ÿһλ<D2BB><CEBB><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>·<EFBFBD><C2B7>ʹ<EFBFBD><CAB9>/ʧ<><CAA7><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>жϵ<D0B6><CFB5>½<EFBFBD><C2BD>ش<EFBFBD><D8B4><EFBFBD> 0-29*/
|
|||
|
|
void EXTI_FallingTriggerSelect(EXTI_NUM NUM , FunctionalState newstate)
|
|||
|
|
{
|
|||
|
|
if(newstate == ENABLE)
|
|||
|
|
CMSDK_EXTI->FTSR |= (1<<NUM);
|
|||
|
|
else
|
|||
|
|
CMSDK_EXTI->FTSR &=~ (1<<NUM);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ã<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ijһλ<D2BB><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><D8B7><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6><CFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϣ<D0B6><CFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д 0-29*/
|
|||
|
|
void EXTI_SoftwareInterruptEventSet(EXTI_NUM NUM)
|
|||
|
|
{
|
|||
|
|
CMSDK_EXTI->SWIER |= (1<<NUM);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
|
bool Read_EXTI_RisingEdgePending(EXTI_NUM NUM)
|
|||
|
|
{
|
|||
|
|
return (bool)((CMSDK_EXTI->RISE_PEND_STS >> NUM ) & 0x1);
|
|||
|
|
}
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD>״̬
|
|||
|
|
void Clear_EXTI_RisingEdgePending(EXTI_NUM NUM)
|
|||
|
|
{
|
|||
|
|
CMSDK_EXTI->RISE_PEND_CLR |= (1<<NUM);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*<2A><>ȡ<EFBFBD>½<EFBFBD><C2BD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>½<EFBFBD><C2BD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
|
bool Read_EXTI_FallingEdgePending(EXTI_NUM NUM)
|
|||
|
|
{
|
|||
|
|
return (bool)((CMSDK_EXTI->FALL_PEND_STS >> NUM) & 0x1);
|
|||
|
|
}
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><C2BD>ش<EFBFBD><D8B4><EFBFBD>״̬
|
|||
|
|
void Clear_EXTI_FallingEdgePending(EXTI_NUM NUM)
|
|||
|
|
{
|
|||
|
|
CMSDK_EXTI->FALL_PEND_CLR |= (1<<NUM);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*<2A><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>CPU<50><55><EFBFBD>ж<EFBFBD><D0B6>ߣ<EFBFBD>0<EFBFBD><30><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD>ε<EFBFBD><CEB5>жϻ<D0B6><CFBB><EFBFBD> 1<><31><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD>ε<EFBFBD><CEB5>жϻ<D0B6><CFBB>ѣ<EFBFBD>0-31*/
|
|||
|
|
void EXTI_INT_MASK(uint8_t NUM)
|
|||
|
|
{
|
|||
|
|
if(NUM >31)
|
|||
|
|
return ;
|
|||
|
|
CMSDK_EXTI->IMR |= (1<<NUM);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/*<2A><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD> <20>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ɻ<EFBFBD><C9BB><EFBFBD>CPU 0-31 */
|
|||
|
|
void EXTI_EVENT_MASK(uint8_t NUM)
|
|||
|
|
{
|
|||
|
|
if(NUM >31)
|
|||
|
|
return ;
|
|||
|
|
CMSDK_EXTI->EMR |= (1<<NUM);
|
|||
|
|
}
|