0% au considerat acest document util (0 voturi)
8 vizualizări14 pagini

Port Serial COM

Documentul oferă o prezentare detaliată a porturilor seriale, inclusiv definiții, arhitectura și caracteristicile tehnice ale acestora. Se discută despre utilizările specifice ale portului serial COM, precum și despre programarea în limbaj de asamblare pentru comunicarea serială. De asemenea, se compară transmisia în serie cu cea în paralel și se menționează evoluția porturilor seriale moderne, cum ar fi USB și FireWire.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
8 vizualizări14 pagini

Port Serial COM

Documentul oferă o prezentare detaliată a porturilor seriale, inclusiv definiții, arhitectura și caracteristicile tehnice ale acestora. Se discută despre utilizările specifice ale portului serial COM, precum și despre programarea în limbaj de asamblare pentru comunicarea serială. De asemenea, se compară transmisia în serie cu cea în paralel și se menționează evoluția porturilor seriale moderne, cum ar fi USB și FireWire.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

INSTITUTUL TEHNOLOGIC SUPERIOR SAN ANDRÉS TUXTLA

INGINERIE ÎN SISTEME COMPUTAȚIONALE

Ana Francisca Lule Rangel

6° SEMESTRU / Grupul B

CONCEPȚIA MEZO MAZABA.

SAN ANDRÉS TUXTLA VER.

Ianuarie - iunie 2017


Conț inut
Definiț ia portuluio ...................................................................................................................... 1
Definiț ia unui port serial........................................................................................................... 1
Esquema (arhitectura a portului serial)................................................................................ 1
Caracteristici tehnices ............................................................................................................... 3
Caracteristici ale portului serial COM.................................................................................. 3
Terminalele electrice ale portului serial. ............................................................................... 4
Variante fizică a portului serial.............................................................................................. 4
Viteza de transmitere a portului serial COM .............................................................. 5
Utilizări specifice ale portului serial COM.............................................................................. 5
Aplicaț iis .................................................................................................................................... 5
Exemplu de programare în asamblarer ............................................................................ 5
Comunicare serială în limbaj de asamblare................................................................. 5
Exemplu 1...................................................................................................................................... 8
Exemplu 2...................................................................................................................................... 9
Bibliografie..................................................................................................................................... 12
Definiț ia unui port
În informatică, un port este o formă generică de a denumi o interfață prin care
tipurile diferite de date pot fi trimise si primite. Aceasta interfata poate fi de tip fizic, sau
poate fi la nivel de software (de exemplu, porturile care permit transmiterea de date între
diferite calculatoare) în care caz folosește frecvent termenul port logic.

Definiț ia portului serial


Un port serial sau port în serie este o interfață de comunicații de date digitale,
folosit frecvent de computere și periferice, unde informația este transmisă bit cu bit
bit, trimițând un singur bit deodată; spre deosebire de portul paralel care trimite mai multe bite
simultan.

Comparația între transmisia în serie și cea în paralel poate fi explicată folosind o analogie
cu drumurile: un drum tradițional cu un singur sens (pe un drum cu două sensuri) prin
fiecare simț corespunde transmisiei în serie, iar o autostradă cu mai multe benzi pe
sensul corespunde transmisiei în paralel, vehiculele fiind biții care circulă prin
cablu.

Esquema (arhitectura portului serial)


Porturile seriale (numite și RS-232, după numele standardului la care fac referire)
au fost primele interfețe care au permis echipamentelor să schimbe informații cu
mundo exterior. Termenul serial se referă la datele trimise printr-un singur fir: biții se
sunt trimise unul după altul (consultați secțiunea despre transmiterea datelor pentru a cunoaște modurile
de transmisie).

1
În mod original, porturile seriale puteau trimite doar date, nu le puteau primi, așa că au fost dezvoltate
porturi bidirecționale (care sunt cele care se găsesc în echipamentele actuale). Prin urmare,
porturile seriale bidirecționale necesită două fire pentru ca comunicația să poată avea loc. La
comunicarea serială se desfășoară asincron, adică nu este necesar un semnal (sau
ceas) de sincronizare: datele pot fi trimise în intervale aleatoare. La rândul său, perifericul
trebuie să poată distinge caracterele (un caracter are 8 biți lungime) între succesiunea de biți
ce se trimite. Aceasta este motivul pentru care, în acest tip de transmisie, fiecare caracter se
găsit precedat de un bit de ÎNCEPUT și urmat de un bit de STOP. Aceste bituri de
control, necesare pentru transmisia serială, risipesc 20% din lățimea de bandă (fiecare 10 biți
trimisi, 8 sunt utilizati pentru a cifra caracterul si 2 pentru receptie). Porturile seriale, prin urmare
în general, sunt integrate în placa de bază, motiv pentru care conectorii care se află în spate
de la carcasă și sunt conectate la placa de bază printr-un cablu, pot fi utilizate
pentru a conecta un element exterior. În general, conectorii seriali au 9 sau 25 de pini și
au următoarea formă (conectori DB9 și DB25 respectiv):

Un PC posedă de obicei între un și patru porturi seriale. Port serial asincron Prin intermediul
acest tip de port comunicarea se stabilește folosind un protocol de transmitere asincron.
În acest caz, se trimite mai întâi un semnal inițial anterior primului bit din fiecare octet, caracter sau
Cuvânt codificat. Odată ce codul corespunzător a fost trimis, se trimite imediat un semnal
de stop după fiecare cuvânt codificat. Semnalul de început (start) servește pentru a pregăti la
mecanismul de recepție sau receptor, sosirea și înregistrarea unui simbol, în timp ce semnalul de
stop servește pentru a pregăti mecanismul de recepție pentru a lua o pauză și a se pregăti
pentru recepția noului simbol. Tipica transmisie start-stop este cea folosită în
transmisia codurilor ASCII prin portul RS-232, cum ar fi cea stabilită în
operațiuni cu telegrame.

Portul serial RS-232 (cunoscut și sub denumirea COM) este de tip asincron, utilizează cablaj simplu
de la 3 fire la 25 și conectează calculatoare sau microcontrolere la tot felul de periferice,
de la terminale la imprimante și modemuri, trecând prin mouse-uri. Interfața între RS-232 și
microprocesorul se realizează în general prin intermediul cipului UART 8250 (calculatoare de 8 și 16 biți,
PC XT) sau el 16550 (IBM Personal Computer/AT și ulterioare). RS-232 original avea un conector

2
tip DB-25, totuși majoritatea acestor pini nu erau utilizați, așa că IBM a standardizat cu
su gama IBM Personal System/2 utilizarea conectorului DB-9 (deja introdus în AT) care era folosit,
în mod majoritar pe computere. Cu toate acestea, cu excepția mouse-ului, restul periferiilor
solían presentar el DB-25 La norma RS-422, similar al RS-232, es un estándar utilizado en el ámbito
industrial. Porturi seriale moderne Unul dintre defectele porturilor seriale inițiale era lentitudinea lor
în comparație cu porturile paralele -vorbim de 19,2 kbits pe secundă- cu toate acestea, cu
Pe măsură ce trece timpul, apar o mulțime de porturi seriale de mare viteză care le fac foarte
interesante deoarece prezintă avantajele unui cablaj redus și rezolvă problema
merma de velocidad folosind un ecranaj mai mare și mai ieftin, folosind tehnica parului
Împletit. Din acest motiv, portul RS-232, și chiar o multitudine de porturi paralele, sunt înlocuite
înlocuindu-se cu noile porturi seriale precum USB, FireWire sau Serial ATA. Tipuri de
comunicare în serie Simplex În acest caz, emițătorul și receptorul sunt perfect definite și
comunicarea este unidirecțională. Acest tip de comunicații este folosit, de obicei, în rețele
de radiodifuzare, unde receptoarele nu trebuie să transmită niciun fel de date către emițător. Duplex,
semi-duplex În acest caz, ambele capete ale sistemului de comunicație îndeplinesc
funcții de transmisor și receptor și datele se deplasează în ambele sensuri, dar nu în mod
simultan. Acest tip de comunicare este utilizat în mod obișnuit în interacțiunea dintre terminale și
o computer central. Full Duplex Sistemul este similar cu duplexul, dar datele se deplasează
în ambele sensuri simultan. Pentru ca acest lucru să fie posibil, ambele emitatoare au diferente
frecvențe de transmisie sau două căi de comunicație separate, în timp ce
comunicarea semi-duplex necesită de obicei doar unul. Pentru schimbul de date între
computadores este tipo de comunicaciones son más eficientes que las transmisiones semi-
dú[Link].

Caracteristici tehnice
Caracteristici ale portului serial COM
În domeniul electronicii comerciale, acesta este denumit conector DB9 ("D-
subminiatură tip B, 9 pini), acesta este D-subminiatură tip B, cu 9 pini.
Se utiliza în principal pentru conectarea mouse-ului, unele tipuri vechi de
scanere și în prezent pentru dispozitive precum PDA-uri („Asistent Personal Digital”)
asistenți personali digitali.
Cada puerto, permite conectar solamente 1 dispositivo.
Pentru a conecta și deconecta dispozitivele, precum și pentru ca computerul să le
Recunoașteți corect, este necesar să opriți și să reporniți computerul.

3
Terminale electrice ale portului serial.
Portul serial are 9 contacte tip pin; sunt prezentate liniile electrice și descrierea acestora
de bază.

Schema liniilor portului serial COM

DCD (Detecta la portadora)


2. RxD (Primește date)
3. TxD (Transmite date)
4. DTR (Terminal de date gata)
5. SG (Pământ)
6. DSR (Echipă de date pregătită)
7. RTS (Solicită să trimită)
8. CTS (Disponibil pentru a fi trimis)

9. RI (Indică apel)

Variante fizică a portului serial


Se pot găsi unele dispozitive externe și chiar computere care au un port
serial diferit de comun de 9 pini. Acest port serial constă din 25 de pini, este de tip mascul și este utilizat
de multe ori însoțit de un adaptor pentru a putea fi utilizat cu conectori de 9 pini.

Conector serial de 25 pini tip femelă al dispozitivului

Adaptator pentru portul serial de 25 de pini la 9 pini

4
Viteza de transmisie a portului serial COM
Forma de a măsura viteza de transmitere a portului serial este în KiloBytes/ secundă (KB/s):

Port Viteză în (KiloBytes/secundă)

Serial COM 112 KB/s

Utilizări specifice ale portului serial COM


Utilizarea principală care i se atribuia era pentru a conecta mouse-ul și chiar scanere, dar
Odată cu apariția pe piață a portului USB, utilizarea acestuia în acest scop a încetat. O utilizare actuală este pentru

conectarea unor tipuri de PDA-uri, agende electronice, conexiuni directe între computere
("Laplink"), dispozitive electronice pentru practici academice și colectoare de date.

Aplicaț ii
Advanced Serial Port Terminal este dezvoltată în mod specific pentru a stabili conexiunea cu un
port serial și a trimite/recepționa date pe acest port. Aplicația noastră de terminal de port serial este
o utilitate esențială deoarece poate trimite și primi diverse date (șiruri ASCII, binar, octal
redirecționa fluxul de intrare/ieșire a datelor către un fișier specific, verifica și
rezolvarea problemelor de configurare a modemului fără a suprasolicita portul serial.

Exemplu de programare în limbaj de asamblare

Comunicaț ie serială în limbaj de asamblare.


În limbajul de asamblare, se poate apela la întreruperea 14H a ROM-BIOS pentru a configura,
a citi, a scrie sau pur și simplu pentru a verifica starea portului; fiecare dintre aceste patru opțiuni
este un serviciu de întrerupere, și sunt selectate prin înregistrarea AH. Figura 1 arată...
valorile pe care trebuie să le conțină înregistrarea AH pentru a invoca fiecare dintre servicii. În toate cazurile,

registrul DX trebuie să conțină numărul portului serial; primul dintre acestea, COM1, este specificat.
cum 00h.

5
Pentru a configura sau a inițializa portul serial, va fi suficient să utilizați serviciul 00 al întreruperii.
colocând în registrul AL valorile echivalente parametrilor, așa cum se poate observa în
figura 2. Cu această metodă este posibil să obținem frecvențe de transmisie care variază de la 110
până la 9600 baudi.

6
Pentru a trimite o dată prin portul serial, va fi suficient să plasați în registrul AH valoarea 01
corespunzător acestui serviciu și în registrul AL datele care trebuie trimise, invocând din nou
interupție 14H. Citirea unei date care a ajuns la port este realizată cu serviciul 02, care
returnează în registrul AL datele. Citirea stării portului se realizează prin intermediul serviciului
03 din aceeași întrerupere, și returnează în registrul AX starea portului, care va conține
bitele care sunt prezentate în figura 3.

De exemplu, putem folosi limbajul de asamblare pentru a configura portul serial la 1200
bauduri, fără bit de paritate, fără bit de oprire și 8 biți, realizând următorul program:

mov ah,0 ;serviciul 00 de INT 14h: iniț ializare port


mov a1,83 ;configurare: 1200 baudi, fără paritate,
1 bit de stop, 8 biț i de date
mov dx,00 ;Selectaț i portul COM1
int 14 interuperea BIOS-ului
mov ah,4c ;serviciul 4ch de INT 21h: termina
int 21 întreuperea serviciului DOS

Acest program (în care toate cantitățile sunt exprimate în hexadecimal) se poate transforma
executabil utilizând unele dintre asamblatoarele pentru PC, sau utilizând comanda DEBUG a
DOS.
O altă modalitate de a selecta parametrii comunicării și a realiza aceasta este prin intermediul
modificarea și consultarea înregistrărilor corespunzătoare circuitului integrat care gestionează

7
comunicare serială: UART 8250 sau similar. Așa cum se știe, acest circuit integrat poate fi
gestionat ca un port, în care este posibilă scrierea sau citirea stărilor sale.

Comunicație cu portul paralel în limbaj de asamblare.


În limbajul de asamblare, se poate citi o dată din port prin instrucțiunea IN sau scrie un
dat în port cu instrucțiunea OU, în ambele cazuri registrul AL trebuie să participe activ
în instrucțiune, fie ca sursă (în operațiuni de scriere) sau destinație (în operațiuni de)
lectura) a datelor, ca în următoarele cazuri:

out DX, AL ; trimite la portul DX conț inutul registrului AL


în AL,DX ;aduce în registrul AL, con ț inutul portului DX

O altă cerință este ca numărul portului pe care se va realiza transferul de date


trebuie să fie semnalat prin registrul DX, cu excepția cazurilor în care numărul portului
este inferior la 255 (FFh), în care cazul instrucțiunea care citește sau scrie poate indica direct
port.

Exemplu 1.
Conexiune între două computere prin cablul serial, un computer rămâne în modul de ascultare
prin intermediul hyperterminalului (lăsând configurația implicită) iar cealaltă computer este
unde se execută programul.

pila segmentara 'STACK'


pila se termină

segment de date
datele se încheie

segment de cod
assume cs:code,ds:data,ss:pila
inicio:
mov AH,00; INICIALIZEZ PORTUL
mov AL, 11100111b ;parametrii de port POR DEFAULT
mov DX,00 ;portul com1
INT 14h

MOV AH,01; trimite date prin port

8
MOV AL, 52; caracter a fi trimis
INT 14h

