Tải bản đầy đủ (.pdf) (11 trang)

Thiết kế board giao tiếp chương 1

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 (180.99 KB, 11 trang )

MÔN HỌC

Thiết kế board giao tiếp
(Interface Board Design)

By Trần Văn Hùng
Mechatronics Dept

/>Email:

Tài liệu tham khảo
1.
2.
3.
4.
5.
6.

Microprofessors and microcpmputers hardware and softwware, Ronaid
J.Tocci, Frank J.Ambrosio, Prentice Hall, 2003
Interfacing Sensors To The Pc, Willis J.Tompkin, Jonh G.webster, Prentice
Hall, 1998
Microprocessor Interfacing techniques, R. Zaks & A. Lease, Sybex
Micro Processor and Interfacing, D. Hall, McGraw Hill;
Parallel port complete, J.Axelson, LakeViewReseach
Mastering Serial Communication, P.W.Gofton, Sybex

1


Nội dung chương trình


n
n
n
n
n
n

Ch01: Giao thức ghép nối
Ch02: Giao diện bus
Ch03: Giao diện số
Ch04: Giao diện tương tự
Ch05: Vi điều khiển
Ch06: Bàn phím

Các bài toán
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.


Thiết kế mạch điều khiển ánh sáng theo chương trình định trước
Thiết kế mạch trang trí bằng đèn LED
Thiết kế mạch nhận dạng điểm phục vụ (thêm ít nhất 2IC)
Thiết kế mạch đo lượng mưa
Thiết kế mạch điều khiển nhiệt độ không khí
Thiết kế mạch điều khiển nhiệt độ dung dịch
Thiết kế mạch đồng hồ điện tử
Thiết kế mạch tính thời gian cho các môn điền kinh
Thiết kế bảng quang báo
Thiết kế mạch khoá điện tử
Thiết kế mạch điều khiển thiết bị bằng remote
Kết nối bàn phím máy tính với VXL, hiển thị ký tự lên LCD
Thiết kế mạch điều khiển Robot chạy theo qũy đạo (sd motor bước)
Thiết kế mạch điều khiển tốc độ động cơ DC
Thiết kế mạch điều khiển góc quay của môtơ, ổn tốc cho motor.

2


Chương 1: Giao thức ghép nối
n

Tín hiệu

n

Format

n


Tốc độ In/Out

n

Lỗi và kiểm soát lỗi

n

Bộ lệnh và trả lời

n

Kịch bản

1.1 Tín hiệu
Khi thiết kế, xây dựng ghép nối máy tính, cần
chú ý đặc biệt tới các tín hiệu theo yêu cầu:
n Analog/Digital
n Digital:

Trạng thái của sự vật, hiện tượng,…
format, mức logic,…
Áp/dòng, dải đo, độ phân ly, thời gian
tác động, độ chính xác, độ lặp lại,… giá trị đo

n Analog:

n Hơn


một thiết bị? => bus/mạng hay không?
=> dùng bit (trường) địa chỉ - tùy từng người

1


1.1 Tín hiệu (tiếp)
n

Nếu dùng bus => Standard bus hay không (ISA, I2C,
USB, … hay các bus trên chuẩn RS485)?

n

IDE và LPT – Mode 0 cables là bus? Tại sao?

n

Khoảng cách: Xa/gần => Serial, Parallel, có liên
quan đến tốc độ

n

Xa: Daisy chain cho tín hiệu hoặc nguồn cấp…

n

Các tín hiệu điều khiển trạng thái
n


Control signals

n

Status signals

n

Handshaking sighals

1.1 Tín hiệu (tiếp)
n

Daisy chain
Nối các thiết bị có khoảng cách từ vài đến vài chục m,
output của port (modul) thứ i nối với input của i+1. Đặc
biệt ở các Field Buses, có thể lên tới km
n Dùng cho cả tín hiệu \\ và nối tiếp, nguồn cấp,
handshaking,…
n

……

CPU
IO_0

IO_1

……


IO_n

2


1.1 Tín hiệu (tiếp)
n

Tính chất vật lý của tín hiệu: là hàm của thời gian,
mức U/I
n

Direction: In/Out, chú ý về chiều của dòng điện

n

Voltage/Current/Optical/Wave

n

Chú ý Input Voltage

n

Mức điện áp: Mức áp? (TTL, CMOS, …)

n

Single End (đơn cực) Differrential signal:
n


Single End signed:
n

Tín hiệu so với một điện thế chuẩn, thường là GND (0 Volt)

n

Ví dụ: Các tín hiệu trên bus (data, add, control)

n

Có n tín hiệu => có ít nhất n+1 dây dẫn

n

Nhạy cảm với nhiễu, tốc độ thấp hơn so với cùng chuẩn

1.1 Tín hiệu (tiếp)
n

Differential Signal: Tín hiệu vi sai
n

n tín hiệu => 2*n dây dẫn ở phía thu
n
n

n


Thu: Nếu có hai dây có cùng kích thước, độ dài, trở kháng,… và gần
nhau, thì mọi trên h được loại trừ => chịu được nhiễu rất tốt vì phía
thu
n

n
n
n

(Va – Vb)>100mV=> logic 1, tùy thuộc vào chuẩn được áp dụng
(Va – Vb)<100mV=> logic 0

Uin = k(Va – Vb) => những thành phần giống nhau được loại bỏ

Khoảng cách lớn, tốc độ cao.
IC: SN75176 của TI là ví dụ
Địa chỉ ứng dụng: USB cable, Profibus,…
Đơn cực
Đơn cực

A
B

+
-

C

Vc = k(Va – Vb)


3


1.1 Tín hiệu (tiếp)
n

Khả năng phối hợp tải – dòng điện ra:
n
n

