int main(void)
{
u8 key; //保存键值
delay_inint(168); //初始化延时函数
LED_inint(); //初始化LED端口
BEEP_inint(); //初始化蜂鸣器端口
KEY_inint() //初始化与按键连接的硬件端口
LED0=0; //点亮LED0
while(1)
{
key=key_Scan(0); //得到键值
if(key)
{
switch(key)
{
case WKUP_PRES; //控制蜂鸣器
BEEP=!BEEP;
break;
case WKY0_PRES; //控制LED0翻转
LED0=!LED0;
break;case WKY1_PRES; //控制LED1翻转
LED1=!LED1;
break;case WKY2_PRES; //同时控制LED0、LED1翻转
LED0=!LED0;
LED1=!LED1;
break;
}
}
}
}
标红部分不是很懂,请大神指点一下,萌新一枚。
1、u8我查了一下资料,是8位2进制数,为什么不是u16、u32呀?
2、为什么u8 key可以保存键值,保存键值是什么意思?不保存可以吗?
3、为什么要初始化key的硬件连接端口,不初始化可以吗?为什么?
4、key=key_Scan(0)是什么意思?怎么就得到键值了?键值是什么?按键的值吗?不是很明白
谢谢大神!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
u8是unsigned char,该数据类型的取值范围是0--255,key_Scan(0)函数返回值为0--4,使用u8足够了,定义为u16 u32也可以
2、为什么u8 key可以保存键值,保存键值是什么意思?不保存可以吗?
用来存储key_Scan(0)函数的返回值,后续代码通过判断key的值进行其他动作,不保存没法判断
3、为什么要初始化key的硬件连接端口,不初始化可以吗?为什么?
初始化是为了使按键可以正常工作,不初始化不可以
4、key=key_Scan(0)是什么意思?怎么就得到键值了?键值是什么?按键的值吗?不是很明白
key_Scan(0)此函数的返回值为键值,通过此值判断哪个按键被按了
建议多看看C语言,这些都是比较基础的
一周热门 更多>