LỜI MỞ ĐẦU
Ngày nay cùng với sự phát triển mạnh mẽ của khoa học kĩ thuật,máy tính trở
thành công cụ vô cùng quan trọng.Sự phát triển của “Kỹ thuật ghép nối với máy
tính” đã mở rộng đáng kể các lĩnh vực ứng dụng của máy tính,đặc biệt là trong đo
lường và điều khiển.Các thiết bị ghép nối với máy tính theo các modul nhờ vậy mà
máy tính có thể truyền nhận tín hiệu để thực hiện nhiệm vụ xử lý tín hiệu và điều
khiển. Các thiết bị, hệ thống đo lường và điều khiển ghép nối máy tính có độ chính
xác cao, thời gian thu thấp số liệu ngắn, nhưng còn đáng quan tâm hơn là mức độ tự
động hóa trong việc thu thập và xử lý các kết quả đo, kể cả việc lập bảng thống kê
cũng như in ra kết quả. LPT là một tiêu chuẩn của rãnh cắm mở rộng của máy
tính,phần lớn các card ghép nối dùng trong kỹ thuật đo lường và điều khiển đều
được chế tạo để đặt vào các rãnh cắm theo tiêu chuẩn LPT. Bài tập lớn này của em
chỉ nêu lên một ứng dụng nhỏ của việc kết nối máy tính vào sản xuất nói chung và
rãnh cắm mở rộng nói riêng.
Qua một thời gian tìm hiểu, thiết kế với sự cố gắng của bản thân và sự hướng
dẫn của thầy giáo bộ môn đến nay em đã hoàn thành bài tập lớn này.
Tuy nhiên, do
sự hiểu biết về thực tế và trình độ chuyên môn còn hạn chế nên bài tập lớn không
tránh khỏi thiếu sót. Em mong nhận được sự góp ý của các thầy cô giáo và các bạn.
Em xin chân thành cảm ơn các thầy cô!
CHƯƠNG 1. GIỚI THIỆU VỀ CÔNG NGHỆ
1.1. Giới thiệu về chuẩn giao tiếp LPT
1.1.1. Cấu trúc:
Sau đây là chức năng của các đương dẫn tín hiệu:
Strobe (1): Với một mức logic thấp ở chân này, máy tính thông báo cho máy in biết
có một byte đang sẵn sàng trên các đường dẫn tín hiệu để được truyền.
D0 đến D7: Các đường dẫn dữ liệu
Acknowledge: với một mức logic thấp ở chân này, máy in thông báo cho máy tính
biết là đã nhận được kí tự vừa gửi và có thể tiếp tục nhận.
Busy (bận – 11): máy in gửi đến chân này mức logic cao trong khi đang đón nhận
- Giao diện tương thích bus của các bộ vi xử lý 8 – 16 bit
- Vùng nhiệt độ hoạt động
0
0
C tới 70
0
C với AD574AJ, K, L
-55
0
C tới 125
0
C với AD574AS, T, U
- Thời gian biến đổi lớn nhất là 35
µ
s
- Các phiên bản khác với chân ra tương thích có thể hoạt động ở tốc độ cao
như: 15
µ
s với AD674B, 10
µ
s với AD1674
* Mô tả sản phẩm
AD574A là một bộ biến đổi ADC 12 bit hoàn chỉnh hoạt động trên nguyên lý
xấp xỉ liên tiếp, với bộ đệm đầu ra ba trạng thái cho phép ghép nối trực tiếp với bus
của bộ vi xử lý 8 hoặc 16 bit. Một bộ phát xung nhịp và điện áp tham chiếu có độ
chính xác cao được tích hợp trên chip.
Sơ đồ chân vi mạch AD574A
- AD574A có thể phối ghép với hầu hết các vi xử lý và các vi điều khiển
8 hoặc 16 bit. Bộ đệm đầu ra ba trạng thái đa chế độ cho phép ghép trực tiếp với bus
dữ liệu trong quá trình đọc và các lệnh biến đổi nhận được từ bus điều khiển. 12 bit
Để đưa ra một tín hiệu Analog (0
÷
-U
REF
*
255
256
V
) ta cần đưa ra byte dữ liệu
đến các chân từ D0 đến D7, sau đó cần tạo ra một xung âm tại chân
WR
để lưu byte
dữ liệu đó vào D/A.
Điện áp so sánh U
REF
có thể là điện áp dương cũng có thể là điện áp âm, thậm
chí có thể đấu với một điện áp xoay chiều có biên độ thay đổi trong một phạm vi
giới hạn.
1.2.2. Giới thiệu về 74HC245
Bộ đệm bus 2 chiều 74HC245 gồm có 20 chân, ,bộ đệm chỉ hoạt động khi có tín
hiệu low ở chân 19.Nó có chứa 8 vi mạch đệm với các lối ra 3 trạng thái để trao đổi
thông tin giữa các đường dẫn bus dữ liệu theo 2 hướng. Hướng truyền dữ liệu được
xác định bằng chân DIR: DIR = 0, dữ liệu được chuyển từ B sang A. Việc chuyển
hướng dữ liệu cho phép quản lý đơn giản bằng tín hiệu /IOR. Ta có thể nối trực tiếp
ra chân DIR. Qua đó đảm bảo bộ đệm chỉ cho phép dữ liệu đưa vào từ bên ngoài
đưa lên bus dữ liệu của máy tính khi PC thực hiện một quá trình truy nhập đọc
(/IOR = 0)
1.2.3. Giới thiệu về 74HC688
Bộ giả mã địa chỉ 74HC688 so sánh các tín hiệu từ A0-A7 xem có thống nhất với
các địa chỉ của tín hiệu trên các chân tương ứng B0-B7.74HC688 so sánh hai trong
+Đường dữ liệu có 2 cổng:
-D :Cổng vào 8bit (D0-D7)
-O :Cổng ra 8bit (O0-O7)
+Đường điều khiển :
-/OE :Chân chọn chíp
-LE: Cho phép chốt
Bảng 4: Bảng chân lý
/OE LE Dn On
H X X Z
*
(Trở kháng cao)
L H L L (On=Dn)
L H H H
L H X Dn (Trạng thái trước của đầu vào)
H:High
L:Low
X:Không xác định
- Sơ đồ chân:
Hình 1.10. Sơ đồ chân IC chốt 74LS373
2.3. ADC 0809
Bộ ADC là một thiết bị CMOS tích hợp với một bộ chuyển đổi từ tương tự sang số
8bit ,bộ chọn kênh và một bộ logic điều khiển tương thích.Bộ chuyển đổi AD 8bit
này dùng phương pháp chuyển đổi xấp xỉ tiếp.
Ta có sơ đồ chân ADC 0809
Hình 1.11. Sơ đồ chân và cấu tạo ADC 0809
INo tới IN
7
: 8 ngõ vào tương tự
A,B,C : Giải mã chọn một trong 8 ngõ vào
Z
INT4 1 0 0
INT5 1 0 1
INT6 1 1 0
INT7 1 1 1
Bảng 5: chọn kênh tương tự
+Các bước lập trình cho ADC0809
-Chọn một kênh tương tự bằng cách tọa địa chỉ A,B,C theo bảng trên
-Kích hoạt chân ALE .Nó cần xung thấp lên cao để chốt địa chỉ
-Kích hoạt chân SC bằng xung cao xuống thấp để bắt đầu chuyển đổi
-Hiển thị OEC để báo kết thúc chuyển đổi
-Kích hoạt OE cho phép đọc dữ liệu ra của ADC.
2.4. Ghép nối hoàn chỉnh
CHƯƠNG 3. Giao Diện Phần Mềm
3.1. Giao diện điều khiển
3.2. Phần mềm thực hiện
Add modul
Public Declare Function Inportb Lib "dlportio.dll" Alias "Dlport Read Port Uchar"
(ByVal Port As Long) As Byte
Public Declare Sub Outportb Lib "dlportio.dll" Alias "Dlport Write Port Uchar"
(ByVal Port As Long, ByVal Value As Byte)
Code
Dim ck(1 To 5) As Integer
Dim cn(1 To 5) As Integer
Dim cn1(1 To 5) As Integer
Dim cn2(1 To 5) As Integer
Dim dl(1 To 5) As Integer
Dim i As Integer
Dim a, b, c As Integer
Private Sub Command1_Click()
MsgBox "day la chuong trinh dieu khien ghep noi may tinh giao dien LPT"
Outport b(&H37C, 1)
sensor1 = inportb(&H3F8)
''''''''''sensor2
Outport b(&H378, &H23)
Outport b(&H378, &H5)
Outport b(&H378, &H7)
Call Delay(0.1)
Outport b(&H378, &H4)
Outport b(&H37C, 2)
Outport b(&H378, 8)
Outport b(&H37C, 0)
Outport b(&H37C, 1)
sensor2 = inportb(&H378) 'Nhan tin hieu vao
''''''''sensor3
Outport b(&H378, &H13)
Outport b(&H378, &H5)
Outport b(&H378, &H7)
Call Delay(0.1)
Outport b(&H378, &H4)
Outport b(&H37C, 2)
Outport b(&H378, 8)
Outport b(&H37C, 0)
Outport b(&H37C, 1)
sensor3 = inportb(&H378)
'''''''sensor4
Outport b(&H378, &H33)
Outport b(&H378, &H5)
Outport b(&H378, &H7)
Call Delay(0.1)
Outport b(&H378, &H4)
Outport b(&H378, &H7)
Call Delay(0.1)
Outport b(&H378, &H4)
Outport b(&H37C, 2)
Outport b(&H378, 8)
Outport b(&H37C, 0)
Outport b(&H37C, 1)
sensor7 = inportb(&H378)
'''''''sensor8
Outport b(&H378, &H13)
Outport b(&HF37, &H5)
Outport b(&H378, &H7)
Call Delay(0.1)
Outport b(&H378, &H4)
Outport b(&H37C, 2)
Outport b(&H378, 8) ' Chi con tro toi cong A
Outport b(&H37C, 0) 'Chot du lieu
Outport b(&H37C, 1)
sensor8 = inportb(&H378)
'''''''cam bien so
Outport b(&H37C, 2)
Outport b(&H378, A) ' Chi con tro toi cong B
Outport b(&H37C, 0) 'Chot du lieu
Outport b(&H37C, 1) 'dieu khien 6402 duong nhan tin hieu vao
sensor = inportb(&H378) 'Nhan tin hieu vao
End Sub
Kết luQn
Sau nhiều ngày tìm hiểu và làm bài tập lớn dưới sụ hướng đẫn của các thầy và
bạn b•, em đã hoàn thành xong được đề tài này. Sau khi làm xong đã giúp cho em
có nhiều hiểu biết hơn về vi điều khiển và hoạt động của nó. Mặc dù em đã rất cố