完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
其实可以P0接的位码不用分开,你分开了,代码量大了,还容易忽视;现在发现你的问题了,你的是前一次扫描第一个数码管,选中了数码管之后,下一次扫描第二个数码管,你没把上一次的数码管位码关掉,这样第二次扫描就是选中了两个数码管;你可以用P0 = 0xfe;这是选中第一位数码管,i = 1的时候,位码P0 =0xfd;这样就是即选中了第二个数码管,又关闭了第一个数码管,你扫描数码管的时间加起来不要超过20ms就可以正常显示,希望我的回答对你有所帮助。
最佳答案
|
|
|
|
|
|
求解。。。。。
|
|
|
|
|
|
|
|
|
|
|
|
是出现乱码了,还是什么,你把现象放上来啊
|
|
|
|
|
人中狼 发表于 2017-8-22 11:56 我以为是这样的,在我位选后,74HC573=1;读取位,=0锁住数据了,然后扫段码,是不在我在段码后清零就可以了呢?共用P0口是可以的吧 |
|
|
|
|
|
|
|
|
|
|
程功之道 发表于 2017-8-22 15:04 你的意思是我的位码和段码冲突了是吗?有个问题,我写了位码后,用74HC573使能端低电位锁住了,然后刷新段码了,不是要被覆盖掉的吗 |
|
|
|
|
|
switch(i) { case 0:wei0 = 1;wei = 1;wei = 0;i++;P0 = buff[0];duan = 1;duan = 0;P0 = 0x00;break; case 1:wei1 = 1;wei = 1;wei = 0;P0 = buff[1];duan = 1;duan = 0;i++;P0 = 0x00;break; case 2:wei2 = 1;wei = 1;wei = 0;P0 = buff[2];duan = 1;duan = 0;i++;P0 = 0x00;break; case 3:wei3 = 1;wei = 1;wei = 0;P0 = buff[3];duan = 1;duan = 0;i++;P0 = 0x00;break; case 4:wei4 = 1;wei = 1;wei = 0;P0 = buff[4];duan = 1;duan = 0;i++;P0 = 0x00;break; case 5:wei5 = 1;wei = 1;wei = 0;P0 = buff[5];duan = 1;duan = 0;i=0;P0 = 0x00;break; default:break; 这样改也不行 |
|
|
|
|
程功之道 发表于 2017-8-22 15:04 switch(i) { case 0:P0 = 0x01;wei = 1;wei = 0;i++;P0 = buff[0];duan = 1;duan = 0;break; case 1:P0 = 0x02;wei = 1;wei = 0;;i++;P0 = buff[1];duan = 1;duan = 0;break; case 2:P0 = 0x04;wei = 1;wei = 0;i++;P0 = buff[2];duan = 1;duan = 0;break; case 3:P0 = 0x08;wei = 1;wei = 0;i++;P0 = buff[3];duan = 1;duan = 0;break; case 4:P0 = 0x10;wei = 1;wei = 0;i++;P0 = buff[4];duan = 1;duan = 0;break; case 5:P0 = 0x20;wei = 1;wei = 0;i=0;P0 = buff[5];duan = 1;duan = 0;break; default:break; 也不行。。。。。 |
|
|
|
|
程功之道 发表于 2017-8-22 15:04 switch(i) { case 0:P0 = 0xfe;wei = 1;wei = 0;i++;P0 = buff[0];duan = 1;duan = 0;break; case 1:P0 = 0xfd;wei = 1;wei = 0;;i++;P0 = buff[1];duan = 1;duan = 0;break; case 2:P0 = 0xfb;wei = 1;wei = 0;i++;P0 = buff[2];duan = 1;duan = 0;break; case 3:P0 = 0xf3;wei = 1;wei = 0;i++;P0 = buff[3];duan = 1;duan = 0;break; case 4:P0 = 0xef;wei = 1;wei = 0;i++;P0 = buff[4];duan = 1;duan = 0;break; case 5:P0 = 0xdf;wei = 1;wei = 0;i=0;P0 = buff[5];duan = 1;duan = 0;break; default:break; 总算对了 |
|
|
|
|
程功之道 发表于 2017-8-21 22:47 还 是有问题了,第四个数码管显示8。。。。。 case 0:P0 = 0xfe;wei = 1;wei = 0;i++;P0 = buff[5];duan = 1;duan = 0;break; case 1:P0 = 0xfd;wei = 1;wei = 0;;i++;P0 = buff[4];duan = 1;duan = 0;break; case 2:P0 = 0xfb;wei = 1;wei = 0;i++;P0 = buff[3];duan = 1;duan = 0;break; case 3:P0 = 0xf3;wei = 1;wei = 0;i++;P0 = buff[2];duan = 1;duan = 0;break; case 4:P0 = 0xef;wei = 1;wei = 0;i++;P0 = buff[1];duan = 1;duan = 0;break; case 5:P0 = 0xdf;wei = 1;wei = 0;i=0;P0 = buff[0];duan = 1;duan = 0;break; default:break; |
|
|
|
|
|
|
|
|
|
|
不想起名字啊 发表于 2017-8-22 23:28 case 3:P0 = 0xf7;0xf3是同时选择2位数码管 |
|
|
|
|
|
嗯嗯,算错了,晚上回去改过看看还有没有这个问题
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
234 浏览 0 评论
514 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
826 浏览 0 评论
1366 浏览 2 评论
814 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16911 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 01:17 , Processed in 1.169404 second(s), Total 101, Slave 80 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
8405