智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2949|回复: 7
打印 上一主题 下一主题

对按键进行操作时要注意哪些事情?我发现并不是将通道设置为输入模式以后,就可以检测

[复制链接]

1

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
199
威望
140
贡献
45
兑换币
0
注册时间
2012-8-8
在线时间
7 小时
跳转到指定楼层
1#
发表于 2012-8-27 11:09:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>      /* derivative-specific definitions */
unsigned int num;
void delay(int z)
{ int x,y;
  for(x=z;x>0;x--)
    for(y=4000;y>0;y--);
}
void keyscan(void)
{
   if(PORTA_PA0==0)
   delay(4);
    if(PORTA_PA0==0)
       num++;
    if(num==9)
        num=1;            
}
void main(void)
{
  DDRB=0xff;
  DDRA=0xfe;  
  for(;;)
  {
     keyscan();
     
     if(num==1)
        PORTB=0X01;
     if(num==2)
        PORTB=0X02;
     if(num==3)
        PORTB=0X04;
     if(num==4)
        PORTB=0X08;
     if(num==5)
        PORTB=0X10;
     if(num==6)
        PORTB=0X20;
     if(num==7)
        PORTB=0X40;
     if(num==8)
        PORTB=0X80;
  }
}
PB口控制小灯,PA0口接一个按键,为什么按键不起作用呀?哪里出问题了,怎么修改呀?

0

主题

157

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2383
威望
1211
贡献
504
兑换币
382
注册时间
2012-2-17
在线时间
334 小时
毕业学校
北方工业大学
2#
发表于 2012-8-27 13:03:27 | 只看该作者
消抖~  
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
199
威望
140
贡献
45
兑换币
0
注册时间
2012-8-8
在线时间
7 小时
3#
 楼主| 发表于 2012-8-27 16:38:00 | 只看该作者
、煈の°絮だ 发表于 2012-8-27 13:03
消抖~

在keyscan里面已经有消抖的程序了,还会有什么原因呀?
回复 支持 反对

使用道具 举报

11

主题

583

帖子

0

精华

常驻嘉宾

MISS Gao

Rank: 8Rank: 8

积分
5774

优秀会员奖章活跃会员奖章在线王奖章论坛元老奖章

威望
2282
贡献
1682
兑换币
935
注册时间
2012-2-12
在线时间
905 小时
4#
发表于 2012-8-27 18:53:44 | 只看该作者
有木有配置锁相环?主频?
回复 支持 反对

使用道具 举报

0

主题

157

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2383
威望
1211
贡献
504
兑换币
382
注册时间
2012-2-17
在线时间
334 小时
毕业学校
北方工业大学
5#
发表于 2012-8-27 21:07:16 | 只看该作者
看你写的程序  个人认为 还是用 中断吧 用上升沿触发  如果有软件滤波或者是硬件滤波的 都应该没有问题的
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
199
威望
140
贡献
45
兑换币
0
注册时间
2012-8-8
在线时间
7 小时
6#
 楼主| 发表于 2012-8-28 13:04:31 | 只看该作者
subingkiun 发表于 2012-8-27 18:53
有木有配置锁相环?主频?

没有,就默认了。用51写这些程序不会有什么问题的,不知道为什么,飞思卡尔单片机就是有问题。能不能帮忙写一个简单的程序,功能就是按键按下去灯就亮,松开灯就灭,我想看看是不是有什么寄存器需要初始化。
回复 支持 反对

使用道具 举报

200

主题

2621

帖子

1

精华

杰出人士

蜗牛

Rank: 12Rank: 12Rank: 12

积分
12488

优秀会员奖章活跃会员奖章论坛骨干奖章论坛元老奖章在线王奖章资源大师奖章

QQ
威望
5973
贡献
3101
兑换币
1999
注册时间
2011-10-21
在线时间
1707 小时
7#
发表于 2012-9-4 20:56:51 | 只看该作者
接上拉电阻稳定些,高电平表示没按,低电平就是按下去了。
回复 支持 反对

使用道具 举报

11

主题

102

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1141
威望
552
贡献
353
兑换币
350
注册时间
2014-8-31
在线时间
118 小时
8#
发表于 2014-12-4 12:04:02 | 只看该作者
上拉电阻
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-25 14:49 , Processed in 0.408406 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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