Funcț ia 4CH de la inte 21HF returnează controlul către sistemul de operare


MOV AH,4CH
INT 21H
codul se încheie

sfârș it început

Exemplu 2.
Următorul este un cod folosit pentru a stabili o comunicare serială între un computer și
un microcontrolador de la marca Motorola de referencia HC908GP32.
Codul constă în trimiterea de caractere de la tastatură de pe un computer conectat prin port.
serial până la microcontroler, acesta la rândul său are conectat prin portul PTB un display de 7
segmentele în felul următor:
Display cu 7 segmente——————Microcontroler———————PC
Microcontrolerul primește caractere de la PC, dacă sunt numere de la 0 la 9 atunci le
afișează pe display, în schimb, litera E indicând o eroare.
Următorul este codul care trebuie incinerat în microcontroler, explicat pas cu pas.

FLS EQU $8000; va începe la poziț ia 8000 a memoriei


RST EQU $FFFE
CONFIG1 EQU $1F
PTB EQU $01; se iniț iază Portul B
DDRB EQU $05; se configurează DRRB
SCDR EQU $0018
TC EQU $06
SCISR EQU $0016
SCRF EQU $05
CONȚ INUTEQU $60; se cree un apuntador în poziț ia 60 numit CONT
DATO EQU $61; se crea un pointer în poziț ia 61 numit DATO
VAR EQU $62; se cree un pointer în poziț ia 62 numit VAR
SCC1 EQU $0013
SCC2 EQU $0014
SCBR EQU $0019
ORG FLS; se configurează ca punct de plecare al programului FLS

9
MAIN: BSET 0, CONFIG1; dezactivează COP
Se configurează întregul sistem pentru a stabili comunicarea
MOV #$03, SCBR
BSET 6, SCC1
BSET 2, SCC2
BSET 3, SCC2
MOV #$FF, DDRB; configurează întregul Port B ca ie ș ire
ÎNCEPUT: MOV #$00, PTB; ș tege tot portul
LDHX #MSG; încarcă mesajul “INTRODUCE Ț I UN NUMĂR”
TX: LDA, X
CMP #$FF
BEQ IMPRIMARE

BRCLR TC, SCISR,*; Aș teaptă să se trimită un date către micro


STA SCDR
AIX #$01
BRA TX
ÎNTÂRZIERE BSR
BRCLR SCRF, SCISR,*
LDA SCDR
CMP #$39
EROARE BGT
CMP #$30
Eroare BLO
SUB #$30
STA DATO
LDHX #TABLA; încarcă numărul corespunzător în tabel
TXA
ADĂUGA DATE

IMPOZIT
LDA, X
EOR #$80
STA PTB; trimite numărul corespunzător afisajului
ÎNTÂRZIA BSR

BRA ÎNCEPUT
EROARE:
MOV #$F9, PTB; trimite litera E la afi ș aj
ÎNTÂRZIERI BSR; se duce la subrutină pentru a a ș tepta un timp

10
BRA INICIO; revine la începutul programului
generează o rutină temporizatoare cu variabila VAR
ÎNTÂRZIERE: MUTĂ #$00, CONTINUARE

SIGA: CLR VAR


LAZO: NOP
NOP
NOP
NOP
NOP
DEC VAR
BNE LAZO
DEC CONT
BNE SIGA
RTS
Trimite un mesaj computerului „INTRODUCETI UN NUMAR”
MSG: DB"INTRODUCE UN NUMĂR",$FF
TABLA: DB 3F; tabla numerelor de la 0 la 9
DB 06
DB 5B
DB 4F
DB 66
DB 6D
DB 7D
DB 07
DB 7F
DB 67
ORG RST
DW MAIN; revine la începutul programului
FINAL; termină programul

11
Bibliografía
[Link]

[Link]
el-microntrolador-hc908gp32/

[Link]

[Link]

[Link]

12

S-ar putea să vă placă și