Professional Documents
Culture Documents
Quá trình công nghiệp hóa hiện đại hóa đất nước đang trong giai đoạn phát triển
mạnh mẽ. Những ứng dụng về Vi điều khiển do vậy ngày càng được sử dụng rộng rãi
trong mọi ngành sản xuất. Khả năng tự động đếm số lượng sản phẩm và phân loại sản
phẩm theo yêu cầu cũng là một trong các ứng dụng quan trọng và phổ biến.
Với mong muốn Đề Tài có tính thực tế, chúng em chọn làm đề tài “Thiết kế
mạch đếm sản phẩm”. Trong quá trình thực tập tại xưởng điện tử, chúng em đã được
sự chỉ bảo tận tình của thầy Lê Hồng Nam , nhưng do đề tài gồm nhiều module và
khối lượng tính toán, lập trình tương đối lớn nên không thể tránh khỏi những sai sót.
Kính mong các thầy giáo chỉ bảo thêm để giúp chúng em bổ sung và nắm vững hơn
vốn kiến thức của mình.
Đối với các thiết bị tự động thì các chíp vi điều khiển,các bộ vi xử lý trung tâm
đóng vai trò hết sức quan trọng là đầu não điều khiển mọi hoạt động của thiết bị .Tuy
nhiên với những thiết bị không đòi hỏi độ phức tạp trong xử lý cao thì các chíp VĐK
như họ 8051 ,PIC sử dụng rất tiện lợi ,giá thành thấp.
Qua một thời gian tìm hiểu thi công ,thiết kế chúng em đã hoàn thành đề tài
này.
Nhóm 7-06CDT1
MỤC LỤC
............................................................................................1
MỤC LỤC ..................................................................................................................................2
CHƯƠNG I:................................................................................................................................3
GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI..................................................................................3
1.1 Giới thiệu đề tài:................................................................................................................3
1.2 Sơ đồ khối của đề tài:........................................................................................................3
1.3 Chức năng các khối :.........................................................................................................4
CHƯƠNG II:...............................................................................................................................5
GIỚI THIỆU LINH KIỆN..........................................................................................................5
2.1Vi điều khiển 8051:...........................................................................................................5
2.1.1 Kiến trúc của vi điều khiển 8051:..............................................................................5
2.1.2 Tìm hiểu về tập lệnh của 89C51:...............................................................................7
2.2 Nhận dạng xác định chân linh kiện điện tử:......................................................................8
1./ Điện trở:.......................................................................................................................8
2./ Biến trở:........................................................................................................................9
3./ Tụ điện:.........................................................................................................................9
4./ Cuộn dây:.....................................................................................................................11
5./ Diode:..........................................................................................................................11
6./ BJT ( Transistor hai mối nối)......................................................................................12
7./ UJT( Transistor đơn nối)..............................................................................................13
8./ JFET ( Transistor hiệu ứng trường mối nối)...............................................................13
9./ THYRISTOR(SCR):...................................................................................................14
10./ TRIAC........................................................................................................................14
CHƯƠNG III:...........................................................................................................................16
SƠ ĐỒ MẠCH VÀ TÍNH CHỌN LINH KIỆN.......................................................................16
3.1 Phân tích hoạt động:........................................................................................................16
3.1.1 Nguyên lý chung:.....................................................................................................16
3.1.2 Cụ thể:......................................................................................................................16
3.2.1 Mạch vi điều khiển: .................................................................................................16
3.2.2 Bàn phím:.................................................................................................................19
3.2.3 Mạch hiển thị:..........................................................................................................20
1./ Sơ đồ nguyên lý:........................................................................................................20
2./ Nguyên lý hoạt động:.................................................................................................20
3./ Tính chọn linh kiện:...................................................................................................20
4./Sơ đồ mạch in Layout:................................................................................................21
3.2.4 Mạch cảm biến:........................................................................................................21
1./ Sơ đồ nguyên lý:........................................................................................................21
2./ Nguyên lý hoạt động:...................................................................................................21
3./ Tính toán mạch:...........................................................................................................22
2./Nguyên lý hoạt động:...................................................................................................23
3./Tính chọn linh kiện:....................................................................................................23
3.5.6 Mạch giao tiếp máy tính:.........................................................................................24
1./ Sơ đồ nguyên lý:........................................................................................................24
2./ Vai trò:.......................................................................................................................24
3./Sơ đồ mạch in Layout:.............................................................................................24
CHƯƠNG IV:...........................................................................................................................25
SƠ ĐỒ KHỐI CHƯƠNG TRÌNH &CHƯƠNG TRÌNH ASSEMBLY..................................25
4.1. Sơ đồ khối chương trình:..............................................................................................25
1. Chương trình chính:..................................................................................................26
CHƯƠNG I:
CHƯƠNG II:
2.2 Nhận dạng xác định chân linh kiện điện tử:
Đối với những điện trỡ có công suất bé người ta phân biệt trị số và sai số theo vạch
màu. Cách đọc giá trị điện trỡ theo vạch màu được qui định theo bảng sau.
Cách đọc:
Naâ
Ñoû Cam Vaøng kim
u
Ñieän trôû coù giaù trò: R = 21.103Ω
Điện trở có ±5 vạch
5% màu:
Naâ
Ñoû Tím Cam Vaøng kim
Ñieänutrôû coù giaù trò: R =
217.103Ω ± 5%
Điện trở có công suất lớn thì người ta thường nghi giá trị điện trở và công suất trên
thân điện trở.
Những hư hỏng thường gặp ở điện trở.
- Cháy do làm việc quá công xuất.
- Tăng trị số thường gặp ở điện trở bột thang, do lau ngày hoạt tính bột than biến
chất làm thay đổi trị số.
- Giảm trị số thường xảy ra ở điện trở dây quấn do bị chập vòng.
Loại tinh chỉnh: loại này dùng để chỉnh lại chính xác hoạt động của mạch
R
3./ Tụ điện:
Dùng để tích phóng điện ứng dụng trong rật nhiều các lĩnh vực khác nhau.
Tụ điện biến đổi
Ký hiệu.
Dùng để điều chỉnh giá trị điện dung theo ý muốn, dùng để vi chỉnh tần số của các
mạch dao động, mạch cộng hưởng mạch lọc.
Tụ điện có cực tính, thường là các tụ hoá học.
C 2
- Tụ điện không có cực tính thường là các tụ gốm, tụ thuỷ tinh có ký hiệu như sau:
C 1
Trường hợp trên tụ có ghi giá trị, ký hiệu mà tận cùng là một chữ cái, đơn vị
đo tính bằng pF (pico farad), phương pháp xác định giá trị thực hiện như sau:
- Hai chữ số đầu chỉ trị số cho điện dung của tụ
- Chữ số thứ ba (kế tiếp) xác định hệ số nhân
- Chữ cái cuối cùng xác định sai số
Các chữ cái xác định sai số tuân theo quy ước sau đây:
F G J K M
1% 2% 5% 10% 20%
Ví dụ: trên tụ điện ceramic, ta đọc được giá trị như sau: 473J
hay 104k.
Giá trị của tụ được xác định như sau:
5./ Diode:
a./Diode nắn điện:
P N
Diode chỉ hoạt động dẫn dòng điện từ cực A sang cực K ( Khi tiếp xúc PN được phân
cực thuận). Khi phân cực nghịch vược điện áp chịu đựng thì sẻ phá vở mối liên kết,
diode bị nối tắt. Do đó khi lắp ráp mạch sử dụng diode ta nên chú ý đến điện áp ngược
và dòng tải của diode.
b./Diode zener:
Diode luôn làm việc ở chế độ phân cực ngược. Để diode zener tốt ta phải có điện trở
định thiên để cho diode làm việc ở dòng trung bình.
Khi sử dụng ta chú ý tới áp chiệu đựng và dòng tải.
Cách kiểm tra hư hỏng:
Ở thang đo Rx1 ta tiến hành do hai lần có đảo que đo.
- Nếu quan sát thấy kim đồng hồ một lần kim lên hết. Một lần kim không lên thì
Diode hoạt động tốt.
- Nếu quan sát thấy kim đồng hồ một lần kim lên hết. Một lần kim lên 1/3 vạch
thì Diode bị rỉ.
- Nếu quang sát hai lần đo kim đều lên hết thì diode bị thủng.
- Nếu quang sát hai lần đo kim đều không lên hết thì diode bị đứt.
C P N P E B
Q
B E
BJT nghịch(NPN).
C
C N P N E B Q
B E
Xác định chân BJT.
Dựa vào cấu tạo bênh trong của BJT mà suy ra cách xác định chân của BJT
Ta đặt đồng hồ VOM ở thang đo 1k hoặc100.
Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu
kim lên đều thì ta đảo hai que đo với nhau và đo như trên thì kim không lên thì
chân cố định là chân B. Ở trường hợp que còn lại đảo gữa hai chân còn lại nếu kim
lên đều, que ở chân cố định là que đen thì BJT loại NPN, nếu que đỏ ở chân cố
định thì đó là loại PNP.
BJT(NPN): Ta đặt hai que đo vào hai chân còn lại(Không đặt ở chân B), dùng điện
trở(hoặc ngón tay) để nối gữa que đen với cực B nếu kim lên thì chân tương ứng
với que đen là chân c chân còn lại là chân E. Khi kim không lên thi ta đảo ngược
que lại và kiểm tra như trên.
BJT(PNP): Ta đặt hai que đo vào hai chân còn lại(Không đặt ở chân B), dùng điện
trở(hoặc ngón tay) để nối gữa que đen với cực B nếu kim lên thì chân tương ứng
với que đen là chân E chân còn lại là chân C. Khi kim không lên thi ta đảo ngược
que lại và kiểm tra như trên.
Đối với BJT công suất thì khi chế tạo người ta đã có điên trở lót hoặc điện trở và
diode lót bênh trong thì khi đo cần chú ý.
C
C
Q
R1 Q
B
B
R 2 D
R
E
E
C
C
R1
B Q Q
B
R 2 D
R
E
E
B1
Caáu taïo beânh Kyù hieäu
trong UJT cuûa UJT
P G
Q
N S
D P S
SVTH : Nhóm 7_06CDT1 GVHD : Lê Hồng Nam
G Trang: 13
Báo cáo thực tập điện tử Mạch đếm sản phẩm
D
Kênh dẫn loại P
N G Q
P S
D N S
9./ THYRISTOR(SCR):
Cấu tạo và hình dạng:
A
P A
N G
G
P K
K
Cách xác định chân của SCR.
Văn VOM ở thang Rx1
Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu
kim không lên thì ta đảo hai que đo với nhau và đo như trên kim không lên thì chân
cố định là chân A. Ta đặt que đen vào chân A và que đỏ vào một trong hai chân
còn lại, sau đó lấy dây nối gữa chân A kích với chân còn lại ( chân không đặt que
đỏ). Nếu kim lên và thả ra kim tự giữ thì chân đó là chân G. Chân còn lại là chân
K.
10./ TRIAC.
a./Cấu tạo và hình dạng: T2
CHƯƠNG III:
3.1.2 Cụ thể:
1/ Khối cảm biến:
Trên mỗi băng chuyền thùng và sản phẩm,sẽ đặt 1 hệ thống cảm biến gồm 1 led
hồng ngoại phát và 1 photodiode thu,khi có sản phẩm(thùng) đi qua,hệ thống sẽ gởi tín
hiệu mức 0 báo cho VĐK biết, căn cứ vào chương trình đã được nạp,VĐK sẽ đưa ra
chỉ thị điều khiển dừng hay khởi động băng chuyền để thực hiện việc đếm số sản
phẩm(thùng).
2/ Khối băng chuyền:
Gồm 2 băng chuyền: một băng chuyền cho thùng chạy,và một cho sản phẩm chạy
3/ Khối hiển thị:
Gồm 4 led 7 đoạn (2 led cho số thùng và 2 led cho số sản phẩm)sẽ hiển thị số sản
phẩm và thùng cài đặt,cũng như số sản phẩm và số thùng trong quá trình đếm.
4/ Khối bàn phím:
Phím 0- 9: nhập số sản phẩm(thùng) cài đặt
Phím 10: Start
Phím 11: Cài đặt
Phím 12: Thoát khỏi cài đặt
Phím 13: Pause
Phím 14: Bắt đầu cài đặt thùng
Phím 15: Stop
5/ Điều khiển từ PC:
Chương trình điều khiển được viết bằng Delphi.
Máy tính sẽ gởi tín hiệu khởi động, gởi số sản phẩm và thùng cài đặt xuống VĐK
thông qua cổng COM.
Song song với quá trình gởi dữ liệu thì PC cũng sẽ nhận dữ liệu đếm từ VĐK và hiển
thị lên màn hình điều khiển.
3.2 Sơ đồ nguyên lý & tính chọn linh kiện:
U 3
3
16
R U 5
1 a a a a a
VC
VC
VC
VC
7 1 3 7 7 7 7
2 D 0 A b b A b A b A b A
VC C
1 1 2 6 6 6 6
3 2 D 1 B 1 1 c c 4 B c 4 B c 4 B c 4 B
4 6 D 2 C 1 0 d d 2 C d 2 C d 2 C d 2 C
D 3 D 9 e e 1 D e 1 D e 1 D e 1 D
3 E 1 5 f f 9 E f 9 E f 9 E f 9 E
5 L T F 1 4 g g 1 0 F 5 g 1 0 F 5 g 1 0 F 5 g 1 0 F 5
R B I G G D P G D P G D P G D P
Vcc
Vcc
Vcc
Vcc
G N D
4
B I / R B O L E D 7 S E G L E D 7 S E G L E D 7 S E G L E D 7 S E G
8
8
C O N 8 7 4 L S 4 7
1 1 R 9 R 1 0 Q 2 R 1 1 Q 3 R 1 2 Q 4 5 V
2 2 Q 1
3 3
4 4 R R R R
5 5
6 6
7 7
8 8
J 3
5 6 7 8
2 2 p F 2 2 p F 5 V
1
6
2
7
3
8
4
9
5
Y 1 R 1 R 2
1
1 2 M H z 2 2 0 1 0 K
C
1 0 K R 2 9
R 2 4 5 V V R 1 U 8 A
4
R x
2
3
4
5
6
7
8
9
V C C U 6 B A N P H I M 3 + P 1 . 2
19
18
1
T x 3 9 1 2
P 0 . 0 / A3 -
8D 0
XT AL1
XT AL2
2 L M 3 2 4
1
4 S W 3 1 4 0 P 0 . 1 / A3 7D 1 3 D 3 D 5 R 3
C
1 V C C P 0 . 2 / A3 6D 2
11
3 4 1 0 K P H A T T H U R
E A / V P P P 0 . 3 / A3 5D 3 5 R 2 3
C 3 P 0 . 4 / A3 4D 4 6
R 2 1 P 0 . 5 / A3
1 0 u F 3D 5
2
3
4
5
6
7
8
9
7
1 2 9 P 0 . 6 / A3 2D 6 8
R S T P 0 . 7 / A D 7 D 7
5 V 1 0 0 1 1 L E D
R 1 8 3 0 P 1 . 20 C O N 8 2
1 0 K 2 9 A L E / P R O GP 1 . 31 3
P S E N P 1 . 42 4 V C C
C 4 P 1 . 53 5
P 1 . 64 6
P 1 . 75 7
1 0 u F 1 0 P 1 . 86 8
1 1 P 3 . 0 / R X D P 1 . 7
J 6 P 3 . 1 / T X D 2 1 1 R 4 R 5
1 P 2 . 0 /2 A2 8 2 H I E N T CH OI N 8 2 2 0 1 0 K
2 1 2 P 2 . 1 /2 A3 9 3 R 3 0
3 1 3 P 3 . 2 / I N PT O2 . 2 / A2 41 0 4 V R 2 U 8 B
16
4 1 4 P 3 . 3 / I N PT 12 . 3 / A2 51 1 5
2
4
U 7
1 3 1 0 5 1 5 P 3 . 4 / T O P 2 . 4 / A2 61 2 6 5 + P 1 . 3
4 R 1 I N T 2 I N8 P 3 . 5 / T 1 P 2 . 5 / A2 71 3
V+
VC C
1 6 1 6 7 7
T 1 O U T R 2 I 9N 7 1 7 P 3 . 6 / W RP 2 . 6 / A2 81 4 8 6
R 2 O U7 T P 3 . 7 / R DP 2 . 7 / A 1 5 -
G N D
8 L M 3 2 4
C 5 1 T 2 O U T D 4 D 6 R 6
C +
11
3 A T 8 9 C 5 1 C O N 8 P H A T T H U R
1 0 u F C 1 - C O N 8
20
9
8
7
6
5
4
3
2
R 2 2
C 6 4 1 2
5 C 2 + R 1 O U1 1 T 1 0 K
C
1 0 u F C 2 - T 1 I N D 8
1
6 5 V
V -
15
M A X 2 3 2 / S O 5 V 1 2 V
C 7
d c 1
L S 1
1 0 u F
KHOI TRUNG TAM R 2 5
2 2 0
3
5
1
2
4
D 1 1 C O N 2
2
R 2 6
P 3 . 2
R E L A Y S P D T
Q 5
1 0 4 1 1 4 1 2 4 1 3 4
1 0 0 Q 6
J 1 2 S C 1 1 3 0
1
2 3 2 3 2 3 2 3 2
3
1 4 4 1 5 4 1 6 4 1 7 4 4
5
6 5 V 1 2 V
7
8
2 3 2 3 2 3 2 3 d c 2
L S 2
1 8 4 1 9 4 1 A 4 1 B 4 C O N 8 R 2 7 1
2 2 0 5 2
3
4
D 2 1 C O N 2
2 3 2 3 2 3 2 3 2
R 2 8
1 C 4 1 D 4 1 E 4 1 F 4 P 3 . 3
R E L A Y S P D T
Q 8
1 0 0 Q 7
2 3 2 3 2 3 2 3 2 S C 1 1 3 0
MAÏCH BAØ
N PHÍM
1 0 4 1 1 4 1 2 4 1 3 4 J 1 1
1
2
C 0 C 1 C 2 C 3 H 0 3
2 3 2 3 2 3 2 3 4
5
6
7
1 4 4 1 5 4 1 6 4 1 7 4 8
2 3 2 3 2 3 2 3 H 1
1 8 4 1 9 4 1 A 4 1 B 4
2 3 2 3 2 3 2 3 H 2
1 C 4 1 D 4 1 E 4 1 F 4
2 3 2 3 2 3 2 3
H 3
U 3
3
16
R U 5
1 a a a a a
VC
VC
VC
VC
7 1 3 7 7 7 7
2 D 0 A b b A b A b A b A
VC C
1 1 2 6 6 6 6
3 2 D 1 B 1 1 c c 4 B c 4 B c 4 B c 4 B
4 6 D 2 C 1 0 d d 2 C d 2 C d 2 C d 2 C
D 3 D 9 e e 1 D e 1 D e 1 D e 1 D
3 E 1 5 f f 9 E f 9 E f 9 E f 9 E
5 L T F 1 4 g g 1 0 F 5 g 1 0 F 5 g 1 0 F 5 g 1 0 F 5
R B I G G D P G D P G D P G D P
Vcc
Vcc
Vcc
Vcc
G N D
4
B I / R B O L E D 7 S E G L E D 7 S E G L E D 7 S E G L E D 7 S E G
8
8
C O N 8 7 4 L S 4 7
1 1 R 9 R 1 0 Q 2 R 1 1 Q 3 R 1 2 Q 4 5 V
2 2 Q 1
3 3
4 4 R R R R
5 5
6 6
7 7
8 8
J 3
5 6 7 8
R 4 R 5
R 1 R 2 2 2 0 1 0 K
2 2 0 1 0 K R 3 0
R 2 9 V R 2 U 8 B
V R 1 U 8 A
4
5
4
+ P 1 . 3
3 + P 1 . 2 7
1 6 -
2 - L M 3 2 4
L M 3 2 4 D 4 D 6 R 6
11
D 3 D 5 R 3 P H A T T H U R
11
P H A T T H U R
D 8
D 7 L E D
L E D
Khi không thu được ánh sáng thì ngõ ra của LM324 ở mức thấp, ngược lại khi thu
Do đó khi chỉnh biến trở gọi x là thành phần gần với phía nối mass thì
vậy:
5
R1 = = 220Ω
0, 020
Chọn R1 = R4 = 220Ω
3.2.5 Mạch điều khiển động cơ:
1./ Sơ đồ nguyên lý:
d c 1
L S 1
R 2 5 1
2 2 0 5 2
3
4
D 1 1 C O N 2
2
R 2 6
P 3 . 2
R E L A Y S P D T
Q 5
1 0 0 Q 6
2 S C 1 1 3 0
5 V 1 2 V
d c 2
L S 2
R 2 7 1
2 2 0 5 2
3
4
D 2 1 C O N 2
2
R 2 8
P 3 . 3
R E L A Y S P D T
Q 8
1 0 0 Q 7
2 S C 1 1 3 0
P 1
C O N N E C T O R5 V D B 9
C 4
1
6
2
7
3
8
4
9
5
1 0 u F
R xT x
16
2
U 7
1 3 1 0
1 4 R 1 I N T 2 I N8
V+
VC C
T 1 O U T R 2 I N9
R 2 O U7 T
C 5 1 T 2 O U T
3 C +
1 0 u F C 1 -
C 6 4 1 2
C 2 + R 1 O U1 1 T P 3 . 0
5
C 2 - T 1 I N P 3 . 1
1 0 u F
6 G N D
V -
15
M A X 2 3 2 / S O
C 7
1 0 u F
T1IN T1OUT
0 1
1 0
R1IN R1OUT
0 1
1 0
CHƯƠNG IV:
s ta rt
c a ìi â à ût c a ïc t h ä n g s ä ú b a n â á öu
s ta r t C O M
h i ã øn t h ë
N
c o ï p h êmN c o ï D L
á ún ? t æ ì P C ?
Y Y
Y n h á ûn D L
c o ï S ta r t?
Y
N c o ïS ta r t?
N c o ï p h êm
N
c â à ût ?
n h á ûn D L c a ìi â à ût
Y
c a ìi â à ût
N
c o ïS ta r t?
N Y Y
c o ïS ta r t?
 ã úm S P
