Khung dữ liệu/lệnh cĩ kích thước thay đổi tùy thuộc vào trường thơng tin. Khung dữ liệu mang thơng tin của lớp trên. Trong khi đĩ khung lệnh mang thơng tin điều khiển và khơng chứa thơng tin của lớp trên.
Start Access control Frame control Destination address Source address
Data FCS End Frame status
Start: Mở đầu khung.
Access control : Phân biệt khung Token hoặc khung lệnh /dữ liệu.
Frame control : Phân biệt loại thơng tin điều khiển.
Destination address: Địa chỉ đến của khung.
Source address: Nơi xuất phát của khung.
Data: Cĩ kích thước thay đổi mang thơng tin.
FCS: Kiểm tra lỗi khung.
End: Kết thúc.
Frame status: Báo trạng thái khung nhận được.
Thông số RS-232C RS-422 RS-423 RS485 Chiều dài cáp Length(max) (50ft) 15m (4000ft) 1,2km (4000ft) 1,2km (4000ft) 1,2km Tốc độ baud Baud rate 20Kbs/15m 10Mbs/12m 1Mbs/120m 100Kbs/1,2km 10oKbs/12m 10Kbs/120m 1Kbs/1,2km 10Mbs/12m 1Mbs/120m 100 Mbs/1,2km
Mode Unbalanced Balanced
Differential Differential Balanced Differential Balanced
Driver No. 1 1 1 32 Receiver 1 10 10 10 Logic 0 +3v -:- +25v +2v-:-+5v +3.6v-:-+6v +1.5v-:-+5v Logic 1 -3v -:- -25v -2v-:- -5v -3.6v -:- -6v -1.5v -:- -5v Community 2v 1.8v 3.4v 1.3v Cable/signal 1 2 2 2
Methode Simplex Simplex Simplex Simplex
Phương thức Half-duplex Full-duplex Half-duplex Full-duplex Half-duplex Full-duplex Half-duplex Full-duplex Shotr circuit current
500mA 150mA 150mA 150mA
Chuẩn RS-232.
Là chuẩn của EIA nhằm định nghĩa giao diện vật lý gữa DTE và DCE (ví dụ như một máy tính và một modem). Chuẩn này sử dụng đầu nối 25 chân, tuy nhiên chỉ cĩ một số ít chân là thực sự cần thiết cho việc liên kết. Về phương diện điện, chuẩn này qui định các mức logic 0 và 1 tương ứng với các điện thế nhỏ hơn -3v và lớn hơi +3v. Tốc độ đường truyền khơng vợt quá 20Kbs và khoảnh cách nhỏ hơn 15m.
Chuẩn RS-232C cĩ thể chấp nhân phương thức truyền song cơng (fulllduplex).
Một trong những yêu cầu quan trọng của RS232C là thời gian chuyển từ mức logic này sang mức logic khác khơng vượt quá 4% thời gian tồn tại của một bit. Giả sử với tốc độ truyền 19200 baud thì thời gian truyền mức logic phải nhỏ hơn 0.04/19200 = 2.1s (Điều này làm giới hạn đường truyền, với tốc độ 19200 baud ta cĩ thể truyền xa nhất là 50ft "15.24m").
Một trong những vấn đề quan trọng cần lưu ý khi sử dụng RS232 là mạch thu phát khơng cân bằng ( đơn cực ), tức là tín hiệu vào và ra được so với đất.
Một cải tiến quan trọng của chuẩn RS232C là chuẩn RS 422A. Chuẩn này sử dụng việc truyền dữ liệu sai lệch (differential data) trên những đường truyền cân bằng. Một dữ liệu sai lêch cần hai dây, một cho dữ liệu khơng đảo (noninveted) và một đường cho dữ liệu đảo (inverted). Dữ liệu được truyền trên đường dây cân bằng, thường là cặp xoắn với một trở ở đầu cuối. Một IC lái (drver) sẽ biến đổi các mức logic thơng thường thành một cặp tín hiệu sai lệch để truyền. Bên nhận sẽ cĩ một mạch chuyển đổi tín hiệu sai lệch thành các mức logic tương ứng khác. Với chuẩn mới này, tốc độ cũng như khoảng cách được cải thiện nhiều.
Chuẩn RS - 485.
Giao tiếp EIA RS- 485 là một cải tiến của chuẩn RS422A. Đắc tính điện của nĩ giống như chuẩn RS422A. RS485 là một chuẩn truyền vi sai, sử dụng hai dây cân bằng. Với RS-485 tốc độ truyền cĩ thể đạt đến 10Mbs và chiều dài cáp cĩ thể lên đến 1.2km. Điện áp vi sai ngõ ra từ +1.5v —>+5v nếu là logic 0, mức logic 1 sẽ là -1.5—>-5v. Một đặc điểm quan trọng của RS 485 là cĩ thể cung cấp đến 32 trạm trên cùng một đường truyền. Điều này cho phép tạo thành một mạng cục bộ.
Chỉ cĩ một trạm được chọn làm master, các trạm cịn lại đều là slave. Master được quyền truyền bất cứ lúc nào, nĩ sẽ chỉ định một slaver bất kì giao tiếp với nĩ. Slave chỉ cĩ thể truyền sau khi nhận được lệnh của master. Mọi slave cĩ một địa chỉ riêng trên đường truyền và sẽ khơng được truyền nếu khơng cĩ yêu cầu từ master.
4.5. Mạch chuyển đổi và mạng RS-485.
Thơng thường các họ vi điều khiển cĩ ngõ truyền thơng theo mức TTL,các thiết bị đầu cuối khác (DTE) cĩ cổng truyền thơng là RS-232. Để cĩ thể nối mạng các thiết bị này ta phải chuyển từ TTL RS-232 sang RS-485. Để thực hiện được chuyển đổi này cĩ rất nhiều vi mạch trên thị trường, nhưng họ vi mạch của hãng MAXIM là phổ biến nhất hiện nay. Tiêu biểu là MAX485 nĩ chuyển từ TTL sang RS-485 và truyền thơng tin theo phương pháp Half-Duplex. Bên trong mổi vi mạch chứa một bộ phát và một bộ thu.
Đặc điểm : RS-485 Sử dụng tín hiệu điện áp chênh lệch đối xứng giữa hai dây dẫn A và B, thơng tin được đưa trên cặp dây xoắn đơi bán song cơng (HalfDuplex).Nghĩa là tại một thời điểm bát kì trên đường truyền chỉ cĩ thể là một thiết bị hoặc là hoặc là nhận.
Sơ đồ mạng Half-Duplex RS-485.
Sơ đồ mạng Full-Duplex RS-485
Để thực hiện kết nối gữa máy tính và mạch điều khiển ta cần qui định tốc độ và khung dữ liệu giống nhau.
Ví dụ: Viết chương trình khi mới Reset mạch thì P1=05H, P2 = 55H và dữ liệu được gửi lên máy tính là 55H. Khi xuất dữ liệu từ máy tính xuống thì dữ liệu được đưa ra P2, P0. DEM EQU 31h ORG 000H MOV DEM,#55H MOV P1,#05H LCALL START MAIN: JNB RI,PHAT ACALL GetChar MOV DEM,A MOV P2,A PHAT: MOV A,DEM
MOV P0,A
LCALL PUTCHAR LJMP MAIN
;======================================
Start: MOV A,PCON ;Make sure SMOD is off SETB ACC.7 MOV PCON,A ;Set up timer 1 MOV TH1,#0F3h ;4800 baud MOV TMOD,#20h
MOV TCON,#40h
MOV SCON,#52h ;Set up serial port RET
;========================================================== GetChar:JNB RI,$ ;Wait for receiver flag
CLR RI ;Clear receiver flag
MOV A,SBUF ;Read character RET
;========================================================== Putchar:JNB TI,$ ;Wait for transmitter flag
CLR TI ;clear transmitter flag MOV SBUF,A
RET END