1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

DO NHIET DO asm (1)

3 431 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 84,19 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trang 1

#INCLUDE "p16f887.inc"

; config 0xE0F7

CONFIG _CONFIG1, _FOSC_EXTRC_CLKOUT & _WDTE_OFF & _PWRTE_OFF & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOREN_OFF & _IESO_OFF & _FCMEN_OFF & _LVP_OFF

; CONFIG2

; config 0xFFFF

CONFIG _CONFIG2, _BOR4V_BOR40V & _WRT_OFF

; -khai bao

bien -cblock 0x20

nhietdo tam0

dem

adc_value

adc

bat

den

so

dv

hc

tram

tam

d0

d1

d2 d3 endc

ORG 0x00 ;

goto start ;

;************************************************************************************

; -bat dau chuong trinh o day - start

;cai dat ngo vao ngo ra

banksel TRISB ; chon bank chua thanh ghi TRISB

clrf TRISB ; PortB la output

movlw B'00000001'

movwf TRISA ; chan RA0 input

clrf TRISD

banksel PORTA

clrf PORTA

clrf PORTB

clrf PORTD

; chon loai ngo vao AI hay DI

banksel ANSEL ; chon bank chua thanh ghi ANSEL

movlw B'00000001' ; AN0 la analog

movwf ANSEL ; tat cac cac kenh con lai

clrf ANSELH ; la digital

banksel PORTB

; -khai bao chuyen doi

banksel ADCON1 ; chon bank chua thanh ghi ADCON1

movlw 0x80

movwf ADCON1

banksel ADCON0 ; chon bank chua ADCON0

movlw B'10000001' ; tan so xung doi Fosc/32,

movwf ADCON0 ; RA0 duoc su cho chuyen doi

; chuyen doi AD duoc bat/cho phep

; -chuong trinh

chinh -main

call docADC; cap nhat gia tri moi, tach so cho hien thi

call check_alarm ; kiem tra nhiet do cho phep va bat/tat canh bao (den, coi bao) call tachso

call hienthi ;chuong trinh co nhien thi nhiet do ra led 7 doan

call Delay2s

Trang 2

exit_main

goto main

; -;=====================================================================================

; -cac chuong trinh con -hienthi; chuong trinh con hien thi nhiet do LED7 doan: XY0C

clrf PORTD

movfw hc ; hien thi hang chuc

call bangma

movwf PORTD

bcf PORTB,4 ; bat led hang chuc

call delay

bsf PORTB,4 ; tat led hang chuc

movfw dv ; hien thi hang don vi

movwf PORTD

bcf PORTB,5 ;bat led hang don vi

call delay

bsf PORTB,5 ;bat led hang don vi

movlw 0x9C ; hien thi ki hieu do "0"

movwf PORTD

bcf PORTB,6 ;bat led do

call delay

bsf PORTB,6 ; tat led

movlw 0xC6 ; hien thi chu "C"

movwf PORTD

bcf PORTB,7 ;bat led hang

call delay

bsf PORTB,7 ;bat led hang

call delay

return

; -chuong trinh2: doc adc : tra ve gia tri : "adc_tam"

-docADC ; doc gia tri adc va luu vao bien adc_value

nop

bsf ADCON0,1 ; batdau chuyen doi adc

btfsc ADCON0,1 ; chuyen doi xong ?

goto $-1 ; chua xong ==1,kiem tra lai

banksel TRISB ; chon bank1

movf ADRESL,0 ; byte thap la ket qua

; copied to W

banksel PORTB ; chon bank2

movwf adc_value ; luu ket qua vao bien : adc_value

bcf STATUS,C

rrf adc_value,0 ; w = adc_value/2 = nhiet do

bcf STATUS,C

movwf so ; so = w

movlw d'1' ; cai phan la ta tru di 1 cho hien

subwf so,1 ; thi dung thoi

return

tachso ; tach nhiet do thanh 2 so BCD de hien thi LED 7 doan

clrf dv

clrf hc

tru

movlw d'10'

subwf so,f

btfsc STATUS,C

goto sai0

goto dung0

sai0 incf hc,f

goto tru

Trang 3

dung0

movlw d'10'

addwf so,w

movwf dv

return

; -chuong trinh 1: ham kiem tra va bao

chay -check_alarm ; kiem tra nhiet do cho phep va bat/tat canh bao (den, coi bao)

; banksel PORTB

movf adc_value,0 ; gan w = adc_value

sublw d'82' ; w = w-70

btfsc STATUS,C ; c == 0 ?

goto tatbd ; c = 1 : w < 82 hay nhiet do < 35oC goto batbd ; c = 0 : w > 82 hay nhiet do lon hon 35oC tatbd bcf PORTB,0

bsf PORTB,1

goto exit_check

batbd bsf PORTB,0

bcf PORTB,1

exit_check

return

; -chuong trinh 4:

delay -Delay

movlw 0x09

movwf d0

Delay_0

decfsz d0, f

goto Delay_0

return

; -Delay2s

movlw 0x5A

movwf d1

movlw 0xCD

movwf d2

movlw 0x16

movwf d3

Delay_2

decfsz d1, f

goto $+2

decfsz d2, f

goto $+2

decfsz d3, f

goto Delay_0

nop

return

bangma

addwf PCL,f

retlw 0xc0

retlw 0xf9

retlw 0xa4

retlw 0xb0

retlw 0x99

retlw 0x92

retlw 0x82

retlw 0xf8

retlw 0x80

retlw 0x90

end

Ngày đăng: 14/06/2016, 16:56

TỪ KHÓA LIÊN QUAN

w