1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

TRUYỀN THÔNG GIỮA HAI MÁY TÍNH SỬ DỤNG GIAO THỨC HDLC

18 369 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 840,89 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục lục1.CHUẨN GIAO TIẾP RS23231.1.Định dạng của khung truyền dữ liệu theo chuẩn RS232 như sau:31.2.Các đặc tính kỹ thuật của chuẩn RS232 như sau:31.3.Cổng COM41.4.Đầu nối DB9 mô tả như bảng sau :51.5.Truyền thông nối tiếp giữa 2 nút61.6.IC MAX 23272.CHUẨN GIAO TIẾP SPI83.GIAO THỨC HDLC (HighLevel Data Control):133.1.Các đặc tính của giao thức HDLC :133.2.Cấu trúc khung :143.3.Một vài kịch bản về giao thức HDLC :15

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ VIỄN THÔNG



BÁO CÁO BÀI TẬP LỚN

MẠNG MÁY TÍNH

ĐỀ TÀI :

TRUYỀN THÔNG GIỮA HAI MÁY TÍNH

SỬ DỤNG GIAO THỨC HDLC

Giáo viên hướng

dẫn

: TS NGUYỄN TÀI HƯNG

Sinh viên thực hiện : Trần Trung Đức

Nguyễn Thị Vân Anh 20115444 Phạm Thị Huế 20115597

Hà Nội- 5/2014

Trang 2

Mục lục

1 CHUẨN GIAO TIẾP RS-232 3

1.1 Định dạng của khung truyền dữ liệu theo chuẩn RS-232 như sau: 3

1.2 Các đặc tính kỹ thuật của chuẩn RS-232 như sau: 3

1.3 Cổng COM 4

1.4 Đầu nối DB9 mô tả như bảng sau : 5

1.5 Truyền thông nối tiếp giữa 2 nút 6

1.6 IC MAX 232 7

2 CHUẨN GIAO TIẾP SPI 8

3 GIAO THỨC HDLC (High-Level Data Control): 13

3.1 Các đặc tính của giao thức HDLC : 13

3.2 Cấu trúc khung : 14

3.3 Một vài kịch bản về giao thức HDLC : 15

Trang 3

1 CHUẨN GIAO TIẾP RS-232

Chuẩn RS-232 từ năm 1969 được chấp nhận chuyên dùng cho truyền số liệu và các

đường kiểm tra giữa terminal và moderm, tốc độ cực đại là 20Kbps, với khoảng

cách tối đa không quá 15m Chuẩn RS-232 quy định mức logic1 ứng với điện áp từ

-3V đến -15V (mark), mức logic 0 ứng với điện áp từ 3V đến 15V(space) và có khả

năng cung cấp dòng từ 10 mA đến 20 mA Ngoài ra, tất cả các ngõ ra đều có đặc

tính chống chập mạch

1.1 Định dạng của khung truyền dữ liệu theo chuẩn RS-232 như sau:

Hình 1.1.a : Khung truyền dữ liệu RS232

Khi không truyền dữ liệu, đường truyền sẽ ở trạng thái mark (điện áp

-10V) Khi bắt đầu truyền, DTE (Data Terminal Equipment) sẽ đưa ra xung Start

(space: 10V) và sau đó lần lượt truyền từ D0 đến D7và Parity, cuối cùng là xung

Stop (mark: -10V) để khôi phục trạng thái đường truyền Dạng tín hiệu truyền

mô tả như sau (truyền ký tự A):

Hình 1.1.b : Truyền kí tự A theo chuẩn RS232 1.2 Các đặc tính kỹ thuật của chuẩn RS-232 như sau:

Star D0 D1 D2 D3 D4 D5 D6 D7 P Stop

Trang 4

Chiều dài cable cực đại 15m Tốc độ dữ liệu cực đại 20 Kbps Điện áp ngõ ra cực đại ±25V Điện áp ngõ ra có tải ±5V đến ±15V Trở kháng tải 3K đến 7K Điện áp ngõ vào ±15V

