csmyldl 发表于 2024-5-2 11:43
前面加一个16至4位二进制的编码电路,不过这样电路复杂了,不如用8个端口组成行列按键,或者用18个电阻串联 ...
188610329 发表于 2024-5-2 13:16
unsigned char MatrixKey()
{
unsigned char k=0;
Hephaestus 发表于 2024-5-2 15:01
但是你的数据跟DTMF矩阵完全对不上号。
bd5fna 发表于 2024-5-2 15:35
unsigned char k=0;
switch((P2>>2)&0x0f) K=0,那0的键值是不是无法提取出来。
xiaobendan001 发表于 2024-5-2 16:26
4位不就是最多16个啊,看楼上的真值表,0也是有用的,很明显要有一个别的什么信号来确定是不是有按键按下 ...
bd5fna 发表于 2024-5-2 16:49
芯片上有一个STD信号在有按键按下时产生高电平。
zhuls 发表于 2024-5-2 16:42
你这个是在同一个端口,要取数简直没懈奖懔耍∧悴慰家幌拢�
temp=P1; //读P1口数据值
temp=temp>>2; / ...
Hephaestus 发表于 2024-5-2 18:51
return("1234567890.#ABCD"[(P1>>2)&0xf]);
就一句话的事情,写那么多干什么。
Hephaestus 发表于 2024-5-2 18:51
return("1234567890.#ABCD"[(P1>>2)&0xf]);
就一句话的事情,写那么多干什么。
zhuls 发表于 2024-5-2 20:57
你看的懂,不代表天下人都看的懂
Hephaestus 发表于 2024-5-2 18:51
return("1234567890.#ABCD"[(P1>>2)&0xf]);
就一句话的事情,写那么多干什么。
188610329 发表于 2024-5-2 23:13
确实,就一句话都还能写错……,还不如人家写复杂一点的…… 至少能保证对。
bd5fna 发表于 2024-5-3 10:25
请各位大佬再帮忙看看,输入密码时任何键都不会显示,只有按下确认键会显示错误(任意键做确认键都会显示错 ...
lkc8210 发表于 2024-5-3 10:25
虽然精妙,可惜楼主的0到9不是ASCII
lkc8210 发表于 2024-5-3 14:48
STD 信号呢?
Hephaestus 发表于 2024-5-3 15:13
我回复15楼,你的问题找15楼说去,别在我的帖子里面插嘴。
bd5fna 发表于 2024-5-3 15:22
if(dtmf_ok==1)再检测按键也一样,不行。
Hephaestus 发表于 2024-5-3 15:13
我回复15楼,你的问题找15楼说去,别在我的帖子里面插嘴。
bd5fna 发表于 2024-5-5 12:35
已经改用下降沿触发检测按键,但还是开机满屏的‘0’。
zhuls 发表于 2024-5-6 16:44
你要确认,DTMF解码是否正常!d0-d3是否有输出!
把STD接个电阻串个LED,再把OE接到STD,看看每按一次键 ...
bd5fna 发表于 2024-5-6 21:02
目前的情况给各位大佬汇报一下:
void main()
{
lkc8210 发表于 2024-5-7 11:10
代码要贴全部
你的k在哪更新?
bd5fna 发表于 2024-5-7 22:04
这是完整的代码,请各位大佬帮忙看看,哪里出错了。
#include //#include
//#include
zhuls 发表于 2024-5-8 16:26
你是一字不改直接拿来用吗?
看代码D0-D ...
bd5fna 发表于 2024-5-8 21:15
硬件改过了,写代码不行,这些简单的电路,还是可以搞定的。
zhuls 发表于 2024-5-8 23:46
如上所述,你的K值在哪里更新了?
你一直贴代码,一直没看到K值有更新的代码。
你把电路也贴上来吧,或 ...
zhuls 发表于 2024-5-9 09:26
void External_Interrupt_Init()
{
EA = 1; ...
bd5fna 发表于 2024-5-9 08:23
这图上接的是P2口,我已接到P1口上了。
bd5fna 发表于 2024-5-9 10:05
这个应该没有问题,在STD高电平消失的一瞬间读数据,因为D0-D3的数据是在锁存状态,TOE接的是高电平,按 ...
lkc8210 发表于 2024-5-9 11:10
LCD的端口改了吗?
bd5fna 发表于 2024-5-9 18:37
各位大佬帮忙看看是不是1602驱动的问题,造成下一行无法显示而觉得代码有问题。
#include “LCD_16x2_8-bi ...
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |