完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
2个回答
|
|
|
|
|
|
你好,谢谢你给我提供的资料,我也有同一个端口的4*4键盘扫描我会写,但是不同端口的老出错,现有一段程序,麻烦您帮我看下谢谢。以下是我的程序 :以P2.0~P2.3为列,P1.0~P1.3为先做4*4的扫描,但数码管只显示列的数。 #include #define uchar unsigned char #define uint unsigned int uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; uchar Pre_keyno=32;keyno=32; void delay(uint x) { uint y; while(x--) for(y=0;y<120;y++); } void keys_Scan() { uchar tmp; P2=0x0f; delay(5); tmp=P2^0x0f; switch(tmp) { case 1:keyno=0;break; case 2:keyno=1;break; case 4:keyno=2;break; case 8:keyno=3;break; //default:keyno=32; } P1=0xf0; delay(5); tmp=P1>>4^0x0f; switch(tmp) { case 1:keyno=keyno+0;break; case 2:keyno=keyno+4;break; case 4:keyno=keyno+8;break; case 8:keyno=keyno+12; } } void main() { P3=0x38; P0=0x00; while(1) { if(P2^0x0f!=0x0f)keys_Scan(); if(Pre_keyno!=keyno) { P0=DSY_CODE[keyno]; Pre_keyno=keyno; } delay(100); } } |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式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 18:06 , Processed in 0.517620 second(s), Total 76, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号