Professional Documents
Culture Documents
Đây là khối chính thiết kế cho chíp vi điều khiển 89C51/52 của Atmel hay
các dòng chíp tương thích với kiến trúc của vi điều khiển 8051.
Khối này có thể sự dụng nguồn trực tiếp qua cáp USB nối với máy
tính hoặc sử dụng nguồn ngoài.
1.1.Ghép nối bộ nhớ RAM 62256
Bộ nhớ RAM 62256 được sử dụng là bộ nhớ 32K ghép nối với 89C51
qua bus mở rộng trên cổng P0 và P2. Bộ nhớ này được giải mã trực
tiếp và có thể truy cập nội dung trên dải địa chỉ 0000h-7FFFh.
Để truy xuất dữ liệu trong RAM ta sử dụng lệnh movx dest,src của vi
điều khiển 89C51
Dưới đây là đoạn chương trình mẫu truy cập bộ nhớ RAM 62256
P1
5
9
U 9 4
12 14 8
11 R 1O U T T1O U T 13 3
TX 10 T 1 IN R 1 IN 8 7
R X 9 T 2 IN R 2 IN 7 2
R 2O U T T2O U T 6
1 2 1
C + V+
C 5 C 6 D B9
10uF 10uF
3 16 VC C
C 1- VC C
4 15 G N D
C 2+ G N D
C 7
10uF C 8
5 6 10uF
C 2- V-
M A X232
Chuẩn RS232 là chuẩn truyền thông của cổng COM máy tính. Chuẩn
này truyền dữ liệu trên đường dây với mức điện áp là -3V đến -24V
cho mức logic 1 và +3V đến +24V cho mức logic 0. Chíp chuyển đổi
MAX232C sẽ làm nhiệm vụ chuyển mức tín hiệu từ TTL sang tín hiệu
chẩn RS232.
Sơ đồ này sử dụng chế độ truyền 2 dây Rx,Tx không bắt tay phần
cứng. Cáp kết nối với máy tính là cáp thẳng đấu theo sơ đồ sau:
Chân 2 Chân 3
Chân 3 Chân 2
Chân 5 Chân 5
Sau đây là đoạn chương trình khởi tạo cổng RS232 của KIT 89C51
Đoạn chương trình dưới đây sẽ gửi 1 byte chứa trong thanh ghi acc
qua cổng RrS232
Đoạn chương trình dưới đây sẽ nhận 1 byte lưu vào thanh ghi acc từ
cổng RrS232
jnb ri, RxByte ; wait till byte received
mov a, sbuf ; get byte
clr ri ; clear serial status bit
U 8
Y 2
3 2 .7 6 8 k H z 1 5 SD A
2 X1 SD A
SC L 6 X2 7
B T1 SC LK S Q W /O U T
2 1 3
VC C 8 VBAT
B A TTE R Y VC C
D S1307
Bộ đồng hồ thời gian thực DS1307 cho phép hệ thống lấy thời gian
thực theo ngày, giờ được nạp trước 1 lần đầu tiên khi thiết lập.
DS1307 kết nối với 89C51 qua bus nối tiếp I2C.
U 6
G N D 1
G N D 2 A0 5 SD A
G N D 3 A1 SD A
S C L 6 A2
G N D 7 SC LK R 3 VC C
W P SC L R 4
SD A
A T24C 64
10K
10K
2.1.Sơ đồ nguyên lý
1 2 3 OUTPUT DIGITAL
CPU
2.2.Sơ đồ mạch in
3.1.Sơ đồ nguyên lý
Khối này sử dụng vi mạch 74HC245 để làm chíp giao tiếp với vi xử lý
89C51.Mỗi module có 8 đầu vào số và được chọn địa chỉ bởi công tắc
DIP SWITCH trên Modul CPU. Các modul đầu ra số có thể nối nối
tiếp bằng 1 cáp và cắm vào cổng INPUT DIGITAL trên CPU
1 2 3 INPUT DIGITAL
4.1.Sơ đồ nguyên lý
JP4
VC C G N D
VC C 1 2 G N D
VC C 3 4 G N D
VC C 5 6 G N D
+12V 7 8 G N D
+12V 9 1 0 G N D
+12V 11 1 2 G N D
+12V 13 1 4 G N D
15 1 6
PO W ER
4.2.Sơ đồ mạch in
5. Khối nguồn áp chuẩn
5.1.Sơ đồ nguyên lý
Khối này dùng để tạo điện áp chuẩn cho ADC. Điện áp này có thể
điều chỉnh được thông qua chiết áp chỉnh tinh RV1. Dài điều chỉnh là
từ 0K-10K.
U 1
+12V 3 2 VR EF
1 V IN VO U T
AD J
R 1 R 2
C 1 R C 2
L M 3 1 7 /T O 2 2 0 R
1uF 1uF
R V1 V A R IS TO R
5.2.Sơ đồ mạch in
Chính là khối VREF BLOCK trên cùng mạch với khối đầu vào tương
tự.
6.1.Sơ đồ nguyên lý
VC C
VC C
U 1A R 1
R 2 1K 10K
4
U 1B
3 R 3
4
+
1 5
+
2 7 C H 0
-
1K 6
-
LM324 R 4
1
11
LM 324 R VAR
11
2
JP2
R 5 10K
1
3
G N D
2
3 G N D
4
R 6
H EAD ER 4 10K
VC C
VC C
U 1C R 7
R 8 1K 10K
4
U 1D
10 R 9
4
+
8 12
+
9 14 C H 1
-
1K 13
-
LM324 R 10
1
JP3
11
VC C G N D LM 324 R VAR
11
VC C 1 2 G N D 2
VC C 3 4 G N D
VC C 5 6 G N D
+12V 7 8 G N D R 11 10K
9 1 0
3
+12V G N D
+12V 11 1 2 G N D JP1
+12V 13 1 4 G N D G N D C H 0
15 1 6 G N D 1 2 C H 1
G N D 3 4 C H 2 R 12
E X T -P O W E R G N D 5 6 C H 3 10K
G N D 7 8 C H 4
G N D 9 1 0 C H 5
G N D 11 1 2 C H 6
G N D 13 1 4 C H 7
15 1 6
AN ALO G
Sử dụng để chuẩn hóa tín hiệu vào cho bộ biến đổi tương tự - số ADC
MC3208.
6.2.Sơ đồ mạch in
8.1.Sơ đồ nguyên lý
Khối MMI được giao tiếp với 89C51 thông qua 2 cổng PA và PC của
PPI 8255. Trong đó PA và 4 bít cao của PC dùng để điều khiển 4 LED
hiển thị. Còn lại 4 bít thấp của cổng PC dùng để nhận tín hiệu bàn
phím.
Để điều khiển được MMI thì PPI 8255 phải được cấu hình ở MODE0
với PORTA là OUTPUT và PORTC-H là OUTPUT, PORTC-L là
INPUT.
Thanh ghi cấu hình cho 8255 trong trường hợp này sẽ nhận giá trị là
C 0
C 1
C 2
C 3
L1 L2 L3 L4
3
8
3
8
3
8
3
8
JP1
G N D P A 3 D 7 D 0 4 D 0 4 D 0 4 D 0 4
1 2 a a a a
C
C
C
C
C
C
C
C
G N D P A 2 D 2 D 1 5 D 1 5 D 1 5 D 1 5
G N D 3 4 P A 1 D 3 D 2 7 b D 2 7 b D 2 7 b D 2 7 b
G N D 5 6 P A 0 D 4 D 3 9 c D 3 9 c D 3 9 c D 3 9 c
G N D 7 8 P A 4 D 6 D 4 10 d D 4 10 d D 4 10 d D 4 10 d
G N D 9 1 0 P A 5 D 5 D 5 2 e D 5 2 e D 5 2 e D 5 2 e
G N D 11 1 2 P A 6 D 0 D 6 1 f D 6 1 f D 6 1 f D 6 1 f
G N D 13 1 4 P A 7 D 1 D 7 6 g D 7 6 g D 7 6 g D 7 6 g
15 1 6 p p p p
H E A D E R 8X2 LED 7 LED 7 LED 7 LED 7
JP2 VC C
VC C G N D
VC C 1 2 G N D R 6 R
VC C 3 4 G N D PC 7 T1
VC C 5 6 G N D C 828
+12V 7 8 G N D
+12V 9 1 0 G N D C 0
+12V 11 1 2 G N D
+12V 13 1 4 G N D
15 1 6
PO W ER VC C
SW 1 JP3 R 10 R
JP4 VC C PC 6 T2
G N D P C 0 1 C 828
G N D 1 2 P C 1 2
SW 2
G N D 3 4 P C 2 3 C 1
G N D 5 6 P C 3 4
G N D 7 8 P C 7 P C 0 5
SW 3
G N D 9 1 0 P C 6 P C 1 6
G N D 11 1 2 P C 5 P C 2 7 VC C
G N D 13 1 4 P C 4 P C 3 8
SW 4
15 1 6 9 R 11 R
H E A D E R 8X2 PC 5 T3
H EAD ER 9 C 828
C 2
VC C
R 12 R
PC 4 T4
C 828
C 3
8.2.Sơ đồ mạch in
9. Khối nguồn chuẩn 5V
9.1.Sơ đồ nguyên lý
Q 1
TIP L 7 5 1 VC C Q 2
T IP L 7 5 1 +12V
2 3
2 3
U 1
D 1 L M 7 8 0 5 C /T O 2 2 0 U 2
+15V 1 3 D 2 L M 7 8 1 2 C /TO 2 2 0
IN O U T +15V 1 3
IN O U T
1
D IO D E
1
G N D
D IO D E
G N D
2
C 1
2
C C 2
D 3 C
D 4
D IO D E
D IO D E
10.1.Sơ đồ nguyên lý
Sử dụng chuyển đổi MAX485 kết hợp với MAX232 để chuyển đổi
giữa 2 chuẩn tín hiệu RS485 và RS232. Đường truyền nhận RS485
được điều khiển qua chân RTS từ cổng COM của máy tính.
10.2.Sơ đồ mạch in
Xem hướng dẫn sử dụng mạch nạp TMe PROG 89C51/52/55 trong
đĩa CD đi kèm.
HDSD 89C51.pdf
Ezdl4.exe
12. Phần mềm lập trình S-Tech 8051 Assembler V3.5 /MD2
A51 ten_file
Sau đó chạy tệp RUN.BAT chương trình sẽ thi hành tự động để dịch
ra file HEX
.Vào Module→Create module→hiện lên cửa sổ create new module như hình sau
Nhập vào trường name tên của module,chẳng hạn:vidu1,có thể nhập một chút mô tả
vào trường Description ,trong trường Language ,chọn C nếu muốn viết bằng C,chọn
Assembly nếu muốn viết bằng hợp ngữ,xong rồi “OK”
Hiện lên cửa sổ soạn thảo như sau:
Soạn thảo chương trình ,ví dụ viết cho 8051 :
Sau đó là đến công đoạn “buid”ra mã hex,vidu1 sẽ được buid ra file .obj ;.hex;
Sau khi buid:
File sẽ lưu vào thư mục mặc định tại reads51/work/cacvidu:
Reads51 chỉ khoảng 5MB,nhưng lại không Diassembler được,tôi dùng theo với nó là
soft TS Controls Emulator 8051……,dung lượng vài MB.Về phần mềm
Diassembler,theo tôi biết thì có cả phần mềm của VNam,nhưng tốt nhất cứ dùng TS
Controls Emulator 8051,nó miẽn phí.