Độ nhạy ngõ vào ±3V Trở kháng ngõ ra 3K đến 7K

Các tốc độ truyền dữ liệu thông dụng trong cổng nối tiếp là: 1200 bps, 4800

bps, 9600 bps và 19200 bps

1.3 Cổng COM

Cổng COM còn gọi là cổng nối tiếp theo chuẩn RS-232.Cổng COM được sử

dụng khá phổ biến dữ liệu ở cổng COM thuộc dữ liệu dạng nối tiếp

Cổng nối tiếp được sử dụng để truyền dữ liệu hai chiều giữa máy tính và

ngoại vi, có các ưu điểm sau:

 Khoảng cách truyền xa hơn truyền song song

 Số dây kết nối ít

 Có thể truyền không dây dùng hồng ngoại

 Có thể ghép nối với vi điều khiển hay PLC (Programmable Logic Device)

 Cho phép nối mạng

 Có thể tháo lắp thiết bị trong lúc máy tính đang làm việc

 Có thể cung cấp nguồn cho các mạch điện đơn giản

Các thiết bị ghép nối chia thành 2 loại: DTE (Data Terminal Equipment) và

DCE (Data Communication Equipment) DCE là các thiết bị trung gian như

MODEM còn DTE là các thiết bị tiếp nhận hay truyền dữ liệu như máy tính, PLC,

vi điều khiển… Việc trao đổi tín hiệu thông thường qua 2 chân RxD (nhận) và TxD

(truyền) Các tín hiệu còn lại có chức năng hỗ trợ để thiết lập và điều khiển quá trình

truyền, được gọi là các tín hiệu bắt tay (handshake) Ưu điểm của quá trình truyền

dùng tín hiệu bắt tay là có thể kiểm soát đường truyền.Tín hiệu truyền theo chuẩn

RS-232 của EIA (Electronics Industry Associations)

Các phương thức nối giữa DTE và DCE:

 Đơn công (simplex connection): dữ liệu chỉ được truyền theo 1 hướng

Trang 5

 Bán song công ( half-duplex): dữ liệu truyền theo 2 hướng, nhưng mỗi

thời điểm

 Chỉ được truyền theo 1 hướng

 Song công (full-duplex): số liệu được truyền đồng thời theo 2 hướng

Cổng COM có hai dạng: đầu nối DB25 (25 chân) và đầu nối DB9 (9 chân)

Hình 1.3.a : Đầu nối DB25 và DB9

Hình 1.3.b: cổng DB9 trên máy tính

1.4 Đầu nối DB9 mô tả như bảng sau :

D9 Tín hiệu Hướng truyền Mô tả

1 DCD DCE → DTE Data carier detect: DCE phát hiện

sóng mang

2 RxD DCE → DTE Received data: dữ liệu nhận

3 TxD DTE →DCE Transmitted data: dữ liệu truyền

4 DTR DTE →DCE Data terminal ready: DTE sẵn

sàng làm việc

5 GND - Ground: nối đất (0V)

6 DSR DCE → DTE Data set ready: DCE sẵn sàng

làm việc

7 RTS DTE →DCE Request to send: DTE yêu cầu

truyền dữ liệu

Trang 6

8 CTS DCE →DTE Clear to send: DCE sẵn sàng

nhận dữ liệu

9 RI RI DCE →DTE Ring indicator: báo chuông

1.5 Truyền thông nối tiếp giữa 2 nút

Các sơ đồ khi kết nối dùng cổng nối tiếp:

Hình 1.5.a : Kết nối đơn giản trong truyền thông nối tiếp

Khi thực hiện kết nối như trên, quá trình truyền phải bảo đảm tốc độ ở đầu

phát và thu giống nhau Khi có dữ liệu đến DTE, dữ liệu này sẽ được đưa vào bộ

đệm và tạo ngắt Ngoài ra, khi thực hiện kết nối giữa hai DTE, ta còn dùng sơ đồ sau

Hình 1.5.b : Kết nối trong truyền thông nối tiếp dùng tín hiệu bắt tay

