Tải bản đầy đủ (.doc) (103 trang)

Hệ thống thu thập dữ liệu và điều khiển

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (412.63 KB, 103 trang )

LỜI NÓI ĐẦU
Đề tài thực hiện trong luận văn tốt nghiệp này là thiết kế “ Hệ
thống thu thập dữ liệu và điều khiển ”. Hệ thống này sẽ thu thập dữ liệu
từ các kênh chuyển đổi Analog sang Digital, điều khiển hệ thống bằng tín
hiệu điện áp được xuất ra, thiết bò hiển thò là màn hình tinh thể lỏng
(LCD). Hệ thống được kết nối với máy tính qua cổng nối tiếp, giao diện
điều khiển được viết bằng ngôn ngữ Visual Basic.
Đễ có thể hoàn thành đề tài này em xin chân thành cám ơn thầy
hướng dẫn HUỲNH HỮU PHƯƠNG, toàn bộ các anh trong công ty
Control nói chung và phòng Điện tử nói riêng đã chỉ bảo tận tình và tạo
điều kiện tốt nhất cho em trong quá trình thực hiện luận văn.

Sinh viên
Nguyễn hoàng Huy


MỤC LỤC
I/ Chuyển đổi AD dùng ADS7841
A/ Sơ lược về ADS7841
1/ Giới thiệu
2/ Mô tả chân
3/ Kỹ thuật điều khiển
B/ p dụng vào luận văn
1/ Kết nối phần cứng
2/ Phần mềm điều khiển

Trang

1
2 -3
3 - 12


13
14 - 16

II/ Chuyển đổi DA dùng DAC7611
A/ Sơ lược về DAC7611
1/ Giới thiệu
2/ Mô tả chân
3/ Hoạt động
B/ p dụng vào luận văn
1/ Kết nối phần cứng
2/ Phần mềm điều khiển

23 - 24
24 - 26

III/ Truyền thông nối tiếp với Visual Basic
A/ Sơ lược về truyền thông nối tiếp
B/ Các đặc tính của MSComm
C/ Sự kiện OnComm
D/ Thông báo lỗi
E/ Hỏi vòng ở cổng RS-232

27 - 28
28 - 39
39 - 40
40 - 41
41 - 42

IV/ Màn hình tinh thể lỏng LCD
A/ Chức năng các chân

B/ Nguồn cung cấp và hoạt động
C/ Tập lệnh điều khiển
D/ p dụng vào luận văn
1/ Sơ đồ kết nối
2/ Phần mềm nạp cho 8951

17 -18
18 - 20
20 - 23

43 - 44
44 - 45
45 - 48
48
49


V/ Hoạt động port nối tiếp của 8951
A/ Giới thiệu
B/ Thanh ghi điều khiển port nối tiếp
C/ Các chế độ hoạt động
D/ Khởi động và truy xuất các thanh ghi cổng nối tiếp
E/ Tốc độ baud port nối tiếp

50 - 51
51 - 52
52 - 56
57 - 58
59 - 61


VI/ Hệ thống thu thập số liệu và điều khiển
A/ Giới thiệu
B/ Kết nối phần cứng và phần mềm điều khiển
C/ Giao diện điều khiển
1/ Chuyển đổi AD
2/ Chuyển đổi DA
3/ Hiển thò trên LCD
4/ Các nút lệnh khác

62
62 - 71
77
80 - 84
84 - 87
87 - 89
90

VII/ Các hộp điều khiển ActiveX
A/ Hộp điều khiển chuyển đổi AD
B/ Hộp điều khiển chuyển đổi DA
C/ Hộp điều khiển LCD

91 - 94
94 - 95
95 - 100


Sinh viên: Nguyễn Hoàng Huy

CHUYỂN ĐỔI AD DÙNG ADS7841

Chuyển đổi từ Analog sang Digital (ADC) là quá trình không thể
thiếu trong các hệ thống điều khiển tự động. Ngoài IC ADC0809 quen
thuộc trên thò trường có rất nhiều IC thực hiện việc chuyển đổi AD,
ADC0809 có một số nhược điểm là độ chính xác không cao (chuyển đổi 8
bit), thời gian chuyển đổi cao (khoảng 120 µs) và giao tiếp dữ liệu dạng
song song chỉ thích hợp cho các hệ thống cần độ chính xác không cao và
tốn nhiều chân port hoặc phải giao tiếp dữ liệu qua data bus.
Trong đề tài thực hiện trong luận văn này ta thực hiện việc biến đổi
AD bằng IC ADS7841 của hãng BURR-BROWN. ADS7841 có một số
đặc tính nổi trội so với ADC0809 đó là độ chính xác tương đối cao
(chuyển đổi 12 bit), tốc độ chuyển đổi cao có thể đạt tới tốc độ 5µs. Và
đặc biệt là giao tiếp dữ liệu dạng nối tiếp do đó tốn ít chân port của vi xử
lí (có thể chỉ cần tốn 3 chân port).
Ngoài ra đối với ADS7841 ta còn có thể sử dụng ở chế độ chuyển
đổi 8 bit đễ tăng tốc độ chuyển đổi dữ liệu đối với các hệ thống không
cần độ chính xác cao. Trước khi áp dụng vào hệ thống ta giới thiệu sơ
lược về ADS7841.

A/ SƠ LƯC VỀ ADS7841
1/ GIỚI THIỆU :
ADS7841 là IC chuyển đổi tín hiệu analog sang tín hiệu số 12 bit
bằng giao tiếp nối tiếp do công ty BURR-BROWN sản xuất . ADS7841
gồm 4 kênh chuyển đổi và cho phép ta lập trình đễ chọn chuyển đổi AD
12 bit hoặc 8 bit tùy theo nhu cầu sử dụng. Công suất tiêu thụ khoảng
2mw , nguồn cung cấp đơn V CC =+5V , áp chuẩn VREF được cung cấp trong
khoảng từ 100mV đến VCC . Tầm điện áp ngõ vào cần đo trong khoảng từ
0V đến VREF.

1



Sinh viên: Nguyễn Hoàng Huy

Sơ đồ chân của ADS7841

Tiêu thụ năng lượng thấp , làm việc ở tốc độ cao và có khả năng
phân kênh dễ dàng nên ADS7841 được dùng rất hữu dụng trong các hệ
thống đo lường và điều khiển công nghiệp , kiểm tra và đo lường các
nguồn năng lượng với độ chính xác cao . Ngoài ra do sử dụng giao tiếp
dữ liệu dạng nối tiếp nên ADS7841 thuận lợi trong việc trao đổi dữ liệu
từ xa . ADS7841 bao gồm 16 chân có sơ đồ chân được vẽ ở hình trên .
Nhà sản xuất bảo đảm hoạt động tốt trong tầm nhiệt độ môi trường
từ-400C đến +850C .

2/MÔ TẢ CHÂN :
_
_
_
_
_
_

123456-

+VCC
CH0
CH1
CH2
CH3
COM


:
:
:
:
:
:

Chân cung cấp nguồn từ 2.7V đến 5V
Ngõ vào kênh 0
Ngõ vào kênh 1
Ngõ vào kênh 2
Ngõ vào kênh 3
Ground của ngõ vào analog , nối với GND
ở chế độ đơn cực , ở chế độ visai nối

với
_

7- SHDN

:

_
_

8- VREF
9- +VCC

:

:

cực “−”
Khi tích cực (mức 0) IC sẽ ở chế độ nghó ,
tiêu thụ rất ít năng lượng
Ngõ vào áp chuẩn
Chân cung cấp nguồn từ 2.7V đến 5V
2


Sinh viên: Nguyễn Hoàng Huy

_
_

10- GND :
11- MODE :

_

12- DOUT :

_

13- BUSY :

_

14- DIN


DCLK .
_
_

:

15- CS
:
16- DCLK :

Ground
Chọn chế độ chuyển đổi , khi ở mức thấp
luôn là chuyển đổi 12 bit , khi ở mức cao
chế độ chuyển đổi được quyết đònh bởi
bit mode trong byte điều khiển (sẽ nói ở
phần sau).
Ngõ ra của dữ liệu nối tiếp , dữ liệu được
dòch ra dựa trên xung clock DCLK. Ngõ ra
này sẽ ở dạng tổng trở cao khi chân “CS”
ở mức 1.
Ngõ ra này sẽ ở dạng tổng trở cao khi
chân “CS” ở mức 1.
Ngõ vào dữ liệu nối tiếp , dữ liệu được đưa
vào dựa trên xung clock ở chân
Tín hiệu chọn chip
Ngõ vào xung clock, xung clock này đễ
nhận biết dữ liệu được đưa vào

(chân DIN)
hoặc đưa ra(chân DOUT).


3/ KỸ THUẬT ĐIỀU KHIỂN :

Hình trên là một cách kết nối phần cứng cơ bản của ADS7841.
3


Sinh viên: Nguyễn Hoàng Huy

Trong trường hợp này các kênh chuyển đổi luôn ở dạng đơn cực nên ta
nối thẳng chân “COM” với “GND”. ADS7841 được cung cấp nguồn đơn
cực +5V, tụ 0.1µF được dùng đễ lọc nguồn cung cấp . Chân “SHDN” luôn
được đặt ở mức 1 (nối với V CC). Áp chuẩn cung cấp cho chân VREF lấy
bằng nguồn VCC . Chân “MODE” được đặt ở mức 0 đễ chọn chế độ
chuyển đổi 12 bit . Chân “BUSY” khôg cần sử dụng tới , các chân
“DCLK”, “CS”, “DIN”, “DOUT” được nối tới các chân của vi xử lí .
ADS7841 cần được cung cấp xung clock từ bên ngoài thông qua
chân “DCLK”, và một áp chuẩn từ bên ngoài vào chân V REF , áp chuẩn
này có thểø dao động từ +100mV đến +V CC , nguồn cung cấp VCC từ +2.7V
tới +5.25V . Giá trò áp chuẩn sẽ trực tiếp đặt tầm ngõ vào của bộ biến đổi
. Dòng điện chuẩn ngõ vào phụ thuộc vào tốc độ chuyển đổi của
ADS7841 .
Ngõ vào analog của tín hiệu cần chuyển đổi có thể ở dạng đơn cực
hoặc vi sai và được đưa vào một trong bốn kênh (CH0, CH1, CH2, CH3).
Điện áp này phải nằm trong tầm từ điện áp chuẩn V REF đến áp của chân
“COM”(trong trường hợp này là đất) hoặc trong trường hợp áp vi sai ta sử
dụng hai trong bốn kênh (CH0, CH1, CH2, CH3).
• NGÕ VÀO ANALOG:

A2 − A0


(Trường hợp : 001B)
CH0
CH1
CH2
CH3

+IN
BỘ BIẾN ĐỔI
-IN

COM
SGL/DIF
(Trường hợp mức cao)

4


Sinh viên: Nguyễn Hoàng Huy

Hình trên là sơ đồ khối của khối phân kênh ngõ vào của
ADS7841. Ngõ vào của bộ biến đổi là áp của một trong bốn
kênh so với chân “COM” hoặc hai trong bốn kênh này . Hai
bảng sau sẽ chỉ mối quan hệ giữa các bit A2, A1, A0 và bit điều
khiển SGL/DIF trong việc phân kênh ngõ vào analog .
Điện áp đơn cực (trường hợp bit SGL/DIF ở mức cao)
A2 A1 A0 CH0 CH1 CH2 CH3 COM
0
0
1

+IN
-IN
1
0
1
+IN
-IN
0
1
0
+IN
-IN
1
1
0
+IN -IN
Điện áp vi sai (trường hợp bit SGL/DIF ở mức thấp)
A2 A1 A0 CH0 CH1 CH2 CH3 COM
0
0
1
+IN -IN
1
0
1
-IN +IN
0
1
0
+IN -IN

1
1
0
-IN +IN
Những bit điều khiển này được đưa tuần tự thông qua chân “DIN”.
Ta sẽ thấy giao tiếp nối tiếp này một cách chi tiết hơn ở phần sau. Khi bộ
biến đổi nhập vào chế độ làm việc , sai lệch điện áp giữa chân +IN và
–IN sẽ được bảo vệ bởi dãy tụ điện có sẵn trong ADS7841. Điện áp ở
ngõ vào –IN được giới hạn trong khoản từ –0.2V đến 1.25V. Ngõ vào
+IN có tầm từ –0.2V đến V CC + 0.2V . Dòng điện ngõ vào của tín hiệu
analog phụ thuộc tốc độ chuyển đổi của ADS7841. Suốt quá trình lấy
mẫu nguồn phải nạp điện cho các tụ điện lấy mẫu nằm trong ADS7841
(khoảng 25pF), sau khi tụ điện này được nạp điện đầy đủ nó sẽ giải
phóng ra một dòng điện ở ngõ vào. Tốc độ nạp từ nguồn analog tới bộ
chuyển đổi thì phụ thuộc vào tốc độ chuyển đổi.
• NGÕ VÀO ÁP CHUẨN :
Nguồn chuẩn bên ngoài đưa vào sẽ đặt tầm cho ngõ vào cần
5


Sinh viên: Nguyễn Hoàng Huy

chuyển đổi . ADS7841 sẽ điều khiển điện áp chuẩn này trong tầm từ
100mV đến +VCC . Phải giữ sai lệch điện áp analog của 2 chân ngõ vào
cần chuyển đổi +IN và –IN trong khoảng cho phép . Ví dụ như trong chế
độ đơn cực với điện áp chuẩn là 1.25V , và với chân “COM” được nối đất
thì kênh ngõ vào được chọn ( CH0, CH1, CH2, CH3 ) phải nằm trong tầm
từ 0V đến 1.25V . Nếu chân “COM”được kết nối với 0.5V thì tầm áp vào
của kênh được chọn sẽ từ 0.5V đến 1.75V.
Có một vài vấn đề về cách đònh chuẩn áp ngõ vào. Khi áp chuẩn

