找回密码
 注册
关于网站域名变更的通知
查看: 750|回复: 4
打印 上一主题 下一主题

51单片机温度控制高温低温报警 带proteus仿真和汇编源码

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-1-16 14:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 kinidrily 于 2019-1-16 14:33 编辑 0 ~' p* n- Z0 @: E' B* H; l
: l& H, D9 h, D
51单片机温度控制高温低温报警 带proteus仿真和汇编源码
+ i5 F- A2 R, [( L5 d
" k$ z3 j( R& O
$ c0 H  ?$ x5 q( i, sproteus仿真图
/ g) J6 D1 Q5 v, ]: o2 O
+ P! [8 T' R+ f

. @6 ]6 t6 R! y7 y" w51单片机温度控制高温低温报警汇编语言源程序:1 s6 l9 M6 c2 u6 m
LED_0        EQU         30H- |# C. S: A( X2 \3 M" U3 w
LED_1         EQU         31H: f$ \  n' `% c  y3 w& [
LED_2         EQU         32H
& f/ G# b+ o' x: m9 QADC                EQU                35H
% L( [4 T, u. w# CTCNTA        EQU                36H, F) F: j# w5 R: z
TCNTB        EQU                37H
% h# m8 S4 z, t! rH_TEMP        EQU                38H                                ;温度上限
: o% J! z% `0 [% r- {( p% IL_TEMP        EQU                39H                                ;温度下限
# O. x6 d4 P8 l, R8 z2 OFLAG        BIT                00H' ~- e7 f% ~4 F* \; f& i  X
H_ALM        BIT                P3.09 p9 F& y0 g1 Q& |
L_ALM        BIT                P3.19 V" }8 r# G8 a9 [
SOUND        BIT                P3.7; |; n5 u+ D7 Z
CLOCK        BIT                P2.48 e1 w! g7 W' O
ST                 BIT         P2.5+ K6 R" f0 z, V0 }8 W& ^2 \
EOC         BIT         P2.6
7 E8 H9 q2 S/ P! U$ FOE                 BIT         P2.7  j7 D3 E) T  H4 t( g) {' m, B
                ORG         00H
) W6 {) b8 ~- n( ?& M                SJMP        START
# I$ W& m/ K- Y- p                ORG                0BH- q" d& Q! Z4 k, g- `
                LJMP        INT_T0
$ B& z! }# S& I4 g5 R. R& G6 ]# x                ORG                1BH9 j5 h7 `, D0 i( a+ j3 B. z
                LJMP        INT_T17 b- S9 ^+ r' _6 K4 y) N6 Q) A% U. p
               
' W" e3 N4 w% E$ e, _" S5 TSTART:        MOV                LED_0,#00H: Y& {* F5 F- f, X
                MOV                LED_1,#00H, D  A8 U! R1 D$ S+ p
                MOV                LED_2,#00H# Y: S- k  `$ j8 G5 N
                MOV                DPTR,#TABLE
3 z4 {  O" R- W  l! L                MOV                H_TEMP,#153
$ G, k& d6 c$ l7 Z                MOV                L_TEMP,#77
9 n2 b$ l# l$ M3 P                MOV                TMOD,#12H, h7 z( ?- K  S6 O; f# O  ~
                MOV                TH0,#2459 K* B6 w; |: r% }$ U- X
                MOV                TL0,#02 C7 k' U3 ^. H' F- l: J7 Z
                MOV                TH1,#(65536-1000)/256, `  z% r0 b8 n" u  w! ?0 F" _& n* S
                MOV                TL1,#(65536-1000)MOD 256
0 n7 Z9 u# S1 P. W4 D: a                MOV                IE,#8aH+ O0 L: J0 w  s6 e* v; |
                CLR                C4 J6 P, M3 S' Q) g
                SETB        TR0                                ;为ADC0808提供时钟3 ]6 p( m3 o; q* Q& ~
WAIT:        SETB        H_ALM6 w" z$ R9 I3 L5 R. o! t1 y
                SETB        L_ALM
3 ^. a: y" l5 c; F$ ]: }                CLR         ST
& Q; g, d8 \% L! d. L6 v                SETB         ST
& @' U' W5 X% G                CLR         ST                                ;启动转换
" P( }3 W" d! `! ~6 ]                 JNB         EOC,$
2 ^0 i5 j# w! s) r7 N                SETB         OE
. \9 x- \' ?# ]/ s5 i                MOV         ADC,P1                        ;读取AD转换结果  r: H0 k* e$ `* M7 n8 V) w
                CLR         OE
" J& R1 I. x7 Z, d1 a                MOV                A,ADC" C4 Q. }. h4 k% @( E# j
                SUBB        A,#77                           ;判断是否低于下限
' V3 T' {9 R$ K6 {                JC                LALM& Z# h7 n# W% K: r
                MOV                A,H_TEMP; Z4 ^; J5 i  z- P& g  C4 U/ w
                MOV                R0,ADC
! ^1 f' J% N# p8 d- s  T                SUBB        A,R0                        ;判断是否高于上限( X' i# N! b' Z2 i6 J5 Q
                JC                HALM) L! z6 ]( Y0 \5 I9 {$ s! g8 E
                CLR                TR1, h: E& A$ v/ M8 H6 G
                LJMP        PROC. P* G  d1 x* j0 a( \5 u
LALM:                                                        ;低温报警, g2 b, x' C) Y- L
                CLR                L_ALM* h: ~( r4 ?1 v1 d% s
                SETB        TR1
( Y8 w+ z; d  k                CLR                FLAG7 ?# s. R! Q) r: @. Y
                LJMP        PROC( G  K- F/ T2 k: L5 z8 B
HALM:                                                           ;高温报警
  }* ?& i# {1 ?                CLR                H_ALM  B5 @! {: a& I8 R5 D) g
                SETB        TR1
8 `5 K9 K2 y. t& S- Z% d/ t                SETB        FLAG
0 ?+ |6 F* ?$ C' `1 d9 q2 y                LJMP        PROC' J1 m7 k+ a% u/ J# T
PROC:        MOV         A,ADC                         ;数值转换( O, B; m5 k, y" @1 l1 Y
                MOV         B,#100
; m2 m6 x0 G9 E( W  w" W# J                DIV         AB
! M: b" N5 a' i                MOV         LED_2,A1 W$ ?3 v! F  V. e8 ^' A* W) U  s8 q
                MOV         A,B
/ j; Y% S9 w! \/ E; W                MOV         B,#10! R0 I3 ~& x* M) N
                DIV         AB
- ~* M- x* Q( P' a                MOV         LED_1,A
: K1 {3 V7 V. G8 W. {                MOV         LED_0,B4 g( U% \9 m+ z0 L9 G
                LCALL        DISP
8 D1 U+ j) K, ?8 m% a3 s6 T' N) z                SJMP         WAIT
. U" O3 j' D' p! X- oINT_T0:        CPL                CLOCK                           ;提供ADC0808时钟2 o, q* O% M/ Y8 q. |9 r9 m) Y, @6 f
                RETI
3 ]' U& E6 Q) K+ h5 ?6 uINT_T1:        MOV                TH1,#(65536-1000)/256
0 u: ^0 X) o8 |4 o  e* z- L- W                MOV                TL1,#(65536-1000)MOD 2569 F* y% C* E+ o* u3 a9 Z- A' P0 Y# g
                CPL                SOUND& s2 u0 O; Q! C( q) H% N6 Y
                INC                TCNTA( P0 W: Y! ]$ B) r3 E' p
                MOV                A,TCNTA0 K! S$ |6 K0 x6 ?5 h3 U4 N. U
                JB                FLAG,I1                           ;判断是高温警报还是低温警报
+ e# L/ K9 U# z" V/ q7 z                CJNE        A,#30,RETUNE        ;低温警报声
# p" h( G$ Q. S: s                SJMP        I2
1 ?4 O; x% T9 C        I1:        CJNE        A,#20,RETUNE        ;高温警报声, A& L% d! \9 p; P: `& D* `
        I2:        MOV                TCNTA,#0; U- V3 P0 a7 m5 j- @6 Q" g
                INC                TCNTB0 A/ D) |( p# K3 j! ?
                MOV                A,TCNTB
6 j9 ^& G" ?7 E                CJNE        A,#25,RETUNE" u% Y. k9 s: @, l9 O( C
                MOV                TCNTA,#0* a% t6 G) z; z% `7 t) N9 s/ h/ q
                MOV                TCNTB,#0
! h: e- k) ]# R3 X+ y                LCALL        DELAY2! B" I5 R, |& e
RETUNE:        RETI4 D+ t& j% W4 }
               
* S9 \# p' |. sDISP:        MOV                A,LED_0                        ;数码显示子程序
  `7 f5 T" G  g( `7 G/ k                MOVC        A,@A+DPTR
6 {1 }. I1 h/ w. [                CLR                P2.3
2 g! |6 y% m1 J! }8 F1 L                MOV                P0,A
5 `- F5 G# e( X9 l: R$ o4 V6 ?% h                LCALL        DELAY1 \- e! I0 t/ \- }3 e+ p+ A/ S
                SETB        P2.3
9 R2 c% S$ T4 d. o. w: G                MOV                A,LED_1: s- l8 R/ `" t; G
                MOVC        A,@A+DPTR/ y/ x) B! r4 @3 N
                CLR                P2.2# k2 s% e/ k! }. F- Q# c! G
                MOV                P0,A+ l* b( Q5 W% A9 u* S
                LCALL        DELAY; ~$ F( a8 W0 |! `
                SETB        P2.2  B9 [5 I2 n+ l* k5 V7 ?
                MOV                A,LED_2
1 K5 \/ P. ]- J$ b* ^% c; q                MOVC        A,@A+DPTR8 g7 ?* _% g6 v' ]) D
                CLR                P2.1( O. E% V; z1 t$ @% Z
                MOV                P0,A- ^- ]# S$ d6 p6 L
                LCALL        DELAY0 b, C/ j/ E/ _! P2 x7 _! h" Y
                SETB        P2.1
/ ~5 t, N8 n: X! `3 z( A% K3 d. z                RET
' n9 n* S' e  R1 B' iDELAY:        MOV                R6,#100 ]( F5 a. i& P' H
D1:                MOV                R7,#2506 K5 C' A6 K8 X3 W  [2 @0 Q
                DJNZ        R7,$& H! a* m7 X! S
                DJNZ        R6,D1
$ e. D: L4 h$ W+ O                RET* O, |' a: U& N, X. ~4 Q
DELAY2:        MOV                R5,#205 E+ h$ O. [" {# r
D2:                MOV                R6,#20
* K( P; w2 i2 z4 zD3:                MOV                R7,#250
( w; S5 G* k0 o1 m  L                DJNZ        R7,$6 L. E2 {( D, _  t
                DJNZ        R6,D3# `* [: \/ v/ k& ^8 i7 v
                DJNZ        R5,D22 w7 q2 `, `1 U0 q
                RET- h$ \) h( R1 ~$ {# ]: M9 \: d
TABLE:         DB                 3FH,06H,5BH,4FH,66H6 o1 ?/ w) s  O7 f( d
                DB                 6DH,7DH,07H,7FH,6FH6 p6 A# P/ M# v" t  d
                END
( q& q7 I/ e9 d/ u& h8 F. \6 B3 B& J4 Q6 W6 F9 b8 W

  S6 f5 u- \+ n' `" c+ l6 T- e& ~; O. q2 l
51单片机温度控制高温低温报警仿真工程文件和汇编源码下载:5 k. i- w: g3 O6 X1 {
游客,如果您要查看本帖隐藏内容请回复

" S& K5 [8 m" u. f
& N" J& m- Y5 f' l. ?$ S

该用户从未签到

3#
发表于 2019-9-9 09:44 | 只看该作者
666666666666666666666666666666666
) M) @, C5 @/ \# u$ N2 @6 g

该用户从未签到

5#
发表于 2020-6-10 15:56 | 只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-6 19:13 , Processed in 0.171875 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表