Khi DTE1 cần truyền dữ liệu thì cho DTR tích cực, tác động lên DSR của

DTE2 cho biết sẵn sàng nhận dữ liệu và cho biết đã nhận được sóng mang của

MODEM (ảo) Sau đó, DTE1 tích cực chân RTS để tác động đến chân CTS của

DTE2 cho biết DTE1 có thể nhận dữ liệu Khi thực hiện kết nối giữa DTE và DCE,

do tốc độ truyền khác nhau nên phải thực hiện điều khiển lưu lượng Quá trình điều

Trang 7

khiển này có thể thực hiện bằng phần mềm hay phần cứng Quá trình điều khiển

bằng phần mềm thực hiện bằng hai ký tự Xon và Xoff Ký tự Xon được DCE gởi đi

khi rảnh (có thể nhận dữ liệu) Nếu DCE bận thì sẽ gởi ký tự Xoff Quá trình điều

khiển bằng phần cứng dùng hai chân RTS và CTS Nếu DTE muốn truyền dữ liệu

thì sẽ gởi RTS để yêu cầu truyền, DCE nếu có khả năng nhận dữ liệu (đang rảnh) thì

gởi lại CTS

1.6 IC MAX 232

Hình 1.6.a: MAX 232 SMD và sơ đồ chân

IC MAX 232 là IC chuyên dụng trong giao tiếp nối tiếp với máy tính Nhiệm

vụ chính của MAX 232 là chuyển đổi mức điện áp logic TTL ở ngõ vào thành mức

+10, -10 ở phía nhận và các mức +3V…+15V hoặc -3V…-15V thành mức TTL ở

phía nhận

Một số đặc điểm chính của IC MAX 232:

 Hoạt động từ nguồn 5V với các tụ nạp 1uF

 Hoạt động lên tới 120Kbps

 Mức ngõ vào ±30V

 Có 2 bộ Driver/Receiver

 Dòng cung cấp thấp 8mA

Trang 8

Hình 1.6.b: Sơ đồ yêu cầu kết nối MAX232

2 CHUẨN GIAO TIẾP SPI

SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp đồng bộ tốc độ

cao do hãng Motorola đề xuất Đây là kiểu truyền thông Master-Slave, trong đó có 1

chip Master điều phối quá trình truyền thông và các chip Slaves được điều khiển bởi

Master, vì thế truyền thông chỉ xảy ra giữa Master và Slave

SPI là một cách truyền song công (full duplex) vì vậy tại cùng một thời điểm

quá trình truyền và nhận có thể xảy ra đồng thời

Một liên kết SPI giữa chip Master và Slave được thực hiện thông qua 4 đường:

SCK: Đóng vai trò xung giữ nhịp cho giao tiếp SPI Mỗi nhịp trên chân SCK

báo 1 bit dữ liệu đã đến hoặc đi Sự tồn tại của chân SCK giúp quá trình truyền ít bị

lỗi và tốc độ truyền của SPI có thể đạt rất cao Xung nhịp chỉ được tạo ra bởi chip

Master

MISO – Master Input/Slave Output: Nếu là chip Master thì đây là đường

Input, nếu là chip Slave thì MISO lại là Output MISO của Master và các Slave được

nối trực tiếp với nhau

MOSI – Master Output/Slave Input: Nếu là chip Master thì đây là đường

Output, nếu là chip Slave thì đây là đường Input MOSI của Master và các Slaves

được nối trực tiếp với nhau

SS – Slave Select: SS là đường chọn Slave cần giao tiếp Trong trường hợp

một Master giao tiếp với nhiều Slave thì SS sẽ là đường chọn Slave cần giao tiếp

Trang 9

Nếu chip Master kéo đường SS của một Slave nào đó xuống mức thấp thì việc giao

tiếp sẽ xảy ra giữa Master và Slave đó Chỉ có một đường SS trên mỗi Slave nhưng

có thể sẽ có nhiều đường điều khiển SS trên Master

Hoạt động: Mỗi chip Master hay Slave có một thanh ghi dữ liệu 8 bit Cứ mỗi

