Xem mẫu

  1. Chương 2: GIÔÙI THIEÄU CHUAÅN RS-232C Vaøo naêm 1960, cuøng vôùi söï phaùt trieån maïnh cuûa caùc thieát bò ñaàu cuoái maùy tính chia seû thôøi gian, caùc Modem ñaõ ñöôïc tung ra ngaøy caøng nhieàu nhaèm ñaûm baûo cho caùc thieát bò ñaàu cuoái coù theå duøng caùc ñöôøng ñieän thoaïi ñeå thoâng tin giöõa caùc maùy tính vôùi nhau ôû nhöõng khoaûng caùch xa. Modem vaø caùc thieât bò ñöôïc duøng ñeå göûi soá lieäu noái tieáp thöôøng ñöôïc goïi laø thieát bò thoâng tin soá lieäu DCE (Datommunication Equipment). Caùc thieát bò ñaàu cuoái hoaëc maùy tính ñang göûi hay nhaän soá lieäu ñöôïc goïi laø caùc thieát bò ñaàu soá lieäu DTE (Data Terminal Equipment). Nhaèm ñaùp öùng vôùi nhu caàu veà tín hieäu vaø caùc chuaån baét tay (handshake standards) giöõa DTE vaø DCE, hieäp hoäi kyõ thuaät ñieän töû EIA ñaõ ñöa ra chuaån RS-232C. Chuaån naøy moâ taû chöùc naêng 25 chaân tín hieäu vaø baét tay cho vieäc chuyeån döõ lieäu noái tieáp. Noù cuõng moâ taû caùc möùc ñieän aùp, trôû khaùng, toác ñoä truyeàn cöïc ñaïi vaø ñieän dung cöïc ñaïi cho caùc ñöôøng tín hieäu naøy. RS-232 aán ñònh 25 chaân tín hieäu, vaø quy ñònh caùc ñaàu noái DTE phaûi laø male (ñöïc) vaø caùc ñaàu noái DCE phaûi laø female (caùi). Moät loaïi ñaàu noái ñaëc bieät khoâng ñöôïc cho, nhöng thöôøng duøng nhieàu nhaát laø ñaàu noái mele DB-25P (hình 2-1). Ngoaøi ra, ñoái vôùi nhieàu heä thoáng coøn duøng loaïi 9 chaân nhö loaïi DE-9P mele (hình 2-2). Hình 2-1 Hình 2-2
  2. Ñöôïc EIA ñöa vaøo naêm 1969 ñeå truyeàn döõ lieäu noái tieáp vaø tín hieäu ñieàu khieån giöõa Modem vaø thieát bò ñaàu cuoái (hoaëc maùy tính) vôùi toác ñoä truyeàn toái ña laø 20kbps ôû cöï ly khoaûng 15m. ñaây laø moät daïng giao tieáp loaïi TTL + boä kích ñöôøng daây khoâng caân baèng. Vieäc moâ taû chuaån naøy ñöôïc chia laøm ba phaàn: Caùc ñaëc ñieåm kyõ thuaät veà ñieän, moâ taû caùc ñöôøng döõ lieäu ñieàu khieån vaø söû duïng boä keát noái chaân ra. I _ ÑAËC ÑIEÅM KYÕ THUAÄT VEÀ ÑIEÄN CUÛA RS232C IN PIN COMMO RS232C SIGNAL NUMBE NUMBER N NAME DIRECTI RS S NAME ON FOR 9 FOR 25 ON DCE PINS PINS 1 AA - 3 2 TxD BA IN 2 3 RxD BB OUT 7 4 RTS CA IN 8 5 CTS CB OUT 6 6 DSR CC OUT 5 7 GND AB - 1 8 CD CF OUT 9 - - 10 - - 11 - 12 SCF OUT
  3. 13 SCB OUT 14 SBA IN 15 ÑB OUT 16 SBB OUT 17 OUT 18 - 19 SCA IN 4 20 DTR CD IN 21 CG OUT 9 22 CE OUT 23 CH/CI IN/OUT 24 DA IN 25 - Hình 2-3 Qui ñònh veà chaân cuûa RS232C Möùc ñieän aùp logic cuûa RS-232C laø khoaûng ñieän aùp giöõa +15V vaø –15V. Caùc ñöôøng döõ lieäu söû duïng möùc logic aâm: logic 1 coù ñieän theá giöõa –5V vaø –15V, logic 0 coù ñieän theá giöõa +5V vaø +15V. tuy nhieân caùc ñöôøng ñieàn khieån (ngoaïi tröø ñöôøng TDATA vaø RDATA) söû duïng logic döông: gía trò TRUE = +5V ñeán +15V vaø FALSE =-5V ñeán –15. ÔÛ chuaån giao tieáp naøy, giöõa ngoõ ra boä kích phaùt vaø ngoõ vaøo boä thu coù möùc nhieãu ñöôïc giôùi haïn laø 2V. Do vaäy ngöôõng lôùn nhaát cuûa ngoõ vaøo laø ±3V traùi laïi möùc ± 5V laø ngöôõng nhoû
  4. nhaát vôùi ngoõ ra. Ngoõ ra boä kích phaùt khi khoâng taûi coù ñieän aùp laø ± 25V.  Caùc ñaëc ñieåm veà ñieän khaùc bao goàm  RL (ñieän trôû taûi) ñöôïc nhìn töø boä kích phaùt coù giaù trò töø 3 ÷ 7kΩ.  CL (ñieän dung taûi) ñöôïc nhìn töø boä kích phaùt khoâng ñöôïc vöôït quaù 2500pF.  Ñeå ngaên caûn söï dao ñoäng quaù möùc, toác ñoä thay ñoåi (Slew rate ) cuûa ñieän aùp khoâng ñöôïc vöôït quùa 30V/µs. Ñoái vôùi caùc ñöôøng ñieàu khieån, thôøi gian chuyeån cuûa tín hieäu (töø TRUE sang FALSE, hoaëc töø FALSE sang TRUE ) khoâng ñöôïc vöôït quùa 1ms. Ñoái vôùi caùc ñöôøng döõ lieäu, thôøi gian chuyeån (töø 1 sang 0 hoaëc töø 0 sang 1) phaûi khoâng vöôït quùa 4% thôøi gian cuûa 1 bit hoaëc 1ms. II _ CAÙC ÑÖÔØNG DÖÕ LIEÄU VAØ ÑIEÀU KHIEÅN CUÛA RS232 - TxD: Döõ lieäu ñöôïc truyeàn ñi töø Modem treân maïng ñieän thoaïi. - RxD: Döõ lieäu ñöôïc thu bôûi Modem treân maïng ñieän thoaïi.  Caùc ñöôøng baùo thieát bò saün saøng: - DSR : Ñeå baùo raèng Modem ñaõ saün saøng. - DTR : Ñeå baùo raèng thieát bò ñaàu cuoái ñaõ saün saøng - Caùc ñöôøng baét tay baùn song coâng. - RTS : Ñeå baùo raèng thieát bò ñaàu cuoái yeâu caàu phaùt döõ lieäu. - CTS : Modem ñaùp öùng nhu caàu caàn göûi döõ lieäu cuûa thieát bò ñaàu cuoái cho thieát bò ñaàu cuoái coù theå söû duïng keânh truyeàn
  5. döõ lieäu. Caùc ñöôøng traïng thaùi soùng mang vaø tín hieäu ñieän thoaïi: - CD : Modem baùo cho thieát bò ñaàu cuoái bieát raèng ñaõ nhaän ñöôïc moät soùng mang hôïp leä töø maïng ñieän thoaïi. - RI : Caùc Modem töï ñoäng traû lôøi baùo raèng ñaõ phaùt hieän chuoâng töø maïng ñieän thoaïïi ñòa chæ ñaàu tieân coù theå tôùi ñöôïc cuûa coång noái tieáp ñöôïc goïi laø ñòa chæ cô baûn (Basic Address). Caùc ñòa chæ ghi tieáp theo ñöôïc ñaët tôùi baèng vieäc coäng theâm soá thanh ghi ñaõ gaëp cuûa boä UART vaøo ñòa chæ cô baûn. - Möùc tín hieäu treân chaân ra RxD tuøy thuoäc vaøo ñöôøng daãn TxD vaø thoâng thöôøng naèm trong khoaûng –12 ñeán +12. Caùc bit döõ lieäu ñöôïc göûi ñaûo ngöôïc laïi. Möùc ñieän aùp ñoái vôùi möùc High naèm giöõa –3V vaø –12V vaø möùc Low naèm giöõa +3V vaø +12V. Treân hình 2-4 moâ taû moät doøng döõ lieäu ñieån hình cuûa moät byte döõ lieäu treân coång noái tieáp RS-232C. - ÔÛ traïng thaùi tónh treân ñöôøng daãn coù ñieän aùp –12V. Moät bit khôûi ñoäng (Starbit) seõ môû ñaàu vieäc truyeàn döõ lieäu. Tieáp ñoù laø caùc bit döõ lieäu rieâng leû seõ ñeán, trong ñoù caùc bit giaù trò thaáp seõ ñöôïc göûi tröôùc tieân. Coøn soá cuûa caùc bit thay ñoåi giöõa 5 vaø 8. ÔÛ cuoái cuûa doøng döõ lieäu coøn coù moät bit döøng (Stopbit) ñeå ñaët trôû laïi traïng thaùi ngoõ ra (-12V).
  6. Starbit Stopbit +12V LOW D0 D1 D3 D4 D5 D6 D7 -12V HIGHT 1 1 0 1 0 0 1 0 10 T =1/fBaud 4µS 1.04ms Hình 2-4: Doøng döõ lieäu treân coång RS 232 vôùi toác ñoä Ñòa chæ cô baûn cuûa coång noái tieáp cuûa maùy tính PC coù theå toùm taét trong baûng caùc ñòa chæ sau: COM 1 (coång noái tieáp thöù nhaát) Ñòa chæ cô baûn = 3F8(Hex) COM 2 (coång noái tieáp thöù hai) Ñòa chæ cô baûn = 2F8(Hex) COM 3 (coång noái tieáp thöù ba) Ñòa chæ cô baûn = 3E8(Hex) COM 4 (coång noái tieáp thöù tö) Ñòa chæ cô baûn = 2E8(Hex) Cuõng nhö ôû coång maùy in, caùc ñöôøng daãn tín hieäu rieâng bieät cuõng cho pheùp trao ñoåi qua caùc ñòa chæ trong maùy tính PC. Trong tröôøng hôïp naøy, ngöôøi ta thöôøng söû duïng nhöõng vi maïch coù möùc ñoä tích hôïp cao ñeå coù theå hôïp nhaát nhieàu chöùc naêng treân moät chip. ÔÛ maùy tính PC thöôøng coù moät boä phaùt/nhaän khoâng ñoàng boä vaïn naêng (goïi taét laø UART: Universal Asnchronous Receiver/
  7. Transmitter) ñeå ñieàu khieån söï trao ñoåi thoâng tin giöõa maùy tính vaø caùc thieát bò ngoaïi vi. Phoå bieán nhaát laø vi maïch 8250 cuûa haõng NSC hoaëc caùc theá heä tieáp theo. Thoâng thöôøng vôùi caùc yeâu caàu öùng duïng toác ñoä thaáp ngöôøi ta giao tieáp qua ngoõ noái tieáp, noù giao tieáp theo tieâu chuaån RS232C vaø duøng ñeå giao tieáp giöõa maùy tính vôùi Modem hoaëc Mouse. Ngoaøi ra cuõng coù theå duøng giao tieáp vôùi printer hay plotter nhöng khoâng thoâng duïng laém bôûi toác ñoä truyeàn quaù chaäm. Ñoái vôùi maùy AT cho ta hai ngoõ giao tieáp COM1 vaø COM2. Trong moät soá card I/O ta coù theå coù ñeán 4 coång COM. Ñeå giao tieáp noái tieáp vôùi 2 ngoõ COM naøy Bus heä thoáng cuûa CPU (Data Bus vaø Address Bus) haõng IBM söû duïng hai Chip laäp trình cuûa Intel laø 8250 UART (Universal Asynchronus Receiver Transmitter). Ñòa chæ theo boä nhôù cuûa hai Chip naøy laø 0040:0000 cho UART cuûa ngoõ COM1 vaø 0040:0002 cho UART cuûa ngoõ COM2 (Ñòa chæ logic do heä ñieàu haønh chæ ñònh) vaø ñòa chæ theo Port ñeå truy xuaát khi söû duïng laø 3F8-3FF cho COM1 vaø 2F8-2FF cho COM2. Döõ lieäu truyeàn qua cho Port COM döôùi daïng noái tieáp töøng Bit moät, ñôn vò döõ lieäu coù theå laø 5 Bit, 6 Bit hay 1 byte tuøy theo söï caøi ñaët luùc khôûi taïo Port COM. Ngoaøi ra ñeå truyeàn döõ lieäu qua Port COM coøn caàn nhöõng tham soá sau: Bit môû ñaàu cho moät ñôn vò döõ lieäu START Bit. STOP Bit (Bit keát thuùc). Parity (Kieåm tra chaün leû). Baud Rate (Toác ñoä truyeàn) taïo thaønh moät Frame (Khung truyeàn). Port COM laø moät theå khôûi taïo baèng BIOS thoâng qua chöùc naêng 0 cuûa Interrupt 14, naïp vaøo thanh ghi DX1 chæ soá choïn keânh (COM1 = 0, COM2 = 1). Thanh ghi AL ñöôïc naïp vaøo caùc tham soá cuûa vieäc truyeàn döõ lieäu.
  8. A D7 D6 D5 D4 D3 D2 D1 D0 L  Bit D0 D1 : Cho bieát ñoä roäng cuûa döõ lieäu 0 0 : Döõ lieäu coù ñoä roäng 5 Bit 0 1 : Döõ lieäu coù ñoä roäng 6 Bit 1 0 : Döõ lieäu coù ñoä roäng 7 Bit 1 1 : Döõ lieäu coù ñoä roäng 8 Bit.  Bit D2 : Cho bieát soá Stop Bit. 0 : Söû duïng moät bit Stop 1 : Söû duïng hai bit Stop  Bit D3 D4: Caùc Bit parity (chaün leû) 0 0 : Khoâng kieåm tra tính Parity 1 1 : Khoâng kieåm tra tính Parity 0 1 : Odd (leû) 1 0 : Even (chaün)  Bit D5D6D7 : Cho bieát toác ñoä truyeàn (Baud Rate) 0 0 0 : Toác ñoä truyeàn 110bps (bit per second) 0 0 1 : Toác ñoä truyeàn 150bps (bit per second) 0 1 0 : Toác ñoä truyeàn 300bps (bit per second) 0 1 1 : Toác ñoä truyeàn 600bps (bit per second) 1 0 0 : Toác ñoä truyeàn 1200bps (bit per second) 1 0 1 : Toác ñoä truyeàn 2400bps (bit per second) 1 1 0 : Toác ñoä truyeàn 4800bps (bit per second) 1 1 1 : Toác ñoä truyeàn 9600bps (bit per second)