找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

51单片机keypad键盘数据采集这个百思不得其解的问题

查看数: 909 | 评论数: 13 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-11-3 21:58

正文摘要:

temp=KEY_ScanPort;                 //读P1口               temp=temp&0xF0;   &nbs ...

回复

ID:161164 发表于 2024-11-6 11:01
万家灯火51 发表于 2024-11-5 13:21
你这测试有意思。我还没有去这么仿真测过。不过这自画键盘,我画过,没有任何问题,所以没有去进一步研究 ...

我仿真测试的就是自画键盘啊,当然keypad这个键盘模板也会出现同样问题
ID:1109793 发表于 2024-11-6 07:35
万家灯火51 发表于 2024-11-5 13:13
谢谢还记得前面的问题。这个问题是新问题。跟前面那个不一样。这次这个代码是个很神奇的问题。

前几天有人问过类似的问题,不是你问的,我是说那个,你搜索一下就看到了。
ID:192020 发表于 2024-11-5 17:11
既然都说真实键盘正常了,何必还纠结这个仿真?毕竟还得以实物为主。
ID:349276 发表于 2024-11-5 13:24
这个还没有解决,顶一下。
ID:349276 发表于 2024-11-5 13:24
cyi8 发表于 2024-11-4 08:22
回去好好看一下51单片机各口的定义,51单片机的各输入输出口只是准双向口,不是真正的双向口,所以当要接收 ...

KEY_ScanPort=0xFF;//真实键盘和其它仿真模型键盘,可以去掉这一句的。但keypad模型,删除这一句,下面temp就采集不到正确数据了,为什么?
        
        KEY_ScanPort=0x0F; //   高四位置0,低四位设置为数据采集状态            
         temp=KEY_ScanPort; //上面那句去掉,这里采集到的数据就是错的
ID:349276 发表于 2024-11-5 13:21
lkc8210 发表于 2024-11-4 09:20
仿真不真,详情看此贴:
解决某些版本Proteus阵列键盘失效的奇葩方法

你这测试有意思。我还没有去这么仿真测过。不过这自画键盘,我画过,没有任何问题,所以没有去进一步研究。下次试试。这个帖子问的问题,只有才keypad这个键盘模板里才遇到。其它自画键盘或真实键盘中,不存在这个问题的。所以,不知道是proteus 的keypad这个模型本身有问题还是,自己哪点没有理解透。
ID:349276 发表于 2024-11-5 13:13
xiaobendan001 发表于 2024-11-4 09:42
这个不是前几天刚问过?

谢谢还记得前面的问题。这个问题是新问题。跟前面那个不一样。这次这个代码是个很神奇的问题。
ID:349276 发表于 2024-11-5 13:12
cyi8 发表于 2024-11-4 08:22
回去好好看一下51单片机各口的定义,51单片机的各输入输出口只是准双向口,不是真正的双向口,所以当要接收 ...

KEY_ScanPort=0x0F; //   高四位置0,低四位设置为数据采集状态
这一句,低4位就是置1,断cmos门地,准备好采集数据。   所以,不是你说的原因。
ID:1109793 发表于 2024-11-4 09:42
这个不是前几天刚问过?
ID:161164 发表于 2024-11-4 09:20
ID:1121801 发表于 2024-11-4 08:22
回去好好看一下51单片机各口的定义,51单片机的各输入输出口只是准双向口,不是真正的双向口,所以当要接收外部数据输入是,要先将输入输出口置1,然后读取的数据才会正确,不置1的话,读取到的数据就是内部缓冲器的数据,会不准确,因为内部缓冲器的数据不一定是输入的数据,还有可能是内部代码产生的数据。
ID:349276 发表于 2024-11-3 22:00
说明一下,不是延时等待电平稳定问题。测试过了。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表