xung nhip do Master tạo ra trên đường giữ nhịp SCK, một bit trong thanh nghi dữ liệu

của Master được chuyển qua Slave trên đường MOSI, đồng thời một bit trong thanh ghi

dữ liệu của chip Slave cũng được truyền qua Master trên đường MISO Hình sau mô tả

quá trình truyền 1 gói dữ liệu thực hiện bởi module SPI trong AVR

Hình 2.1: Quá trình truyền dữ liệu trên module SPI

Giao tiếp SPI trên AVR

Vi điều khiển ATmega128 giao tiếp với thẻ nhớ micro SD Card thông qua

chuẩn giao tiếp SPI và được thực hiện thông qua module SPI của chip ATmega128

Trên chip ATmega128 thì các chân dùng cho giao tiếp SPI như sau:

 SCK: PB1 (chân 11)

 MISO: PB3 (chân 13)

 MOSI: PB2 (chân 12)

 SS: PB0 (chân 10)

Khi giao tiếp với thẻ nhớ thì ATmega128 sẽ đóng vai trò là Master còn micro

SD Card sẽ là Slave, do đó chúng ta cần set các chân: SCK output, MOSI output,

MISO input

Module SPI trên AVR được vận hành bởi 3 thanh ghi: SPCR, SPSR, SPDR

SPCR (SPI Control Register): là một thanh ghi 8 bit điều khiển tất cả hoạt động của

SPI

Trang 10

Hình 2.2: Thanh ghi SPCR

 Bit 7 – SPIE (SPI Interupt Enable): bit cho phép ngắt SPI Nếu bit này được

set bằng 1 và bit I trong thanh ghi trạng thái được sét bằng 1 (sei), 1 ngắt sẽ

xảy ra sau khi một gói dữ liệu được truyền hoặc nhận

 Bit 6 – SPE (SPI Enable): sét bit này lên 1 để cho phép bộ SPI hoạt động

Nếu SPE = 0 thì module SPI dừng hoạt động

 Bit 5 – DORD (Data Order): bit này chỉ định thứ tự dữ liệu các bit được

truyền và nhận trên các đường MISO và MOSI Khi DORD = 0 thì bit có

trọng số lớn nhất (MSB) của dữ liệu được truyền trước Ngược lại, khi

DORD = 1 thì bít có trọng số nhỏ nhất (LSB) được truyền trước

 Bit 4 – MSTR (Master/Slave Select): bit này dùng để nhận diện xem Master

đang hoạt động ở chế độ Master hay Slave Nếu MSTR = 1 thì chip được

nhận diện là Master Ngược lại, MSTR = 0 thì chip là Slave

 Bit 3 và 2 – CPOL và CPHA: đây là 2 bit xác lập cực của xung giữ nhịp và

cạnh sample dữ liệu Với bit CPOL, ở trạng thái nghỉ, chân SCK có thể được

dữ ở mức cao (CPOL = 1) hoặc thấp (CPOL = 0) Với bit CPHA, nó được

dùng để chỉ cách mà dữ liệu được lấy mẫu (sample) theo xung giữ nhịp Dữ

liệu có thể được lấy mẫu ở cạnh lên của SCK (nếu CPHA = 0) hoặc cạnh

xuống (Nếu CPHA = 1) Hình sau mô tả cách sample dữ liệu trong 4 chế độ

của SPI trên AVR

Trang 11

Hình 2.3: Cách lấy mẫu dữ liệu.

Sự kết hợp của CPOL và CPHA làm nên 4 chế độ hoạt động của SPI

 Bit 1 và 0 – CPR1:0: hai bit này kết hợp với bit SPI2X trong thanh ghi SPSR

cho phép chọ tốc độ giao tiếp SPI Tốc độ này được xác lập dựa trên tốc độ

nguồn xung clock chia cho một hệ số chia Bảng sau mô tả chi tiết các tốc độ

có thể của SPI

Trang 12

