📄 example2.c
字号:
/****************************************************************************
*
* MODULE:
*
* COMPONENT: $RCSfile: $
*
* VERSION: $Name: $
*
* REVISION: $Revision: $
*
* DATED: $Date: $
*
* STATUS: $State: $
*
* AUTHOR:
*
* DESCRIPTION:
*
* LAST MODIFIED BY: $Author: $
* $Modtime: $
*
****************************************************************************
*
* (c) Copyright 2005 JENNIC Ltd
*
****************************************************************************/
/****************************************************************************/
/*** Include files ***/
/****************************************************************************/
#include <jendefs.h>
#include <AppApi.h>
#include <AppHardwareApi.h>
/****************************************************************************/
/*** Macro Definitions ***/
/****************************************************************************/
/****************************************************************************/
/*** Type Definitions ***/
/****************************************************************************/
/****************************************************************************/
/*** Local Function Prototypes ***/
/****************************************************************************/
PRIVATE void vDIOInterruptCallback (uint32 u32Device, uint32 u32ItemBitmap);
/****************************************************************************/
/*** Exported Variables ***/
/****************************************************************************/
/****************************************************************************/
/*** Local Variables ***/
/****************************************************************************/
PRIVATE bool_t bToggle = TRUE;
/****************************************************************************/
/*** Exported Functions ***/
/****************************************************************************/
/****************************************************************************
*
* NAME: AppColdStart
*
* DESCRIPTION:
* Entry point for application from boot loader.
*
* RETURNS:
* Never returns.
*
****************************************************************************/
PUBLIC void AppColdStart(void)
{
u32AppApiInit(NULL, NULL, NULL, NULL, NULL, NULL, NULL);
u32AHI_Init();
/* Set SW1(dio9) to input and LED1(dio14) to output */
vAHI_DioSetDirection(E_AHI_DIO9_INT, 0);
vAHI_DioSetDirection(0, E_AHI_DIO14_INT);
/* enable pullups on all inputs/unused pins */
vAHI_DioSetPullup(!E_AHI_DIO14_INT, E_AHI_DIO14_INT);
/* turn LED off */
vAHI_DioSetOutput(E_AHI_DIO14_INT, 0);
/* set interrupt for DIO9 to occur on button release - rising edge */
vAHI_DioInterruptEdge(E_AHI_DIO9_INT, 0);
/* register interrupt handling function */
vAHI_SysCtrlRegisterCallback(vDIOInterruptCallback);
/* enable interrupt for DIO9 */
vAHI_DioInterruptEnable(E_AHI_DIO9_INT, 0);
while(TRUE);
}
/****************************************************************************
*
* NAME: AppWarmStart
*
* DESCRIPTION:
* Entry point for application from boot loader.
*
* RETURNS:
* Never returns.
*
****************************************************************************/
PUBLIC void AppWarmStart(void)
{
AppColdStart();
}
/****************************************************************************/
/*** Local Functions ***/
/****************************************************************************/
PRIVATE void vDIOInterruptCallback (uint32 u32Device, uint32 u32ItemBitmap)
{
/* Check to see if hardware indication was from DIO9 */
if ((u32Device == E_AHI_DEVICE_SYSCTRL)
&& (u32ItemBitmap & E_AHI_DIO9_INT))
{
if(bToggle)
{
/* drive DIO14 LOW */
vAHI_DioSetOutput(0, E_AHI_DIO14_INT);
}
else
{
/* drive DIO14 HIGH */
vAHI_DioSetOutput(E_AHI_DIO14_INT, 0);
}
bToggle = !bToggle;
}
}
/****************************************************************************/
/*** END OF FILE ***/
/****************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -