打印
[STM8]

stm8 开发例程 一些基础外设-------按键

[复制链接]
655|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chenqiang10|  楼主 | 2019-2-27 14:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/**************************************************************************
* 函数名:Buttom_conf
* 描述  :按键配置函数
* 输入  :无
*
* 输出  :无
* 返回  :无
* 调用  :外部调用
*************************************************************************/
void Buttom_conf(void)
{
  PD_DDR&=0x1f;/*设置数据方向寄存器 1为输出,0为输入*/
  PD_CR1|=0xe0;/*设置上拉输入*/
  PD_CR2&=0x1f;/*设置无中断*/
}

沙发
chenqiang10|  楼主 | 2019-2-27 14:54 | 只看该作者
/**************************************************************************
* 函数名:Key_Scan
* 描述  :按键扫描函数
* 输入  :无
*
* 输出  :无
* 返回  :按键状态 Buttom_OFF标志没按键按下,Buttom_ON表示有按键按下
* 调用  :外部调用
*************************************************************************/
BitStatus Key_Scan(void)
{
    BitStatus ButtomStatus;
    ButtomStatus=Buttom_OFF;
    if(!PD5_In)
    {
        Delay(0x3ff);/*  消抖 */
        if(!PD5_In)
        {
          while(!PD5_In);/*松手释放*/
          ButtomStatus=Buttom_ON;
        }
    }
    return ButtomStatus;
}

使用特权

评论回复
板凳
chenqiang10|  楼主 | 2019-2-27 22:22 | 只看该作者
/**************************************************************************
* 函数名:Delay
* 描述  :按键扫描函数
* 输入  :无
*
* 输出  :无
* 返回  :无
* 调用  :内部调用
*************************************************************************/
static void Delay(u16 nCount)
{
  /* Decrement nCount value */
  while (nCount != 0)
  {
    nCount--;
  }

}

使用特权

评论回复
地板
木木guainv| | 2019-3-8 12:57 | 只看该作者
貌似楼主没做防抖啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

940

帖子

1

粉丝