⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.c

📁 周立功公司的EasyARM1138资料
💻 C
字号:
//  包含必要的头文件
#include  "KEY.H"
#include  <hw_types.h>
#include  <hw_memmap.h>
#include  <hw_sysctl.h>
#include  <hw_gpio.h>
#include  <sysctl.h>
#include  <gpio.h>


//  将较长的标识符定义成较短的形式
#define  SysCtlPeriEnable       SysCtlPeripheralEnable
#define  SysCtlPeriDisable      SysCtlPeripheralDisable
#define  GPIOPinTypeIn          GPIOPinTypeGPIOInput


/***************************************************************************************************
功能:初始化KEY
参数:ucKEY是按键名称,取值下列值之一或者它们之间的“或运算”组合形式
            KEY1
            KEY2
返回:无
***************************************************************************************************/
void  KEY_Init(unsigned char  ucKEY)
{
    if ( ucKEY & KEY1 )
    {
        SysCtlPeriEnable(SYSCTL_PERIPH_GPIOD);                  //  使能GPIOD端口
        GPIOPinTypeIn(GPIO_PORTD_BASE , GPIO_PIN_1);            //  设置PD1为输入类型
    }

    if ( ucKEY & KEY2 )
    {
        SysCtlPeriEnable(SYSCTL_PERIPH_GPIOG);                  //  使能GPIOG端口
        GPIOPinTypeIn(GPIO_PORTG_BASE , GPIO_PIN_5);            //  设置PG5输入类型
    }
}


/***************************************************************************************************
功能:读取KEY
参数:ucKEY是按键名称,取值下列值之一或者它们之间的“或运算”组合形式
            KEY1
            KEY2
返回:KEY1和KEY2的位组合形式,有下列几种情况
            0x00    没有按键按下
            0x01    KEY1被按下
            0x02    KEY2被按下
            0x03    KEY1和KEY2都被按下
***************************************************************************************************/
unsigned char  KEY_Get(unsigned char  ucKEY)
{
    unsigned char  ucVal  =  0x00;

    if ( ucKEY & KEY1 )
    {
        if ( GPIOPinRead(GPIO_PORTD_BASE , GPIO_PIN_1)  ==  0x00 )      //  如果PD1为低电平
        {
            ucVal  |=  0x01;
        }
    }

    if ( ucKEY & KEY2 )
    {
        if ( GPIOPinRead(GPIO_PORTG_BASE , GPIO_PIN_5)  ==  0x00 )      //  如果PG5为低电平
        {
            ucVal  |=  0x02;
        }
    }

    return(ucVal);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -