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

truyền thông qua rs232

13 308 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Truyền thông qua rs232
Trường học Trường Đại Học Kỹ Thuật
Chuyên ngành Kỹ Thuật Điện Tử
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 13
Dung lượng 366,95 KB

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

Nội dung

Cấu hình truyền thống 3 Phần cứng... UART - Transmit Buffers • Bộ đệm truyền 4 byte – Dữ liệu truyền sẽ được chuyển đến thành ghi UxTSR • Người dùng chỉ truy cập tới được byte đầu tiên

Trang 1

Truyền thông qua RS232

DSPIC

the dsPIC30F UART Module

• Dữ liệu truyền nối tiếp

– 8-bit or 9-bit data

– Truyền song công

• Hỗ trợ truyền dữ liệu với

– Bộ đệm truyền nhân 4 bytes

– Ngắt nhận và gửi

– Cơ chế kiểm tra lỗi

• Hỗ trợ nhận địa chỉ gửi

2

Trang 2

Cấu

hình

truyền

thống

3

Phần cứng

Trang 3

Các thanh ghi

5

Giải thích thanh ghi

6

Trang 4

Thanh ghi (tiếp)

7

UART - Baud Rate Generator

• Thanh ghi xác định tốc độ truyền nhận

• UxBRG register với (x = 1 hoặc 2)

Baud Rate = Fcy / ( 16 * (UxBRG + 1) )

với Fcy = Tần số lệnh (Instruction Cycle

Frequency)

• Cả nhận và truyền đều sử dụng chung 1 tần

số

Trang 5

Ví dụ

• Nếu FCY=8MHz, và tốc độ truyền là 9600

baud,

– UxBRG=(8•106/(16•9600))-1=51.083

• UxBRG=51

• Sai số truyền là UxBRG=51 is 9615.384, i.e

the deviation is 0.16%

9

Ví dụ (tiếp)

10

Trang 6

UART - Transmission

11

UART - Transmission

Trang 7

UART - Transmit Buffers

• Bộ đệm truyền 4 byte

– Dữ liệu truyền sẽ được chuyển đến thành ghi

UxTSR

• Người dùng chỉ truy cập tới được byte đầu

tiên của bộ đệm

• UTXBF status bit thông báo bộ đệm đầy

13

UART – Ngắt truyền

• Cờ ngắt xác định bởi bit UxTXIF và cho

phép ngăt bởi bit UxTXIE

• Chế độ UTXISEL= 1

Ngắt xảy ra khi bộ đệm hoàn toàn

trống

• Khi UTXISEL bit = 0

– Ngắt xảy ra khi mỗi byte được truyền

• UTXEN bit là bit cho phép truyền dữ liệu

14

Trang 8

UART – nhận

15

UART nhận

• Bộ đệm nhận 4 byte

– Dữ liệu truyền sẽ được chuyển từ thành ghi

UxRSR, và người dùng đọc thanh ghi UxRXREG

• Người dùng chỉ truy cập tới được byte đầu

tiên của bộ đệm

• Khi bộ đệm 4 byte đầy và thanh ghi UxRSR

cũng nhận dữ liệu, thì bit OERR sẽ báo

• Việc xóa OERR sẽ xóa bộ đệm 4 byte này

Trang 9

UART - Receive Interrupts

• Ngắt nhận xác định bởi cờ UxRXIF và cho

phép ngắt bới bit UxRXIE

• Có 3 chế độ ngắt khác nhau

• URXISEL = 11

– Ngắt xảy ra khi bộ đệm đầy, 4 bytes

• URXISEL bits = 10

– Ngắt xảy ra khi bộ đệm có 3 bytes

• When URXISEL bits = 01 or 00

– Ngắt xảy ra khi bộ đệm có dữ liệu

17

UART - Error Detection

• Parity Error

– When received parity does not match the parity

calculated by module from received data

– Indicated by PERR bit in the UxSTA register set

• Framing Error

– When a STOP bit is expected on UxRX pin but a low

logic level is detected

– Indicated by FERR bit in the UxSTA register set

• Receive Overrun Error

– When the Receive Buffer is full and a 5 th character

is received

– Indicated by OERR bit in the UxSTA register set

18

Trang 10

UART - Address Detection

• When the UART is operating in 9-bit mode

(PDSEL = 11), and the ADDEN bit in the UxSTA

register is set

– The module will wait for an Address word, i.e.,

a 9-bit word with the 9th bit set

• At this stage, the URXISEL bits in the UxSTA

register must be set to 00 or 01

– On receiving the Address word, the user inspects

the lower byte to verify an address match

– If an address match occurred, the user should

clear the ADDEN bit, after which the module will

wait for Data words (9-bit words with MSB clear)

19

UART – Những đặc điểm phụ

• Alternate I/O

– Sử dụng cặp đôi chân TX/RX khác

– Cho phép bơi bít ALTIO trong thanh ghiUxMODE

• Loopback Mode

– UxTX pin được nối ngầm với nhau UxRX pin

– Cho phép bởi bit LPBACK UxMODE

• Wake-up from SLEEP

– Device can be woken up from SLEEP by START bit

– Enabled by setting WAKE bit in UxMODE register

Trang 11

Ví dụ

21

Circular Buffer

22

Trang 12

Phương pháp hoạt động

• Difficulites

23

Xử lý lỗi

Always Keep One Slot Open

Use a Fill Count

Read / Write Counts

Trang 13

Ví dụ

25

Ngày đăng: 14/06/2014, 12:09

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w