完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
各位老师好,帮忙看个程序。我的按键按下没有反应。
#include ***it dua=P2^2; ***it wei=P2^3; //unsigned char key; unsigned char code table[]= {0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71, 0x76,0x79,0x38,0x3f}; void delay(unsigned int t) { while(t--); } keyscan() { unsigned char h,l; P3=0xf0; //h=P3&0xf0; if(P3!=0xf0) { delay(500); if(P3!=0xf0) { h=P3; P3=0x0f; l=P3; h=h|l; while(h!=0xf0); delay(500); } switch(h) { case 0xee:return 0;break; case 0xde:return 1;break; case 0xbe:return 2;break; case 0x7e:return 3;break; case 0xed:return 4;break; case 0xdd:return 5;break; case 0xbd:return 6;break; case 0x7d:return 7;break; case 0xeb:return 8;break; case 0xdb:return 9;break; case 0xbb:return 10;break; case 0x7b:return 11;break; case 0xe7:return 12;break; case 0xd7:return 13;break; case 0xb7:return 14;break; case 0x77:return 15;break; //default:return 0xff;break; } } } void display(unsigned char i) { wei=1; P0=0; wei=0; dua=1; P0=table[i]; dua=0; } void main() { while(1) { keyscan(); display(keyscan()); } } |
|
相关推荐
7个回答
|
|
while(h!=0xf0); 死这里了应该。。。。
|
|
|
|
|
|
|
|
|
|
|
|
直接去掉while(h!=0xf0);
|
|
|
|
|
|
|
|
|
|
|
|
得把H=H|L;放在后面哈。外部释放。这个词第一次听到。谢谢你的指点。你费心了哈。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
180 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
587 浏览 0 评论
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
549 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
548 浏览 0 评论
1051 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11763 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 19:58 , Processed in 0.547855 second(s), Total 57, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号