Hình 2.4: Bảng tần số sample dữ liệu

 SPSR (SPI Status Register): là thanh ghi trạng thái của moude SPI

Hình 2.5: Thanh ghi SPSR

Trong thanh ghi này, chỉ có 3 bit được sử dụng

Bit 7 – SPIF: là cờ báo SPI, khi một gói dữ liệu đã được truyền hoặc nhận từ

SPI, bit SPIF sẽ tự động được set lên 1

Bit 6 – WCOL: là bi báo va chạm dữ liệu Bit này được AVR set lên 1 nếu chúng

ta cố tình viết 1 gói dữ liệu mới vào thanh ghi dữ liệu SPDR trong khi quá trình

truyền nhận trước chưa kết thúc

Bit 0 – SPI2X: là bit nhân đôi tốc độ truyền, bit này kết hợp với bit SPR1:0

trong thanh ghi điều khiển SPCR xác lập tốc độ cho SPI

 SPDR (SPI Data Register): là thanh ghi dữ liệu của SPI Trên chip Master,

ghi giá trị vào thanh ghi SPDR sẽ kích quá trình truyền thông SPI Trên chip

Slave, dữ liệu nhận được từ Master sẽ lưu trong thanh ghi SPDR, dữ liệu

được lưu sẵn trong SPRD sẽ được truyền cho Master

Trang 13

3 GIAO THỨC HDLC (High-Level Data Control):

Giao thức điều khiển liên kết dữ liệu quan trong nhất là HDLC Không phải vì nó

được sử dụng rộng rãi mà nó còn là cơ sở cho nhiều giao thức điều khiển liên kết dữ

liệu khác

Các đặc tính của giao thức HDLC:

Giao thức HDLC định nghĩa 3 loại máy trạm, hai cấu hình đường nối kết và 3 chế

độ điều khiển truyền tải

a/- Ba loại trạm trong HDLC :

• Trạm chính (Primary Station): Có trách nhiệm điều khiển các thao thác về đường

truyền Các khung được gởi từ trạm chính gọi là lệnh Command)

• Trạm phụ (Secondary Station): Hoạt động dưới sự kiểm soát của trạm chính

Khung gởi từ trạm phụ gọi là các trả lời Trạm chính duy trì nhiều đường nối kết

luận lý đến các trạm phụ trên đường truyền

• Trạm hỗn hợp (Combined Station): Bao gồm đặc điểm của trạm chính và trạm phụ

Một trạm hỗn hợp có thể gởi đi các lệnh và các trả lời

b/- Hai cấu hình đường nối kết :

• Cấu hình không cân bằng (Unbalanced Configuration): Gồm một máy trạm chính

(Primary Station) và nhiều máy trạm phụ (Secondary station) và hỗ trợ cả 2 chế độ

truyền song công và bán song công

• Cấu hình cân bằng (Balanced Configuration): Bao gồm 2 máy trạm hỗn hợp, và hỗ

trợ cả 2 chế độ truyền song công và bán song công

c/- Có 3 chế độ truyền tải là :

• Chế độ trả lời bình thường (NRM- Normal Response Mode), được sử dụng với cấu

hình đường nối kết không cân bằng Máy chính có thể khởi động một cuộc truyền tải

dữ liệu về cho máy phụ Nhưng máy phụ chỉ có thể thực hiện việc truyền dữ liệu cho

máy chính như là những trả lời cho các yêu cầu của máy chính

• Chế độ cân bằng bất đồng bộ (ABM - Asynchronous Response Mode): Được sử

dụng với cấu hình nối kết cân bằng Cả hai máy đều có quyền khởi động các cuộc

truyền tải dữ liệu mà không cần sự cho phép của máy kia

Trang 14

• Chế độ trả lời bất đồng bộ (ARM-Asynchronous Response Mode): Sử dụng cấu

hình không cân bằng Một máy phụ có thể khởi động một cuộc truyền tải và không

cần sự cho phép tường minh của máy chính Máy chính vẫn đảm trách vai trò bảo trì

đường truyền bao gồm việc khởi động, phục hồi lỗi và xóa nối kết

