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

thiết kế mạch VDK đếm sản phẩm, chương 12 docx

10 263 0
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết Kế Mạch Vdk Đếm Sản Phẩm
Trường học Trường Đại Học Kỹ Thuật
Chuyên ngành Kỹ Thuật Điện Tử
Thể loại Bài Tập
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 10
Dung lượng 108,63 KB

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

Nội dung

Chương 12: Chương trình tăng 1Cứ có một sản phẩm đi qua đầu dò chú ý ngõ ra chân 8 của IC567 từ nức logic 0 lên mức 1 sau đó được đưa qua cổng đảo nên ngõ ra là mức logic 0 được đưa vào

Trang 1

Chương 12: Chương trình tăng 1

Cứ có một sản phẩm đi qua đầu dò (chú ý ngõ ra chân 8 của IC567 từ nức logic 0 lên mức 1 sau đó được đưa qua cổng đảo nên ngõ ra là mức logic 0) được đưa vào bit 0 của port B1 sẽ làm thay đổi mức logic từ 1 xuống 0 thì ô nhớ dùng cho việc đếm sản phẩm sẽ được tăng lên một đơn vị thông qua việc gọi chương trình con tăng 1, và khi đủ số sản phẩm thì ô nhớ dùng cho việc đếm số hộp cũng được tăng lên một đơn vị thông qua chương trình con tăng 1, và cứ mỗi lần như vậy sự thay đổi số liệu trong các ô nhớ được đẩy liên tục ra led để hiển thị Vì đếm sản phẩm đến tối đa là 999 và đếm số hộp tối đa là 9999 nên phải sử dụng 2 byte để đếm sản phẩm từ hàng đơn vị đến hàng chục sử dụng byte thấp, còn hàng trăm và hàng ngàn sử dụng byte cao Nên khi so sánh số liệu đang đếm với số liệu đã lưu ban đầu xem đã bằng chưa thì phải so sánh lần lượt byte cao trước tức là hàng ngàn, hàng trăm sau đó tới byte thấp tức là hàng chục hàng đơn vị

RET

Xóa cờ tràn phụ AC Xóa cờ tràn C

A  A +1

Hiệu chỉnh thập phân thanh ghi A

Bắt đầu

Trang 2

5 Chương trình con kiểm tra phím ấn: IN – HEX

Nếu như có phím được ấn thì bit C = 0 Vì có khoảng thời gian nhấn phím nên gọi chương trình dò tìm mã phím ấn 50 lần bằng việc nạp 50 vào R3 và giảm R3 Khi R3 = 0 thì cất mã phím vào ngăn xếp Trong lúc đợi phím được nhả ra gọi chương trình dò tìm mã phím ấn 50 lần để xem phím có còn được nhấn nữa hay không Khi R3 = 0 thì lấy mã phím trao cho thanh ghi A

Trang 3

Bắt đầu

RET

Không có phím ấn

#50 (R3)

#50 (R3)

#50 (R3)

Gọi CT dò mã phím

C= 0

S Đ

R3 - 1

Có phím ấn

Cất ACC R3= 0

Đ

Gọi CT dò mã phím

C = 1 S

S

R3 - 1

R3= 0

Đ

Lấy ACC

Lưu đồ thuật giải kiểm tra phím ấn

S Đ

Trang 4

6 Chương trình dò mã phím ấn:

8051 luôn đọc dữ liệu từ Port 1 để dò tìm mã phím Khi có một phím được ấn thì cờ C = 1 và mã của phím ấn được lưu tạm thời vào thanh ghi R6 Sau đó tăng dần R6 lên 4 đơn vị để dò mã phím tiếp theo, (mã phím ) (A)

Đ R6 =0

#FE  A

# 4  R6

A  R7

#4  A XÓA C

A –R6

A  R6

R7  A Xoay A R6 - 1

Bắt đầu

A  R7

A  P1 Đọc port 1

A AND #0F0H

A = #

Đ

S

S

Trang 5

7 Chương trình đầu dò:

8051 luôn luôn đọc dữ liệu từ đầu dò (Port B4) nên nội dung thanh ghi A bằng nội dung ô nhớ 4001H Cứ mỗi sản phẩm

Trang 6

đi tới cảm biến, cảm biến sẽ tạo ra mức logic điện áp cao 5 volt, lúc đó Port B.0 = 1 = ACC.0 Vì có khoảng thời gian sản phẩm

đi qua nên mức logic điện áp phải tồn tại ít nhất khoảng 100s

do đó phải liên tục kiểm tra dữ liệu từ đầu dò Khi mức logic điện áp chuyển từ 1 xuống 0 (tương ứng với 1 sản phẩm đã đi qua cảm biến) thì phải có khoảng thời gian ít nhất để chờ sản phẩm tiếp theo đi tới nên mức logic thấp cũng phải tồn tại ít nhất 100s Dò mức điện áp trong khoảng thời gian 100 s bằng cách nạp 100 vào R3, giảm R3, khi R3  0 vẫn tiếp tục dò mức Lưu đồ thuật giải dò mức điện áp như sau:

Bắt đầu

DPTR  # CẢM BIẾN

A  @DPTR

S Đ

ACC 0 =1

R3 = 0

R3 - 1

Đ S R3  #100

A  @DPTR (đọc port B1)

ACC.0 = 0 Đ S

S R3 - 1

RET

R3 = 0

Đ

Trang 7

8 Chương trình Blank: xóa số 0 không có nghĩa

Chương trình này có ý nghĩa như sau: khi số sản phẩm hay số hộp chỉ tới hàng đơn vị, chục, trăm thì những số 0 đứng trước nó không có nghĩa bị loại bỏ (không sáng ) và các ô nhớ có nghĩa được lưu (lần lượt từ hàng đơn vị  hàng ngàn) vào các

ô nhớ từ 70H 77H Loại bỏ bằng cách so sánh giá trị lớn nhất hàng ngàn với số 0 nếu đúng là 0 thì xóa led hiển thị hàng ngàn, tiếp tục so sánh xem ô nhớ hàng trăm với số 0 nếu đúng là 0 thì xóa led hiển thị hàng trăm, tương tự cho hàng chục, còn ô nhớ hàng đơn vị giá trị bằng bao nhiêu thì led hàng đơn vị cũng hiển thị

Baté đầu

A  DEMHOP H LED 70  NGAN LED 71  TRAM

A  DEMHOP L LED 72  CHUC LED 73  DONVI

Trang 9

( 1)

A =0 S

Xóa LED 72

A  LED 75

Đ

Xóa LED 70

A  LED 71

A =0 S

Xóa LED 71

A  LED 72

A =

Đ

Xóa LED 75

A  LED 76

A =

Đ

S

Xóa LED 76 RET

A

Đ

Chương trình blank

Ngày đăng: 05/07/2014, 13:21

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm