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

📄 key.c

📁 这是一个在iar环境下编译的ds1302的时钟显示程序列子
💻 C
字号:
#include <msp430x14x.h>
typedef unsigned char uchar;
typedef unsigned int  uint;

#define keyin    (P1IN & 0x0f)

/*******************************************
函数名称:delay
功    能:用于消抖的延时
参    数:无
返回值  :无
********************************************/
void delay_10ms(void)
{
    uint tmp;
    
    for(tmp = 0x3fff;tmp > 0;tmp--);
}
/*******************************************
函数名称:Key4Scan
功    能:扫描四个独立式按键
参    数:无
返回值  :键值
********************************************/
uchar Key4Scan(void)
{
    uchar temp,keyval;
    
    if(keyin != 0x0f)       //如果有键被按下
    {
        delay_10ms();            //延时消抖
        keyval = 0;
        if(keyin != 0x0f)   //再次检测按键状态
        {
            temp=keyin;
            while(keyin != 0x0f);   //等待按键被放开
            switch(temp)    //转换键值    
            {
            case 0x0e:
                        keyval = 1;break;
            case 0x0d:
                        keyval = 2;break;
            case 0x0b:
                        keyval = 3;break;
            case 0x07:
                        keyval = 4;break;
            default:
                        keyval = 0;break;
            }
        }
    }
    else
        keyval = 0;
    
    return keyval;
    
}

⌨️ 快捷键说明

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