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.
Ngày 10 tháng 1 năm 2002
Sinh viên
Nguyễn hoàng Huy
MỤC LỤC
Trang
I/ Chuyển đổi AD dùng ADS7841
A/ Sơ lược về ADS7841
1/ Giới thiệu 1
2/ Mô tả chân 2 -3
3/ Kỹ thuật điều khiển 3 - 12
B/ p dụng vào luận văn
1/ Kết nối phần cứng 13
2/ Phần mềm điều khiển 14 - 16
II/ Chuyển đổi DA dùng DAC7611
A/ Sơ lược về DAC7611
1/ Giới thiệu 17 -18
2/ Mô tả chân 18 - 20
3/ Hoạt động 20 - 23
B/ p dụng vào luận văn
1/ Kết nối phần cứng 23 - 24
2/ Phần mềm điều khiển 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 27 - 28
B/ Các đặc tính của MSComm 28 - 39
C/ Sự kiện OnComm 39 - 40
D/ Thông báo lỗi 40 - 41
E/ Hỏi vòng ở cổng RS-232 41 - 42
IV/ Màn hình tinh thể lỏng LCD
A/ Chức năng các chân 43 - 44
B/ Nguồn cung cấp và hoạt động 44 - 45
C/ Tập lệnh điều khiển 45 - 48
D/ p dụng vào luận văn
1/ Sơ đồ kết nối 48
2/ Phần mềm nạp cho 8951 49
V/ Hoạt động port nối tiếp của 8951
A/ Giới thiệu 50 - 51
B/ Thanh ghi điều khiển port nối tiếp 51 - 52
C/ Các chế độ hoạt động 52 - 56
D/ Khởi động và truy xuất các thanh ghi cổng nối tiếp 57 - 58
E/ Tốc độ baud port nối tiếp 59 - 61
VI/ Hệ thống thu thập số liệu và điều khiển
A/ Giới thiệu 62
B/ Kết nối phần cứng và phần mềm điều khiển 62 - 71
C/ Giao diện điều khiển 77
1/ Chuyển đổi AD 80 - 84
2/ Chuyển đổi DA 84 - 87
3/ Hiển thò trên LCD 87 - 89
4/ Các nút lệnh khác 90
VII/ Các hộp điều khiển ActiveX
A/ Hộp điều khiển chuyển đổi AD 91 - 94
B/ Hộp điều khiển chuyển đổi DA 94 - 95
C/ Hộp điều khiển LCD 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 V
REF
được cung cấp trong
khoảng từ 100mV đến V
CC
. Tầm điện áp ngõ vào cần đo trong khoảng từ
0V đến V
REF
.
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ừ-40
0
C đến +85
0
C .
2/MÔ TẢ CHÂN :
_ 1- +VCC : Chân cung cấp nguồn từ 2.7V đến 5V
_ 2- CH0 : Ngõ vào kênh 0
_ 3- CH1 : Ngõ vào kênh 1
_ 4- CH2 : Ngõ vào kênh 2
_ 5- CH3 : Ngõ vào kênh 3
_ 6- COM : Ground của ngõ vào analog , nối với GND
ở chế độ đơn cực , ở chế độ visai nối
với
cực “−”
_ 7- SHDN : Khi tích cực (mức 0) IC sẽ ở chế độ nghó ,
tiêu thụ rất ít năng lượng
_ 8- V
REF
: Ngõ vào áp chuẩn
_ 9- +VCC : Chân cung cấp nguồn từ 2.7V đến 5V
2
Sinh viên: Nguyễn Hoàng Huy
_ 10- GND : Ground
_ 11- MODE : 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).
_ 12- DOUT : 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.
_ 13- BUSY : Ngõ ra này sẽ ở dạng tổng trở cao khi
chân “CS” ở mức 1.
_ 14- DIN : 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
DCLK .
_ 15- CS : Tín hiệu chọn chip
_ 16- DCLK : 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 :
3
Sinh viên: Nguyễn Hoàng Huy
Hình trên là một cách kết nối phần cứng cơ bản của ADS7841.
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 V
REF
lấy
bằng nguồn V
CC
. 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 V
CC
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:
4
A2 − A0
(Trường hợp : 001
B
)
CH0
CH1
CH2
CH3
COM
SGL/DIF
(Trường hợp mức cao)
+IN
BỘ BIẾN ĐỔI
-IN
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 :
5
Sinh viên: Nguyễn Hoàng Huy
Nguồn chuẩn bên ngoài đưa vào sẽ đặt tầm cho ngõ vào cần
chuyển đổi . ADS7841 sẽ điều khiển điện áp chuẩn này trong tầm từ
100mV đến +V
CC
. 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Ố
t
ACQ
CS
1 8 1 8 1 8
DCLK
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
7
Sinh viên: Nguyễn Hoàng Huy
cùng (DOUT sẽ ở mức thấp). Những xung clock này sẽ được bộ chuyển
đổ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
8
Sinh viên: Nguyễn Hoàng Huy
cao thì dụng cụ luôn tiêu thụ công suất , nếu cả hai bit ở mức thấp thì
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 Miêu tả
0 0 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 đủ.
0 1 Dành cho lần sử dụng sau
1 0 Dành cho lần sử dụng sau
1 1 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 Max Đơn vò
t
ACQ
900 ns
t
DS
50 ns
t
DH
10 ns
t
DO
100 ns
t
DV
70 ns
t
CSS
50 ns
9
Sinh viên: Nguyễn Hoàng Huy
t
CSH
0 ns
t
CH
150 ns
t
CL
150 ns
t
BD
100 ns
t
BDV
70 ns
t
BTR
70 ns
Giản đồ thời gian cho chuyển đổi 16 chu kỳ xung clock
CS
1 8 1 8 1 8
DCLK
S Control bit S Control bit
DIN
BUSY
1110 9 8 7 6 5 4 3 2 1 0
DOUT
Như vậy thời gian tối thiểu cho một chu kì lấy mẫu là:
T
MIN24
=
50 + 24*(150+150) + 70 = 7320 ns
T
MIN16
=
50 + 16*(150+150) + 70 = 5000 ns
10
Sinh viên: Nguyễn Hoàng Huy
Giản đồ thời gian chi tiết
CS
t
CSS
t
CH
t
CL
t
CSH
t
DS
t
DH
DCLK
DIN
t
BDV
t
BD
t
BTR
BUSY
t
DV
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
áp ngõ vào
0V V
REF
11
Sinh viên: Nguyễn Hoàng Huy
1LSB = V
REF
/4096
• 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ò
12
Sinh viên: Nguyễn Hoàng Huy
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.
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
14
A 21H
RLC A
CLR CS
Tạo xung DCLK
Sinh viên: Nguyễn Hoàng Huy
Lặp 4 lần
Lặp 8 lần
Lặp 3 lần
15
DIN C
Tạo xung DCLK
C DOUT
RLC A
ANL A,#0FH
B A
Tạo xung DCLK
C DOUT
RLC A
Tạo xung DCLK
SETB CS
RET
Sinh viên: Nguyễn Hoàng Huy
ADC:
CLR P1.1 ; chọn chip ADS7841
MOV A,21H ; lấy byte điều khiển
MOV R7,#8 ; dòch 8 lần
NHAPDIN:
RLC A ; đưa bit điều khiển vào
MOV P1.2,C ; chân DIN
CLR P1.0 ; nhập xung cho DCLK
SETB P1.0 ; nhập xung cho DCLK
DJNZ R7,NHAPDIN
CLR P1.0 ; nhập xung cho DCLK
SETB P1.0 ; nhập xung cho DCLK
MOV R7,#4 ; lấy ra 4 bit cao
LOOPAD1:
CLR P1.0 ; nhập xung cho DCLK
SETB P1.0 ; nhập xung cho DCLK
MOV C,P1.3 ; lấy giá trò ra
RLC A ; dòch giá trò vào A
DJNZ R7,LOOPAD1
ANL A,#0FH ; xoá nible cao
MOV B,A ; B chứa 4 bit cao
MOV R7,#8 ; dòch 8 lần
LOOPAD2:
CLR P1.0 ; nhập xung cho DCLK
SETB P1.0 ; nhập xung cho DCLK
MOV C,P1.3
RLC A
DJNZ R7,LOOPAD2
MOV R7,#3 ; tạo 3 xung cuối
CUOI: CLR P1.0 ; nhập xung cho DCLK
16
Sinh viên: Nguyễn Hoàng Huy
SETB P1.0 ; nhập xung cho DCLK
DJNZ R7,CUOI
CLR P1.0 ;cho DCLK về 0
SETB P1.1 ; không chọn chip ADS7841
RET
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 T
M
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 BURR-
BROWN. 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) ,
17
Sinh viên: Nguyễn Hoàng Huy
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ừ –40
o
C đến +80
o
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.
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 VDD : Nguồn cung cấp .
- 2 CS : Tín hiệu chọn chip .
- 3 CLK : Xung clock đễ trao đổi dữ liệu .
- 4 SDI : 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
- 5 LD : Đọ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.
- 6 CLR : 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.
- 7 GND : Đất.
- 8 Vout : Đ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
CLR
o o o
LD o
o
o
SDI o o o
19
ép xuống 000H
Thanh ghi DAC
Chuyển đổi
Điện áp ra
Data
Thanh ghi dòch
Sinh viên: Nguyễn Hoàng Huy
CS
o
CLK
o
BẢNG CÁC THÔNG SỐ HOẠT ĐỘNG CỦA DAC7611
Điện áp hoạt động chuẩn V
DD
: +5V
Sai số điện áp cho phép : 5% (+4.75V đến 5.25V)
Dòng đi vào chân V
DD
, I
DD
: 0.5ma
Côngsuất hoạt động : 2.5mw
Công suất đưa vào tối đa : 325mw
Ngõ vào số so với đất : -0.3V đến V
DD
+0.3V
Điện áp ra so với đất : -0.3V đến V
DD
+0.3V
Nhiệt độ cao tối đa : +155
0
C
Nhiệt độ thấp tối thiểu : -65
0
C
Tầm nhiệt độ hoạt động bình thường: -40
0
C đến 85
0
C
Thời Gian thay đổi điện áp ngõ ra khi
thay đổi 1 LSB ngõ vào : 7µs
3/ HOẠT ĐỘNG :
20
Sinh viên: Nguyễn Hoàng Huy
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)
, 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 (2
12
= 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ẽ
21
Sinh viên: Nguyễn Hoàng Huy
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 .
GIẢN ĐỒ THỜI GIAN
(MSB) (LSB)
t
CL
SDI
t
CH
CLK
t
CSS
t
CSH
CS
t
LD1
t
LD2
t
LDW
LD
t
CLRW
CLR
BẢNG CÁC HẰNG SỐ THỜI GIAN
Ký hiệu Miêu tả Thời gian nhỏ nhất
22
611 10 9 8 7 5 4 3 2 1 0