được cung cấp không phải là ước số của 4096 ( 2 12) thì với cùng lượng
điện áp ngõ vào analog cần đo , giá trò của ngõ ra (dạng số) sẽ bò giảm
xuống . Điều này rất thường xảy ra ở bit có trọng số thấp nhất (LSB). Do
đó khi sử dụng áp chuẩn là những con số này ta phải bù lại lượng đã mất
đi. Ví dụ như khi sử dung áp chuẩn là 2.5V thì ta phải bù lại 2LSBs ( tức
phải cộng 2 vào giá trò (dạng số) ngõ ra của bộ biến đổi. Khi sử dung áp
chuẩn là 0.5V thì ta phải bù lại 10LSBs.
Trong mỗi trường hợp này giá trò bù lại khoảng 1.22mV. Ở những
trường hợp không cần thiết phải dùng áp chuẩn nhỏ ta nên sử dụng áp
chuẩn là 4.095mV, điều này sẽ làm giảm sai số của quá trình chuyển đổi
đồng thời giúp ta dễ dàng tính được giá trò áp ngõ vào cần đo (1 LSB
bằng 1mV).
Tương tự như trên thì nhiễu của ngõ ra sẽ tăng khi giá trò của một
LSB thấp. Với điện áp chuẩn là 100 mV thì giá trò của mỗi LSB sẽ là
24µV. Đây là mức thấp so với các loại nhiễu có trong thiết bò. Kết quả là
ngõ ra (dạng số) sẽ không ổn đònh và sẽ thay đổi xung quanh một giá trò
chính bằng một số LSBs. Với áp chuẩn thấp ta cần phải mắc một tụ
bypass đễ lọc nguồn , áp chuẩn cung cấp phải ít nhiễu, tín hiệu ngõ vào
cần đo phải ít nhiễu.
Điện áp chuẩn đưa vào chân V REF sẽ không được đệm mà trực tiếp
lái các tụ điện có chức năng biến đổi AD của ADS7841, cụ thể là dòng
điện đi vào là 13µA ứng với áp chuẩn 2.5V. Dòng chuẩn này sẽ trực tiếp
làm giảm tốc độ chuyển đổi lẫn điện áp chuẩn.

6


Sinh viên: Nguyễn Hoàng Huy

• XỬ LÍ GIAO TIẾP SỐ


tACQ
1

CS
8

1

DCLK

8

1

8

1 2 3 4 5 6 7 8
DIN

BUSY
1110 9 8 7 6 5 4 3 2 1 0
(MSB)
(LSB)
DOUT
Giản đồ thời gian của một sự chuyển đổi trong 24 chu kỳ xung clock
Hình trên chỉ ra cách điều khiển cơ bản của việc xử lí số của
ADS7841. Giản đồ trên mô phỏng nguồn của tín hiệu số là các chân Port
của một vi điều khiển hoặc một bộ xử lí tín hiệu số với giao tiếp nối tiếp
cơ bản ( chú ý rằng tín hiệu số đi vào không được vượt quá 5.5V). Trong

mỗi lần giao tiếp giữa vi xử lí và bộ điều khiển bao gồm tám chu kỳ xung
clock. Một chuyển đổi được hoàn tất có thể bao gồm ba lần giao tiếp nối
tiếp , trong tổng 24 chu kỳ xung clock trên ngõ vào DCLK. Tám xung
clock đầu tiên được sử dụng đễ cung cấp byte điều khiển được đưa vào ở
chân DIN. Khi bộ chuyển đổi có đủ thông tin cho quá trình chuyển đổi
sắp tới đễ đặt kênh ngõ vào , chế độ chuyển đổi. Sau khi byte điều khiển
được hoàn thành thì ở 12 xung clock kế tiếp sẽ là kết quả chuyển đổi
analog sang digital, xung clock thứ 13 cho bit cuối cùng của kết quả
chuyển đổi . Ba xung clock kế tiếp cần thiết đễ hoàn thành byte cuối
cùng (DOUT sẽ ở mức thấp). Những xung clock này sẽ được bộ chuyển
7


Sinh viên: Nguyễn Hoàng Huy

đổi bỏ qua.
• BYTE ĐIỀU KHIỂN:
Phần trên ta đã biết việc chọn các thông số cho bộ chuyển đổi được
thông qua byte điều khiển, ta sẽ xem xét chi tiết về các chức năng của
từng bit trong byte điều khiển này. Bit đầu tiên là ‘S’ bit (start bit) phải
luôn ở mức cao và báo hiệu cho sự bắt đầu của byte điều khiển .
ADS7841 sẽ bỏ qua những giá trò ngõ vào trên chân “DIN“ cho đến khi
bit ‘S’ được xác lập. Ba bit kế tiếp (A2 đến A0) đễ chọn kênh ngõ vào
cần chuyển đổi . Các thông tin chi tiết về ba bit này đã được trình bày ở
phần trên.
‘MODE’ bit và chân MODE có quan hệ với nhau đễ đặt số bit cho
một lần chuyển đổi . Nếu chân MODE ở mức thấp thì bộ chuyển đổi luôn
làm việc ở chế độ 12 bits mà không phụ thuộc vào trạng thái của bit
MODE trong byte điều khiển . Nếu chân MODE ở mức cao thì bit MODE
sẽ quyết đònh số lượng bit trong mỗi lần chuyển đổi , cụ thể là khi bit

MODE bằng 0 tương ứng là chuyển đổi 12 bits , bằng 1 tương ứng là
chuyển đổi 8 bits.

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

S
A2
A1
A0
Mode Sgl/Dif PD1 PD0
(MSB)
(LSB)
Thứ tự của những bit điều khiển trong byte điều khiển
Bit Sgl/Dif là bit chọn chế độ ngõ vào cần đo, cụ thể là khi ở mức
cao là chọn chế độ ngõ vào đơn cực , ở mức thấp là chọn chế độ vi sai , ở
chế độ đơn cực kênh ngõ vào được chọn là chênh lệch áp so với chân

“COM”., ở chế độ vi sai hai ngõ vào vi sai được cho bởi hai trong bốn
kênh (CH0 đến CH4) tùy thuộc vào các bit A2, A2, A0 như đã nói ở phần
trên.
Hai bit cuối cùng PD1 và PD0 chọn chế dộ sử dụng công suất
nguồn , bảng dưới đây chỉ ra chi tiết về hai bit này. Nếu cả hai bit ở mức
cao thì dụng cụ luôn tiêu thụ công suất , nếu cả hai bit ở mức thấp thì
8


Sinh viên: Nguyễn Hoàng Huy

dụng cụ sẽ không tiêu thụ công suất giữa hai lần chuyển đổi . Khi một
chuyển đổi mới được bắt đầu , dụng cụ sẽ lấy lại trạng thái hoạt động
bình thường, không cần thiết phải trì hoãn đễ cho phép dụng cụ bật nguồn
và ngay lần chuyển đổi đầu tiên sẽ có hiệu lực.
PD1 PD2
0
0

0
1
1

1
0
1

Miêu tả
Công suất sẽ tắt giữa hai lần chuyển đổi , sau
mỗi lần chuyển đổi kết thúc , bộ biến đối sẽ

nhập vào chế độ công suất thấp, ở lần chuyển
đổi kế tiếp thiết bò sẽ tự nạp lại nguồn đầy đủ.
Dành cho lần sử dụng sau
Dành cho lần sử dụng sau
Không tắt công suất nguồn giữa hai lần chuyển
đổi , dụng cụ luôn tiêu thụ công suất.

Phần trên ta đã xem xét chuyển đổi AD trong 24 chu kỳ xung
clock, đó là chuyển đổi cơ bản. Nhằm làm tăng tốc độ chuyển đổi của
ADS7841 ta sẽ xét chuyển đổi trong 16 chu kỳ xung clock.
• CHUYỂN ĐỔI TRONG 16 CHU KỲ XUNG CLOCK :
Những bit điều khiển chuyển đổi thứ n+1 có thể được đưa vào
trong chuyển đổi thứ n trong mỗi 16 chu kỳ xung clock, giản đồ thời gian
ở dưới sẽ chỉ rõ điều này. Giản đồ cũng chỉ ra cách giao tiếp nối tiếp với
vi xử lí ở mỗi byte được dòch ra giữa việc xử lí và chuyển đổi.
Các thông số thời gian đặc biệt :
Ký hiệu
Min
tACQ
900
tDS
50
tDH
10
tDO
tDV
tCSS
50
tCSH
0

9

Max

100
70

Đơn vò
ns
ns
ns
ns
ns
ns
ns


Sinh viên: Nguyễn Hoàng Huy

tCH
tCL
tBD
tBDV
tBTR

150
150

ns
ns

ns
ns
ns

100
70
70

Giản đồ thời gian cho chuyển đổi 16 chu kỳ xung clock

CS
1

S

8

1

8
1
DCLK

Control bit

S

8

Control bit


DIN

BUSY
1110 9 8 7 6 5
DOUT

4 3 2 1 0

Như vậy thời gian tối thiểu cho một chu kì lấy mẫu là:
TMIN24 = 50 + 24*(150+150) + 70 = 7320 ns
TMIN16 = 50 + 16*(150+150) + 70 = 5000 ns

10


Sinh viên: Nguyễn Hoàng Huy

Giản đồ thời gian chi tiết

tCSS

CS

tCH tCL

tDS tDH

tCSH


DCLK

DIN
tBDV

tBD

tBTR
BUSY

tDV

11

10

---

DOUT
• ĐỊNH DẠNG DỮ LIỆU :
Dữ liệu ngõ ra của ADS7841 được đònh dạng bằng số nhò phân như
hình sau :
Dữ liệu ngõ ra
11. . .111
11. . .110
11. . .101

00. . .010
00. . .001
00. . .000

0V
1LSB = VREF/4096

11

áp ngõ vào
VREF


Sinh viên: Nguyễn Hoàng Huy

• CHUYỂN ĐỔI 8-BIT:
Ngoài chế độ chuyển đổi AD 12 bit ADS7841 còn cung cấp cho
người sử dụng chế độ chuyển đổi 8 bit . Chế độ này cần thiết khi người sử
dụng muốn tăng tốc độ chuyển đổi và kết quả dữ liệu ngõ ra không cần
phải thật chính xác. Khi sử dụng ở chế độ này một chuyển đổi sẽ hoàn
thành sớm hơn bốn chu kỳ xung clock.
Có nghóa là là trong giao tiếp nối tiếp với vi xử lí thì chân
“DOUT“ sẽ được dòch ra 12 bit. Không những thời gian được rút ngắn
bằng việc bớt đi 4 chu kỳ xung clock (nhanh hơn 25%) mà tốc độ chuyển
đổi có thể rút ngắn bằng cách tăng tốc độ của xung clock nhanh hơn 50%.
Cả hai điều này giúp chúng ta có thể tăng khoảng gấp đôi tốc độ chuyển
đổi.
• ĐIỀU KHIỂN NGUỒN CUNG CẤP:
Có ba chế độ điều khiển nguồn cung cấp cho ADS7841: chế độ đầy
(PD1-PD0 = 11B) , tự động tắt (PD1-PD0 = 00B), và chế độ nghó (chân
“SHDN” ở mức thấp). Sự hữu dụng của ba chế độ này tùy thuộc vào việc
ADS7841 được điều khiển như thế nào. Ví dụ như ở tốc độ chuyển đổi
cao và chuyển đổi ở chế độ 16 chu kỳ xung clock chỉ có sự khác biệt rất
nhỏ giữa chế độ đầy và chế độ tự động tắt nguồn, tương tự như thế nếu

ADS7841 được nhập vào chế độ tự động tắt nguồn thì khi shutdown (chân
“SHDN” ở mức thấp ) thì hầu như không có sự khác biệt .
Khi điều khiển ở tốc độ cao và chế độ chuyển đổi 16 chu kỳ xung
clock , ADS7841 sử dụng hầu hết thời gian có được vào việc chuyển đổi
do đó có rất ít thời gian cho việc tự động tắt nguồn , chế độ này hầu như
luôn tích cực. Tức là sự khác biệt giữa chế độ đầy và chế độ tự động tắt
nguồn hầu như là như nhau.
Nếu tốc độ chuyển đổi được giảm xuống bằng cách đơn giản là
giảm tần số của ngõ vào xung clock (DCLK) hoặc vẫn duy trì DCLK ở
tốc độ cao nhưng giảm số lần chuyển đổi trong 1 giây, trong trường hợp
này bộ biến đổi sẽ tăng tỉ lệ thời gian ở chế độ tắt nguồn ( nói chung là
chế độ tự động tắt nguồn sẽ tích cực). Tuy nhiên dụng cụ vẫn tiếp tục bò
hao phí năng lượng ở các chân logic khác, ta có thể giảm tối đa bằng cách
giữ CS ở mức cao.
12


Sinh viên: Nguyễn Hoàng Huy

B/ÁP DỤNG VÀO LUẬN VĂN:
1/KẾT NỐI PHẦN CỨNG
Mạch giao tiếp giữa ADS7841 với vi xử lí 8951

Cấp nguồn đơn +5V cho ADS7841, nối các chân “DCLK”, “CS”,
“DIN”, “DOUT” cho các chân P1.0, P1.1, P1.2, P1.3 , ta không cần thiết
dùng chân “BUSY” , chân “MODE” luôn ở mức 0 tức là ta luôn chọn chế
độ chuyển đổi 12 bits , chân “SHDN” luôn ở mức 1 tức là ta không dùng
đến khả năng Shutdown của ADS7841 (chân “SHDN” tích cực mức thấp )
Điện áp chuẩn “VREF” đưa vào là 4.095V được tạo bởi LM431.


13


Sinh viên: Nguyễn Hoàng Huy

2/PHẦN MỀM ĐIỀU KHIỂN:
Ta viết dưới dạng chương trình con ADC , chương trình con này sẽ
lấy các thông số của AD ( kênh chuyển đổi , chế độ vi sai hay đơn cực...)
từ ô nhớ 21H của vi xử lí , giá trò mặc đònh của ô nhớ này là 94H ( tức là
chọn kênh 0 , ở chế độ đơn cực , bật chế độ tự động tắt nguồn), giá trò
này người sử dụng có thể thay đổi bằng việc truyền lệnh từ máy tính tới
vi xử lí , chuyển đổi trong chương trình con này là chuyển đổi trong 24
chu kỳ xung clock. Sau khi thực hiện xong chương trình con này giá trò
chuyển đổi sẽ được lưu vào hai thanh ghi A và B (B chứa 4 bit cao , A
chứa 8 bit thấp ).

LƯU ĐỒ GIẢI THUẬT

Lặp 8 lần

CLR

CS

A

21H

RLC


A

DIN

C

Tạo xung DCLK

Tạo xung DCLK
Lặp 4 lần

C

DOUT
RLC

A

14


Sinh viên: Nguyễn Hoàng Huy

ANL A,#0FH
B

A

Tạo xung DCLK
Lặp 8 lần


C

DOUT

RLC

Lặp 3 lần

A

Tạo xung DCLK

SETB

CS

RET
ADC:
CLR
MOV
MOV

P1.1
A,21H
R7,#8

; chọn chip ADS7841
; lấy byte điều khiển
; dòch 8 lần


RLC
MOV
CLR

A
P1.2,C
P1.0

; đưa bit điều khiển vào
; chân DIN
; nhập xung cho DCLK

NHAPDIN:

15


Sinh viên: Nguyễn Hoàng Huy

SETB
DJNZ
CLR
SETB
MOV

P1.0
; nhập xung cho DCLK
R7,NHAPDIN
P1.0

; nhập xung cho DCLK
P1.0
; nhập xung cho DCLK
R7,#4
; lấy ra 4 bit cao

CLR
SETB
MOV
RLC
DJNZ
ANL
MOV
MOV

P1.0
; nhập xung cho DCLK
P1.0
; nhập xung cho DCLK
C,P1.3
; lấy giá trò ra
A
; dòch giá trò vào A
R7,LOOPAD1
A,#0FH
; xoá nible cao
B,A
; B chứa 4 bit cao
R7,#8
; dòch 8 lần


CLR
SETB
MOV
RLC
DJNZ
MOV
CLR
SETB
DJNZ
CLR
SETB
RET

P1.0
; nhập xung cho DCLK
P1.0
; nhập xung cho DCLK
C,P1.3
A
R7,LOOPAD2
R7,#3
; tạo 3 xung cuối
P1.0
; nhập xung cho DCLK
P1.0
; nhập xung cho DCLK
R7,CUOI
P1.0
;cho DCLK về 0

P1.1
; không chọn chip ADS7841

LOOPAD1:

LOOPAD2:

CUOI:

Tính thời gian thực hiện chương trình con trên:
T = 3 + 6*8 + 3 + 6*4 + 3 + 6*8 +1 + 4*3 + 4
= 3 + 48 + 3 + 24 + 3 + 48 +1 +12 +4 = 146 TM

16


Sinh viên: Nguyễn Hoàng Huy

CHUYỂN ĐỔI DA DÙNG DAC7611
Chuyển đổi tín hiệu Digital sang tín hiệu Analog là quá trình quan
trọng trong việc điều khiển hệ thống điều khiển tự động. Ta không sử
dụng IC DAC0808 quen thuộc vì một số nhược điểm của nó là độ chính
xác không cao (chuyển đổi 8 bit), giao tiếp dữ liệu dạng song song do đó
tốn nhiều chân port của vi xử lí (hoặc phải sử dụng dạng giao tiếp qua
data bus).
Trong luận văn này ta sử dụng IC DAC7611 của hãng BURRBROWN. So với DAC0808 thì DAC7611 có độ chính xác cao hơn 16 lần
(chuyển đổi 12 bit, độ phân giải là 1mv), ngoài ra giao tiếp dữ liệu của
DAC7611 dạng nối tiếp nên tốn ít chân port. Ta có thể chỉ cần sử dụng 3
chân port. . Trước khi áp dụng vào hệ thống ta giới thiệu sơ lược về
DAC7611.


A/ SƠ LƯC VỀ DAC7611
1/ GIỚI THIỆU :
DAC7611 là IC chuyển đổi Digital sang Analog 12 bit của hãng
BURR-BROWN , sử dụng nguồn đơn +5V . Có thể cung cấp công suất
2.5mw (0.5ma ở 5V) . Ngõ điện áp ra sẽ thay đổi 1 LSB trong 7µs . Dữ
liệu giao tiếp với các chân của Port của vi xử lí là dạng giao tiếp nối
tiếp bao gồm các chân xung clock (CLK), chân dữ liệu vào (SDI) ,
chân nạp dữ liệu (LD), chân chọn chip (CS) , và chân xóa (CLR). Hoạt
động ở nhiệt độ từ –40o C đến +80o C .

Nguồn cung cấp cho DAC7611 nên được bypass bởi một tụ lọc giá
trò khoảng 0.1 µF . Do DAC7611 sử dụng nguồn đơn +5V chỉ có một chân
GND nên tất cả các dòng điện bao gồm dòng điện số và dòng điện
analog đều được đổ về chân này . Do đó chân GND nên được kết nối trực
tiếp đến ground của analog. Điện áp cung cấp tới V DD phải được điều
chỉnh tốt và ít nhiễu.
17


Sinh viên: Nguyễn Hoàng Huy

DAC7611 được sử dụng trong nhiều lónh vực như :
_ Điều khiển quá trình
_ Các hệ thống thu thập dữ liệu
_ Điều khiển các hệ thống tùy động vòng kín . . .
2/ MÔ TẢ CHÂN :
-

1

2
3
4

VDD
CS
CLK
SDI

:
:
:
:

- 5 LD

:

- 6 CLR

:

- 7 GND
- 8 Vout

:
:

Nguồn cung cấp .
Tín hiệu chọn chip .

Xung clock đễ trao đổi dữ liệu .
Ngõ vào của dữ liệu nối tiếp (12 bit).
Dữ liệu được đưa vào thông qua xung
clock CLK
Đọc dữ liệu từ thanh ghi nội Dac . Thanh
ghi Dac sẽ được chuyển đổi LD ở mức
thấp (trong trường hợp CS ở mức thấp.
Xung xóa thanh ghi Dac , khi CLR ở mức
thấp thanh ghi DAC được đặt giá trò 000H,
điện áp ngõ ra bằng 0V.
Đất.
Điện áp chuyển đổi ngõ ra , tầm điện áp từ
0V đến 4.095V ( 1mv/LSB ),Giá trò này sẽ
đựơc duy trì cho đến lần chuyển đổi kế.

18


Sinh viên: Nguyễn Hoàng Huy

Cấu tạo tương đương của các ngõ vào Logic trong DAC7611
Điện áp ra

CLR o

LD

SDI

o


o

o

----ép xuống 000H
Thanh ghi DAC
--- Chuyển đổi

o

o

o

o

o

Data
Thanh ghi dòch

CS

o

CLKo
19



Sinh viên: Nguyễn Hoàng Huy

BẢNG CÁC THÔNG SỐ HOẠT ĐỘNG CỦA DAC7611
Điện áp hoạt động chuẩn VDD :
Sai số điện áp cho phép :
Dòng đi vào chân VDD , IDD :
Côngsuất hoạt động :
Công suất đưa vào tối đa :
Ngõ vào số so với đất :
Điện áp ra so với đất :
Nhiệt độ cao tối đa :
Nhiệt độ thấp tối thiểu :
Tầm nhiệt độ hoạt động bình thường:
Thời Gian thay đổi điện áp ngõ ra khi
thay đổi 1 LSB ngõ vào :

+5V
5% (+4.75V đến 5.25V)
0.5ma
2.5mw
325mw
-0.3V đến VDD+0.3V
-0.3V đến VDD+0.3V
+1550C
-650C
-400C đến 850C
7µs

3/ HOẠT ĐỘNG :


Hình trên chỉ cách kết nối cơ bản giữa Vi xử lí với DAC7611 . Giao
tiếp gồm một tín hiệu chọn chip (CS), tín hiệu xung clock nối tiếp (CLK)
20


Sinh viên: Nguyễn Hoàng Huy

, dữ liệu nối tiếp (SDI) , và một tín hiệu nạp (LD). Bốn tín hiệu này ta có
thể đưa vào 4 chân port của Vi xử lí .Tín hiệu CLR luôn được đặt ở mức
một .Dữ liệu được đònh dạng ở hệ nhò phân và bit đầu tiên là bit có trọng
số lớn nhất (MSB). Tầm điện áp ra từ 0V đến 4.095V, đây là biến đổi
DA 12 bit nên độ phân giải sẽ là 1mv (212 = 4095) .
Mã nhò phân ngõ vào
Điện áp ngõ ra (V)
FFFH
+ 4.095
801H
+2.049
800H
+2.048
7FFH
+2.047
000H
0
Bảng chuyển đổi dữ liệu của DAC 7611
Dữ liệu số đưa vào trong DAC7611 được chứa trong 2 bộ đệm .
Điều này có nghóa là dữ liệu mới có thể được nhập vào DAC mà không
có bò chèn lên dữ lệu cũ và điện áp ra của sự chuyển đổi . Tại thời điểm
sau khi dữ liệu được nhập vào thanh ghi dòch , dữ liệu này có thể được
đưa vào thanh ghi DAC . Quá trình chuyển đổi này sẽ hoàn tất khi chân

LD được chuyển từ mức cao sang mức thấp (1 sang 0). Nếu dữ liệu mới
được dòch vào thanh ghi dòch trong khi LD ở mức thấp thì điện áp ra sẽ
thay đổi sau mỗi bit được dòch vào . Đễ ngăn ngừa điều này chân LD phải
được trả về mức cao trong khi ta dòch dữ liệu mới vào.
Ở bất kỳ thời điểm nào giá trò của thanh ghi DAC đều có thể được
đặt giá trò 000H (điện áp ra bằng 0) bằng việc cho chân CLR xuống mức
thấp. Thanh ghi DAC sẽ duy trì giá trò này cho đến khi chân CLR trở lại
mức cao và chân LD phải ở mức thấp đễ cho phép giá trò của thanh ghi
dòch được chuyển vào thanh ghi DAC . Nếu LD ở mức thấp trong khi CLR
ở mức thấp thanh ghi DAC sẽ được đặt giá trò là 000H và điện áp ra sẽ
bằng không. Khi CLR trở lại mức cao , thanh ghi DAC sẽ sẽ lấy giá trò
trong thanh ghi dòch và điện áp ra sẽ tương ứng giá trò này .

21


Sinh viên: Nguyễn Hoàng Huy

GIẢN ĐỒ THỜI GIAN

(MSB)
11

10

9

8

7


6

4

3

2

1

0

SDI

tCL

tCH

5

(LSB)

CLK

tCSS

tCSH

CS

tLD1

tLD2

tLDW
LD

tCLRW
CLR

BẢNG CÁC HẰNG SỐ THỜI GIAN
Ký hiệu
tCH
tCL
tLDW
tCLRW
tLD1

Miêu tả
Độ rộng xung clock cao
Độ rộng xung clock thấp
Độ rộng xung LD
Độ rộng xung CLR
Thời gian trứơc khi nạp
22

Thời gian nhỏ nhất
30ns
30ns
20ns

30ns
15ns


×