完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
懂的朋友请帮帮忙,谢谢!!可以只看主程序
我的问题是我写了一个程序用矩阵控制1602液晶显示,但是我用的是郭天祥的学习板,他的P3口接在矩阵上,1602液晶显示屏控制接在P3^4,P3^5上,我在调用1602显示矩阵按键的值时就出现有时候只要输入一个数字的但是实际输出多个; 我的矩阵检测程序是: 这个程序的意思是在主程序里面反回一个按键的值keyvalue; #include #define uchar unsigned char #define uint unsigned int uchar keyvalue; uchar code tablewe[]={ 0xfe,0xfd,0xfb,0xf7}; void jian(uchar ss) //矩阵键盘函数 { static uchar temp,mum; P3=tablewe[ss]; temp=P3; temp=temp&0xf0; while(temp!=0xf0) { delay(10);//消除键盘抖动 temp=P3; temp=temp&0xf0; while(temp!=0xf0) { switch(temp) { case 0xe0:mum=0+4*ss; break; case 0xd0:mum=1+4*ss; break; case 0xb0:mum=2+4*ss; break; case 0x70:mum=3+4*ss; break; } keyvalue = mum; while(temp!=0xf0) //松手测试 { temp=P3; temp=temp&0xf0; } } } } 下面是1602程序 ***it lcden=P3^4; //位声明 控制1602显示屏的 ***it rs=P3^5; void delay (uint z) //延时函数 { uint x, y; for(x = z;x > 0; x--) for(y = 110;y > 0; y--); } void write_com(uchar aa)//此为输入指令给1602显示屏的函数 { rs = 0; P0 = aa; delay (2); lcden = 1; delay (2); lcden = 0; } void write_date(uchar date)//此为输入数据给1602显示屏的函数 { rs = 1; P0 = date; delay (2); lcden = 1; delay (2); lcden = 0; } void yejing_init ()//液晶显示屏1602初始化 { write_com (0x38); //输入指令 write_com (0x0c); write_com (0x06); write_com (0x01); write_com (0x80); } void yejing_write (uchar wei,uchar shu)//给1602的第几位写入一个shu { write_com (0x80 + wei); write_date (0x30 + shu); } void mian() { yejing_init(); keyvalue = 20;//初始化为了下面简单的if判断 while(1) { jian(0);//扫描第一行输出keyvalue的值 jian(1); jian(2); jian(3); if (keyvalue != 20) { //但是按有些键3次它还是出现显示3个就是在第一个的后再面显示两个,这是怎么回事,有些按键就没有错误,还有我用状态机写的一个矩阵检测程序错误多多啊,这个程序我只是用于检测怎么消除重用的影响的,如果哪位大哥知道的指导一下 P3=0xff; //我觉得这样可以消除重用的影响 yejing_write (0,keyvalue); //显示keyvalue的值 P3=0xff; //我觉得这样可以消除重用的影响 keyvalue = 20; } } } |
|
相关推荐
3个回答
|
|
|
|
楼主 你的main函数写错了 mian这是什么?还能出来结果
|
|
|
|
main是刚刚我打错的 这个程序运行没问题的
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式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:08 , Processed in 0.558918 second(s), Total 73, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号