Chế độ NRM đòi hỏi phải có nhiều đường dây để nối một máy chính với nhiều thiết

bị đầu cuối

Chế độ ABM được sử dụng nhiều nhất trong 3 chế độ, nó cho phép sử dụng hiệu quả

đường truyền Chế độ ARM thì ít được dùng đến

Cấu trúc khung:

HDLC sử dụng chế độ truyền tải đồng bộ, các bits dữ liệu truyền đi được gói vào

trong các khung và sử dụng một cấu trúc khung cho tất cả các loại dữ liệu cũng như

thông tin điều khiển

Khung trong giao thức HDLC có cấu trúc như sau:

Bits 8 8 8 ≥ 0 16 8

011111110 Address Control Data Checksum 01111110

Cấu trúc khung của HDLC Flag(8 bit) Lá cờ dùng để xác định điểm bắt đầu và kết thúc của khung, giá

trị nó là 01111110 HDLC sử dụng kỹ thuật bit độn để laoị trừ sự xuất hiện của cờ trong dữ liệu

Address(8bit) Vùng ghi địa chỉ để xác định máy phụ được phép truyền hay nhận

khung Control(8bit) Được dùng để xá định loại khung Mỗi loại có thôgn tin điều

khiển khác nhau Có 3 loại khung: Thông tin(I), điều khiển (S) và không đánh số(U)

Ìnormation(128

-1024 bytes) Vùng chứa dữ liệu cần truyền

FCS(Frame

Check

Sequence-8bit)

Vùng chứa mã kiểm soát lỗi, dùng phương pháp đa thức CRC CCITT = X16 + X12 +X5 +1

Trang 15

Bits 1 3 1 3

Khung I 0 Seq P/F Next

Khung S 1 0 Type P/F Next

Khung U 1 1 Type P/F Modifier

Cấu trúc trường điều khiển trong khung HDLC Giao thức HDLC sử dụng một cửa sổ trượt với số thứ tự khung 3 bit Trường seq

trong khung I để chỉ số thứ tự của khung thông tin hiện tại Trường Next để chỉ số

thứ tự của khung thông tin mà bên gởi đang chờ nhận (thay vì là khung đã nhận tốt

như giao thứ cửa sổ trượt đã giới thiệu ở phần trước)

Bit P/F có ý nghĩa là Poll/Final, tức chọn hoặc kết thúc Khi máy tính chính mời một

máy phụ truyền tin, thì bit này được đặt lên 1 có ý nghĩa là P (Poll, chọn) Ngược lại

khi thông tin được truyền từ máy phụ lên máy chính thì nó được đặt xuống 0, để báo

với máy chính rằng máy phụ hiện tại vẫn còn dữ liệu để gởi đi Khi máy phụ gởi

khung cuối cùng, bit này được đặt lên 1, có ý nghĩa là F (Final, kết thúc), để báo cho

máy chính biết rằng nó đã hoàn thành việc truyền tải thông tin

Khung S (Supervisory Frame) là khung điều khiển, dùng để kiểm soát lỗi và luồng

dữ liệu trong quá trình truyền tin Khung S có 4 kiểu được xác định bởi tổ hợp giá trị

của 2 bit trong trường Type

SS=00

RR (Receive Ready) là khung báo nhận, thông báo sẵn sàng nhận

dữ liệu, đã nhận tốt đến khung Next-1, và đang đợi nhận khung Next Được dùng đến khi không còn dữ liệu gửi từ chiều ngược lại

để vừa làm báo nhận (figgyback) SS=01 REJ(Reject): đây là một khung báo khôgn nhận (negative

acknowledge), yêu cầu gửi lại các khung, từ khung Next SS=10 RNR (Receive Not Ready): thông báo không sẵn sàng nhận tin, đãnhận đến đến khung thứ Next-1, chưa sẵn sàng nhận khung Next

SS=11 SREJ (Selective Reject): yêu cầu gửi lại một khung có số thứ tự làNext

Ngày đăng: 17/12/2017, 19:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w