rtccsetalarmrpt.c
来自「Mplab C30编译器」· C语言 代码 · 共 56 行
C
56 行
#if defined(__dsPIC33F__)
#include <p33Fxxxx.h>
#elif defined(__PIC24H__)
#include "p24hxxxx.h"
#endif
#include "Rtcc.h"
#ifdef _TMR_RTCC_V1
/*********************************************************************
* Function: void RtccSetAlarmRpt(rtccRepeat rpt, BOOL dsblAlrm)
*
* PreCondition: rpt has to be a proper rtccRepeat enumeration value
* Input: rpt - value of the desired alarm repeat rate
* dsblAlrm - if TRUE, the API can temporarily disable
* the alarm when changing the RPT value
* Output: None
* Side Effects: None
* Overview: The function sets the RTCC alarm repeat count.
* Note: If alarm is enabled, changing the repeat count can be safely made
* only when the sync pulse is unasserted. To avoid waiting for the sync
* pulse, the user can choose to temporarily disable the alarm and then
* re-enable it. This means that the user has the knowledge that an alarm
* event is not imminent.
********************************************************************/
void RtccSetAlarmRpt(rtccRepeat rpt, BOOL dsblAlrm)
{
BOOL isAlrm=mRtccIsAlrmEnabled();
if(isAlrm)
{
if(dsblAlrm)
{
mRtccAlrmDisable();
}
else
{
mRtccWaitSync();
}
}
// update the repeat rate
ALCFGRPTbits.AMASK=rpt;
// restore previous status
if(isAlrm && dsblAlrm)
{
mRtccAlrmEnable();
}
}
#else
#warning "Does not build on this target"
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?