|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
在下载实验上可以起控(带晶振),在自已做的电路板上时间到不能起控(内部RC振荡),其它功能一切正常难道用RC振荡就不能用定时器中断吗?各位大哥帮帮忙了。" q4 D# \8 X* ^9 @# \2 P4 O. n4 A' m; s
0 K1 {+ N5 J! W1 Y9 P+ d
4 i) X7 W- R5 E8 g: g( t
8 l5 p; l9 [+ f6 p# u% ]5 ^- J" y
# R$ m9 K* c: A+ [" {0 S . {: B: x: k ?/ |4 V4 W0 O3 \
#include<reg51.h>- K% _: U; |; U: N4 P
#define uchar unsigned char' n, Y# l0 r" q0 Z
#define uint unsigned int! w' B1 v. @0 ]
uchar a;
" Q2 N5 z: u+ r$ A" ~* Y" c1 {uchar miao,fen;
$ o$ u7 T' ?7 x) _/ X u* d2 \, Y
* ?7 V/ s7 g% T/ o% a a7 Y4 z q; L2 j: |8 M
sbit P17=P1^7;
; h% v$ v/ w: d3 ^ v7 R' e % k% w, x7 G$ y' Y$ {# t/ ]1 C
% k' P1 v; R7 J/ s) j) i+ T; n: J# U
5 o+ s% [+ A7 W" c8 p4 svoid chushiT1() //初始化T18 _% N, S; [% J9 X0 q1 o. S" b9 p
{
! z2 M& r2 W- q) H TMOD=0x10;//定时器1 方式2$ }5 y& V. O; J+ X1 I; N
TH1=(65536-50000)/256; //50ms初值
2 |( o0 c( C. R: o1 W- ?) }* l: u TL1=(65536-50000)%256;% t" \" _6 b! Z5 `3 q! M/ B$ |% |5 J! I
EA=1; //总中断开; O5 a' X* q/ E/ P8 g& j) d5 b
ET1=1; //允许T1中断
2 o7 C8 b. P! l5 c8 ` TR1=1; //开定时器T1
) `* |& a1 C% B, y}; _# q# @$ T" ?% ^1 m$ Y5 C' U
. x& R x& x6 U- d8 M
void zhongduan() interrupt 3 //T1的中断程序; F! O; h0 J' X" N
{7 S: A" \& \" x$ j# N2 J8 w
TH1=(65536-50000)/256; //重装50ms初值
3 q/ L' J d$ P" A8 T) k7 b TL1=(65536-50000)%256;
# K, I" A# p5 X7 F! X4 _# Q( |% M9 o3 h a++;
' l8 P& u# o. X: m9 p8 h- o* ~( w1 o if(a==20) //1秒钟到了+ g7 a. m; M9 d' L
{
Q9 }! a I' E6 H2 x' F$ l) s a=0;
7 e7 R" K- w- n4 H1 F miao++;6 A' g: I, L3 g5 q! ^' ]7 f V
if(miao==60)
" g; O5 t: E# D" A: e {( ?5 _$ {& ^9 R
miao=0;
: c' B1 G# u# K. u fen++;
; ^' S) h0 e' r8 Q }% K if(fen==2)6 f R/ E3 U5 L( q5 Q' L
{2 e6 J2 U, h: C. P' R1 ^
fen=0;
, H8 `; H9 D+ t % }/ o0 f0 }- |! F# \ u$ Q+ b3 q
}" i9 R! ^7 X2 G
} & y# |' Q0 G/ {7 O' [
}
& \% E$ q- e$ {7 x8 s}# ]' w, I9 O( @ B+ _1 m
2 h ?" a$ E. H4 J% H% `
& ^# U. y2 @9 m, x! I
( i0 m4 O& p9 {: m3 tvoid main()
6 c* {% ^1 i$ B& ~4 e2 c* @+ C: j{ chushiT1(); //初始化T1
* q6 u+ T' X) d; V& d while(1)# h5 w& a2 |0 S. o3 ]
{
1 b; L6 u0 l$ c3 N5 Q P17=0;
% N! \; C5 ~# Q4 C! ~& ]/ o if(fen>=1)
. F- ?6 t& K/ Q" d {
& }: z# X& I# [/ ~ while(1)
9 \2 o( e, Q. G. f* j, m {
2 z( b3 `. |+ j4 w5 e P17=1
* F) u ]* i% \2 u# k$ p
0 Q- k8 `: |2 x% V }- n5 ], m. P: \
}$ t% g) b' A' i" q ^9 r, |# R* W% k
}
# F& m2 U7 ?2 q+ a
- E6 A7 N7 r, t* U& \% o6 k' c; O } |
 手机扫码浏览
|