找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 935|回复: 1
打印 上一主题 下一主题

一个简单的IO程序问题!

[复制链接]

8

主题

11

帖子

92

积分

二级会员(20)

Rank: 2Rank: 2

积分
92
跳转到指定楼层
1#
发表于 2012-7-29 12:47 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
各位大侠帮忙看一下这个程序,为何我无法对单片机的IO口进行单独的位操作。即使按键没有按下,也就是PIND0为高电平的状态下,程序依然进入到了if里面去执行语句。按正常情况的话,它是不应该执行if里面的语句的。这是怎么回事?程序和仿真图片如下:( g3 E2 f- m" C+ j$ C
#include<stdio.h>
# J7 k4 }) _. c8 {  ?& I  D: U1 E#include<iom128v.h>0 T+ j  [  X- D. ~( Y( O
void delayns(void)
1 {2 I; _) P- i# Z{
/ ?) N/ T. B/ w& u! r   unsigned int i;* |/ f' P3 k) f4 T9 w% B7 z
  for(i=0;i<50;i++);4 j3 A$ C( `- P0 Q% N( l
}& e$ P' f. A* Y- _" f7 L

- u7 ?1 e# C: jvoid main(void)
5 n6 ]5 O' b* L! Z+ a{3 J4 l% }$ m; n4 `
   DDRD=0X00;9 c# i7 `( w4 t& O. H) T
  DDRA=0XFF;
1 W5 [0 \7 x3 |- y  DDRE=0X04;
# @% B) k9 ~- M2 V- i  PORTD=0XFF;
' @$ k, n( [8 u9 ]! F: \) O  PORTA=0XFF;
3 x, N3 F: u2 @# P4 x8 H3 M- V5 T7 Z  PORTE=0X04;0 {) \# \8 ]' a/ D. J' L
  while(1)
/ c/ M0 H9 ?) L  T0 T* ]3 N  {* \9 Z" Y/ W' Y* x; C
    if(PIND0==0)
, U' }# x" ?7 ~; c# @' D  {
0 G3 P0 N% ^7 R. w, K3 D$ T    delayns();( K) @4 W8 ^& u9 ^9 j& O3 w
     if(PIND0==0)
. K" f4 {, N! E+ h, A    {PORTA=0XFE;}; O- V8 G* }5 w: l) ^" }
  }+ n3 ]- Y7 A! S
  }. N# f4 J, f# @/ d9 \6 d* O
}
$ v5 g) d  Y8 H8 u' q

1111111111.jpg (31.18 KB, 下载次数: 3)

1111111111.jpg
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

0

主题

168

帖子

2538

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2538
2#
发表于 2012-7-29 15:56 | 只看该作者
我不知道您用的是不是51单片机,我依稀记得51单片机读取端口时,先要输出高电平,然后再读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-8 22:30 , Processed in 0.060007 second(s), 34 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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