独闷闷网

 找回密码
 立即注册
搜索
查看: 3123|回复: 2
收起左侧

[原创] STM8按键的检测

[复制链接]
发表于 2015-3-15 12:04:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
上一节演示了点亮一个LED,这一节实现按键的检测。我只写一种方法,只要能实现按键的检测。要想学深的,可研究鸿哥风格的程序。
STM8要想检测按键,首先要配置IO为输入模式,上拉,下拉,高阻态,三种方式,一般情况不需要外接上拉电阻。其中高阻态一般都是用在A/D采集的。
代码如下:
#include <stm8s103f3p.h>
/* 端口的定义 */
_Bool GLED @PA_ODR:1; //绿色LED
_Bool RLED @PA_ODR:2; //红色LED
_Bool KEY  @PD_IDR:4; //按键接在PD4
/* 初始化IO*/
void GPIO_Init(void)
{
        PA_CR1 |= 0X06; //PA1.PA2推挽输出
        PA_DDR |= 0X06; //PA1.PA2推挽输出
        PD_CR1 |= 0X10; //PD4上拉输入
}
main()
{
        GPIO_Init();//初始化IO
        while (1)
        {
          RLED=1;
          if(KEY==0)
                {
                        GLED=1;
                        RLED=0;
                        while(!KEY);
                }
        }
}
下一节内容:待定。。。

乐于分享,勇于质疑!
发表于 2015-3-15 21:32:46 | 显示全部楼层
感谢分享。
乐于分享,勇于质疑!
回复

使用道具 举报

发表于 2015-3-16 11:39:03 | 显示全部楼层
能不能分享下用库函数写的?
乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2021-6-18 11:22 , Processed in 0.145054 second(s), 18 queries .

快速回复 返回顶部 返回列表