找回密码
 立即注册
楼主: 江上酒酒

发现一个神奇的问题

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:568
  • 最近打卡:2025-06-18 08:11:24

114

主题

2028

回帖

5823

积分

论坛元老

积分
5823
发表于 2024-11-5 09:19:23 | 显示全部楼层
的确很神奇,有时间得试一试。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:75
  • 最近打卡:2025-01-05 14:16:57

30

主题

132

回帖

214

积分

中级会员

积分
214
发表于 2024-11-5 09:23:04 | 显示全部楼层
VC*** 发表于 2024-11-5 00:13
是不是STC32单片机太快了,矩阵按键的扫描激励通过IO送出去后,尚不稳定就开始了状态读取呢?

可以在分别 ...

试过了还是不行。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:75
  • 最近打卡:2025-01-05 14:16:57

30

主题

132

回帖

214

积分

中级会员

积分
214
发表于 2024-11-5 09:24:41 | 显示全部楼层
xxkj*** 发表于 2024-11-5 09:19
的确很神奇,有时间得试一试。

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:75
  • 最近打卡:2025-01-05 14:16:57

30

主题

132

回帖

214

积分

中级会员

积分
214
发表于 2024-11-5 09:33:56 | 显示全部楼层
王*** 发表于 2024-11-4 23:50
可以进入仿真,看看实际运行中的输入是进入了哪一行。
方便确定是哪里的问题 ...

嗯嗯,稍后会试一下
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:461
  • 最近打卡:2025-06-18 01:15:53
已绑定手机

38

主题

2222

回帖

2671

积分

荣誉版主

积分
2671
发表于 2024-11-5 10:17:59 | 显示全部楼层
VC*** 发表于 2024-11-5 00:13
是不是STC32单片机太快了,矩阵按键的扫描激励通过IO送出去后,尚不稳定就开始了状态读取呢?

可以在分别 ...

他这个判断实在while(1)循环里面,就算状态不稳也不会持续很久,若干次循环后总会稳定,而且只有开灯操作,没有闭灯操作,不大可能因为IO速度太快判断出错。
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:24
  • 最近打卡:2025-06-13 00:05:49

115

主题

1223

回帖

1万

积分

荣誉版主

积分
13008
发表于 2024-11-5 11:13:35 | 显示全部楼层
江上*** 发表于 2024-11-5 09:12
受教了,主要是新手,看手册有些难度。

(1)对于工作在“准双向口”模式的端口,在向端口赋值后(“P0=0XFE;   //检测第一列”或者“P0=0XFD;   //检测第二列”),需要等两个时钟周期以上才能正确读到端口的数据(“if(P06==0&&P07==1)  //0键按下”或者“if(P06==0&&P07==1)  //1键按下”)

(2)因此对于任何行列式(矩阵式)扫描键盘,必须在设置端口后加“NOP”指令延时后再读键盘状态!
(3)“看手册有难度”,抄袭会不会举一反三会不会?下面是STC官方范例,官方范例就是拿来给你抄的呀:

void IO_KeyDelay(void)
{
    u8 i;
    i = 60;
    while(--i)  ;
}

void IO_KeyScan(void)    //50ms call
{
    u8  j;

    j = IO_KeyState1;   //保存上一次状态

    P0 = 0xf0;  //X低,读Y
  IO_KeyDelay();
    IO_KeyState1 = P0 & 0xf0;

    P0 = 0x0f;  //Y低,读X
   IO_KeyDelay();
    IO_KeyState1 |= (P0 & 0x0f);
    IO_KeyState1 ^= 0xff;   //取反

(4)古人都知道“走路走大路,万不要走小路”,对于STC单片机,STC官方的手册就是大路,STC官方范例就是大路大路宽,大路直,大路才是最短的路
(5)感叹:版主、客服、咨询和老总,一个比一个耐心好,要是我的学生这样,他早就被泪眼汪汪了

回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 11:54 , Processed in 0.189673 second(s), 84 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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