|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
大家帮忙看一下这个用ICC AVR 编写的MEGA128的程序,为何我给了INT3下降沿,而程序始终无法进入到中断里面去执行程序?还有哪里没有设置正确吗?
, _6 F. p( J4 K7 O) h#include<iom128v.h>
% D+ l8 _8 e3 @; I1 H#include<macros.h>
" @* M8 h% x% D9 |: l9 T4 K# K3 R z0 I' z
#define uchar undigned char
" N- m) S+ ~( C% ^3 E
0 h3 L$ F9 C) Q& f7 j/ x9 S#pragma interrupt_handler int3_isr:5
: G/ F( t! ~% l' k, Qvoid int3_isr(void)
! B& K% t3 C w. N! Z# H8 G# d5 s{6 U/ K4 L' U8 j; f; A
PORTA=0X0F;
- ?4 ^9 i0 k7 H# ?# u, G6 \0 Z, y+ \}5 \7 N5 O7 v0 R% a( y8 u! u
1 I8 l! L% |/ T c" U' u" \: x$ }void INT3_init(void)
3 W4 `, f+ L8 I( D% x. T{
2 g! c# p! T& g* B EIMSK=0X00; //屏蔽外部中断! v _3 s# j1 v8 e
EICRA=0X80; //设置外中断3为下降沿触发3 v4 z& k! A& ~) V- I& j, C
EIFR=0X00; //中断寄存器置0, H. [$ y% Q' l
SREG=0X80; //打开全局中断
- m2 @! n! ^- J$ `# m EIMSK=0X08; //使能外部中断3
6 q3 K! i6 i8 Y0 H4 _! I4 G7 e}: L. z, B" ]# T# f1 l
3 @7 C: s) I2 d! m) v& p9 Gvoid main(void)
( X% a* l" v# c6 M8 e* G& {4 ]{
+ e1 n. p7 `: N PORTA=0XFF;
/ I5 D% P9 _# c# ` DDRA=0XFF;
; `" G. t: o2 k3 U/ I PORTE=0X04;! H4 ?; P: ]( N( D& f* A1 G
DDRE=0X04;
9 J) R* ^% \+ W: B9 i2 F% e% E1 m INT3_init(); //中断初始化/ ~6 N! w* e- z3 y- a
while(1)
: m" I1 ^0 F) x4 g+ a, c {+ c7 _. c* `3 Q+ M7 l( z: _3 \- _
PORTA=0X00;/ k1 q4 p2 o" S! A1 D2 @
}) w" T" I! Q# D% b
} |
|