EDA365电子工程师网

标题: MEGA128的按键程序问题! [打印本页]

作者: weixiao8776    时间: 2012-7-28 11:55
标题: MEGA128的按键程序问题!
各位高手帮忙看一下我的这个程序,为何在按键按下之后,PORTA却没有输出相应的值?1 C/ P* x2 n1 B0 S6 j8 l
#include<stdio.h>7 W; o! ^& k- b, K9 N
#include<iom128v.h>1 Y( A  E# @# Q4 L- J9 D. f& C

( T( j  _  E# |( d# pvoid delayns(void)
( {, J( P& l, N) u3 E+ ]# b/ H{/ X/ ]8 }5 I$ h5 e# ^4 f
         unsigned char i;
% L- `3 j4 ]8 ?+ E         for(i=0;i<50;i++);
& e% V4 E$ {# m8 c+ J4 z}5 j1 C  ^/ W4 f+ `6 U9 e- S
$ M# x, o) f1 i0 t3 L( \
6 x7 u- w9 S" B
void main(void)
& b3 A7 b2 ^5 a$ s) N. r{
9 c+ j9 O" h5 h, A1 n" [# Y  I+ w          DDRD=0X00;# W: o+ {9 B: s
         DDRA=0XFF;
; {" c: P' h* e& V, D; n; ]; E         DDRE=0X04;3 b! X7 }$ ^% M, _' y2 j
         PORTD=0XFF;2 q% `3 z# C# h$ u
         PORTA=0XFF;
' C9 @/ Q/ _' j5 A. r* N         PORTE=0X04;
! B$ O& X" p# z: F( S& O# v" {8 F         while(1)4 m6 F3 @3 J8 Z& |7 h
         {
/ q, R- X1 o3 _9 P/ i% A                  if(PORTD==0xFE)
$ h+ A5 B6 m9 b                {5 T" I# G: [8 d8 t/ D4 ~
                          delayns();
. U! e! S* ]- |- [0 s/ @                          if(PORTD==0XFE)
$ ?; b" R5 Y. F2 j& q                         PORTA=0XFE;7 `- \: k/ w) a) q/ f+ o
                }
5 K5 ?  V1 S  O: J/ y4 r9 y3 b         }5 R8 z( j. }. _' k# |; ?
}

222.jpg (19.27 KB, 下载次数: 5)

按键

按键

作者: jinbangzhou    时间: 2012-7-31 09:13
你读端口应该用寄存器PIND,而不是PORTD
作者: xingxing    时间: 2012-8-13 17:35
比较同意楼上的意见。
作者: yuhuikeji    时间: 2012-11-16 11:47
你都没定义输入输出状态,怎么会有反应呢?




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2