Gumagana ang COM port. Ano ang COM port. Paano i-disable ang mga USB port kapag ini-off ang iyong computer

Minsan kailangan mong lutasin ang problema ng pagkonekta ng isang elektronikong aparato sa isang computer, maging ito ay simpleng pagpapalitan ng data o remote control. Inilalarawan ng artikulong ito kung paano ito maipapatupad gamit ang isang serial port. Ang pangunahing bentahe nito ay ang karaniwang Windows programming interface (API) ay nagbibigay-daan sa direktang kontrol sa mga linya ng output, na nagbibigay ng direktang kontrol sa mga ito, at may tungkuling maghintay para sa ilang kaganapan na nauugnay sa COM port. Gayundin, ang pamantayang RS-232, ayon sa kung saan ginawa ang mga COM port, ay nagbibigay-daan para sa pagkonekta at pagdiskonekta ng mga cable habang gumagana ang mga device (hot plug).

Paglalarawan

COM port (serial port)– bidirectional interface na nagpapadala ng data sa serial form (bit by bit) sa pamamagitan ng RS-232 protocol. Ito ay isang medyo karaniwang protocol na ginagamit upang ikonekta ang isang device (halimbawa, isang computer) sa iba sa pamamagitan ng mga wire na hanggang 30 m ang haba. Ang mga antas ng lohikal na signal dito ay naiiba mula sa mga karaniwang: ang lohikal na isang antas ay mula sa +5 hanggang +15V, ang lohikal na antas ng zero ay mula -5 hanggang -15V, na nangangailangan ng karagdagang mga pagbabago sa circuit, ngunit nagbibigay ng mahusay na kaligtasan sa ingay.

Isaalang-alang ang isang 9-pin connector (DB-9M). Nasa ibaba ang pinout nito:

Pin no. Pangalan Katangian ng signal Signal
1 DCD Input Na-detect ang carrier ng data
2 RxD Araw ng pahinga Magpadala ng data
3 TxD Input Tumanggap ng data
4 DTR Araw ng pahinga Handa na ang terminal ng data
5 GND - Lupa
6 DSR Input Handa na ang data set
7 RTS Araw ng pahinga Kahilingan na ipadala
8 CTS Input Malinaw na ipadala
9 R.I. Input Tagapagpahiwatig ng singsing

Magiging interesado kami sa mga pin 2 (pagpapadala ng data), 3 (pagtanggap ng data) at 5 (lupa). Ito ang minimum na itinakda para sa two-way na komunikasyon sa pagitan ng mga device.

Hindi ako magtatagal sa paglalarawan ng protocol nang detalyado. Para dito mayroong mga GOST, atbp. Samakatuwid, lalakad pa tayo at pag-uusapan kung paano kontrolin ang halimaw na ito.

Aplikasyon

Tulad ng nabanggit na, ang mga antas ng RS-232 LAN ay iba sa mga karaniwang antas ng TTL. Samakatuwid, kailangan nating i-convert ang mga halaga ng boltahe sa anumang paraan. Yung. gumawa ng 5V mula sa +15V at 0V mula sa -15V (at vice versa). Ang isang paraan (at marahil ang pinakasimpleng) ay ang paggamit ng isang espesyal na MAX232 chip. Ito ay madaling maunawaan at maaaring sabay na i-convert ang dalawang logic signal.

Nasa ibaba ang isang diagram ng pagsasama nito:


Sa tingin ko ay hindi dapat magkaroon ng anumang mga paghihirap. Ito ay isa sa mga opsyon para sa paggamit ng chip na ito: paglilipat ng data mula sa isang microcontroller patungo sa isang computer at vice versa. Ang ipinadalang signal ay napupunta sa mga T pin x IN sa isang tabi at sa R x IN sa kabilang. Ang mga signal ng input ay kinuha mula sa T x OUT at R x OUT nang naaayon.

Programming

Una, pag-usapan natin ang mga programming port sa mababang antas. Ito ay magiging mas tama. Gumugol ako ng maraming nerbiyos sa pag-unawa sa interface na ito hanggang sa nagsimula akong bungkalin ang prinsipyo ng operasyon nito sa mas mababang antas kaysa sa simpleng paghahatid ng character. Kung ito ay malinaw, pagkatapos ay walang mga problema sa mataas na antas ng mga wika.

Nasa ibaba ang mga address ng mga COM port na kailangan nating magtrabaho:

Pangalan ng port Address IRQ
COM 1 3F8h 4
COM 2 2F8h 3
COM 3 3E8h 4
COM 4 2E8h 3

Maaari silang mag-iba. Maaari mong itakda ang mga halaga sa mga setting ng BIOS. Ito ang mga base address. Ang mga address ng mga rehistro na responsable para sa pagpapatakbo ng mga port ay nakasalalay sa kanila:

Address DLAB Basa sulat Pagpapaikli Magrehistro ng pangalan
+ 0 =0 Sumulat Transmitter Holding Buffer
=0 Basahin Receiver Buffer
=1 Basa sulat Divisor Latch Low Byte
+ 1 =0 Basa sulat IER Interrupt Enable Register
=1 Basa sulat Divisor Latch High Byte
+ 2 - Basahin IIR Interrupt Identification Register
- Sumulat FCR Pagrehistro ng Kontrol ng FIFO
+ 3 - Basa sulat LCR Linya Control Register
+ 4 - Basa sulat MCR Modem Control Register
+ 5 - Basahin LSR Pagrehistro ng Katayuan ng Linya
+ 6 - Basahin MSR Modem Status Register
+ 7 - Basa sulat Scratch Register

Ang unang column ay ang register address na may kaugnayan sa base one. Halimbawa, para sa COM1: ang LCR register address ay magiging 3F8h+3=3FB. Ang pangalawang column ay DLAB (Divisor Latch Access Bit) bit, na tumutukoy sa iba't ibang layunin para sa parehong rehistro.. I.e. pinapayagan ka nitong magpatakbo ng 12 rehistro gamit lamang ang 8 address. Halimbawa, kung DLAB=1, pagkatapos ay sa pamamagitan ng pag-access sa address 3F8h itatakda namin ang halaga ng mababang byte ng divider ng dalas ng generator ng orasan. Kung DLAB = 0, kung gayon kapag nag-access sa parehong address, ang ipinadala o natanggap na byte ay isusulat sa rehistrong ito.

"Zero" na rehistro

Ito ay tumutugma sa mga rehistro para sa pagtanggap/pagpapadala ng data at pagtatakda ng generator frequency divider coefficient. Tulad ng nabanggit sa itaas, kung ang DLAB = 0, kung gayon ang rehistro ay ginagamit upang itala ang natanggap/naipadalang data, ngunit kung ito ay katumbas ng 1, kung gayon ang halaga ng mababang byte ng divider ng dalas ng generator ng orasan ay nakatakda. Ang bilis ng paghahatid ng data ay nakasalalay sa halaga ng dalas na ito. Ang mataas na byte ng divider ay isinusulat sa susunod na memory cell (i.e. para sa COM1 port ito ay magiging 3F9h). Nasa ibaba ang dependence ng data transfer rate sa divisor coefficient:

Interrupt Enable Register (IER)

Kung DLAB=0, pagkatapos ay ginagamit ito bilang isang rehistro para sa pagkontrol ng mga interrupt mula sa isang asynchronous na adaptor kung DLAB=1, kung gayon ang mataas na byte ng divider ng frequency ng orasan ay nakatakda dito.

Interrupt Identification Register (IIR)

Ang interrupt ay isang kaganapan na huminto sa pagpapatupad ng pangunahing programa at nagsisimula sa pagpapatupad ng interrupt routine. Tinutukoy ng rehistrong ito ang uri ng interrupt na naganap.

Line Control Register (LCR)

Ito ang control register.

Bit 7 1 Divisor Latch Access Bit – pagtatakda ng data exchange rate
0 Normal na mode (kontrol ng interrupt, pagtanggap/pagpapadala ng data)
Bit 6 Gayahin ang line break (nagpapadala ng sequence ng maramihang mga zero)
Bits 3 – 5 Bit 5 Bit 4 Bit 3 Pagpili ng parity
X X 0 Walang Parity
0 0 1 Kakaibang Parity
0 1 1 Kahit Parity
1 0 1 High Parity (Malagkit)
1 1 1 Mababang Parity (Malagkit)
Bit 2 Bilang ng mga stop bit
0 1 stop bit
1 2 stop bits para sa 6,7 ​​o 8 data bits o 1.5 stop bits para sa 5 data bits.
Bits 0 at 1 Bit 1 Bit 0 Bilang ng mga bits ng data
0 0 5 bits
0 1 6 bit
1 0 7 bit
1 1 8 bit

Ang parity checking ay nagsasangkot ng paghahatid ng isa pang bit - ang parity bit. Ang halaga nito ay itinakda upang ang kabuuang bilang ng mga isa (o mga zero) sa isang pakete ng mga bit ay pantay o kakaiba, depende sa setting ng mga rehistro ng port. Ang bit na ito ay ginagamit upang makita ang mga error na maaaring mangyari sa panahon ng paghahatid ng data dahil sa interference sa linya. Ang receiving device ay muling kinakalkula ang parity ng data at inihahambing ang resulta sa natanggap na parity bit. Kung ang parity ay hindi tumutugma, pagkatapos ay itinuturing na ang data ay ipinadala na may isang error.

Ang stop bit ay nagpapahiwatig ng pagtatapos ng paghahatid ng data.

Modem Control Register (MCR)

Register ng kontrol ng modem.

bit Ibig sabihin
0 linya ng DTR
1 linya ng RTS.
2 Linya OUT1 (reserba)
3 Line OUT2 (reserba)
4 Pagpapatakbo ng mga diagnostic kapag ang input ng isang asynchronous adapter ay pinaikli sa output nito.
5-7 Katumbas ng 0

Line Status Register (LSR)

Isang rehistro na tumutukoy sa estado ng linya.

bit Ibig sabihin
0 Ang data na natanggap at handa nang basahin, awtomatikong i-reset kapag nabasa ang data.
1 Overflow error. Isang bagong byte ng data ang natanggap, ngunit ang nauna ay hindi pa nababasa ng programa. Nawala ang nakaraang byte.
2 Parity error, na-clear pagkatapos basahin ang status ng linya.
3 Error sa pag-synchronize.
4 May nakitang kahilingang ihinto ang transmission na "BREAK" - isang mahabang string ng mga zero.
5 Ang transmitter holding register ay walang laman at isang bagong byte ang maaaring isulat dito para sa transmission.
6 Walang laman ang transmitter shift register. Ang rehistrong ito ay tumatanggap ng data mula sa may hawak na rehistro at ini-serialize ito para sa paghahatid.
7 Timeout (hindi nakakonekta ang device sa computer).

Modem Status Register (MSR)

Rehistro ng status ng modem.

OK tapos na ang lahat Ngayon. Sa pamamagitan ng pagpapatakbo ng mga rehistrong ito, maaari kang direktang makipag-ugnayan sa COM port at kontrolin ang paghahatid at pagtanggap ng data. Kung hindi mo gustong mag-tinker sa memorya, maaari kang gumamit ng mga handa na bahagi para sa iba't ibang programming environment: C++, VB, Delphi, Pascal, atbp. Ang mga ito ay intuitive, kaya sa palagay ko ay hindi na kailangang tumutok sa kanila dito.

Ang isang COM port ay kadalasang ginagamit upang makipag-usap sa pagitan ng isang microcontroller at isang computer. Sa artikulong ito, ipapakita namin sa iyo kung paano magpadala ng mga control command mula sa computer at magpadala ng data mula sa controller.

Paghahanda para sa trabaho

Karamihan sa mga microcontroller ay may maraming I/O port. Ang UART protocol ay ang pinaka-angkop para sa komunikasyon sa isang PC. Ito ay isang serial asynchronous na data transfer protocol. Para i-convert ito sa USB interface, mayroong USB-RS232 – FT232RL converter sa board.
Upang makumpleto ang mga halimbawa sa artikulong ito, kakailanganin mo lamang ng Arduino-compatible board. Ginagamit namin ang . Tiyaking may LED na nakakonekta sa pin 13 at isang reset button ang iyong board.

Halimbawa, i-load natin ang code sa board na nagpapakita ng ASCII table. Ang ASCII ay isang encoding para sa kumakatawan sa mga decimal na digit, Latin at pambansang alpabeto, mga bantas, at control character.

int simbolo = 33 ; void setup() ( Serial. begin(9600); Serial. println(" ASCII Table ~ Character Map " ); ) void loop() ( Serial. write(symbol) ; Serial. print(" , dec: " ); Serial . print(simbolo) ; Serial. print( " ; " ; " ; ipagpatuloy ; ) ) simbolo + + ;

Iniimbak ng variable ng simbolo ang code ng simbolo. Ang talahanayan ay nagsisimula sa 33 at nagtatapos sa 126, kaya ang simbolo ng variable ay unang nakatakda sa 33.
Upang simulan ang pagpapatakbo ng UART port, gamitin ang function Serial.begin(). Ang tanging parameter nito ay bilis. Ang bilis ay dapat na napagkasunduan sa pagpapadala at pagtanggap ng mga panig nang maaga, dahil ang transmission protocol ay asynchronous. Sa halimbawang isinasaalang-alang, ang bilis ay 9600bps.
Tatlong function ang ginagamit para magsulat ng value sa isang port:

  1. Serial.write()– nagsusulat ng data sa port sa binary form.
  2. Serial.print() maaaring magkaroon ng maraming kahulugan, ngunit lahat sila ay nagsisilbing magpakita ng impormasyon sa isang form na nababasa ng tao. Halimbawa, kung ang impormasyon na tinukoy bilang isang parameter na ililipat ay naka-highlight sa mga quote, ang terminal program ay maglalabas nito nang hindi nagbabago. Kung gusto mong magpakita ng value sa isang partikular na sistema ng numero, kailangan mong magdagdag ng service word: BIN - binary, OCT - octal, DEC - decimal, HEX - hexadecimal. Halimbawa, Serial.print(25,HEX).
  3. Serial.println() ginagawa ang parehong bagay bilang Serial.print(), ngunit sinisira din ang linya pagkatapos i-output ang impormasyon.

Upang suriin ang pagpapatakbo ng programa, kinakailangan na ang computer ay may terminal program na tumatanggap ng data mula sa COM port. Ang Arduino IDE ay mayroon na itong built in. Upang tawagan ito, piliin ang Tools->Port Monitor mula sa menu. Ang window ng utility na ito ay napaka-simple:

Ngayon i-click ang reboot button. Magre-reboot ang MK at ipapakita ang talahanayan ng ASCII:

Bigyang-pansin ang bahaging ito ng code:

kung (simbolo = = 126 ) ( habang (totoo) ( ituloy ; ) )

Ito ay huminto sa pagpapatupad ng programa. Kung ibubukod mo ito, ang talahanayan ay ipapakita nang walang katapusan.
Upang pagsamahin ang iyong kaalaman, subukang magsulat ng isang walang katapusang loop na magpapadala ng iyong pangalan sa serial port nang isang beses sa isang segundo. Magdagdag ng mga numero ng hakbang sa output at huwag kalimutang putulin ang linya pagkatapos ng pangalan.

Nagpapadala ng mga utos mula sa PC

Bago gawin ito, kinakailangan na magkaroon ng pag-unawa sa kung paano gumagana ang isang COM port.
Una sa lahat, ang lahat ng palitan ay nangyayari sa pamamagitan ng memory buffer. Iyon ay, kapag nagpadala ka ng isang bagay mula sa isang PC patungo sa isang aparato, ang data ay inilalagay sa ilang espesyal na seksyon ng memorya. Sa sandaling handa na ang device, babasahin nito ang data mula sa buffer. Binibigyang-daan ka ng function na suriin ang katayuan ng buffer Serial.avaliable(). Ibinabalik ng function na ito ang bilang ng mga byte sa buffer. Upang ibawas ang mga byte na ito kailangan mong gamitin ang function Serial.read(). Tingnan natin kung paano gumagana ang mga function na ito gamit ang isang halimbawa:

int val = 0 ; void setup() ( Serial. begin(9600); ) void loop() ( if (Serial. available() > 0 ) ( val = Serial. read() ; Serial. print("Natanggap ko: " ); Serial. write(val);

Kapag na-load na ang code sa memorya ng microcontroller, buksan ang COM port monitor. Mag-type ng isang character at pindutin ang Enter. Sa natanggap na patlang ng data makikita mo ang: "Natanggap ko: X", saan sa halip X ang magiging karakter na iyong ipinasok.
Ang programa ay umiikot nang walang katapusang sa pangunahing loop. Sa sandaling ang isang byte ay isinulat sa port, ang Serial.available() function ay tumatagal ng halaga 1, iyon ay, ang kundisyon ay natutugunan Serial.available() > 0. Susunod na function Serial.read() binabasa ang byte na ito, sa gayon ay na-clear ang buffer. Pagkatapos nito, gamit ang mga function na alam mo na, ang output ay nangyayari.
Ang paggamit ng built-in na COM port monitor ng Arduino IDE ay may ilang mga limitasyon. Kapag nagpapadala ng data mula sa board patungo sa COM port, maaaring ayusin ang output sa anumang format. At kapag ipinadala mula sa PC sa board, ang mga character ay ipinadala alinsunod sa talahanayan ng ASCII. Nangangahulugan ito na kapag ipinasok mo, halimbawa, ang character na "1", "00110001" ay ipinadala sa pamamagitan ng COM port sa binary (iyon ay, "49" sa decimal).
Baguhin natin ng kaunti ang code at suriin ang pahayag na ito:

int val = 0 ; void setup() ( Serial. begin(9600); ) void loop() ( if (Serial. available() > 0 ) ( val = Serial. read() ; Serial. print("Natanggap ko: "); Serial. println(val, BIN);

Pagkatapos mag-download, sa port monitor kapag nagpapadala ng "1" makikita mo ang tugon: "Natanggap ko: 110001". Maaari mong baguhin ang format ng output at tingnan kung ano ang tinatanggap ng board kasama ng iba pang mga character.

Kontrol ng device sa pamamagitan ng COM port

Malinaw, gamit ang mga utos mula sa isang PC, maaari mong kontrolin ang anumang mga function ng microcontroller. I-download ang program na kumokontrol sa pagpapatakbo ng LED:

int val = 0 ; void setup() ( Serial. begin(9600); ) void loop() ( if (Serial. available() > 0 ) ( val = Serial. read() ; if (val= = "H") digitalWrite(13 , HIGH) ; kung (val= = "L") digitalWrite(13 , LOW) )

Kapag ang character na "H" ay ipinadala sa COM port, ang LED sa pin 13 ay iilaw, at kapag ang "L" ay ipinadala, ang LED ay mamamatay.
Kung, batay sa mga resulta ng pagtanggap ng data mula sa COM port, nais mong ang programa ay magsagawa ng iba't ibang mga aksyon sa pangunahing loop, maaari mong suriin ang mga kondisyon sa pangunahing loop. Halimbawa.

Kasama ng parallel port, ang COM port, o serial port, ay isa sa mga tradisyonal na computer input/output port, na ginamit sa mga unang PC. Kahit na ang COM port ay may limitadong paggamit sa modernong mga computer, gayunpaman, ang impormasyon tungkol dito ay maaaring maging kapaki-pakinabang sa maraming mga gumagamit.

Ang serial port, tulad ng parallel port, ay lumitaw nang matagal bago ang pagdating ng mga personal na computer ng IBM PC architecture. Sa mga unang personal na computer, ginamit ang COM port upang ikonekta ang mga peripheral na device. Gayunpaman, ang saklaw ng aplikasyon nito ay medyo naiiba sa saklaw ng parallel port. Kung ang parallel port ay pangunahing ginamit upang kumonekta sa mga printer, kung gayon ang COM port (nga pala, ang prefix na COM ay isang pagdadaglat lamang para sa salitang komunikasyon) ay karaniwang ginagamit upang gumana sa mga aparatong telekomunikasyon, tulad ng mga modem. Gayunpaman, maaari kang kumonekta sa port, halimbawa, isang mouse, pati na rin ang iba pang mga peripheral na aparato.

COM port, pangunahing mga lugar ng aplikasyon:

  1. Pagkonekta ng mga terminal
  2. ~ panlabas na mga modem
  3. ~ mga printer at plotter
  4. ~ daga
  5. Direktang koneksyon sa pagitan ng dalawang computer

Sa kasalukuyan, ang saklaw ng COM port ay makabuluhang nabawasan dahil sa pagpapakilala ng isang mas mabilis at mas compact, at, sa pamamagitan ng paraan, din serial, USB interface. Ang mga panlabas na modem na idinisenyo upang kumonekta sa isang port, pati na rin ang "COM" na mga daga, ay halos hindi na ginagamit. At bihira na ang sinuman ngayon ay nagkokonekta ng dalawang computer gamit ang isang null modem cable.

Gayunpaman, ginagamit pa rin ng ilang espesyal na device ang serial port. Mahahanap mo ito sa maraming motherboard. Ang katotohanan ay, kumpara sa USB, ang isang COM port ay may isang mahalagang kalamangan - ayon sa RS-232 serial data transmission standard, maaari itong gumana sa mga device sa layo na ilang sampu-sampung metro, habang ang hanay ng isang USB cable ay karaniwang limitado sa 5 metro.

Ang prinsipyo ng pagpapatakbo ng isang serial port at ang pagkakaiba nito mula sa isang parallel

Hindi tulad ng parallel (LPT) port, ang serial port ay nagpapadala ng data nang paunti-unti sa isang linya, sa halip na sa ilang linya nang sabay-sabay. Ang mga pagkakasunud-sunod ng mga bit ay pinagsama-sama sa mga serye ng data, na nagsisimula sa isang panimulang bit at nagtatapos sa isang stop bit, pati na rin ang mga parity bit na ginagamit para sa pagsuri ng error. Dito nagmula ang isa pang pangalan sa Ingles, na mayroong serial port - Serial Port.

Ang serial port ay may dalawang linya kung saan ang data mismo ay ipinadala - ito ay mga linya para sa paglilipat ng data mula sa terminal (PC) patungo sa aparato ng komunikasyon at pabalik. Bilang karagdagan, mayroong ilang higit pang mga linya ng kontrol. Ang Serial port ay pinaglilingkuran ng isang espesyal na UART chip, na may kakayahang suportahan ang medyo mataas na rate ng paglilipat ng data, na umaabot sa 115,000 baud (bytes/s). Gayunpaman, nararapat na tandaan na ang aktwal na bilis ng pagpapalitan ng impormasyon ay nakasalalay sa parehong mga aparatong pangkomunikasyon. Bilang karagdagan, ang mga function ng UART controller ay kinabibilangan ng pag-convert ng parallel code sa serial code at vice versa.

Ang port ay gumagamit ng medyo mataas na boltahe na mga de-koryenteng signal - hanggang sa +15 V at -15 V. Ang lohikal na zero level ng serial port ay +12 V, at ang lohikal na isang antas ay -12 V. Ang ganitong malaking pagbaba ng boltahe ay nagpapahintulot sa amin na ginagarantiyahan ang isang mataas na antas ng kaligtasan sa ingay ng ipinadalang data. Sa kabilang banda, ang matataas na boltahe na ginagamit sa Serial port ay nangangailangan ng mga kumplikadong solusyon sa circuit. Ang pangyayaring ito ay nag-ambag din sa pagbaba ng katanyagan ng daungan.

Serial interface RS-232

Ang operasyon ng serial port sa isang PC ay batay sa pamantayan ng paghahatid ng data para sa mga serial device na RS-232. Inilalarawan ng pamantayang ito ang proseso ng pagpapalitan ng data sa pagitan ng isang aparatong telekomunikasyon, tulad ng isang modem, at isang terminal ng computer. Ang pamantayang RS-232 ay tumutukoy sa mga de-koryenteng katangian ng mga signal, ang kanilang layunin, tagal, pati na rin ang mga sukat ng mga konektor at pinout para sa kanila. Gayunpaman, inilalarawan lamang ng RS-232 ang pisikal na antas ng proseso ng paglilipat ng data at hindi nauugnay ang mga protocol ng transportasyon na ginamit, na maaaring mag-iba depende sa kagamitan sa komunikasyon at software na ginamit.

Ang pamantayang RS-232 ay nilikha noong 1969, at ang pinakabagong bersyon nito, ang TIA 232, ay inilabas noong 1997. Ang RS-232 ay itinuturing na ngayon na hindi na ginagamit, ngunit sinusuportahan pa rin ito ng karamihan sa mga operating system.

Sa modernong mga computer, ang Serial port connector ay isang 9-pin DB-9 male connector, bagama't ang RS-232 standard ay naglalarawan din ng 25-pin DB-25 connector, na kadalasang ginagamit sa mga lumang computer. Ang DB-9 connector ay karaniwang matatagpuan sa PC motherboard, bagama't sa mas lumang mga computer ay maaaring ito ay matatagpuan sa isang espesyal na multicard na ipinasok sa isang expansion slot.

9-pin DB-9 socket sa motherboard

DB-9 connector sa cable ng device na nakakonekta sa port

Hindi tulad ng isang parallel port, ang mga konektor sa magkabilang panig ng isang two-way serial cable ay magkapareho. Bilang karagdagan sa mga linya para sa pagpapadala ng data mismo, ang port ay naglalaman ng ilang mga linya ng serbisyo kung saan ang impormasyon ng kontrol ay maaaring ipadala sa pagitan ng terminal (computer) at ng telecommunications device (modem). Bagama't ayon sa teorya ay tatlong channel lamang ang kailangan para gumana ang serial port - pagtanggap ng data, paghahatid ng data at ground, ipinakita ng pagsasanay na ang pagkakaroon ng mga linya ng serbisyo ay ginagawang mas mahusay, maaasahan at, bilang resulta, mas mabilis ang komunikasyon.

Layunin ng Serial port DB-9 connector lines ayon sa RS-232 at ang kanilang mga sulat sa mga contact ng DB-25 connector:

Makipag-ugnayan sa DB-9 Ingles na pangalan pangalang Ruso Makipag-ugnayan sa DB-25
1 Data Carrier Detect Natukoy ang carrier 8
2 Magpadala ng Data Ipinadalang data 2
3 Tumanggap ng Data Natanggap na data 3
4 Handa na ang Data Terminal Paghahanda sa terminal 20
5 Lupa Lupa 7
6 Handa na ang Data Set Kahandaan ng transmiter 6
7 Kahilingan na Ipadala Kahilingan na magpadala ng data 4
8 I-clear Upang Ipadala Pinapayagan ang paglipat ng data 5
9 Tagapahiwatig ng singsing Tagapagpahiwatig ng singsing 22

Configuration at mga pagkagambala

Dahil ang isang computer ay maaaring magkaroon ng ilang mga serial port (hanggang 4), ang system ay naglalaan ng dalawang hardware interrupts para sa kanila - IRQ 3 (COM 2 at 4) at IRQ 4 (COM 1 at 3) at ilang BIOS interrupts. Maraming mga programa sa komunikasyon, pati na rin ang mga built-in na modem, ang gumagamit ng mga interrupt at ang address space ng mga COM port para sa kanilang trabaho. Sa kasong ito, hindi totoong mga port ang karaniwang ginagamit, ngunit ang tinatawag na mga virtual port, na ginagaya ng mismong operating system.

Tulad ng maraming iba pang mga bahagi ng motherboard, ang mga parameter ng COM port, lalo na ang mga halaga ng pagkagambala ng BIOS na tumutugma sa mga pagkagambala ng hardware, ay maaaring i-configure sa pamamagitan ng interface ng BIOS Setup. Para dito, ginagamit ang mga opsyon sa BIOS tulad ng COM Port, Onboard Serial Port, Serial Port Address, atbp.

Konklusyon

Ang PC serial port ay kasalukuyang hindi malawakang ginagamit na paraan ng input/output. Gayunpaman, dahil mayroong isang malaking halaga ng kagamitan, pangunahin para sa mga layunin ng telekomunikasyon, na idinisenyo upang gumana sa isang serial port, at dahil din sa ilan sa mga pakinabang ng RS-232 serial data protocol, ang serial interface ay hindi pa dapat isulat. bilang isang ganap na hindi napapanahong panimulang arkitektura ng personal na computer.

Pagbati, mga kaibigan. Patuloy naming pinag-aaralan ang system unit. Ngayon ay magsasalita ako tungkol sa mga port ng computer. Ano ito? Sa mabilis na pag-unlad ng mga teknolohiya sa Internet, ang konsepto ng "port" o "socket" ay pamilyar sa marami. Ito ay isa pang sangay, at hindi natin ito pag-uusapan ngayon. Ang paksa ng artikulong ito ay naglalaman ng impormasyon tungkol sa puro "mahirap", "tunay" na mga konektor (o mga port), na idinisenyo upang ikonekta ang iba't ibang mga device sa unit ng system.

Gumaganda rin ang hardware, at sa bawat henerasyon ay natutuklasan namin ang mga bagong uri ng connector (o port) sa mga biniling unit ng system. Ang iba't ibang tinatawag na peripheral device ay konektado sa kanila. System unit + monitor = computer. Ang lahat ng konektado sa kanila (mga printer, scanner, programmer, video card, monitor, at iba pa) ay isang peripheral.

Mayroong maraming mga port sa isang computer. Matatagpuan ang mga ito sa motherboard ng unit ng system at mga konektor (karamihan sa kanila ay nasa likod). Ang ilan sa mga konektor ay ipinapakita din sa front panel at sila ay konektado din sa motherboard.

Maaari ka ring mag-install ng mga karagdagang device dito sa pamamagitan ng mga espesyal na expansion slot. Kasama sa mga naturang device ang mga discrete video card, network card, Wi-Fi adapter, USB hub, card reader, electronic lock, video card at marami pa.

Ang pagkakaroon ng mga expansion slot ay nagbibigay-daan sa iyo upang independiyenteng mag-assemble ng isang computer tulad ng isang construction set, batay sa iyong mga kagustuhan, nang hindi gumugugol ng dagdag na araw. Dahil matagal nang na-standardize ng mga developer ang mga kagamitang ginagawa nila. Kung kinakailangan, maaari mo itong i-update. Ito ang pangunahing dahilan kung bakit ang mga computer na katugma sa IBM-PC (tulad ng tawag sa naturang platform) ay minsang pinatalsik ang Apple Macintosh mula sa merkado.

Ang kanilang mga yunit ng system sa una ay hindi mapaghihiwalay, at ang kagamitan ay hindi mapapalitan. Imposibleng i-upgrade ang naturang device, at nababawasan ang maintainability ng naturang device.

Isang maikling listahan ng mga port ng computer

Kailangan mong makita ang pagkakaiba ng mga konektor sa isa't isa. Hindi palaging ipinapahiwatig ng tagagawa ang kanilang mga pangalan. Dahil naka-grupo ang mga connector sa rear panel ng system unit, magsisimula kami doon. Lahat ng port ay may English na pangalan, walang magagawa tungkol dito. Sa madaling sabi maaari silang hatiin:

  1. Mga serial port;
  2. Parallel port;
  3. Mga port para sa computer at mouse;
  4. Mga USB port;
  5. Mga port ng SCSI;
  6. Mga video port;
  7. Mga konektor ng cable ng network;
  8. Mga konektor ng audio;
  9. Mga card reader;

Ang ilan sa mga uri na ito ay nalubog na sa limot at hindi na makikita sa mga modernong motherboard. Ang iba pang mga varieties, sa kabaligtaran, ay nagpapalawak ng kanilang pag-andar at may mga motherboard para sa mga gourmets - mga mahilig sa magandang kalidad ng audio o video.


Ang mga naturang board ay maaari ring suportahan ang mga format ng audio o video mula sa mga tagagawa ng third-party (Sony, Philips), at pagkatapos ay makakahanap ka ng kaukulang connector sa naturang computer. Ipinagmamalaki ngayon ng mga audio at video port ang isang partikular na uri.

Mga port ng computer para sa pagkonekta ng mga peripheral na aparato

Serial port- ngayon ito ay isang bagay na hindi na ginagamit sa moral. Ngunit para sa mga espesyalista na nag-aayos ng mga elektronikong aparato, mahalaga ang mga ito. Sa una, ang port na ito ay ginamit upang ikonekta ang isang modem. Ang mga karaniwang rate ng paglilipat ng data ay mula 110 hanggang 115,200 bit bawat segundo. Mayroong karaniwang dalawa sa kanila na may mga konektor DB 9 i-type ang "tatay":

Ang bilis ay sapat na para sa programmer na mag-flash ng microcontroller o mobile phone. O upang makipagpalitan ng data sa isang hindi maaabala na supply ng kuryente. Ang mga port na ito ay tinatawag COM1 At COM2.

Parallel port- ay pamilyar sa marami, dahil ito ay pangunahing inilaan para sa pagkonekta ng isang printer. Isa ring halos extinct species. Ginamit din ito upang ikonekta ang mga key ng seguridad ng hardware.


Ang connector ay ginagamit para sa koneksyon DB25 parang "nanay". Ang bilis ng paglipat ng data ay mababa - ngunit sapat na para sa isang programmer o isang lumang laser printer. Karamihan sa mga lumang computer ay palaging may dalawang serial port at isang parallel port.

Mga port ng keyboard at mouse pamilyar sa lahat ng gumagamit. Sa modernong mga computer ang mga ito ay lilang at berde. Magkapareho ang kulay ng mga plug sa mouse at keyboard. Mahirap malito. Ang mga konektor ay anim na pin (mini-Din) na uri ng babae. Naimbento sila sa Germany at ito ang naging pamantayan. Isa pang pangalan para sa IBM/PC2

dahil sila ay unang ginamit sa nabanggit na IBM PC platform. Kung magkakahalo ang mga konektor kapag kumokonekta, hindi gagana ang mga device. Ang isang tiyak na plus ay ang mga USB port ay nakakatipid ng pera. Minus - dapat mong i-restart ang computer kung mali itong nakakonekta. Siyanga pala, isa rin itong endangered species. Sa maraming modernong computer, isa lang ang natitira sa port na ito - at pininturahan din ito ng purple-green. Maaari mo lamang ikonekta ang isang device o mouse o keyboard dito.

Mga USB port. Universal Serial Bus, ( Universal Serial Bus). Mula noong 1998, inilipat nito ang iba pang mga daungan; Kahit na sa mga radyo ng kotse at mga video camera ngayon ay makikita mo ang connector na ito. Ang mga unang henerasyon ay may bilis ng paglilipat ng data na humigit-kumulang 12 MB/sec. - nakakabaliw sa mga oras na iyon. Ngayon ay gumagamit kami ng USB 3, na may bilis na 5 Gbps

Ang mga port na ito ay hindi nagbago sa hitsura. Ang computer ay may type A connectors. Ang connector sa anumang konektadong device ay karaniwang tinatawag na "B". Mayroon itong apat na contact, dalawa para sa kasalukuyang, dalawa para sa paghahatid ng data. Alinsunod dito, doble ang dami ng mga pin sa mga USB 3.0 port.

Mga port ng SCSI(Maliit na Computer System Interface) . Medyo isang tiyak at bihirang bagay para sa amin; Sa tingin ko kahit sa ibang bansa ay hindi mo na ito mahahanap sa mga karaniwang gumagamit. Naniniwala ako na ang mga device na may ganitong mga interface ay ginawa upang mag-order - para sa corporate na paggamit. Ito ay isang interface ng network para sa pagpapalitan ng data sa bilis na hanggang 160 Mbit/s.


Minsan ay nakatagpo ako ng isang laptop na dinala mula sa Amerika, na ginawa noong 1999, mula sa Dell. Mayroon itong isa sa mga multi-pin port na iyon. Ito ay matatagpuan sa paraang magagamit lamang ito sa pamamagitan ng paglalagay ng laptop sa mesa. Ang connector mismo ay sarado na may mga kurtina sa mga bukal. Dahil dito, sa isang lugar sa America mayroong mga talahanayan kung saan itinayo ang connector na ito... Dalhin mo ito, ilagay ito sa mesa, at ito ay konektado sa corporate network.

Ang mga uri ng interface ay pamilyar na sa amin DB-25, pati na rin ang 50-High-Density, 68-pin -High-Density, 80-pin SCA, Centronics. Posible rin na ikonekta ang mga hard drive sa interface na ito. Ang isang espesyal na board, ang host adapter, ay responsable para sa koneksyon.


Mga video port. Hindi rin sila maaaring malito sa iba. Ang karaniwang video port ay isang 15-pin VGA blue D-type na female connector. Ginagamit upang ikonekta ang isang monitor. Ito ay isang lumang pamantayan, na pinagtibay noong 1987. Hindi lahat ng motherboard ay mayroon nito. Kung wala kang "nakasakay", makikita ito sa ibaba ng unit ng system. May naka-install na video card sa expansion slot:

Kung magpasya kang mag-install ng isang video card bilang karagdagan sa isa na mayroon ka na ("nakasakay"), hindi na gagana ang huli. Ito ay mabuti. Ang monitor ay gagana lamang kapag nakakonekta sa isang naka-install.

Sa modernong mga video card, ang VGA port ay naging mahirap hanapin; sila ay pinapalitan ng ibang uri - DVI. Sa isang transition type motherboard mukhang ganito:

Kadalasan mayroong mga kaso kapag nabigo ang isang VGA video card. Pagkatapos bumili ng bago, lumalabas na mayroon lamang itong mga DVI port Sa kasong ito, kailangan mong bumili ng adapter at i-install ito sa DVI connector.

Bigyang-pansin ang uri ng adaptor. Ang katotohanan ay ang mga konektor ng DVI ay naiiba - ang mga bagong mamahaling video card ay may mga DVI-D o DVI-I port. Ang mga adaptor ay hindi mapapalitan, suriin ang puntong ito sa nagbebenta.

Sa kasong ito, hindi mo kailangang bumili ng bagong monitor. May kasama ring dalawang uri ng connector ang mga bagong monitor - VGA at DVI.

HDMI port. Nasaan tayo kung wala siya sa ika-21 siglo? Ang multimedia interface ay idinisenyo upang magpadala ng high-definition na video at audio na may proteksyon sa kopya. Kasabay nito, pinapalitan nito ang parehong video sa itaas at ilang audio port (SCART, VGA, YPbPr, RCA, S-Video.). Marahil ang interface na ito ay papalitan sa kalaunan ang lahat ng iba pa. Ito ay matatagpuan sa anumang digital na kagamitan - mula sa isang camera hanggang sa isang computer (o laptop).

Ang laki ay maihahambing sa isang USB port, at ang bilis ng paglilipat ng data ay napakalaki kumpara sa mga nakalista sa itaas - hanggang 48 Gbps. Ang paghahatid ng data ay isinasagawa sa pamamagitan ng isang cable na may mahusay na proteksyon sa pagkagambala. Maaaring ikonekta ang cable sa isang laptop at sa isang TV at manood ng mga video. Ang haba ng cable ay hindi dapat lumampas sa 10 metro, kung hindi, kailangan ng signal amplifier/repeater.

Tungkol sa mga konektor ng audio Hindi ko na idedetalye. Ang lahat ay mukhang kapareho ng sa isang home DVD player, kung pinag-uusapan natin ang tungkol sa isang bagay na espesyal. Ang isang halimbawa nito ay ang SPDiF connector, na maaaring i-install sa isang expansion slot:

Audio standard mula sa SONY at PHILIPS, ang card na ito ay konektado sa motherboard gamit ang isang connector sa kaukulang connector. Ang mga karaniwang jack para sa pagkonekta ng mikropono, speaker, at headphone ay ganito ang hitsura:

Kung gusto mo ng HD na audio, maaaring kailanganin mong ikonekta ang naaangkop na adaptor dito. Basahin ang dokumentasyon para sa iyong motherboard:

Mga port ng network. Walang paraan na magagawa natin kung wala sila sa mga araw na ito. Natatanggap namin ang Internet sa pamamagitan ng interface ng network sa pamamagitan ng cable o radyo. Ang mga motherboard ay may karaniwang built-in na connector RJ 45 para ikonekta ang internet cable:

Sa mga lumang computer, ang pamantayan ng bilis ay 100 Mbit/s; Kung ang isang network card ay hindi sapat para sa iyo, maaari kang bumili ng karagdagang isa at ipasok ito sa expansion slot:

Ang card na ito ay angkop para sa isang PCI slot. Mayroong mas maliliit na opsyon para sa PCI-express:

Suriin ang bilis ng paglipat ng data ng isang partikular na card kapag bumibili. Para sa mga tagahanga ng mga wireless network, mayroon ding malawak na seleksyon ng mga Wi-Fi adapter:

Maaari din silang konektado sa PCI o PCI - express expansion slots. Gayunpaman, kung hindi mo gustong makipag-usap sa unit ng system, maaari ka ring bumili ng USB na bersyon ng card na ito:

Ipasok mo ito sa port at ilagay ang password ng WIFI. At mayroon kang isa pang peripheral device na nakakonekta. Maraming modelo ng home printer ang mayroon ding WIi-Fi adapter, at sa setup na ito maaari kang mag-print nang wireless. Sa kabutihang palad, ngayon ay may malawak na pagpipilian ng mga network card at printer.

Paano hindi paganahin ang mga USB port kapag pinapatay ang computer?

Sa wakas, sasabihin ko sa iyo kung paano lutasin ang isang problema. Mayroon akong headset na may mikropono para sa pag-record ng video at pakikipag-chat sa Skype. Ang mga Intsik ay umibig sa pagtulak ng mga LED sa mga lugar at lugar na hindi nila kailangan para sa pagpapaganda. Kapag naka-off ang computer, mananatiling naka-on ang backlight, dahil pinapagana ito sa pamamagitan ng USB port.

Ang keyboard ay kumikinang din, na hindi lubos na maginhawa sa gabi, bagaman hindi masama (kung nagta-type ka sa dilim). Upang permanenteng i-off ang power sa mga port, subukang i-type ang keyboard shortcut Win+R at sa linyang "Run" i-paste ang command powercfg /h off.

Pagkatapos nito kailangan mong i-off ang computer. Malamang na mawawala ang mga sintomas. Hindi pinapagana ng command na ito ang sleep mode at ganap na nagsasara ang computer. Maaari mong tingnan ang mga setting ng kapangyarihan sa "Power Plan" sa control panel Ngunit, may mga modelo ng board kung saan ang setting na ito ay hindi pinagana sa pamamagitan ng BIOS. Ngunit sa mga pinaka-advanced na ang function na ito ay hindi pinagana o nakatago nang napakalalim. Ito ay dapat na maginhawa para sa pag-charge ng mga gadget sa gabi.

Sa mahihirap na kaso, makakatulong ang dokumentasyon ng motherboard. Hanapin ang gustong jumper (jumper) at manu-manong patayin ang power. Pero sobrang hirap. At ang pinakamadaling paraan ay ang bumili ng USB hub na may mga switch at ikonekta ang mga kinakailangang peripheral dito. At huwag kang magdusa. Bye, see you again!

Paglalarawan ng interface ng RS-232, ang format ng mga konektor na ginamit at ang layunin ng mga pin, mga pagtatalaga ng signal, protocol ng palitan ng data.

Pangkalahatang paglalarawan

Ang interface ng RS-232, na opisyal na tinatawag na "EIA/TIA-232-E", ngunit mas kilala bilang interface na "COM port", ay dati nang isa sa mga pinakakaraniwang interface sa teknolohiya ng computer. Ito ay matatagpuan pa rin sa mga desktop computer, sa kabila ng pagdating ng mas mabilis at mas matalinong mga interface tulad ng USB at FireWare. Ang mga bentahe nito mula sa punto ng view ng mga radio amateur ay kasama ang mababang minimum na bilis at kadalian ng pagpapatupad ng protocol sa isang homemade na aparato.

Ang pisikal na interface ay ipinatupad ng isa sa dalawang uri ng mga konektor: DB-9M o DB-25M, ang huli ay halos hindi matatagpuan sa mga kasalukuyang ginawang computer.

Pagtatalaga ng pin ng 9-pin connector


DB-9M type 9-pin plug
Pagnumero ng mga contact sa gilid ng pin
Ang direksyon ng mga signal ay ipinahiwatig na may kaugnayan sa host (computer)
Makipag-ugnayan Signal Direksyon Paglalarawan
1 CD Pagpasok Natukoy ang carrier
2 RXD Pagpasok Natanggap na data
3 TXD Lumabas Ipinadalang data
4 DTR Lumabas Handa na ang host
5 GND - Karaniwang kawad
6 DSR Pagpasok Handa na ang device
7 RTS Lumabas Ang host ay handa nang magpadala
8 CTS Pagpasok Handa nang tanggapin ang device
9 R.I. Pagpasok Natukoy ang tawag

Pagtatalaga ng pin ng 25-pin connector

Makipag-ugnayan Signal Direksyon Paglalarawan
1 S.H.I.E.L.D. - Screen
2 TXD Lumabas Ipinadalang data
3 RXD Pagpasok Natanggap na data
4 RTS Lumabas Ang host ay handa nang magpadala
5 CTS Pagpasok Handa nang tanggapin ang device
6 DSR Pagpasok Handa na ang device
7 GND - Karaniwang kawad
8 CD Pagpasok Natukoy ang carrier
9 - - Reserve
10 - - Reserve
11 - - Hindi ginagamit
12 SCD Pagpasok Natukoy ang carrier #2
13 SCTS Pagpasok Handa na ang device na tumanggap ng #2
Makipag-ugnayan Signal Direksyon Paglalarawan
14 STXD Lumabas Naipadalang data #2
15 TRC Pagpasok Transmitter clocking
16 SRXD Pagpasok Nakatanggap ng data #2
17 RCC Pagpasok Receiver clocking
18 LLOOP Lumabas Lokal na loop
19 SRTS Lumabas Handa ang host na magpadala ng #2
20 DTR Lumabas Handa na ang host
21 RLOOP Lumabas Panlabas na loop
22 R.I. Pagpasok Natukoy ang tawag
23 DRD Pagpasok Natukoy ang bilis ng data
24 TRCO Lumabas Panlabas na transmiter clocking
25 PAGSUSULIT Pagpasok Test mode

Mula sa mga talahanayan makikita na ang 25-pin na interface ay nakikilala sa pamamagitan ng pagkakaroon ng isang ganap na pangalawang transmit-receive na channel (mga signal na itinalagang "#2"), pati na rin ang maraming karagdagang kontrol at mga signal ng kontrol. Gayunpaman, madalas, sa kabila ng pagkakaroon ng isang "malawak" na konektor sa computer, ang mga karagdagang signal ay hindi nakakonekta dito.

Mga katangiang elektrikal

Mga antas ng lohika ng transmiter:"0" - mula +5 hanggang +15 Volts, "1" - mula -5 hanggang -15 Volts.

Mga antas ng lohika ng receiver:"0" - sa itaas +3 Volts, "1" - sa ibaba -3 Volts.

Ang impedance ng input ng receiver ay hindi bababa sa 3 kOhm.

Ang mga katangiang ito ay tinukoy ng pamantayan bilang minimal, na ginagarantiyahan ang pagiging tugma ng mga aparato, gayunpaman, ang mga tunay na katangian ay kadalasang mas mahusay, na nagbibigay-daan, sa isang banda, upang paganahin ang mga aparatong mababa ang kapangyarihan mula sa port (halimbawa, maraming data sa bahay. ang mga cable para sa mga cell phone ay idinisenyo sa ganitong paraan), at, sa kabilang banda, upang ibigay sa input ng port baligtad TTL level sa halip na bipolar signal.

Paglalarawan ng mga pangunahing signal ng interface

CD- Itinatakda ng device ang signal na ito kapag may nakita itong carrier sa natanggap na signal. Karaniwan, ang signal na ito ay ginagamit ng mga modem, na sa gayon ay ipaalam sa host na may nakita silang gumaganang modem sa kabilang dulo ng linya.

RXD- Linya para sa host na makatanggap ng data mula sa device. Inilarawan nang detalyado sa seksyong "Data exchange protocol."

TXD- Data line mula sa host papunta sa device. Inilarawan nang detalyado sa seksyong "Data exchange protocol."

DTR- Itinatakda ng host ang signal na ito kapag handa na itong makipagpalitan ng data. Sa katunayan, ang signal ay nakatakda kapag ang port ay binuksan ng programa ng komunikasyon at nananatili sa ganitong estado hangga't ang port ay bukas.

DSR- Itinatakda ng device ang signal na ito kapag naka-on ito at handa nang makipag-ugnayan sa host. Ito at ang dating (DTR) na mga signal ay dapat itakda para sa pagpapalitan ng data.

RTS- Itinatakda ng host ang signal na ito bago magsimulang magpadala ng data sa device, at senyales din na handa na itong tumanggap ng data mula sa device. Ginagamit para sa kontrol ng hardware ng pagpapalitan ng data.

CTS- Itinatakda ng device ang signal na ito bilang tugon sa setting ng host sa nakaraan (RTS) kapag handa na itong tumanggap ng data (halimbawa, kapag ang nakaraang data na ipinadala ng host ay inilipat ng modem sa linya o may libreng espasyo. sa intermediate buffer).

R.I.- Itinatakda ng device (karaniwang modem) ang tono na ito kapag nakatanggap ito ng tawag mula sa isang remote system, halimbawa kapag tumatanggap ng tawag sa telepono kung ang modem ay naka-configure upang makatanggap ng mga tawag.

Protocol ng komunikasyon

Sa RS-232 protocol, mayroong dalawang paraan para sa pagkontrol ng data exchange: hardware at software, pati na rin ang dalawang transmission mode: synchronous at asynchronous. Binibigyang-daan ka ng protocol na gamitin ang alinman sa mga paraan ng kontrol kasabay ng anumang transmission mode. Posible rin na gumana nang walang kontrol sa daloy, na nangangahulugan na ang host at device ay laging handa na tumanggap ng data kapag naitatag ang komunikasyon (naitatag ang mga signal ng DTR at DSR).

Paraan ng kontrol ng hardware ipinatupad gamit ang mga signal ng RTS at CTS. Upang magpadala ng data, itatakda ng host (computer) ang signal ng RTS at hihintayin ang device na itakda ang signal ng CTS, at pagkatapos ay magsisimulang magpadala ng data hangga't nakatakda ang signal ng CTS. Ang signal ng CTS ay sinuri ng host kaagad bago magsimulang maipadala ang susunod na byte, kaya ang isang byte na nagsimula nang ipadala ay maipapadala nang buo, anuman ang halaga ng CTS. Sa half-duplex data exchange mode (ang device at ang host ay nagpapadala ng data sa turn, sa full-duplex mode ay magagawa nila ito nang sabay-sabay), ang pag-alis ng RTS signal ng host ay nangangahulugang lumipat ito upang tumanggap ng mode.

Paraan ng kontrol ng software binubuo ng receiving side na nagpapadala ng espesyal na stop (character na may code 0x13, tinatawag na XOFF) at resume (character na may code 0x11, tinatawag na XON) transmissions. Kapag natanggap ang mga character na ito, dapat ihinto ng nagpapadalang partido ang paghahatid o ipagpatuloy ito nang naaayon (kung may data na naghihintay na maipadala). Ang pamamaraang ito ay mas simple sa mga tuntunin ng pagpapatupad ng hardware, ngunit nagbibigay ng mas mabagal na tugon at, nang naaayon, nangangailangan ng paunang abiso ng transmitter kapag ang libreng espasyo sa receive buffer ay nabawasan sa isang tiyak na limitasyon.

Synchronous transmission mode nagpapahiwatig ng tuluy-tuloy na pagpapalitan ng data kapag ang mga bit ay sumunod nang isa-isa nang walang karagdagang paghinto sa isang naibigay na bilis. Ang mode na ito ay COM port Hindi suportado.

Asynchronous transfer mode Binubuo ang katotohanan na ang bawat byte ng data (at parity bit, kung naroroon) ay "nakabalot" sa isang synchronizing sequence ng isang zero start bit at isa o higit pang one stop bit. Ang data flow diagram sa asynchronous mode ay ipinapakita sa figure.

Isa sa mga posibleng algorithm ng pagpapatakbo ng receiver susunod:

  1. Hintayin ang receive signal level "0" (RXD sa kaso ng isang host, TXD sa kaso ng isang device).
  2. Bilangin ang kalahati ng tagal ng bit at suriin kung ang antas ng signal ay "0" pa rin
  3. Bilangin ang buong tagal ng bit at isulat ang kasalukuyang antas ng signal sa hindi bababa sa makabuluhang bit ng data (bit 0)
  4. Ulitin ang nakaraang hakbang para sa lahat ng natitirang data bit
  5. Bilangin ang buong tagal ng bit at ang kasalukuyang antas ng signal, gamitin ito upang suriin ang tamang pagtanggap gamit ang parity check (tingnan sa ibaba)
  6. Bilangin ang buong tagal ng bit at siguraduhin na ang kasalukuyang antas ng signal ay "1".