完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
a[0] = getkey();
a[1] = getkey(); a[2] = getkey(); a[3] = getkey(); b[0] = getkey(); b[1] = getkey(); b[2] = getkey(); b[3] = getkey(); getkey() { while(1) { if (!k1) return 1; if (!k2) return 0; } } 我看有人这么写,但是能把顺序记录到数组里吗?求写一个 |
|
相关推荐
2个回答
|
|
我弄好了
int getkey() { delay_init(); while(1) { if (!KEY0) { delay_ms(10); if(!KEY0) { while(!KEY0); return 1; } } if (!KEY1) { delay_ms(10); if(!KEY1) { while(!KEY1); return 0; } } } } int a[2]; void shuzu() { int i; for(i=0;i<2;i++) { a=getkey(); } } 以前忘了加读取按键松开的标志,导致按下后立马填满了数组,导致了错误,谢谢了。 |
|
|
|
给个思路吧!
unsigned char KeyBufTbl[]= {0};//按键缓存数组 unsigend char KeyWriteIndex = 0;//当前按键写入地址 unsigend char KeyReadIndex = 0;//当前按键取用地址,自己完善 unsigned char GetKey(void) { //6个按键,分别返回1/2/3/4/5/6; } //按键扫描缓存 50ms执行一次假设 void KeyTask(void) { KeyTemp=GetKey(); //KeyTemp的值持续200ms不改变且不为0,认为有有效按键,这里可能好需要自己添加按键长按得相关判断 if(/*KeyTemp按键有效的判断*/) { KeyBufTbl[KeyWriteIndex ++] = KeyTemp; } } |
|
|
|
只有小组成员才能发言,加入小组>>
请问下图大疆lightbridge2遥控器主板电源芯片型号是什么?
4475 浏览 1 评论
使用常见的二极管、三极管和mos做MCU和模组的电平转换电路,但是模组和MCU无法正常通信,为什么?
346浏览 2评论
为了提高USIM卡电路的可靠性和稳定性,在电路设计中须注意的点有哪些?
351浏览 2评论
374浏览 2评论
367浏览 2评论
417浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 03:13 , Processed in 0.794138 second(s), Total 80, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号