n
n
n
n

Số tải
Chiều dòng điện Sink hay Source

Nối chung/ghép nối bus đơn giản: 3 state, Mux, Switch.
Hot swap – hot plugible: yêu cầu Vcc và tín hiệu
Cách ly (isolation): Relay, Opto coupler, IrLED
Bus slot, Connecter, chuẩn, số chân (pin)

1.1 Tín hiệu (tiếp)
5V

Sourse

MCU


Outport
Buffer

R

LED

Sink
R

5V

LED

Hình: Sink Sourse connection

4


1.1 Tín hiệu (tiếp)
5V

Hình: Open collecter

1.1 Tín hiệu (tiếp)
n

n

Connecter

n

D shell: DB9, DB25,…

n

DIN

Cable
n

Flat

n

Coaxial,

n

Shield: Cho tín hiệu hoặc
nguồn cấp

n

Twisted Pair: 5, 6

n

Vi sai


n

Optical Fiber

Hình: Connecter

5


1.2 Format
n

Thông tin được định dạng theo: binary/hex (ASCII)
VD: 1 số đo nhiệt độ 12 bits, dải giá trị 0 đến 9990 C. Khi lưu
trong CSDL, truyền tin:

n

n

12 bits (1,5 byte) tiết kiệm bộ nhớ, thời gian truyền

n

ASCII: 3 characters: Dễ quản lý, kiểm soát sai, hiển thị

Lượng tin lớn => khi trao đổi (với DAS, PLC, GPS,
Digi-Oscillocope,…)
n


Header: [tên (bản tin, gói), số thứ tự, ktự bắt tay, ktự đồng
bộ, số ktự/byte trong gói,…] – không mang tin.

n

Content: nội dung tin – mang thông tin

n

Tailer: Mã bắt tay kết thúc, [mã kiểm lỗi] – không mang tin

1.2 Format (tiếp)
8 bits

0 – 1023 bytes

16bits

PID

Data

CRC16

Hình: USB data packet format
n

Byte số liệu/character/frame: (truyền không đồng bộ,
RS-232, RS-485, RS-422): được định dạng thành 1
frame:

n

1 start bit = 0

n

5/6/7/8 data bit, D0 first

n

[parity: Even/odd]

n

1/1.5/2 stop bit = 1

6


1.3 Tốc độ In/Out
n

Xuất phát từ: Nhu cầu trao đổi thông tin của hệ (tốc độ và
khoảng cách) => chọn kiểu truyền thích hợp, có liên quan đến
tín hiệu:
n

Chỉ ra các “bottle_neck”, khắc phục được => xuất hiện các “bottle
neck” ở mức độ thấp hơn


n

Phụ thuộc vào khoảng cách – tích số (k/c và tốc độ)

n

Nhiễu: theo công thức của Shannon bps = BW log2(1+P/N). Với BW:
bandwidth, P/N: tỷ số công suất tín hiệu/nhiễu

n

Đường truyền: (công nghiệp) cáp đồng trục, cáp quang, wireless,…)

n

Synchronous/Asynchronous

n

Modulation/Demodulation…=>Tốc độ bao nhiêu kbps/kBps?

VD: LPT: SPP mode: 50…100kBps;
RS-232: 2400/4800/9600/19200/…bps

1.4 Lỗi và kiểm soát lỗi
n

Khi trao đổi thông tin thường gây ra lỗi, đặc biệt
truyền xa/chuyển đổi tín hiệu. Nhiều phương pháp
(hardware, Software) hỗ trợ để kiểm tra:


n

[Block] check sum – BCC, phần mềm: tính tổng của
tất cả các ký tự, các byte. Kết quả có thể lấy 1 byte
n

VD: ROM BIOS, Ext BIOS started @ chẵn 2K, 2 ô đầu là
mã 0x55 và 0xAA, độ dài của mảng ROM là 512 byte;
checksum bù 2 sao cho tổng của tất cả các byte và mã
checksum luôn bằng zero

n

CRC, ECC,… vi mạch/software – subroutine

n

Parity, 1 hoặc 2 chiều

n

Redundancy (RAID), thừa dư

7


1.5 Bộ lệnh và trả lời
Khi ghép Intelligent Devices (Computerized devices –
mouse, KB, Printer, modem, FDC, HDC, RTU…) có

nhiều tham số, chế độ hoạt động => xây dựng bộ lệnh
(command set) và thông tin trả về (response set)
n Các câu lệnh phần mềm => bớt tín hiệu và cổng phần
cứng

n

Tập hợp các yêu cầu từ CS – command set
n Tập hợp các trả lời, trạng thái –
result/response/reaction set

n

Data down/up
n Symtax of command and response (structure and
grammar)
n

1.6 Kịch bản
n

Liệt kê các trường
hợp rồi có thể áp các
phép toán xử lý tương
ứng để đảm bảo việc
ghép nối: không mất
tin, thừa tin, quẩn,
treo,…

n


Thường xây dựng
theo liểu Step List
hoặc chart

n

Timeout

n



Slave

Master

ACK
ACK
NACK

t
Hình: Scenario Chart

8


Ví dụ: giao thức giữa PC và VĐK trong việc trao
đổi dữ liệu (U, I, t0,…)
n


Tín hiệu?

n

Format?

n

Tốc độ?

n

Lỗi?

n

Lệnh và trả lời?

n

Kịch bản?

n

….

1.7 Bài tập
1. Viết chương trình giả lập RS-232
2. Viết chương trình để nhập ký tự trên máy tính rồi

hiển thị ký tự lên LCD
3. Đo giá trị nhiệt độ (độ ẩm, U, I,…) rồi hiển thị lên
máy tính (gtrị và dạng biểu đồ).

9



×