Phòng thí nghiệm Vi xử lý Bài thí nghiệm Vi xử lý Trang 40 BÀI 04: KHẢO SÁT BỘ BIẾN ĐỔI TƯƠNG TỰ - SỐ ADC ANALOG TO DIGITAL CONVERTER MỤC ĐÍCH THÍ NGHIỆM Giúp sinh viên bằng thực
Trang 1Phòng thí nghiệm Vi xử lý Bài thí nghiệm Vi xử lý
Trang 40
BÀI 04:
KHẢO SÁT BỘ BIẾN ĐỔI TƯƠNG TỰ - SỐ (ADC ) (ANALOG TO DIGITAL CONVERTER)
MỤC ĐÍCH THÍ NGHIỆM
Giúp sinh viên bằng thực nghiệm khảo sát các vấn đề chính sau đây :
- Khảo sát bộ chuyển đổi tương tự sang số và cách ghép nối với máy tính
THIẾT BỊ SỬ DỤNG
1 Bộ thí nghiệm μPTS-31
2 Board thí nghiệm μPM-304
3 Máy vi tính
4 Đồng hồ số VOM
1 KHỐI THÍ NGHIỆM BIẾN ĐỔI TƯƠNG TỰ SỐ (ADC) μPM-304
Bộ biến đổi tương tự số thực hiện công việc biến đổi các đại lượng tương tự như dòng điện, điện áp thành các giá trị số tương ứng
Sơ đồ bộ biến đổi ADC được xây dựng trên vi mạch ADC0804 là loại ADC 8 bit Sơ đồ ngõ vào, ngõ ra như trong bảng sau :
KÝ HIỆU NGÕ VÀO/RA CHỨC NĂNG
thang đo
CLKIN/CLKR Càc ngõ vào cho mạch dao động tạo tín hiệu
đếm
NGÕ
VÀO
NGÕ RA DB0 -DB7 Ngõ ra dữ liệu thay đổi 8 bit
INTR Ngõ ra báo tín hiệu biến đổi đã sẳn sàng
(DATA VALID: Dữ liệu hợp lệ)
Trên sơ đồ mạch trang bên ,bộ khuếch đại thuật toán U1 (JR4558) kết hợp với các biến trở P1, P2, P3 cho phép chỉnh điện áp chuẩn VREF cho ADC và tạo diện áp VIN
Trang 2R3 1.13K
+5V
R11
+5V
C3
1 nF
10K
R-PACK
ADC0804
6 7 9
11 12 13 14 15 16 17 18
19 4
5
1 2 3
+IN -IN VREF/2
DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
CLKR CLKIN
INTR
CS RD WR
+5V
-5V
A
P1
+5V
R14 R12
PORT A
1 2 3 4 5 6 7 8
R5 10K
P3
R1
1K
R2
1K
R4 10K
J1 R6 10K
R7
P2
+ -5
6
7
+5V
S1 START
+5V
B
R9
-5V
R10
+5V +
-JR4558
3
2
1
Trang 3Phòng thí nghiệm Vi xử lý Bài thí nghiệm Vi xử lý
ADC sẽ đo hiệu điện áp :
VIN = VIN + - VIN -
Vì vậy khi chỉnh biến trở P3 có thể dịch nền cho giá trị đo
Ngõ ra số là của ADC0804 được tính như sau:
N = 255 V
V
REF IN
Các ngõ ra số của ADC0804 từ DB0 - DB7 được nối với các LED chỉ thị qua các bộ đệm trên U3 -U4 Ngõ ra PORT A cho phép ghép nối ADC với các thiết bị khác
2 PHẦN MỀM
Lưu đồ chương trình cho bài thí nghiệm μPM304 :
Begin
Định cấu hình cho 8255A (U9) PA: nhập, PB: nhập, PCH: nhập, PCL: xuất
Có nhấn phím?
Phím ESC?
End
Đọc dữ liệu chuyển đổi từ ADC0804 vào máy tính và hiển thị dữ liệu đó lên màn hình
Gởi xung thực hiện quá trình chuyển đổi AD
N
N
Y
Y
Trang 4Trang 43
1 Nối cáp liên lạc giữa ổ nối CON1 của μPTS-31 với khối giao tiếp PCBUS-2 gắn trong máy tính
2 Sử dụng dây cắm có chốt để kết nối mạch:
- Nối các chốt nguồn (POWER INPUT) ± 5V và đất của khối μPM-304 với nguồn ±5V và đất của thiết bị chính μPTS-31 tương ứng Chú ý cắm đúng phân cực nguồn
- Dùng cáp nối trạm PORT A trên μPM-304 với trạm PORT A trên thiết bị chính μPTS-31
II ĐIỀU KHIỂN BẰNG TAY
- Điện áp đo lấy từ biến trở P1 đưa vào VIN/ADC
- Vặn biến trở P2 để đặt điện áp chuẩn VREF/2 = +1.275V
- Vặn biến trở P3 để đặt điện áp VIN- = 0V
- Nhấn START để khởi phát cho ADC làm việc Khi đó các đèn LED 0 -7 đều sáng vì ADC có phân tích song không có lệnh xuất số liệu ra ngoài, trạng thái DB0 - DB7 ở trạng thái tổng trở cao nên các LED sáng
1 Chế độ đo đơn:
- Nối J2 cho phép mở các ngõ ra của ADC0804
- Đặt VREF/2 = 1,28V
- Đặt P1 = 0,5V, nhấn START để khởi phát cho ADC làm việc khi đó các LED D1 - D8 sẽ hiển thị kết quả
Kiểm tra: Khi nhấn START ADC mới thực hiện đo Ghi giá trị đo theo trạng thái LED vào bảng, với LED sáng tương ứng D =1 và ngược lại LED tắt tương ứng D
= 0
Thay đổi các giá trị Vin+ như bảng sau:
Vin+ (V) LED 7
DB7
LED 6 DB6
LED 5 DB5
LED 4 DB4
LED 3 DB3
LED2 DB2
LED 1 DB1
LED 0 DB0
Mã 10
0,5
1
1,5
2
2,5
3
2 Chế độ vòng lặp:
- Nối J1 và J2, khi ADC chuyển đổi xong thì tín hiệu ngõ ra INTR sẽ tự động khởi động lại ADC để thực hiện phép đo tiếp theo
Trang 5Phòng thí nghiệm Vi xử lý Bài thí nghiệm Vi xử lý
Vin+ (V) LED 7
DB7
LED 6 DB6
LED 5 DB5
LED 4 DB4
LED 3 DB3
LED2 DB2
LED 1 DB1
LED 0 DB0
Mã 10
0,5
1
1,5
2
2,5
3
III ĐIỀU KHIỂN BẰNG MÁY TÍNH
- Nối chốt cắm trên chân RD của ADC0804 với chốt cắm PC0 trên thiết bị chính
- Nối chốt cắm trên chân WR của ADC0804 với chốt cắm PC3 trên thiết bị chính
Cho phép mở ngõ ra của ADC0804:
Đoạn chương trình tạo xung START cho ADC0804:
mov al,06h ; Xoá bit PC3 = 0
mov al,07h ; Đặt bit PC3 = 1
Chương trình tạo xung cho ADC và hiển thị giả trị trên màn hình:
.model small
.stack 100h
.data
.code
main proc
out dx,al ; Dinh cau hinh cho U9
Trang 6Trang 45
start: mov ah,0Bh ; Kiem tra phim nhan
cmp al,0FFh ; Neu co nhan phim thi ket thuc
out dx,al ; Doc tu Port A
exit: mov ah,4Ch
main endp
; -
delay proc
ret
delay endp
include tnvxl.asm
end main
Viết lại chương trình điều khiển quá áp và thấp áp với yêu cầu như sau: nếu vặn biến trở P1 quá 1 mức điện áp nào đó (giả sử 2V) thì Relay 1 sẽ đóng và ngắt các Relay còn lại, nếu vặn P1 xuống dưới 1 mức điện áp nào đó (giả sử 1V) thì Relay 2 sẽ đóng và ngắt các Relay còn lại, nếu vặn P1 nằm giữa hai giá trị này thì tất cả các Relay đều ngắt