EN D
â ã úm t h u ìn g & s a ín p h á øm
m o v s ä út h u ìn g , s ä ú S P = 0
K â ä ün g B C t h u âìn gã úm s ä ú S P
c oN ï S ä úS P = 0
t h u ìn g ?
Y N
K â ä ün g B C S p h á ømc o ï S P ?
Y
t à n g t h u ìn g
tà n g S P
h iã øn t h ë
h i ã øn t h ë
p h a ït D L
p h a ït D L
â ã úm s ä ú S P
N
â u íS P ?
N âuí
Y
t h u ìn g ?
RE T
Y
v ã ö c t m a in
RET
C â à ût_ S P
N C â à ût_ th u ìn g
K tr a p h êm
Y N
K tr a p h êm
p h êm C Yâ à ût
C â à ût th u ìn g
th u ìn g ? Y
N Y
p h êm th o a ït R E T
Y C â à ût?
p h êm th o a ït R E T
N
C â à ût?
L æu th u ìn g
N
L æu S P
h iã øn th ë
h iã øn th ë
h a ìg c h u ûc h a ìg â v ë
h a ìg â v ë p h êm
s ä ú= h a ìg c h u ûc * 1 0 + h a ìg â v ë
h i ã øn t h ë
A h a ìg â v ë S P
X u á út h a ìg â v ë S P
c a l l d e la y 2 0 0 u s
A säú
A h a ìg c h u ûc S P
B 10
x u á út h a ìg c h u ûc S P
d iv A B
c a ll d e la y 2 0 0 u s
h a ìg c h u ûc A
A h a ìg â v ë t h u ìg
x u á út h a ìg â v hë at hìg u âìg v ë B
c a ll d e la y 2 0 0 u s
A h a ìg c h u ûc t h u ìg
x u á út h a ìg c h u ûc t h u ìg
c a ll d e la y 2 0 0 u s
R ET
q p h êm
c h o c ä üt t h æ ï n h á út = 0
( b i t c u ä úi c u ìn g = 0 )
R 1=0
k t _ p h êm
Y
h a ìn g 1 = 0 ? q u e ït p h êm
Y
Y N c o ï p h êm
h a ìn g 2 = 0 ? n h á ún ?
Y
N
N n haí
Y
h a ìn g 3 = 0 ? p h êm ?
Y
N
l æ u v a ìo
Y
h a ìn g 4 = 0 ? ä n h å ï p h êm
x a ïc n h á ûn
N
p h êm
RE T
c h o c a ïc c ä üt t i ã úp t h e o = 0
( x o a y t æ ìn g b i t q u a t r a ïi )
tà n g R 1
R 1 = 4 ?
R ET
mov sp_cd,#03h
mov so_th,#0h
mov th_cd,#03h
mov chuc_sp,#00
mov dvi_sp ,#00
mov chuc_th,#00
mov dvi_th ,#00
acall startcom
main: acall hthi_dem
begin:
jnb RI,kiem_tra_tiep_1 ;co du lieu tu PC ko?
acall nhan_dl
cjne A,# 1,kiem_tra_tiep_0 ; ktra co start ko?
acall demsanpham
kiem_tra_tiep_0:
acall nhan_dl_cai_dat
acall cho_start
acall demsanpham
kiem_tra_tiep_1:
acall kt_phim
jnb 17,main
clr 17
mov A,phim
cjne A,#10,ktr_cd
acall demsanpham
;neu ko co cai dat thi kiem tra cong COM
ktr_cd: cjne A,#11,main
acall caidat
acall cho_start
acall demsanpham
demsanpham:
mov so_th,#0
mov so_sp,#0
demsanpham_1:
acall kd_thung
kiemtr_thung:
clr 13
jnb cb_thung,tieptuc1
kt_1:
LCALL KTR_STOP
acall kd_thung
acall hthi_dem
jb cb_thung,kt_1
setb 13
tieptuc1:
LCALL KTR_STOP
acall kd_thung
acall hthi_dem
jnb 13,kiemtr_thung
acall kd_sp
inc so_th
mov so_sp,#0
acall phat_dl
acall dem_sp
mov A,so_th
cjne A,th_cd,demsanpham_1
acall stop
ajmp main
ret
;----------------------chuong trinh con DEM SO SAN PHAM TRONG 1
THUNG-------------------
dem_sp:
clr 11
jnb cb_sp,tieptuc21
clr P1.1
setb P1.0
ret
stop:
setb P1.1
setb P1.0
ret
;-----------------chuong trinh con CAI DAT---------------
caidat:
caidat_sp: ;cai dat san pham
acall kt_phim
jnb 17,ht_sp
clr 17
mov a,phim
cjne a,#14,nhap_sp
sjmp caidat_th
nhap_sp:
cjne a,#12,luu_sp
sjmp exit1
luu_sp:
mov chuc_sp,dvi_sp
mov dvi_sp,phim
mov b,#10
mov th_cd,a
ht_th:
acall hthi
sjmp caidat_th
exit1: nop
ret
;-----------------chuong trinh con BAN PHIM---------------------
kt_phim: ;chuong trinh con chong nhieu
mov r3,#50
L1:
acall qphim
jnb 10,toi
djnz r3,L1
L2:
mov r3,#50
L3:
acall qphim
jb 10,L2
djnz r3,L3
setb 17
mov phim,r6
toi:
ajmp exit_qp
row_2: mov a,R1
add a,#8
setb 10
mov R6,a
ajmp exit_qp
row_3: mov a,R1
add a,#12
setb 10
mov R6,a
ajmp exit_qp
exit_qp: ret
;--------------------chuong trinh con HIEN THI----------------
hthi: mov a,dvi_sp
add a,#070H
mov P2,a
acall delay
mov a,chuc_sp
add a,#0B0H
mov P2,a
acall delay
ret
;chuong trinh startcom
startcom: MOV TMOD,#20H
MOV TH1,#-3
MOV SCON,#52H
SETB TR1
RET
;chuong trinh nhan du lieu
nhan_dl: JNB RI,$
CLR RI
MOV A,SBUF
RET
;chuong trinh phat du lieu
phat_dl: JNB TI,$
CLR TI
MOV A,SO_TH
MOV SBUF,A
JNB TI,$
CLR TI
MOV A,SO_SP
EXIT: RET
END
unit DSP;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, StdCtrls, ExtCtrls, Menus, CPort, jpeg, MPlayer;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
cdth: TEdit;
Label2: TLabel;
cdsp: TEdit;
Buttonsend: TButton;
GroupBox2: TGroupBox;
Label3: TLabel;
sothung: TEdit;
Label4: TLabel;
sosanpham: TEdit;
GroupBox3: TGroupBox;
GroupBox4: TGroupBox;
thoigian: TEdit;
GroupBox5: TGroupBox;
Memo1: TMemo;
Buttonclear: TButton;
SVTH : Nhóm 7_06CDT1 GVHD : Lê Hồng Nam
Trang: 38
Báo cáo thực tập điện tử Mạch đếm sản phẩm
Buttonsetting: TButton;
Buttonopen: TButton;
GroupBox6: TGroupBox;
MainMenu1: TMainMenu;
Timer1: TTimer;
ComPort: TComPort;
ngaythang: TEdit;
gio: TLabel;
ngay: TLabel;
Buttonstart: TButton;
Buttonstop: TButton;
procedure Timer1Timer(Sender: TObject);
procedure ButtonsettingClick(Sender: TObject);
procedure ButtonopenClick(Sender: TObject);
procedure ButtonclearClick(Sender: TObject);
procedure ButtonsendClick(Sender: TObject);
procedure comportRxChar(Sender: TObject; Count: Integer);
procedure ButtonstartClick(Sender: TObject);
procedure ButtonstopClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
// THOI GIAN
procedure TForm1.Timer1Timer(Sender: TObject);
var ngay: Tdate;
begin
thoigian.Text:=timetostr(now());
ngay:=now();
ngaythang.Text:= datetostr(ngay);
end;
// THIET LAP THONG SO CONG COM
procedure TForm1.ButtonsettingClick(Sender: TObject);
begin
comport.ShowSetupDialog;
if messagedlg('Chon thong so moi roi nhap Ok.Chon Cancel de lay lai
thong so cu',mtConfirmation,[mbok,mbcancel],0)=mrok then
begin
Buttonopenclick(Sender);
memo1.Text:='Cong COM da duoc mo voi thong so da thiet lap';
end