|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
单片机定时器0方式2输出方波 有proteus仿真 汇编语言源程序
" L; e3 {1 \8 B
% r( G" j# V& Q/ o/ @/ |
/ }/ e3 I7 k7 C3 Y! e& P W: L定时器输出方波proteus单片机仿真原理图:6 Y2 L: Y* r& y! M3 i* a2 Y- Q. _
& D0 k# e- W6 ?; V$ `单片机的定时器0设置为计数方式2(自动重装初值0FFH)一旦外输入P3.4有下降沿信号即产生中断,P1.1输出高电平指示LED亮,并启动定时器1工作方式2也是自动重装方式,初值按6M晶振机器周期为2微秒算500微秒 256-500/2=6,定时器1每500微秒产生一次中断取反一次P1.0,所以在P1.0上接的示波器会显示周期为1MS方波
! _" D" e" q7 [/ w2 {- x 6 w2 t0 t6 y' E& t+ v: c1 {
) O+ T5 Q A1 Y6 H+ }6 n7 `单片机汇编语言源码:
2 ^) m6 r5 v$ b. d& R org 0h
) x% d. s6 x# ?6 ?# m# f$ o8 ZRESET: AJMP MAIN& i( q# U5 v$ V1 S9 U" K' g
ORG 0BH3 K" R, [. ?. z3 z0 e5 m/ m5 e1 R
AJMP IT0P
$ l) C+ f; `8 s" G' ?: o7 O5 H ORG 01BH. M$ f2 T0 I; t0 N& Q' V2 p
AJMP IT1P
* R- m4 V- L$ y/ W$ l9 @% P' x ORG 100H
6 l) @; {( g+ A3 dMAIN: MOV SP,#60H
9 u' R1 v1 U% g5 s ACALL PT0M2
" s0 H( p0 U9 Y6 wLOOP: MOV C,P1.1
) L) ~$ X; G* q2 F# T JNC LOOP
3 N! h) V8 U- ~! ~: E SETB TR1
9 X+ H( B3 C7 `5 v SETB ET1
- @$ F& e' { F5 Q, {5 C( t5 fHERE: AJMP HERE; \/ h% u# D/ R( W9 B( W# O* i h
PT0M2 : MOV TMOD,#26H
: v3 Q4 o9 a0 X1 Y7 J1 F MOV TL0,#0FFH7 `# H3 L* Y0 u7 R0 A# S' }: g' [" d1 s
MOV TH0,#0FFH2 K! U3 I, R4 p& ?4 C
SETB TR0
9 }7 ?9 M k: w5 L5 i SETB ET0- s/ g O3 S* K% R8 J* k" k
MOV TL1,#06H# a0 o- J' |' m
MOV TH1,#06H' ~0 X5 ? W v2 }/ @$ [$ ]
CLR P1.1: l% D" L9 f6 p1 {8 g
SETB EA
! q. ]7 E, @+ z2 x2 I RET. w% x! t' V; K
IT0P: CLR TR0* ~3 P1 C* S0 r) r" M0 h* Z
SETB P1.10 H, s0 Z0 y; F, r
RETI/ \# X$ D& F8 c" x+ a
IT1P: CPL P1.06 L8 _+ U7 Z- v! G1 H; N: {' _
RETI 7 E8 p6 R# P P' S- h9 m
END
$ @1 t" Q: R# H" _! |0 J
, x3 u. M m) V# n* F9 F* P) G9 R- Y2 ^! b9 k
6 p5 U7 J' S. ]$ Y0 U |
|