View Single Post
Old 28-11-2012, 12:01 PM   #1
dung.tnut28
Nhập môn đệ tử
 
Tham gia ngày: Nov 2012
Bài gửi: 1
:
Các a cho e hỏi về đếm xung ra cổng p1 bằng mã BCD

Đề số 12. Viết chương trình đếm số xung nhận vào từ chân INT0. Xuất giá trị đếm được ra cổng P1 ở dạng mã BCD. Khi giá trị đếm tăng đến 99 thì reset giá trị đếm về 0.

Trên là đề bài của em và đây là bài e đã làm:

org 00h
MOV P1,#0
CLR P3.2
MOV A,#0
BACK:JNB P3.2,BACK
INC A
;CHUYEN NHI PHAN SANG BCD
mov b,#10
div ab
mov r5,b ;so don vi chua trong r0
mov b,#10
div ab
mov r6,b ;so hang chuc chua trong r1
mov b,r5
mov a,r6
swap a
add a,b
mov p1,a
call delay
sjmp back
delay:
mov r4,#5
h3: mov r1,#255
h:
mov r2,#255
h2:
djnz r2,h2
djnz r1,h
djnz r4,h3


RET
END

E chạy thử thì chạy đến 10 thì đúng nhưng đến 11 lại sai . không hiểu sai chỗ nào. các a cao nhân cho e ý kiến vs ạ . e mới học môn này mày mò thôi
dung.tnut28 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn