user_func.c
来自「IAR-2148.rar 这是IAR上做的2148所有的例程」· C语言 代码 · 共 132 行
C
132 行
/*************************************************************************
*
* Used with ICCARM and AARM.
*
* (c) Copyright IAR Systems 2003
*
* File name : main.c
* Description : Define main module
*
* History :
* 1. Data : Feb 12, 2005
* Author : Stanimir Bonev
* Description : Create
*
* $Revision: 1.2 $
**************************************************************************/
#include "user_func.h"
LPC_INT8U ButtCount1,ButtCount2,ButtFlags;
int TickSysFlag;
USB_BUF_DEF UsbBuf;
/*************************************************************************
* Function Name: ButtonsInit
* Parameters: none
* Return: none
* Description: Init buttons
*
*************************************************************************/
void ButtonsInit (void)
{
/* Init buttons Inputs */
IO0DIR_bit.P0_15 = IO0DIR_bit.P0_16 = 0;
/* Init button's variable */
ButtFlags = ButtCount1 = ButtCount2 = 0;
}
/*************************************************************************
* Function Name: Buttons
* Parameters: none
* Return: none
* Description: Inplement buttons
*
*************************************************************************/
void Buttons (void)
{
if (!IO0PIN_bit.P0_15)
{
if(ButtCount1 > BUTT_DEB)
{
if((ButtFlags & BUTT_FLAG_1) == 0)
{
ButtFlags |= BUTT_FLAG_1+BUTT_EVENT_1;
}
}
else
{
++ButtCount1;
}
}
else
{
if(ButtCount1 == 0)
{
if(ButtFlags & BUTT_FLAG_1)
{
ButtFlags &= ~(BUTT_FLAG_1+BUTT_EVENT_1);
}
}
else
{
--ButtCount1;
}
}
if (!IO0PIN_bit.P0_16)
{
if(ButtCount2 > BUTT_DEB)
{
if((ButtFlags & BUTT_FLAG_2) == 0)
{
ButtFlags |= BUTT_FLAG_2+BUTT_EVENT_2;
}
}
else
{
++ButtCount2;
}
}
else
{
if(ButtCount2 == 0)
{
if(ButtFlags & BUTT_FLAG_2)
{
ButtFlags &= ~(BUTT_FLAG_2+BUTT_EVENT_2);
}
}
else
{
--ButtCount2;
}
}
}
/*************************************************************************
* Function Name: GetButtonsEvent
* Parameters: none
* Return: LPC_INT8U
* Description: Return buttons event and clear event flags
*
*************************************************************************/
LPC_INT8U GetButtonsEvent (void)
{
LPC_INT8U Events = ButtFlags & (BUTT_EVENT_1|BUTT_EVENT_2);
return Events;
}
/*************************************************************************
* Function Name: ClearFlag
* Parameters: void
* Return: void
*
* Description: clear arg
*
*************************************************************************/
void SetSysTickFlag (void* arg)
{
int* pFlag = (int *)arg;
*pFlag = 1;
Buttons();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?