Bài giảng Thiết bị ngoại vi và kỹ thuật ghép nối - Chương 5: Digital interfacing - Bùi Quốc Anh

AT COMMAND SET: attention Các lệnh bắt đầu bằng AT or at (not At or aT) để modem detects tốc độ và format (ngoại trừ 2 lệnh '+++' và A/ - repeat last Cmmnd ) và kết thúc: Enter (0ah,0dh) Command line: có thể có hơn 1 lệnh, chỉ cần 1st có AT, cách nhau dấu ' ' và không quá 40 char/cmmnd line. Các lệnh và Tham số ATDT 048692463 Dial using touch Tone ATDP 048696125 Dial Pulse ATT/ ATP default tone/ pulse O end of C line, return O mode ; end of C line, stay C mode after executing @ wait for 5s hoặc silent • VÝ dô: • ATDT 9,3456789 Kết nối từ máy trong tổng đài • ATXn Hayes Smartmodem compatible • Other Commands: • ATE0/ 1 Disable/ Enable Echo • +++ Esc Char switch to command mode • ATHn 0:On-Hook (hangup),1: Off-Hook • ATLn 0/1/2/3 volume of speaker • ATMn 0: speaker off, 1: on until DCD, 2: on • ATNn 0: connect @ DTE rate, 1: auto rate negot. • ATO return to O mode • ATQn 0: result code En, 1: result code Dis • ATVn 0: digit, 1: word • ATZ hangup, reset to default settings • A/ Repeat last command (re dial) • Các modem đều có bộ lệnh riêng, Ref. User's Guide Man

pdf65 trang | Chia sẻ: hachi492 | Ngày: 07/01/2022 | Lượt xem: 387 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Thiết bị ngoại vi và kỹ thuật ghép nối - Chương 5: Digital interfacing - Bùi Quốc Anh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1P&I Ch5-Digi In/Out 1 Ch 5. DIGITAL INTERFACING Ghép nối hệ trung tâm với Thiết bị ngoại vi qua các tín hiệu logic 1/0 - PARALLEL IN/OUT - PORTS: PRINCIPLE, PPI, CENTRONICS/LPT - PCMCIA, DUAL PORTED RAM. - INTERCACING TO DEVICES: KEY PAD, LED, TEXT PANEL, ENCODER, STEP MOTOR, ... - HI-POWER INTERFACE: RELAY, SCR, TRIAC, POWER MOSFET, IGBT... - SERIAL IN/OUT: SYNC, ASYNC, - RS-232, RS-485, RS-422 - MODEM... P&I Ch5-Digi In/Out 2 5.1. parallel interface: 5.1.1. nGuyªn lý • In/Out nhiều bit đồng thời, nhanh, gần • a. A Port Line (1bit port): – Output Port: Latched Output (chốt ra), D_Flip-Flops – Unlatched Input, hình 5.1. single IO line/pin 2P&I Ch5-Digi In/Out 3 • D Flip-Flop (D trigger): – Là 1 trong những phần tử cơ bản của hệ dãy, – D – data, lưu giữ 1 bit số liệu. – 4/6/8 D flip-flop => tạo ra 4/6/8 bit register, nhiều registers đóng trong 1 chip là SRAM. P&I Ch5-Digi In/Out 4 – Output: • Q - ứng với giá trị data input vào thời điểm có clock • /Q – đảo của Q. – Input: • Data bit: 1 hoặc 0 • Clock, thường là sườn lên, ghi nhận giá trị của data và lưu lại cho đến khi có bit số liệu khác ghi đè lên. • [Có thể có] clear – xóa; Preset – đặt trước – Có 2 loại: Transparent (HC373) và Master- Slave (HC374) 3P&I Ch5-Digi In/Out 5 H. 501 b, c MOSFET (Metal Oxide Semiconductor Field Effect Transistor) P&I Ch5-Digi In/Out 6 • Write pin: bit 0 or 1, clock =  – Write bit 0: D flip-flop => Q = 0; -Q = 1 => gate = 1 => R(ds) MOSFET = ON => pin = 0 – Write bit 1 D flip-flop => Q = 1; -Q = 0 => gate = 0 => R(ds) MOSFET = OFF => pin = 1 • Read pin: (Input line– out “1” firstly)- ReadPin = 0 (!) => open 3 state lower buffer => 1/0 from pin => data bus (i) • ReadLatch (Reading bit out previously) : -ReadLatch = 0 (!) => open 3 state higher buffer => 1/0 from pin => data bus (i) 4P&I Ch5-Digi In/Out 7 • Ý nghĩa Read Latch, ví dụ thông qua việc tạo 1 xung out, 2ms : – x86, LPT port, bit0, g/n remainders • mov dx, 378h ; LPT 1 data out port • in al, dx ; • or al,1 ; • out dx,al ; set bit 0 • call delay(2) ; • and al, 0feh ; reset bit • out dx,al – Atmega64, PA0: • orl PA0, 1 • call delay(2) • anl PA0, 0feh P&I Ch5-Digi In/Out 8 5.1. PARALLEL INTERFACE: 5.1.1. NGUYÊN LÝ Simple In-Out Ports: Cổng ra đơn giản có chốt (latched output port, based on 74 HC 374/HC373/HC273/HC574..., 8 bit Register), (fig. 5.2) Cổng vào đơn giản không chốt (unlatched input port, based on 3 state buffer - 74HC244) Cổng vào có chốt (Latched Input Port), chú ý status flag 5P&I Ch5-Digi In/Out 9 74LS273/373/374/574 Ứng dụng: ghép nối DAC, LED display 5.1. PARALLEL INTERFACE: 5.1.1. NGUYÊN LÝ P&I Ch5-Digi In/Out 10 Port[Parallel_Out]:= solieu; Lệnh Pascal Out Port: 74 HC 374: CPU phát địa chỉ ra IO space => có t/h -IO CS Phát data và -IOW => có t/h Clock =  (Rising Edge) => data được chốt vào HC374 Ng/vi => OutControl = 0 => open 3 state output 6P&I Ch5-Digi In/Out 11 Hình 5.2c. Unlatched Input Port Hình 5.2d. Latched Input Port Unlatched Inport & latched Inport P&I Ch5-Digi In/Out 12 IO port of Micro Controllers • Ghép nối hiện đại, các mô hình port nói trên ít dùng. • Thông qua µC, các port: Intel8051, Motorola MC68HC11s, Microchip PIC, ARM, Atmel – Latched output, – Unlatched input, – Latch Reading • Khi được y/c xây dựng ghép nối, trước hết phải lưu ý đến hình 0.2 7P&I Ch5-Digi In/Out 13 c. Port song song có tín hiệu bắt tay/ trạng thái (outport): Case Study: Gửi 1 packet ra ngoại vi, cần đồng bộ giữa 2 phía Peripheral chỉ đọc bộ đệm cổng khi có số liệu (cờ IBF thiết lập, 1) CS chỉ gửi số liệu ra tiếp theo khi byte/char trước đã được đọc bởi Peripheral (OBE - Output Buffer Empty, xóa, 0) Chú ý Time-Out-Error. CPU gửi 1 character, set -OBE =1 (Out. Buf Empty) Per: If IBF= 1 then đọc char (In. Buffer Full) Bài tập: Lập trình (C/ Pascal/Asm) cho sơ đồ sau để gửi 1 packet n byte - Chú ý Timeout Error 5.1. PARALLEL INTERFACE: 5.1.1. NGUYÊN LÝ P&I Ch5-Digi In/Out 14 OBE IRQ 8P&I Ch5-Digi In/Out 15 5.1. parallel interface: 5.1.2. PROGRAMMABLE PORT Ports: Intel PPI 8255 (Programmable Peripheral Interface) Motorola PIA 6821 (Progr. Interface Adaptor) Z80 PIO (Parallel In/Out) ... Flexible Specifics: 2..4 In/ Out Ports, single line direction define (PIA/ PIO) Mode: IN/OUT w [w/o] handshake, bus trans-ceiver Control/ status/ HSK: Edge (, ) or Level (hi, lo) Case study 1: PPI 8255: Tự đọc 4 ports: PA, PB, PCH & PCL, 24 IO lines 3 modes M0, M1 & M2, (PA & PB, PC as HSK signals) Đơn giản và hiệu quả Case Study 2: Interface ISA bus – PPI 8255, (Fig. 5.3a) P&I Ch5-Digi In/Out 16 Hình 5.3a. Ghép nối PPI 8255 với PC qua ISA bus (Mo hinh cong song song cua iPC, Addr: 300h-303h, Mode 0 all, PA & PC In, PB Out 9P&I Ch5-Digi In/Out 17 • Cấu trúc: – PPI8255, VXL – 74HC245: Bi-directional Buffer, dùng để đệm số liệu 2 chiều và đ/k 3 state – GAL Lattice16V8, PLD – Programmable Logic Device, dùng để tạo mạch giải mã địa chỉ cho PPI • Ứng dụng: – Dùng để ghép nối với các thiết bị ngoại vi, thông qua các hệ nhúng là iPC: • DAC, ADC • DI, DO P&I Ch5-Digi In/Out 18 5.1. Parallel Interface: 5.1.3. CENTRONICS PORT • Centronics Computer Inc. so called LPT; 2 LPT ports (not available in near future) in PC • Modes: SPP, EPP, ECP & IEEE 1284 (EPP+ECP) • IRQ (7/ 5) & DRQ (1/ 3 - 8 bit channels) support for many applications of Interface: • Printer • Local Area Network - LAN • Ext. HDD, SemiDisk, • Test Digital In/Out, ADC, DAC in many application interfaces • PC remote control (TV, Multi media, shut down...) • Programmers (All 11P2) – nạp chip chuyên dùng • Others 10 P&I Ch5-Digi In/Out 19 MODE 0: SIMPLE PARALLEL PORT - SPP (NORMAL MODE, OUTPUT ONLY) 50..100kB/s, cable 10' max - 25/36 lines - Ground twisted pair, Base Addr: 378h - LPT1 & 278h - LPT2 Data Out port, Addr. X78h - I/O space, TTL 0..5V, Open Coll. Buffered - 8 bit latched out, back read-latch LPT: send control & printed characters to Printer Control Out Port: X7Ah, TTL (x=3/2) 4 bit latched out, back read-latch, dùng software. Đối với các thiết bị, 4 tín hiệu này được set (1) và reset (0) bằng phần mềm LPT: /Strobe (b0), AutoFeed (b1), /Init (b2), SLCT(b3) IRQ_EN (b4), not outlet Status In, X79h, Unlatched, TTL (0..5V): Printer status 5 bit: b3..b7: Err, SLCT_IN, PE, -Ack, Busy 5.1. Parallel Interface: 5.1.3. Centronics Port P&I Ch5-Digi In/Out 20 5.1. Parallel Interface: 5.1.3. Centronics Port 11 P&I Ch5-Digi In/Out 21 Các hoạt động của LPT Port • Data port: • Outport: gửi 1 byte ra cổng data và LPT Mov dx, 378h ;Data port của LPT1 Mov al, 41h ; Mã ASCII của chữ A Out dx, al ; Gửi ra cổng LPT Mov dx, 37Ah ; Gửi xung strobe, nhập dx địa chỉ cổng ; Control In dx, al ; Đọc số liệu đang có từ control port And al,1111 1110b ; giữ nguyên 7 bit cao, xóa bit 0 Out dx,al ; cho bit 0 của đ/c 37A=0, only Nop ; trễ 1 chu kỳ máy Or al,0000 0001b ; đặt bit 0 (strobe bit) = 1, các bit khác ; giữ nguyên Out dx,al ; gửi ra cổng LPT. Mã chữ A được máy ; in n ận P&I Ch5-Digi In/Out 22 – Inport: đọc 1 byte data gửi ra trước đó • Mov dx, data_port ; địa chỉ 378h • In al, dx • Control Outport, chỉ dùng 4 bit b0..b3 – Gửi 4 bit ra: • Mov dx, 37Ah 12 P&I Ch5-Digi In/Out 23 • Mov al, control • Out dx,al – Đọc 4 bit gửi ra trước đó: • Mov dx, control_port • In al, dx • Status Port: Chỉ đọc trạng thái, unlatched, dùng 5 bit cao, b3..b7 • Mov dx, Status_port • In al, dx. • Các thử nghiệm: – Digital In: đếm khoảng thời gian, – Digtal Out: điều khiển logic đa điểm liên động, – Ghép nối DAC để tạo tín hiệu, ADC để đo lường P&I Ch5-Digi In/Out 24 5.1. parallel interface: 5.1.3. centronics port • Enable Int Req: mov dx, 37Ah; LPT 1 control in al, dx or al, 0001 0000b out dx, al ; PASCAL: Port[BA+2]:=Port[BA+2] or $10; {set bit 4 only} • Disable: Port[BA+2]:=Port[BA+2] and $EF; {Reset bit 4 only} 13 P&I Ch5-Digi In/Out 25 5.1. parallel interface: 5.1.3. centronics port Mode 1: enhanced parallel port - epP • Xircom, 1992, Hi speed - 2 MB/s (DMA, 1 ISA bus cycle), bi-directional port, ghÐp nèi víi Ext HDD, Local Network... Base Addr 378h hoÆc 278h • 8 Registers:, cã t­¬ng thÝch víi SPP, • Offset 0: SPP data , R/W data lines, w/o HSK • Offset 1: SPP status, Read (b3..b7), b0 timeout • Offset 2: SPP control, R/W 4bit C0..C3, C4: IRQ En, C5: byte dir(ection) - chiÒu sè liÖu • Offset 3: EPP addr, R/W addr cycle w HSK (b¾t tay) • Offset 4: EPP data, R/W data cycle w HSK • Others: may be used for 16/32, port config, user define P&I Ch5-Digi In/Out 26 5.1. parallel interface: 5.1.3. centronics port MODE 2: EXTENDED CAPABILITIES PORT - ECP MS-HP, 1993, 2..5 MB/s (1 ISA bus cycle), bi directional port, Ext HDD, Network... extension sys bus 16 FIFO byte buffer để gửi/ nhận, DMA: Mem buffer Có thể ghép nối với các ngoại vi chậm khi dùng Rdy Mô phỏng, tương thích hđ của SPP, EPP mode R/W: data & commands: OUT -C1 (HostAck); IN -S7 (Periphiral. Ack). -C1/ -S7 = 1 (sending data); 0 (command) Command: b7=1, b0..6: channel addr, b7=0, b0..6 run-length count for data compression mode (đếm các byte giống nhau - graphics, hardware) 14 P&I Ch5-Digi In/Out 27 5.1. parallel interface: 5.1.3. centronics port MODE 2: EXTENDED CAPABILITIES PORT - ECP Many chip (SMC's super IO...) hỗ trợ decompress, phần mềm gửi ra phải 'compress' 6 registers: 3 SPP reg và 3 ECP reg Base addr + 400h: data FIFO & Config A-Read only Base addr + 401h: Config B (interrupt, DMA...) Base addr + 402h: Extended Control Register P&I Ch5-Digi In/Out 28 5.1. Parallel Interface: 5.1.3. Centronics Port Mode 3: ieee 1284 ( epp + ECP ), 1994, upto 5 MB/s • IEEE 1284 standard - document: defines/ describes protocols for Parallel-port Communication. • Include: 1284 port/ 1284 cable/ 1284 Peri. • 5 communication modes: (Register use - Table 11-1 p206, Parallel Port Complete) • Compatibility Mode: Host sends a byte to Peri. (with Busy vµ -Ack) • Nibble Mode: Peri. to Host 4 bit, remainder - HSK • Byte Mode: 8 bit, bi-dir • EPP Mode: 8 bit, bi-dir, hi-speed • ECP Mode: 8 bit, bi-dir: data, addr, compression 15 P&I Ch5-Digi In/Out 29 5.1. Parallel Interface: 5.1.4. Dual Ported RAM Để chuyển mảng số liệu giữa 2 hệ VXL (Master-Slave) với tốc độ cao, gần, ... (Switching Systems, PLCs, Port Graphics Accelerator...) SRAM, dung lượng từ 1KB đến 64KB Multiple Reads & Writes đồng thời Dùng các tín hiệu: 2 x n bit Addr for 2 sides: Left - Right => 2n mem loc. 2 x 8 [16] bit of Data bit (lines) Các tín hiệu điều khiển (RD, WR, CS) và trạng thái Các tín hiệu HSK/Arbitor Hãng: Integrated Device Technology Inc. & Others; chip IDT 7707, 32Kbyte DPR Ví dụ ứng dụng: Ghi 32 kênh điện thoại/fax đồng thời P&I Ch5-Digi In/Out 30 Hình 5.5b. Dual ported Static RAM 16 P&I Ch5-Digi In/Out 31 5.1. Parallel Interface: 5.1.5. PCMCIA/PC Card PERSONAL COMPUTER MEMORY CARD INTERNATIONAL ASSOCIATION, VER 2.1; PC CARD STANDARD (5.0) 1996 Là chuẩn của nhiều tổ chức/ công ty: >500 members PC card device - credit card size adaptor: nhỏ, dễ mang, hot plugability, tin cậy khi môi trường thay đổi, 68 pin connector Devices: Flash, SRAM, modem, LAN (wire & wireless), disk, audio w DSP, GPS... 16 bit data path (PCMCIA 2.1/ PC Card Standard 5.0) 3.3 and/or 5 V Dùng với nhiều loại bus P&I Ch5-Digi In/Out 32 17 P&I Ch5-Digi In/Out 33 5.1. parallel interface: 5.1.5. PCMCIA Kiến trúc phân nhiều tầng để đảm bảo tính vận hành độc lập với phần cứng: Socket service: Device driver - system manufacturer Card service: Device driver (chương trình điều khiển) - Operating System Vendor Client Drivers/ Client Enablers, Device Driver tạo các y/c tới hệ thống: do hãng chế tạo Card cấp Enablers/ Point Enablers: Driver chuyên để thông tin trực tiếp Host Adaptor P&I Ch5-Digi In/Out 34 5.1. parallel interface: 5.1.5. PCMCIA PC Card Standard - CardBus: • 32 bit transfer • Based PCI specification • 33MHz/ 132 MB/s • BusMasster support • Compatible w 16 bit card 18 P&I Ch5-Digi In/Out 35 5.1. Parallel interface: 5.1.6. LED Interface a. Khái niệm: LED? Light Emitting Diode • Color: – Red, Green, Yellow, – Amber, R+G – Infra Red, UV – LASER: Light Amplification by Stimulated Emission of Radiation – Blue, Cyan ... • Symbol & characteristics H×nh 5.7a. LED P&I Ch5-Digi In/Out 36 19 P&I Ch5-Digi In/Out 37 • Package and Applications: – Single point, status of devices – 7 segment/ 16 segment, Arabian digit, char – Matrix 8x8 / 16 x 16, character box, graphics modules • Độ sáng: Indoor, Outdoor (super light) and semi outdoor. Độ sáng phụ thuộc vào từng loại pha tạp, từ 150mcd (normal) đến 7000mcd (super light) • Đặc tính LED: là diode phân cực thuận, tùy pha tạp => cho nhiều mầu khác nhau và điện áp thuận từ 1.5V..2.1V và 3.2.. 3.5V. • TriColor: Red – Green – Blue => PWM driving => Full color 16,7M colors (3 byte) 5.1. Parallel interface: 5.1.6. LED Interface P&I Ch5-Digi In/Out 38H 5.7b. An example of LED’s characteristics (Amber ) 20 P&I Ch5-Digi In/Out 39 • Tính toán mạch điều khiển LEDs: – LED sáng tĩnh – sáng liên tục – Static Mode: • Chọn độ sáng tương đối; • Tra bảng =>dòng điện thuận I, từ 10 đến 20mA (đồ thị A, hình 5.7b); • Tra bảng => điện áp thuận U, từ 1.6 đến 3.4V (đồ thị B, hình 5.7b); • Tính R1 = (Vcc – UF)/IF. • Ví dụ: Vcc=5V, chọn RLI = 2 => IF=20mA => UF= 2V => R = (Vcc – UF)/20mA = 150 Ohm P&I Ch5-Digi In/Out 40 – LED chế độ quét, Scan Mode: () • Mạch điện tử sẽ điều khiển sáng 1 nhóm phần tử trong toàn bộ bảng ở 1 khoảng thời gian (ms), rồi điều khiển nhóm phần tử tiếp theo... cho đến hết vòng. Với điều kiện phải hiện được 50- 120 frames/s. • Tùy thuộc độ sáng và môi trường (in/out door) => thiết kế độ rỗng (duty cycle) của từng phần tử. Thường được chọn: 1, ½, ¼. 1/8 và 1/16 21 P&I Ch5-Digi In/Out 41 – Tính toán mạch: cũng giống như cách tính mạch sáng tĩnh, thường chọn hệ số sáng tương đối từ 2 đến 4. – Chú ý: • Hệ số rỗng có thể chọn: ½, ¼, 1/8 và 1/16 tùy thuộc độ sáng yêu cầu và dùng LED outdoor • Độ an toàn, tuổi thọ LED, giá trị giới hạn của IF, đến mức nào đó – nói chung, LED không sáng thêm khi IF >50mA • Góc bố trí ngược sáng/thuận sáng • View angle P&I Ch5-Digi In/Out 42 5.1. parallel interface: 5.1.6. led interface 7406, ULN 2003... Open Collector Inverter Buffer: upto 30V – 50- 500mA; Transistor npn: C945 – khi outport = 1 => LED sáng Transistor pnp: A564, khi outport=0 => LED sáng; Một số outport cho phép drive trực tiếp sink upto 80 mA 22 P&I Ch5-Digi In/Out 43 Hình 5.7d. Sơ đồ 2 loại LED 7 segment b. Ghép nối 7 segment LEDs: Mầu gì? Kích thước? CA/CC P&I Ch5-Digi In/Out 44 Sơ đồ điều khiển 6 x CC 7seg LEDs – hình 5.7e: • Có 6 cathodes và 48 anodes. •Vì đ/k chế độ quét – trong 1 thời điểm chỉ sáng 1 LED (tuân thủ theo) => giảm thiểu phần cứng, tăng tính mềm dẻo của hiển thị - dùng phần mềm điều khiển, không dùng ICs BCD/7 seg! – 6 anodes a nối chung; 6 anodes b nối chung... 6 anodes pnt nối chung => chỉ có 8 anodes (a..g và pnt) – Muốn sáng số mấy (0, 1, ...9) => gửi mã 7 thanh qua các anodes; – Muốn sáng 1 trong số 6 LED => điều khiển ON cathode LED đó trong 1 thời gian t và là duy nhất.\ –Tính t : theo số LED, số frames/sec (50..60 fps) 23 P&I Ch5-Digi In/Out 45 P&I Ch5-Digi In/Out 46 5.1. parallel interface: 5.1.6. led interface DRIVING 6 X 7 SEGMENT COMMON CATHODE LEDS: disbuf: 6 byte chứa mã 7(8) seg cần hiện thị với qui ước thanh nào sáng, bit tương ứng =1, N: counter Main Program: Burn LEDs (Có thể do ngắt Timer gọi) gồm: (1) Init: turn-off LEDs (out 2nd LS-574 = 0s); N=0; (2) !(disbuf+N), (tvdn) => 1st LS-574; turn On LED[N]: 2nd LS-574, bitN = 1 (only); [delay(1..2 ms) nếu polling]; (3) Turnoff LED[N]: 2nd LS-574 = 0s; Inc N ; If N = 6 then N=0; (4) Goto(2) 24 P&I Ch5-Digi In/Out 47 P&I Ch5-Digi In/Out 48 Drive LED & Keypad • 6 x 7seg. CC LEDs 6 bytes DisBuf chứa 7Seg code 1. Init: PA&PB out, PC in, N=0, turn-off LEDs PB0..PB5=0s 2. !(DisBuf(N) => PA 3. PB(N) = 1 (only) 4. Delay for 1..2ms 5. Inc N, if N = 6 then N=0, PA = FFh 6. Goto (2), • Keypad mxn: Khi có KeyInt: 1. Delay 5-10 ms for debouncing, PA=FF tránh hi curent for LED 2. Xác định hàng cột: (PB) mã cột, đọc PC => mã hàng, encoding mã hàng cột thành scancode 5 bit cất vào key buffer, set key flag = 1 3. Delay for key releasing 4. Delay 5-10 ms for keybouncing again 5. Iret 25 P&I Ch5-Digi In/Out 49 P&I Ch5-Digi In/Out 50 • LED driver 74xx595: – Shift Register: để dịch data của frame thứ i+1, trong lúc frame thứ i đang hiện – Output upto 40mA sink – grounded tightlly – Data & clock dùng để dịch data theo kiểu đồng bộ – Latch signal: dùng để chuyển nội dung từ Shift Register sang Latched Buffer • Nếu có nhiều tầng LED, cần có những bộ đệm (vd 74HC244) sau một số tầng để đệm các tín hiệu Clock, Clear, Latch Data cũng được đệm để tranh lệch đồng bộ với các tín hiệu khác • Điện trở đệm tính như static mode, IF=10..20mA Buring CA LEDs with driver HC595 26 P&I Ch5-Digi In/Out 51 Ch/tr điều khiển 1. N LED, tạo n byte DisBuf, chứa 7 seg code, i=0; Latch=0, Clock=0 2. (DisBuf+i) => serial out 2.1. j=0 2.2. Bit 7-j => data out, clock = 1 then clock = 0 2.3. Inc(j), if j=8 then (3) 2.4. Goto 2.2. 3. Display: Latch=1 then Latch=0 4. Inc(i), if i=n+1 then STOP P&I Ch5-Digi In/Out 52 5.1. parallel interface: 5.1.6. led interface c. drive 8 x 8 matrix char box: disbuf: 8 byte chøa font Main Program: Burn LEDs 1. Init: turnoff rows: disable LS138(s) ; n=0; 2. (disbuf+n) => LS164; shift afap; turn on row[n]; delay(1-1.5); 3. turnoff row[n]: disable LS138(s); 4. Inc (n) ; If n = 8 then n=0; 5. Goto(2) Smooth left/ right shifting? Color: 4/ 16M color LED duty cycle ! Độ rỗng thời gian Tiếng Việt? mỵ Ổ 27 P&I Ch5-Digi In/Out 53 P&I Ch5-Digi In/Out 54F. 5.x LED module 32x16x4 color, CED-05 28 P&I Ch5-Digi In/Out 55 P&I Ch5-Digi In/Out 56 F5.x. Electronics Graphics LED Board 192x128x65,536Color x 50Hz 29 P&I Ch5-Digi In/Out 57 5.1. Parallel interface: 5.1.7. LCD panel interface Công nghệ LCD Liquid Crystal Display, hiện text/ graphics Độ phân dải: 1 line x 16 character box, 5x7 (7x9) dot matrix/character box 2 line x 16 character box 4 line x 20 character box Graphics (64 x 128) hoặc (128 x 256) dot graphics - font down loadable, color (16/4096/64K/16,7M). ASCII, 128 characters/ set, 8 user fonts or APA: All Points Addressable - graphics Back light. Công suất tiêu thụ nhỏ Dùng cho các hệ nhỏ, mang xách, máy đo... (Embedded Systems) P&I Ch5-Digi In/Out 58 Hình 5.10a. Text LCD Pannel 30 P&I Ch5-Digi In/Out 59 Hình 5.10b. Cấu trúc của Graphics LCD Panel P&I Ch5-Digi In/Out 60 • Signals: – DB0..DB7 8 bit data bus (Moto typed) – 4 bit interface available, 2 times in/out for a byte – CS1/2 chip select . – RD/WR và E: Motorola bus type – RS: Register Select: Data or Address Register • RS = 0 => Addr Reg • RS = 1 => Data Reg; {giống như đọc/ghi CMOSRAM} – BL : Back Light, adjustable: ánh sáng nền 31 P&I Ch5-Digi In/Out 61 Hình 5.10c. Tín hiệu và giản đồ thời gian ghi LCD panel P&I Ch5-Digi In/Out 62 Read/Write LCD information • 4 line x 20 column LCD => 80 char boxes • Write Addr Reg first (RS=0) • Write Data Reg after (RS=1) • MSB = 1  Address > 7Fh => control registers • Ví dụ 1 chu kỳ đọc/ghi LCD panel – 8 bit bus:  E = 0  Phát địa chỉ tạo Chip Select và chọn Reg  Tạo tín hiệu R/W  E = 1, delay for 1s or more  E = 0  Data out  Disabling Addr, data, R/W  E = 1. 32 P&I Ch5-Digi In/Out 63 5.1. Discrete Interface: 5.1.8. Encoder P&I Ch5-Digi In/Out 64 5.1. parallel interface: 5.1.8. encoder Dùng để ghép nối đo lường dịch chuyển cơ học: chiều dài, vận tốc (cđ thẳng và quay), gia tốc, định vị, robot Công nghệ vật liệu từ - nam châm vĩnh cửu hoặc quang - hồng ngoại/ laser, hi resolution ADC. Đĩa mã (absolute enc.)... Độ phân ly cao: dảI rộng: 256 ... upto 500 kc/t (counts/turn), chịu shock (upto 10s g) Tốc độ upto 10k rpm, mô men cản downto 10-3 Nm) Output: các xung lệch 90O, Tín hiệu ra TTL hoặc vi sai (truyền xa) hoặc (binany, BCD, GrayCode formatted), Manufacturers: Tamagawa Seiki, Epson, Hewlett-Packard, Nidec... 33 P&I Ch5-Digi In/Out 65 5.1. parallel interface: 5.1.8. encoder P&I Ch5-Digi In/Out 66 Inteface với Encoder • Dùng VĐK: – Đo tốc độ, chiều dà, năng suất sản phẩm – Xác định được chu kỳ của xung ngay trước đó – => độ lệch pha 1/4T • => chiểu quay/hướng chuyển động: xem sớm pha hay chậm pha • Tốc độ chuyển động, tốc độ góc: số xung/t • Clearance 1/8T. 34 P&I Ch5-Digi In/Out 67 5.1. parallel interface: 5.1.8. encoder P&I Ch5-Digi In/Out 68 Absolute Encoder – Xác định vị trí trong 1 vòng – 10..12 bit output – Binary or Gray Code – Ví dụ 10 bit Abs Enc. + giảm tốc bánh răng, để định vị 1km => độ phân ly 1m – Ghép nối cổng song song với thanh ghi dịch – BT: thiết kế hệ định vị 3D container cho Sai Gon New Port: 1000x500x15m 35 P&I Ch5-Digi In/Out 69 5.1. Parallel interface: 5.1.9. Step motor Hình 5.12a. Step Motor P&I Ch5-Digi In/Out 70 36 P&I Ch5-Digi In/Out 71 5.1. parallel interface: 5.1.9. step motor Là motor (có stator và rotor) được điều khiển quay theo từng bước (góc, chiều) Interface: để biến các tín hiệu xung/ số thành chuyển động cơ học chính xác, quay và tịnh tiến. Dải rộng tham số về: Góc (step/turn, ước số của 360O) Dải rộng Công suất và Mô men (torque), Lắp trục vits, dây đai => chuyển động tịnh tiến 2 cuộn hoặc 4 cuộn dây Ứng dụng: Robot, Printer, Floppy Disc drive, Scanner... Tính toán mạch ghép công suất: theo chỉ dẫn dòng P&I Ch5-Digi In/Out 72 H 5.12b. Symbolic Diagram for Step Motor, Giant Magnetic Resistance Material 37 P&I Ch5-Digi In/Out 73Hình 5.12c. 1 sơ đồ điều khiển Step Motor 4 cuộn dây P&I Ch5-Digi In/Out 74 Hình 5.12d. Các sơ đồ nối dây cho step motor 38 P&I Ch5-Digi In/Out 75 Hình 5.12e. Sơ đồ điều khiển cầu motor 2 cuộn dây P&I Ch5-Digi In/Out 76 • STEP ANGLE: – Step angles for steppers are available in a range from 0.72° to 90°. – Standard step angles steppers are: • 3.6º — 100 steps per rev. • 7.5° — 48 steps per rev. • 15° — 24 steps per rev. • 18° — 20 steps per rev. – A movement of any multiple of these angles is possible. For example, six steps of a 15° stepper motor would give a movement of 90°. 39 P&I Ch5-Digi In/Out 77 • ACCURACY: – A 7.5° stepper motor, either under a load or no load condition, will have a step-to-step accuracy of 6.6% or 0.5º. This error is non cumulative so that even after making a full revolution, the position of the rotor shaft will be 360º ± 0.5º. – The step error is non cumulative. It averages out to zero within a 4-step sequence which corresponds to 360 electrical degrees. A particular step characteristic of the 4-step is to sequence repeatedly using the same coil, magnetic polarity and flux path. Thus, the most accurate movement would be to step in multiples of four, since electrical and magnetic imbalances are eliminated. Increased accuracy also results from movements which are multiples of two steps. – Keeping this in mind, positioning applications should use 2 or 4 steps (or multiples thereof) for each desired measured increment, wherever possible. P&I Ch5-Digi In/Out 78 • TORQUE: The torque produced by a specific stepper motor depends on several factors: – The Step Rate – The Drive Current Supplied to the Windings – The Drive Design • HOLDING TORQUE – At standstill (zero steps/sec and rated current), the torque required to deflect the rotor a full step is called the holding torque. Normally, the holding torque is higher than the running torque and, thus, acts as a strong brake in holding a load. Since deflection varies with load, the higher the holding torque the more accurate the position will be held. Note in the curve below in Fig. 4, that a 2-step deflection corresponding to a phase displacement of 180, results in zero torque. A 1-step plus or minus displacement represents the initial lag that occurs when the motor is given a step command. 40 P&I Ch5-Digi In/Out 79 5.1. parallel interface: 5.1.9. hi power interface Là các mạch ghép nối máy tính/ VXL với các thiết bị có điện thế cao/ dòng điện lớn như lò nung [sấy] điện trở, lò cao tần, motor (ac và dc) công suất lớn, đèn, motor .. Điều khiển thiết bị điện xoay chiều (ac) có cách ly: Relay, hình 5.13a: Dùng Relay để cách ly [và relay trung gian], Điều khiển công suất ON-OFF (lò điện, motor) Triac/ Solid State Relay : hình 5.13b: Điều khiển công suất vô cấp Dễ gây nhiễu cho lưới điện, phải có Line Filter Điều khiển thiết bị một chiều (dc): Hình 5.14. Thyristor (SCR - Silicon Controlled Rectifier) P&I Ch5-Digi In/Out 80 Hình 5.13. Hi Power ac Load Interface: điều chỉnh đóng cắt (a) và vô cấp (b) 41 P&I Ch5-Digi In/Out 81h×nh 5.13a. Thyristor (SCR) P&I Ch5-Digi In/Out 82 Hình 5.13b. Sơ đồ chỉnh lưu 1/2 chu kỳ, tải R-L 42 P&I Ch5-Digi In/Out 83 Hình 5.13c. Chỉnh lưu cầu 1 phase và 3 phase (6 tia) P&I Ch5-Digi In/Out 84 Hình 5.14. Điều chỉnh công suất vô cấp dc dùng VXL, có phản hồi (feedback). 43 P&I Ch5-Digi In/Out 85 H5.14b. Đồ thị thời gian điều khiển 1 phase SCR Bridge P&I Ch5-Digi In/Out 86 H×nh 5.15. Hi-Power Interface: Power MOSFET (a) vµ IGBT (Insulated Gate Bipolar Transistor) – kiểu switching 44 P&I Ch5-Digi In/Out 87 5.2. Serial in/out: 5.2.1. Khái niệm KHÁI NIỆM: Thông tin trong Hệ VXL/ Máy tính: byte, word (//) Khi truyền 'xa': serialize - byte => bit stream => lên đường truyền => bit stream => byte (deserialize): giảm thiết bị thu phát và đường truyền => giảm (chi phí, kích thước) vs Tốc độ chậm, Mô hình: Hình 5.20. Central System: CPU, mem, controllers, sys bus... Serial port: Symbols: UART/USART (Universal [Synchronous] Asynchronous Receiver - Transmitter) ACIA: Async. Communication Interface Adaptor, Motorola P&I Ch5-Digi In/Out 88 45 P&I Ch5-Digi In/Out 89 5.2. Serial interface: 5.2.1. khái niệm Serial ports: Nhiệm vụ/chức năng: Vào ra nối tiếp: Biến đổi byte => dòng bit [thêm start/ stop/ parity] gửi lên đường truyền; dòng bit => byte , loại các bit không mang tin, kiểm tra lỗi thu. Ghép nối với hệ trung tâm: các bus/ tín hiệu addr, data, control bằng phương pháp Polling, Interrupt hoặc DMA (ít). Ghép nối với đường truyền [via modem]: TxD, RxD Ghép nối modem: qua các tín hiệu bắt tay -RTS, -CTS, - DSR, -DTR, -CD, -RI (low active signals) Ví dụ: UART 8250, 16450, 16550A (Intel, NS...), ACIA 6850 Motorola, USART 8251 - Intel P&I Ch5-Digi In/Out 90 5.2. serial interface: 5.2.1. khái niệm MODEM: là thiết bị biến đổi bit (0/1) thành tín hiệu vật lý, phù hợp với môi trường truyền xa (Điều chế - Modulation) và ngược lại (Giải điều chế - Demodulation), gồm: Ví dụ: Converter/ driver: Maxim 232/ ICL 232 (232 modem): TTL EIA 232, Single end, so với Gnd: -3V .. -15 V '1' +3V .. +15 V '0' Đơn giản, 100 feet @ 9600 bps, dễ bị nhiễu Thường dùng để ghép nối các thiết bị thông minh, gần, máy thí nghiệm, đo lường, điều khiển, Switching System, PLC... 46 P&I Ch5-Digi In/Out 91 5.1. Serial Interface: 5.2.1. Khái niệm Max 485/ SN 75 116 TI ... (485/422 modem): Vi sai - Differential, so điện áp giữa 2 tín hiệu với nhau. Mỗi kênh truyền 2 sợi dây a và b – 7576/75176/75116 [V(a) - V(b)] > 100 mV..5V => '1' và [V(a) - V(b)] '0' 5000' @ 1Mbps, thực tế có thể truyền xa vài km, giảm tốc độ. Thường dùng trong các xí nghiệp công nghiệp Current Sourcer - nguồn dòng điện : 0 và 20 mA [hoặc 20 và 60 mA, telex] Chịu nhiễu tốt Truyền xa, tùy thuộc điện trở R đường dây, Thường có cách ly quang học. P&I Ch5-Digi In/Out 92 Mô hình bus RS-485 SN75176 47 P&I Ch5-Digi In/Out 93 • ASK: Amplitude Shift Keying, H×nh 5.21a. • FSK: Frequency Shift Keying, H×nh 5.21b. • DTMF: Dual Tone Multi Frequency, 5.1. Serial Interface: 5.2.1. Khái niệm P&I Ch5-Digi In/Out 94 Dual tone multi-frequency • Bàn phím số có 4 hàng, 4 cột, mỗi hàng/cột mang 1 tần số từ 697 đến..1633Hz - tone • Dual tone: tần số của hàng và cột của phím tương ứng – khi bấm sẽ được cộng với nhau và phát lên kênh • Các vi mạch ứng dụng dịch vụ điều khiển xa qua mạng điện thoại – Giải mã tone  BCD: Mitel MT8880 – CODEC: TP 3057 48 P&I Ch5-Digi In/Out 95 P&I Ch5-Digi In/Out 96 • H. 5.21c. PSK: Phase Shift Keying H. 5.21d. QAM:Quaternary Amplitude Modulation 49 P&I Ch5-Digi In/Out 97 Khái niệm truyền tin đồng bộ và không đồng bộ: Thông tin thường được đóng gói thành các gói tin - package. => packets Đồng bộ: Trong 1 packet: byte - byte, bit - bit, không có dấu hiệu phân cách. Tốc độ truyền do sender: clock (cùng với data) hoặc chỉ xuất hiện vào thời điểm đầu trong gói tin (sync. character). Tốc độ cao, khó, tỷ lệ các bit không mang tin nhỏ, truyền gần - LAN 5.1. Serial Interface: 5.2.1. Khái niệm P&I Ch5-Digi In/Out 98 Truyền tin không đồng bộ: Asynchronous Comm. Mỗi ký tự/byte đều có 1 xung/sườn đồng bộ (sườn xuống của start). Clock của 2 phía thu và phát có thể lệch nhau khoảng 3-6..%: Ví dụ: 10 bit format 8,n,1; T: time of frame; t: time of bit, T độ lệch cho phép Tphát và Tthu. T < 1/2 t (tvdn = 5%). Có khoảng 'trống' giữa 2 characters, trạng thái 1. 50 P&I Ch5-Digi In/Out 99 Tỷ lệ các bit không mang tin lớn (start, stop, parity), lến đến 33% (ví dụ: format 1 start, 8 data, 1 PE, 2 stop) Đơn giản, dễ lập trình, dễ ghép nối. Đặc biệt được chấp nhận rộng rãi: thiết bị ngoại vi thông minh, đo lường điều khiển, modem... P&I Ch5-Digi In/Out 100 5.2. Serial Interface: 5.2.1. Khái niệm (c) Hình 5.22. Ba mô hình đường truyền: Simplex (a), Half duplex (b) và [full] duplex 51 P&I Ch5-Digi In/Out 101 5.2. serial interface: 5.2.2. EIA/TIA (RS)-232C/V24 EIA/TIA 1969, Electronics (Telecommunication) Industry Association, cho việc truyền tin không đồng bộ, [truyền qua mạng điện thoại]. RS: Recommended Standard Nhiều nhược điểm so với các chuẩn khác: tốc độ chậm, khoảng không xa, single end signals - dễ nhiễu, tỷ lệ bít không mang tin lớn. . . nhưng . . . Rất thông dụng, có trong hầu hết các thiết bị số (máy tính, máy điều khiển số, máy đo thông minh... và họ vi điều khiển, Global PS, Gyro Compass, PLC, Switching System... Là cửa ngõ trao đổi thông tin giữa các hệ VXL không cùng chuẩn (số bit, bộ lệnh, tốc độ...) P&I Ch5-Digi In/Out 102 5.2. serial interface: 5.2.2. chuÈn EIA/TIA-232c/v24 5.2.2.1. FORMAT of FRAME/ CHARACTER: 1 start bit = 0, đương nhiên, thường không nhắc lại 5/ 6 / 7/ 8 data bit, D0 – first. 5 và 6 not use today [Parity bit - PE/ PO] – ít dùng vì đã có kiểm soát chung bởi giao thức 1/ 1.5/2 stop bit = 1s – thường dùng 1 bit H. 5.23. RS-232 Frame trên đường truyền 52 P&I Ch5-Digi In/Out 103 5.2. Serial Interface: 5.2.2. RS232C/V24 5.2.2.2. MÔ HÌNH VÀ CÁC TÍN HIỆU: P&I Ch5-Digi In/Out 104 Các tín hiệu truyền tin: TxD - Transmit Data: Serial data out + bit không mang tin RxD - Receive Data: Serial data in + bit không mang tin Signal Ground: 0 Volt. Reference for Single End Signals Modem handshaking/ status signals (Low active): -RTS : Request To Send, Out - DTE -CTS : Clear To Send, In - DTE -DTR : Data Terminal Ready, Out -DSR : Data Set Ready, In -RI : Ring Indication, In: báo chuông -CD : [Data] Carrier Detect, In: mất sóng mang - đứt dây, mất điện remote terminal.... 53 P&I Ch5-Digi In/Out 105 5.2.2.3. MỨC TÍN HIỆU: Các tín hiệu RS232 có mức áp: -3V .. -15V => logic 1, so called 'Mark' +3V .. +15V => logic 0, so called 'Space' Các vi mạch dùng để biến đổi: 232 modems/ converters Motorola MC-1488 (Driver: TTL to 232) và MC-1489 (Receiver: 232 to TTL), 3 nguồn cấp : +5V, +12V, -12V, cổ Maxim 232 hoặc Intersil - ICL 232: là 232 'modem' ; Single Power Supply +5V. Bên trong có các bộ đổi nguồn: Doubler và Inverter => +10V và -10V, Hình 5.25 P&I Ch5-Digi In/Out 106 H. 5.25. MAXIM 232 IC 54 P&I Ch5-Digi In/Out 107 5.2.2.4. TỐC ĐỘ TRUYỀN TIN: Đơn vị tính là bps (bit per second) Các tốc độ RS-232 : 50, 75, 110, 150, 300, 600, 1200, 2400, 4800 và 9600, BIOS support Thêm: 19.200, 38.400, 57.600 và 115.200 Dùng Xtal (quartz, Thạch anh) 1.8432 MHz 16 chu kỳ clock => truyền (thu hoặc phát) được 1 bit Thường trong các cổng truyền tin, tốc độ được tính theo: 1.8432 x 106 Baud rate (bps) = ------------------------- ; 16 (m x 256 + n) m-n: số chia 16 bit, n : low divisior, m: hi divisior P&I Ch5-Digi In/Out 108 5.2.2.5. KHOẢNG CÁCH : Distance x baud rate product ! Tùy thuộc môi trường, cáp truyền, nhưng: @ 9600 bps, L < 100‘ ~ 33m @ 19.200 bps, L<50' ~ 16,5 m 5.2.2.6. CONNECTOR - JACK: D shell 9 hoặc 25 pin [DB9 hoặc DB25] connector Male - Female 55 P&I Ch5-Digi In/Out 109 5.2. serial interface: 5.2.3. PC's rs-232 ports Tên gọi: so called: RS 232C/ V24/ EIA 232 Communication port (Comm/ Com) Asynchronous [Async] port Serial port UART Intel 8250/ National Semiconductor 16450, 16550, 16550A Properties: Ports Comm1 Comm2 Comm3 Comm4 BaseAddr 3F8h 2F8h 3E8h 2E8h IRQ 4 3 Option Option HRQ (Option) P&I Ch5-Digi In/Out 110 5.2. serial interface: 5.2.3. PC RS232 ports UART 8250, Universal Asynchronous Receiver-Transmitter (KT VXL, tác giả MTV) CS interface: 8bit data, IRQ (for Trans, Rec, Modem & Errors), -CS, -RD, -WR và 3 Reg Select bits => 1 of 8 Modem Interface: RTS-CTS, DTR-DSR, CD và RI Line [Modem] Control Registers : để định format of character và chế độ hoạt động cho port và modem. Divisor Latches: định tốc độ truyền (thu và phát) Line [Modem] Status Registers đọc trạng thái, Errors để hoạt động polling và Int. UART NS 16550A: compatible 100% 8250 FIFO buffers for Rec và Trans 2x16 byte, Hoạt động: polling, interrupt [có thêm] DMA Tham khảo UART 16550A @ site: www.national.com 56 P&I Ch5-Digi In/Out 111 P&I Ch5-Digi In/Out 112 HOẠT ĐỘNG CỦA COMM PORT: SETTING & TRANSCEIVE SETTING/ INITIALIZING - KHỞI TẠO: Selecting Port: BaseAddr:= $2F8 {Comm2} Formats of character: (Line Control Register - BA+3) Vídụ 9600, 8(7), N(PE/ PO), 1(2): Port[BaseAddr+3]:= 3; {8, n, 1, 3F8+3} Baud rate Setting: DLAB (bit7 of LCR) = 1, nạp Low Div và Hi Div. Khi setting baudrate, DLAB=1, otherwise=0 Port[BaseAddr+3] := Port[BaseAddr+3] or $80; {DLAB=1 only} Port[BaseAddr+0] := 12; {xf8h, Low divisor, n} Port[BaseAddr+1] := 0; { xf9h, Hi divisor , m} Port[BaseAddr+3] := Port[BaseAddr+3] and $7F;{DLAB=0 !} 57 P&I Ch5-Digi In/Out 113 • Line Control Register: XFBh – BaseAddr+3 – b1, b0 : 11 10 01 00 – 8 7 6 5 data bit, 5 và 6 bit không dùng. – b2 : 0 => 1 stop bit; 1 => 2 stop bit – b3: 0 – non parity, 1: parity – b4: (chỉ có nghĩa khi b3=1) 0=> PO, 1=> PE – b5: 0: normal, 1: Stuck parity (PE) – b6: Space Out: 0, normal, 1: space out – b7: DLAB: divisor latch access bit. Dùng để truy nhập số chia, định tốc độ truyền. 0: normal, 1: BA – (XF8) low divisor, BA+1 (XF9) – hi divisor – Ví dụ: 7, PE, 2  LCR = 0001 1110b  1Eh P&I Ch5-Digi In/Out 114 1.8432 x 106 cps • Công thức tính: Baud rate (bps) = --------------------- ; 16 (m x 256 + n) n : low divisior, m: hi divisior 600 bps m=0, n = 192 1200 bps m=0, n= 96; 2400 bps m=0, n= 48 4800 bps m=0, n= 24 9600 bps: m=0, n= 12 19200 bps m=0, n= 6 38400 bps m=0, n= 3 57600 bps m=0, n = 2 115200 bps m=0, n= 1 max rate Nạp cả m và n khi DLAB = 1 58 P&I Ch5-Digi In/Out 115 HOẠT ĐỘNG TRANS-CEIVING Line Status Register LSR, BA+5, các bit/ cờ TT: b0 = 1 => IBF data received, = 0 khi CPU đọc Receice Buffer, RxR - xF8h b1 = 1 => OE, Overrun Err, mất số liệu, bị sl sau đè lên b2 = 1 => PE, Parity Err, Vd đặt PE, thu về số bit 1 lẻ b3 = 1 => FE, Framing Err, sai stop bit, sai clock 2 phía b4 = 1 => BI, BreakInt, t(space)> t(full char) b5: THRE: Transmit Hold Reg Empty b6: Data Transmitted b7: Not Use Và chú ý TimeOut !!! Thủ tục thu 1 packet được mô tả Hình 5.26: 5.2. serial interface: 5.2.3. PC RS-232 ports P&I Ch5-Digi In/Out 116 5.2. serial interface: 5.2.3. PC rs-232 ports HOẠT ĐỘNG: POLLING, sau setting, thu;phát tin giống như song song Transmitting: Line Status Register LSR, BA+5 Sending 1 char: Thanh ghi giữ sl phát TxR, Base Addr+0 Port[BA+0]:= sent_char; ghi ra thanh ghi phát Sending 1 packet n byte. bit 5 (of LSR) = 1 => THRE (Trans Hold Reg Empty): For i:= 1 to n do Begin {0010 0000} Repeat Until Port[BA+5] and $20 0; {test bit 5} Port[BA+0]:= xau_ky_tu[i] End; {không cần kiểm tra TimeOut hoặc lỗi ?} 59 P&I Ch5-Digi In/Out 117 Hình 5.26. Lưu đồ Thu 1 packet qua Comm Port - Polling P&I Ch5-Digi In/Out 118 Rec Proc Near ; Bien Cobao ket qua mov bp, offset Tx_Buffer ; Init Array of Receiving mov cx, n ; Init counter of Packet Rec1: mov bx, TOC ; Init TOC, tre 1s Rec2: call @delay ; delay khoang 50us dec bx jne Rec3 mov bl, 0FFh mov Cobao, bl ; Loi Time Out jmp Ketthuc Rec3: mov dx, BaseAddr+5 ; Line Status Reg in al, dx test al, 00000001b ; IBF je Rec2 60 P&I Ch5-Digi In/Out 119 mov dx, BaseAddr+0 ; Rx Register in al, dx mov [bp], al ; Cat ket qua mov dx, BaseAddr+5 ; LSR in al, dx and al, 00011110b ; any error? jne Rec31 inc bp ; next char loop Rec1 mov bl, 0 mov Cobao, bl ; PERFECT RETURN jmp Ketthuc Rec31:test al, 00000010b ; Overrun Error? je Rec4 mov bl, 1 mov Cobao, bl ; Loi 1 P&I Ch5-Digi In/Out 120 Rec4: test al, 00000100b je Rec5 mov bl, 2 mov Cobao, bl ; Loi 2 Rec5: test al, 00001000b je Rec6 mov bl, 3 mov Cobao, bl ; Loi 3 Rec6: mov bl, 4 mov Cobao, bl ; Loi 4 Ketthuc: ret Rec Endp 61 P&I Ch5-Digi In/Out 121 INTERRUPT SETTING IRQ 4 - Comm1, IRQ3 - Comm2. Interrupt Enable Register - IER, BA+1, 4 lowest bit. b(i) = 1 => Enable; b(i) = 0 => Disable. b0 : Thu xong 1 byte/ char b1 : TxR Empty b2 : 1 of 4 Errors of Receive Action b3 : MODEM IRQ Interrupt Identification Register: BA+2, Đọc II Reg để biết nguồn ngắt, có 4 mắc ưu tiên cố định, dùng b1 và b2: xxxxx11x Highest Prio., 1 of 4 lỗi thu xxxxx10x Thu xong 1 char/ byte xxxxx01x Phát xong 1 char/ byte xxxxx00x  hoặc  của 1 of 4 modem HSK signals. P&I Ch5-Digi In/Out 122 5.2. serial interface: 5.2.4. Hayes modems Do Công ty Hayes Microcomputer Product Inc. giới thiệu vào đầu 80s, tốc độ 300...2400bps, over telephone line Có bộ lệnh (command set) và trả lời (response set), được dùng như các lệnh chuẩn AT (standard modem). Tín hiệu: TxD, RxD, Gnd, CD, RI. [Thêm] DTR-DSR, [RTS-CTS] Chế độ hoạt động: Command và Data (Online) Modes Command Mode: modem nhận lệnh từ CS qua RS-232 port và thực hiện lệnh - không truyền tin. Khi thiết lập xong kết nối với remote modem => online mode (data mode) và chỉ truyền tin, không nhận lệnh. 62 P&I Ch5-Digi In/Out 123 H×nh 5.27. Block diagram of Hayes Compatible Data-Fax Modem P&I Ch5-Digi In/Out 124 Khi mất sóng mang (remote modem has hungup) trở về command mode không disconnecting để đợi guard time (default 1s) Escape command: +++ Lệnh gửi từ máy tính: software hoặc gõ trực tiếp từ bàn phím qua RS-232 port Char gửi từ máy tính 1 trong 2 formats: 7,PE,1 hoặc 8,N,1 Khi truyền 110 bps => 2 stop bit Khi nhận command, modem gửi về result code. Option: Digit code - for controlling modem by software Word code - for controlling modem by keyboard 63 P&I Ch5-Digi In/Out 125 RESULT CODES: DIGIT Word Meaning 0 OK Cmmnd executed 1 CONNECT Connect @ 0..300bps 2 RING ring signal detected 3 NO CARRIER mất sóng mang 4 ERROR error in cmmnd line 5 CONNECT 1200 6 NO DIALTONE Không có quay số 7 BUSY Báo bận 8 NO ANSWER Không trả lời 10 CONNECT 2400 P&I Ch5-Digi In/Out 126 AT COMMAND SET: attention Các lệnh bắt đầu bằng AT or at (not At or aT) để modem detects tốc độ và format (ngoại trừ 2 lệnh '+++' và A/ - repeat last Cmmnd ) và kết thúc: Enter (0ah,0dh) Command line: có thể có hơn 1 lệnh, chỉ cần 1st có AT, cách nhau dấu ' ' và không quá 40 char/cmmnd line. Các lệnh và Tham số ATDT 048692463 Dial using touch Tone ATDP 048696125 Dial Pulse ATT/ ATP default tone/ pulse O end of C line, return O mode ; end of C line, stay C mode after executing @ wait for 5s hoặc silent 64 P&I Ch5-Digi In/Out 127 • VÝ dô: • ATDT 9,3456789 Kết nối từ máy trong tổng đài • ATXn Hayes Smartmodem compatible • Other Commands: • ATE0/ 1 Disable/ Enable Echo • +++ Esc Char switch to command mode • ATHn 0:On-Hook (hangup),1: Off-Hook • ATLn 0/1/2/3 volume of speaker • ATMn 0: speaker off, 1: on until DCD, 2: on • ATNn 0: connect @ DTE rate, 1: auto rate negot. • ATO return to O mode • ATQn 0: result code En, 1: result code Dis • ATVn 0: digit, 1: word • ATZ hangup, reset to default settings • A/ Repeat last command (re dial) • Các modem đều có bộ lệnh riêng, Ref. User's Guide Man. P&I Ch5-Digi In/Out 128 Case study: Adding a Comm to uC • Init: 9600, 8, n, 1, P20=1 (P20 thay cho Pij), TxBuff , RxBuff byte • Transmitting a char: – TxBuff = transmit byte – Start bit: P20=0, delay 104 us – For i=0 to 7 do (P20= TxBuff(i), delay 104 us) – Stop bit: P20=1, delay 104us • Receiving a char: khi nhận start bit, ISR được gọi từ INT0: – Delay 52us, If P20=1 then iret (not start) else • For i= 0 to 7 do (RxBuff(i)=P20, delay 104us) • If P20 = 0 then framing Error • iret 65 P&I Ch5-Digi In/Out 129 BÀI TẬP CHƯƠNG 5 (1 OF 2) Thiết kế mạch cổng INPUT có trạng thái vs H5.3 Mạch ghép nối, tín hiệu trạng thái báo ngắt – Disable/Enable Xây dựng mạch ghép nối PC và PPI 8255 qua ISA bus Theo hình 5.7, xây dựng mạch ghép nối n CA-LEDs and/or keypad + chương trình điều khiển, với hệ Vi xử lý bất kỳ. Theo hình 5.8 và 5.9, tạo 16 x (8x16) char box board và DD để hiện 1 thông báo. T/k Color Char board: 2 LED Green/Red => 4 color Bài tập dài: Nghiên cứu và lập trình vào ra LPT với SPP, EPP, ECP và IEEE 1284 modes Thiết kế giao thức và xây dựng ch/tr truyền file giữa 2 máy tính qua LPT theo SPP và các mode trên Tạo Bill board tiếng Việt 16 row-80 column P&I Ch5-Digi In/Out 130 BÀI TẬP CHƯƠNG 5 (2 OF 2) Xây dựng mạch ghép nối 2 encoders theo chiều X và Y để xác định tọa độ của một động tử (positioner) - tỷ lệ length/count đã cho (có thể dùng Timer 8254) Ghép nối Step motor [và Encoder] để điều khiển 1 thiết bị như máy khoan định vị bằng chương trình, máy cắt vải, giấy, máy vẽ, khoan toạ độ, automobile ... Xây dựng sơ đồ chi tiết để điều khiển các tải công suất lớn: motor, gen-set field wild dc, ac (lò, đèn) Thuần thục lập trình cho các cổng RS-232/V24 trong máy tính và các thiết bị khác. Truyền tin giữa máy tính và Embedded System (ES) qua RS-232: chat & file Truyền tin giữa 2 máy qua Hayes modem: chat & file

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_thiet_bi_ngoai_vi_va_ky_thuat_ghep_noi_chuong_5_di.pdf