Trong chế độ capture, hai lựa chọn đƣợc lựa chọn bởi bit EXEN2 trong T2CON. Nếu EXEN2 = 0, Timer 2 là một bộ đếm thời gian 16-bit hoặc truy cập mà khi tràn bộ bit TF2 trong T2CON. Bit này sau đó có thể đƣợc sử dụng để tạo ra một gián đoạn. Nếu EXEN2 = 1, Timer 2 thực hiện cùng hoạt động, nhƣng l - 0 một quá trình chuyển đổi tại T2EX đầu vào bên ngoài cũng làm cho giá trị hiện tại TH2 và TL2 để capture vào RCAP2H và RCAP2L, tƣơng ứng. Ngoài ra, chuyển tiếp T2EX gây ra bit EXF2 trong T2CON đƣợc thiết lập. Các bit EXF2, nhƣ TF2, có thể tạo ra một ngắt..
Hình 2.7: Timer 2 trong chế độ Capture 2.6.3.4 Chế độ Auto-Reload
Timer 2 có thể đƣợc lập trình để đếm lên hoặc xuống khi cấu hình tự động 16 - bit của chế độ auto-reload. Tính năng này đƣợc gọi bởi DCEN (Down Counter Enable) bit nằm ở T2MOD SFR. Khi reset, các bit DCEN đƣợc thiết lập là 0 để Timer 2 mặc định đếm. Khi DCEN đƣợc thiết lập, Timer 2 có thể đếm lên hoặc xuống, tùy thuộc vào giá trị của T2EX.
Hinh 2.8 cho thấy Timer 2 tự động đếm lên khi DCEN = 0. Trong chế độ này, hai tùy chọn đƣợc lựa chọn bởi bit EXEN2 trong T2CON. Nếu EXEN2 = 0, Timer 2 đếm lên FFFFH và sau đó thiết lập bit TF2 khi tràn. Tràn cũng gây ra các bộ đếm thời gian đăng ký đƣợc nạp lại với giá trị 16-bit trong RCAP2H và RCAP2L. Các giá trị trong RCAP2H và RCAP2L đƣợc cài sẵn bằng phần mềm. Nếu EXEN2 = 1, 16 bit reload có thể đƣợc kích hoạt bởi sự tràn hoặc bởi một sự chuyển tiếp 1 - 0 ở đầu vào bên ngoài T2EX. Điều này chuyển đổi cũng thiết lập các bit EXF2. Cả hai TF2 và EXF2 bit có thể tạo ra một ngắt nếu đƣợc kích hoạt.
Hình 2.8: Timer 2 trong chế độ Auto Reload
Thiết lập các bit DCEN cho phép Timer 2 để đếm lên hoặc xuống, nhƣ thể hiện trong hình 2.9. Chế độ, PIN T2EX điều khiển theo hƣớng đếm. Một logic 1 tại T2EX làm cho Timer 2 đếm. Bộ đếm thời gian sẽ tràn tại FFFFH và thiết lập các bit TF2. Tràn cũng làm cho giá trị 16-bit trong RCAP2H và RCAP2L đƣợc nạp lại vào sổ đăng ký hẹn giờ, TH2 và TL2, tƣơng ứng.
Một logic 0 ở T2EX làm cho Timer 2 đếm ngƣợc. Hẹn giờ underflows khi TH2 và TL2 bằng giá trị đƣợc lƣu trữ trong RCAP2H và RCAP2L. Underflows thiết lập bit TF2 và giữ FFFFH đƣợc nạp lại vào sổ đăng ký hẹn giờ.
Bit EXF2 Toggles bất cứ khi nào Timer 2 tràn hoặc underflows và có thể đƣợc sử dụng nhƣ một 17 bit độ phân giải. Trong chế độ này hoạt động, EXF2 không đánh dấu một ngắt
Hình 2.9: Timer 2 trong chế độ Auto-Reload 2.6.3.5 Chế độ Baud Rate Generator
Hình 2.10: Timer 2 trong chế độ Baud Rates Generator
Timer 2 đƣợc chọn là máy phát điện tốc độ truyền bằng cách thiết lập TCLK and/or RCLK trong T2CON. Lƣu ý rằng tốc độ baud cho truyền và nhận có thể khác nhau nếu Timer 2 đƣợc sử dụng cho các máy thu hoặc máy phát và Timer 1 đƣợc sử dụng cho các chức năng khác. Thiết lập RCLK and/or TCLK đƣa Timer 2 vào máy phát điện tốc độ truyền chế độ, nhƣ trong hình 2.10.
Tỷ lệ chế độ máy phát điện baud là tƣơng tự nhƣ chế độ tự động tải lại, trong đó một R trong TH2 nguyên nhân Timer 2 đăng ký đƣợc nạp lại với giá trị 16-bit vào sổ đăng ký RCAP2H và RCAP2L, đƣợc cài sẵn bởi phần mềm.
Mức độ truyền trong các chế độ 1 và 3 đƣợc xác định bằng tỷ lệ tràn Timer 2 theo phƣơng trình sau đây:
Timer có thể đƣợc cấu hình cho một trong hai bộ đếm thời gian hoặc hoạt động truy cập. Trong hầu hết các ứng dụng, nó đƣợc cấu hình cho các hoạt động hẹn giờ (CP/T2 = 0). Các hoạt động hẹn giờ khác nhau để hẹn giờ 2 khi nó đƣợc sử dụng nhƣ một máy phát điện tốc độ truyền. Thông thƣờng, khi một giờ, nó gia tăng mỗi chu kỳ máy (1 / 12 tần số dao động). Nhƣ một máy phát điện tốc độ truyền, tuy nhiên , nó tăng mỗi khi nhà nƣớc (1 / 2 tần số dao động). Công thức tốc độ truyền đƣa ra dƣới đây
( )
Với (RCAP2H, RCAP2L) là nội dung của RCAP2H và RCAP2L đƣợc thực hiện nhƣ là một 16 -bit kiểu số.
CHƢƠNG 3: TÌM HIỂU CÁC CỔNG GIAO TIẾP
3.1 GIAO TIẾP CỔNG SONG SONG (CỔNG MÁY IN)
3.1.1 Tên gọi
Cổng song song: Dữ liệu đƣợc truyền qua cổng này theo cách song song, cụ thể dữ liệuđƣợc truyền 8 bit đồng thời hay còn gọi byte nối tiếp bit song song.
Cổng máy in: Lí do là hầu hết các máy in đều đƣợc nối với máy tính qua cổng này.
Cổng Centronic: Đây là tên của một công ty đã thiết kế ra cổng này. Centronic là tên một công ty chuyên sản xuất máy in kiểu ma trận đứng hàng đầu thế giới. Chính công ty này đã nghĩ ra kiểu thiết kế cổng ghép nối máy in với máy tính.
3.1.2 Mức điện áp cổng
Đều sử dụng mức điện áp tƣơng thích TTL(Transiztor - Transiztor - Logic) 0V÷5V trong đó:
0V là mức logic LOW
2V÷5V là mức logic HIGH
Vì vậy khi ghép nối với cổng này ta chỉ ghép nối những thiết bị ngoại vi có mức điện áp tƣơng thích TTL. Nếu thiết bị ngoại vi không có mức điện áp tƣơng thích TTL thì ta phải áp dụng biện pháp ghép mức hoặc ghép cách ly qua bộ ghép nối quang.
3.1.3 Khoảng cách ghép nối
Khoảng cách cực đại giữa thiết bị ngoại vi và máy tính ghép qua cổng song song thƣờng bị hạn chế. Lý do là hiện tƣợng cảm ứng giữa các đƣờng dẫn và điện dung kí sinh hình thành giữa các đƣờng dẫn có thể làm biến dạng tín hiệu. Khoảng cách giới hạn cực đại là 8m. Thông thƣờng chỉ 1,5 đến 2m vì lí do an toàn dữ liệu. Nếu sử dụng khoảng cách ghép nối trên 3m thì các đƣờng dây tín hiệu và đƣờng dây nối đất phải đƣợc soắn với nhau thành từng cặp để giảm thiểu ảnh hƣởng của nhiễu. Biện pháp khác sử dụng cáp dẹt, trên đó mỗi đƣờng dữ liệu đƣợc đặt giữa hai đƣờng dây nối đất.
3.1.4 Tốc độ truyền dữ liệu
Tốc độ truyền dữ liệu qua cổng song song phụ thuộc vào phần cứng đƣợc sử dụng. Trên lý thuyết tốc độ có thể đạt đến 1Mb/s nhƣng với khoảng cách truyền hạn chế trong phạm vi 1m. Với nhiều mục đích sử dụng thì khoảng cách này hoàn toàn thỏa đáng, tuy vậy cũng có những ứng dụng đòi hỏi phải truyền trên khoảng cách xa hơn. Trong trƣờng hợp đó ta phải nghĩ ngay đến khả năng ghép nối khác (nhƣ ghép nối qua cổng RS232).
3.1.5 Cấu trúc cổng song song
Cổng song song có hai loại: ổ cắm 36 chân và ổ cắm 25 chân. Ngày nay, loại ổ cắm 36 chân không còn đƣợc sử dụng, hầu hết các máy tính PC đều trang bị ổ cắm 25 chân nên ta chỉ cần quan tâm đến loại 25 chân.
Cổng song song gồm có 4 đƣờng điều khiển, 5 đƣờng trạng thái và 8 đƣờng dữ liệu bao gồm 5 chế độ hoạt động:
Chế độ tƣơng thích (compatibility).
Chế độ nibble.
Chế độ byte.
Chế độ EPP (Enhanced Parallel Port).
Chế độ ECP (Extended Capabilities Port).
Ba chế độ đầu tiên sử dụng port song song chuẩn (SPP – Standard Parallel Port) trong khi đó chế độ 4, 5 cần thêm phần cứng để cho phép hoạt động ở tốc độ cao hơn.
Bảng 3.1 Sơ đồ chân của máy in
CHÂN KÝ HIỆU NGÕ
VÀO/RA MÔ TẢ
1 STROBE RA
2 đến 9 D0 đến D9 RA Các bit dữ liệu từ D0 đến D7
10 ACK VÀO Báo nhận
11 BUSY VÀO Báo bận
12 PE VÀO Hết giấy
13 SEL VÀo Lựa chọn
14 AF RA Tự động tiếp đƣờng
15 ER VÀO Lỗi
16 INIT RA Thiết lập thiết bị
17 SELIN RA Lựa chọn đầu vào
18 đến 25 GND VÀO Nối đất
Cổng song song có ba thanh ghi có thể truyền dữ liệu và điều khiển máy in. Địa chỉ cơ sở của các thanh ghi cho tất cả cổng LPT (line printer) từ LPT1 đến LPT4 đƣợc lƣu trữ trong vùng dữ liệu của BIOS. Thanh ghi dữ liệu đƣợc định vị ở offset 00h, thanh ghi trạng thái ở 01h, và thanh ghi điều khiển ở 02h. Thông thƣờng, địa chỉ cơ sở
của LPT1 là 378h, LPT2 là 278h, do đó địa chỉ của thanh ghi trạng thái là 379h hoặc 279h và địa chỉ thanh ghi điều khiển là 37Ah hoặc 27Ah. Tuy nhiên trong một số trƣờng hợp, địa chỉ của cổng song song có thể khác do quá trình khởi động của BIOS. BIOS sẽ lƣu trữ các địa chỉ này nhƣ sau:
Bảng 3.2: Địa chỉ cơ sở các tthanh ghi cổng song song
Địa chỉ Chức năng
0000H÷0408H Địa chỉ cơ sở của LPT1 0000H÷040AH Địa chỉ cơ sở của LPT2 0000H÷040CH Địa chỉ cơ sở của LPT3
3.1.6 Các thanh ghi ở cổng song song.
Thanh ghi dữ liệu (hai chiều):
Tín hiệu D7 D6 D5 D4 D3 D2 D1 D0
Chân số 9 8 7 6 5 4 3 2
Thanh ghi trạng thái máy in (chỉ đọc): Tín hiệu máy BUSY ACK PAPER
EMPTY SELECT ERROR IPR X X
Số chân cấm 11 10 12 13 15 - - -
Thanh ghi điều khiển máy in: Tín hiệu
máy in X X DIR IRQ SELECTIN INIT AUTOFEED STROBE
Số chân - - - - 17 16 14 1
x: không sử dụng
IRQ Enable: yêu cầu ngắt cứng; 1 = cho phép; 0 = không cho phép
Chú ý rằng chân BUSY đƣợc nối với cổng đảo trƣớc khi đƣa vào thanh ghi trạng thái, các bit SELECTIN , AUTOFEED và STROBE đƣợc đƣa qua cổng đảo trƣớc khi đƣa ra các chân của cổng máy in. Thông thƣờng tốc độ xử lý dữ liệu của các thiết bị ngoại vi nhƣ máy in chậm hơn PC nhiều nên các đƣờng ACK , BUSY và STR đƣợc sử dụng cho kỹ thuật bắt tay. Khởi đầu, PC đặt dữ liệu lên bus sau đó kích hoạt đƣờng STR xuống mức thấp để thông tin cho máy in biết rằng dữ liệu đã ổn định trên bus. Khi máy in xử lý xong dữ liệu, nó sẽ trả lại tín hiệu ACK xuống mức thấp để ghi nhận. PC đợi cho đến khi đƣờng BUSY từ máy in xuống thấp (máy in không bận) thì sẽ đƣa tiếp dữ liệu lên bus.
3.2 GIAO TIẾP CỔNG NỐI TIẾP (RS232)
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). Chuẩn RS-232 quy định mức logic 1 ứng với điện áp từ -3V đến -25V (mark), mức logic 0 ứng với điện áp từ 3V đến 25V (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. Chuẩn RS-232 cho phép truyền tín hiệu với tốc độ đến 20.000 bps nhƣng nếu cáp truyền đủ ngắn có thể lên đến 115.200 bps.
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.
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. Định dạng của khung truyền dữ liệu theo chuẩn RS-232 nhƣ sau: Start
0 STOP
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 sẽ đƣa ra xung Start (space: 10V) và sau đó lần lƣợt truyền từ D0 đến D7 và Parity, cuối cùng là xung Stop (mark: -10V) để khôi phục trạng thái đƣờng truyền.
Các đặc tính kỹ thuật của chuẩn RS-232 nhƣ sau:
Chiều dài cable cực dạ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õ vào 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.
Sơ đồ chân cổng nối tiếp
Cổng COM có hai dạng: đầu nối DB25 (25 chân) và đầu nối DB9 (9 chân) mô tả nhƣ bảng 4.3.
Bảng 3.3: Ý nghĩa của các chân cổng nối tiếp
D25 D9 Tín hiệu Hƣớng truyền Mô tả
1 - - - Protected ground: nối đất bảo vệ 2 3 TXD DTE → DCE Transmitted data: dữ liệu truyền 3 2 RXD DCE → DTE Received data: dữ liệu nhận
4 7 RTS DTE → DCE Request to send: DTE yêu cầu truyền dữ liệu 5 8 CTS DCE → DTE Clear to send: DCE sẵn sàng nhận dữ liệu
6 6 DSR DCE → DTE Data set ready: DCE sẵn sàng làm việc
7 5 GND - Ground: nối đất (0V)
8 1 DCD DCE → DTE Data carier detect: DCE phát hiện sóng mang 20 4 DTR DTE → DCE Data terminal ready: DTE sẵn sàng làm việc 22 9 RI DCE → DTE Ring indicator: báo chuông
23 - DSRD DCE → DTE Data signal rate detector: dò tốc độ truyền 24 - TSET DTE → DCE Transmit Signal Element Timing: tín hiệu
định thời
15 - TSET DCE → DTE Transmitter Signal Element Timing: tín hiệu định thời
17 - RSET DCE → DTE Receiver Signal Element Timing: tín hiệu định thời
18 - LL Local Loopback: kiểm tra cổng
21 - RL DCE → DTE Remote Loopback: Tạo ra bởi DCE khi tín hiệu nhận
14 - STxD DTE → DCE Secondary Transmitted Data 16 - STxD DCE → DTE Secondary Received Data 19 - SRTS DTE → DCE Secondary Request To Send 13 - SCTS DCE → DTE Secondary Clear To Send
12 - SDSRD DCE → DTE Secondary Received Line Signal Detector
25 - TM Test Mode
9 - Dành riêng cho chế độ test
10 - Dành riêng cho chế độ test
11 - Không dùng
3.2.2 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:
DTE1 DTE2 DTE DCE
Kết nối đơn giản trong truyền thông nối tiếp
TXD RXD GND TXD RXD GND TXD RXD GND TXD RXD GND
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:
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á trinh điều 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.
3.3 TÌM HIỂU VỀ USB