利用AT89C51微控制器和ADC0808构成温度控制器

利用AT89C51微控制器和ADC0808构成温度控制器。程序不显示数据

org 0000h
ljmp main

org 000bh
ljmp tr0i

org 0030h
main:
    mov sp, #5fh
    setb ea
    mov tmod,#06h
    mov th0,#0ffh
    mov tl0,#0ffh
    setb et0
    setb tr0
        
loop:
    lcall display
    setb p2.2
    nop
    clr p2.2
    jnb p3.4,$
    ljmp loop
    sjmp $

display:
    mov b,100
    div ab
    mov r0,a
    mov a,b
    mov b,10
    div ab
    mov r1,a
    mov r2,b
    mov a,#7fh    
    mov dptr,#7fffh
    movx @dptr,a
    mov dptr,#table
    mov a,r0
    movc a,@a+dptr
    mov dptr,#0bfffh
    movx @dptr,a
    lcall delay
    mov a,#0dfh    
    mov dptr,#7fffh
    movx @dptr,a
    mov dptr,#table
    mov a,r1
    movc a,@a+dptr
    mov dptr,#0bfffh
    movx @dptr,a
    lcall delay
    mov a,#0bfh    
    mov dptr,#7fffh
    movx @dptr,a
    mov dptr,#table
    mov a,r2
    movc a,@a+dptr
    mov dptr,#0bfffh
    movx @dptr,a
    lcall delay                                                                                                       
    ret    

tr0i:
    setb p2.1
    mov a,p1    
    reti

delay:
    push 04h
    mov r4, #01h
delay1:
    push 04h
    mov r4, #0ffh
    djnz r4,$
    pop 04h
    djnz r4, delay1
    pop 04h
    ret

org 0300h
table: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
    end

img

现在还学汇编语言的不多了~