|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
我是利用定时器来进行仿真的 下面是我的程序 我打算输出1US的方波但是结果却是40us6 O, A7 i# I& |5 u2 i
#include<reg51.h>
( L0 E( d! T7 S#define uint unsigned int
! a) m7 q8 q; d1 b4 O#define uchar unsigned char
! s& N6 g: _4 }sbit out=P1^3;
# C( l9 ]( h: ^* k2 tuint num,N;
2 o& N7 G9 v. vuchar FT;/ O% I0 J" j* N& M1 y
void main(viod)
* i/ I; ?. R( ^$ N! x9 C{
7 e! s: O5 X! a: T6 O* [6 @& H EA=1;//全开
5 A4 G( g- @# g( N- ~- o* O. | ET1=1;2 P5 q! d% t3 V
TMOD=0x01;% p0 Y& z" R5 z% A
TH1=(65536-1)/256;
' F) d+ l- O& Q- ]! J TL1=(65536-1)%256;1 J) X4 f. B/ ^9 V
//EX0=1;! V) y, \' J& f2 ^# v$ ]6 {
//IT0=1;
& ^6 f" ?0 X7 X! o: n) l// ET0=1;
. v& b! h. U% w& O
) R0 x; ^& c; [ H4 X// TR0=1;9 `. L. V" V' E) x5 u
TR1=1;
" W) a( H: s C) ~# l while(1);
& X4 d: d+ \6 ?
( X c v/ j* ~: z, W+ U6 G q0 E
}
; u d6 C" x0 c/ v8 D# N. q% D+ ?, ^) M3 X/ B
void T1_timer() interrupt 31 B8 W+ D, R( X6 V. R
{
/ O- G$ R$ i: q, ^2 P TH1=(65536-1)/256;/ m2 e, Y7 c# V
TL1=(65536-1)%256;9 N6 l* i! k1 c/ }8 B
out=~out;
( \% t9 c- H' P7 R. G' @ // delay(1);
" G- W/ K# z0 u w // TR1=0;
8 U1 c. H9 w) H- j( x& G L. e4 ?}
" `+ T1 O1 J' j! J7 h7 B' }1 L
6 |* v: ^( \! a2 _7 a* u* ^2 A
|
|