导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→键盘程序,有点搞不懂了!!

* 85438: 键盘程序,有点搞不懂了!!

   lh811009 
lh811009发表的帖子 

 键盘程序,有点搞不懂了!!
//////////取得输入的数字的值////////////
void keyprint(void)
{
unsigned char key4=0;//标记第一次按键的值
unsigned char key5=0;//标记第二次按键的值
unsigned int c=2;
Delay(500);
while(c)
{
  key4=keyscan();//键盘第一次扫描的值,keyscan()为键盘扫描程序
  if(key4!=0)
  {
   Mcs=0;Scs=1;
   Disp_Digit(3,32,*(shuzi+key4));//在指定位置显示key4
   Delay(1000);
   key5=keyscan();
   Mcs=0;Scs=1;
   Disp_Digit(3,40,*(shuzi+key5));//在指定位置显示key5
   c=0;
  }
}
  key3=key4*10+key5;//用全局变量记录页标记
}

我的意图是将键盘的两次按键值在指定位置分别显示出来
不管我的二次有没有按键,key5就为3了,搞不懂,那位大侠帮我看看



发表时间:2005年11月8日9:43:07

  
回复该帖

本主题共有 4 帖,分页:>>>>>该主题的所有内容[4]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  85439.[详细][讨论]个人看法
摘要:key5=keyscan();    Mcs=0;Scs=1;    Disp_Digit(3,40,*(shuzi+key5));//在指定位置显示key5&......(314字)
- [yyjasen][911次] 2005年11月8日

  85923.[详细]你的子程序呢
摘要:你的子程序呢 ......(14字)
- [tanxiaodong][1148次] 2005年11月19日

  85930.[详细]我的看法
摘要:是不是应该有个按键松开的判断,当你按下键盘时,程序执行相应操作后等待,直到你的手松开,才执行下面的任务,要不然会把后面的也执行,可能会造成死循环   ......(151字)
- [caidenghua][1208次] 2005年11月19日

[上一篇帖子]:[讨论]个人看法key5=keyscan();    Mcs=
[下一篇帖子]:[讨论]谢谢hhl720417 !顶!