0% encontró este documento útil (0 votos)
40 vistas3 páginas

REFERENCIAS

Los puertos serie, como USB y UART, son más utilizados que los puertos paralelos, permitiendo la transmisión de datos secuencialmente con menos cables. UART es fundamental en la comunicación, convirtiendo datos entre formatos paralelo y serie, mientras que I2C permite la conexión de múltiples dispositivos mediante un maestro y esclavos. La comunicación puede ser asincrónica o sincrónica, y existen diferencias clave entre RS232 y UART en los niveles de tensión utilizados para representar los estados lógicos.

Cargado por

Andres Suarez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Temas abordados

  • señales Handshaking,
  • buses síncronos,
  • circuitos de señalización,
  • RS232,
  • estándares de comunicación,
  • diferencias RS232 UART,
  • protocolos de comunicación,
  • sistemas de interconexión,
  • parámetros de diseño,
  • sistemas embebidos
0% encontró este documento útil (0 votos)
40 vistas3 páginas

REFERENCIAS

Los puertos serie, como USB y UART, son más utilizados que los puertos paralelos, permitiendo la transmisión de datos secuencialmente con menos cables. UART es fundamental en la comunicación, convirtiendo datos entre formatos paralelo y serie, mientras que I2C permite la conexión de múltiples dispositivos mediante un maestro y esclavos. La comunicación puede ser asincrónica o sincrónica, y existen diferencias clave entre RS232 y UART en los niveles de tensión utilizados para representar los estados lógicos.

Cargado por

Andres Suarez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Temas abordados

  • señales Handshaking,
  • buses síncronos,
  • circuitos de señalización,
  • RS232,
  • estándares de comunicación,
  • diferencias RS232 UART,
  • protocolos de comunicación,
  • sistemas de interconexión,
  • parámetros de diseño,
  • sistemas embebidos

A diferencia de los puertos paralelos, los puertos serie son los

que ms se usan, USB, UART, I2C, CAN bus, RS232 que se


nombr anteriormente son puertos serie. Por tanto van a
tender a usar pocos cables y la informacin se enviar
secuencialmente. Por otra parte se puede distinguir entre
buses sncronos y asncronos. La diferencia entre ambos
reside en que a la hora de comunicar dispositivos que
trabajan a frecuencias distintas necesiten o no de una seal de
sincronizacin, a continuacin se nombran algunos:

Es importante conocer un trmino que ser de mucha


importancia a lo largo del avance del proyecto es UART, este
bsicamente es el corazn del sistema de comunicaciones,
acrnimo de Universal Asynchronous Receiver-Transmitter.
Es un chip cuya misin principal es convertir los datos
recibidos del bus del PC en formato paralelo, a un formato
serie que ser utilizado en la transmisin hacia el exterior.
Tambin realiza el proceso contrario: transformar los datos
serie recibidos del exterior en un formato paralelo entendible
por el bus. [1]

I2C
Los UARTs ms significativos se sealan a continuacin:
Es un bus que est formado por 2 cables conocidos como
SDA y SCL ms 1 para conectar las masas (GND) de los
dispositivos. Con este tipo de bus es posible conectar
bastantes dispositivos entre s. Constructivamente lo nico
que hace falta es que conectar una resistencia de 2.2KOhm de
algn punto de SDA a Vcc y otra resistencia de 2,2KOhm
desde un punto de SCL hasta Vcc, es decir, que las lneas
SDA y SCL deben tener una resistencia de pull-up.
Tambin es importante decir que en cada momento uno de los
dispositivos toma el papel de maestro y el resto de esclavos.
El maestro genera una seal de reloj por SCL que se usar
para sincronizar todos los dispositivos. Y por SDA viaja la
informacin propiamente dicha. Cada esclavo debe tener
configurada una direccin de esclavo. Esta direccin es una
variable de 8 bits donde los 7 primeros son un nmero en
binario y el ltimo bit indica si es una lectura o escritura lo
que quiere hacer el maestro.
Existen dos escenarios distintos, o bien el maestro es un
escritor en los esclavos, o bien el maestro es el que pide a los
esclavos que le enven informacin. [5]

Figura NN. Bus tpico

2C

(Imagen tomada de

NS 8250: La UART del IBM PC original; este circuito


tena un pequeo "bug" que fue corregido mediante las
oportunas modificaciones en las rutinas BIOS. Fue
sustituido por el 8250-B.

NS 8250A: Este chip correga los problemas de los


predecesores, sin embargo no poda ser utilizado en los
modelos XT precisamente porque sus BIOS trataban de
corregir un problema inexistente. En cualquier caso
este chip no funcionaba ms all de 9600 bps.

NS 8250B: Este chip fue el ltimo de la saga de los


8250, y reinstal el antiguo bug, de forma que pudiera
funcionar correctamente con las BIOS de los XT. Todos
los de esta serie tenan un acceso muy lento, lo que
obligaba a incluir estados de espera en el procesador.
Tampoco funcionaba por encima de 9600 bps.

NS 16450: Fue el chip elegido para acompaar a los


procesadores i286 de clase AT. Funcionaba bien a 9600
bps, e inaugur la poca de mdems de alta velocidad.
Sin embargo no funcionaba correctamente en los
sistemas XT, debiendo ser sustituido por el 16550.

NS 16550: Fue el primer chip de su clase dotado con


bferes FIFO [4] para transmisin y recepcin de 16
bytes, que le hacen especialmente indicado para
comunicaciones rpidas. Era ms rpido que el 16450,
operando por encima de los 9600 bps, pero segua
adoleciendo de algunos problemas, especialmente en los
bferes, por lo que tambin fue sustituido.

NS 16550A: Es la ms rpida y fiable de las UARTs;


adecuada para operar con mdems de alta velocidad,
puede operar a 115 Kbps. Su lgica es compatible pin a
pin con el 16450, al que puede sustituir. Adems puede
utilizar canales DMA.

https://geekytheory.com/puertos-y-buses-1-i2c-y-uart/).
UART

Los microcontroladores Atmega8/168/328, en los cuales est


basado Arduino, disponen de un dispositivo compatible
llamado USART (Universal Synchronous and Asynchronous

serial Receiver and Transmitter) que permite tanto la


comunicacin asincrnica como sincrnica.
En la comunicacin asincrnica, la velocidad de envo de los
datos es acordada a priori entre el emisor y el receptor. En la
comunicacin sincrnica, el envo de los datos es
sincronizado por el emisor a partir de un pulso constante de
reloj (Clock), con cada pulso enva un nuevo dato. [2]

Figura NN. Diagrama de bloques de un Receptor/Trasmisor


Asincrono
Universal
(imagen
tomada
de
http://www.el.uma.es/marin/Practica4_UART.pdf)

Los parmetros que se han de definir para el correcto diseo


de un interfaz de comunicaciones usando un USART son los
siguientes:
Figura NN. Comunicacin asincrnica. (Imagen tomada de la
pgina https://galaxi0.wordpress.com/el-puerto-serial/)

Sincronismo entre el receptor y el transmisor.


Codificacin de los datos.
Prioridad en el envi de los bits.
Tasa de envo de datos.
Seales Handshaking.
Seales elctricas de los valores lgicos

La sincronizacin en la trasmisin de los datos se lleva a cabo


colocando en primer lugar un bit de comienzo (start bit),
despus se envan los datos (data bits) usualmente entre 5 y 9
bits empezando siempre por el bit menos significativo, LSB,
y por ltimo, se enva un bit de parada (stop bit). [3]
Interrupciones de transmisin.
Figura NN. Comunicacin sincrnica. (Imagen tomada de la
pgina https://galaxi0.wordpress.com/el-puerto-serial/)

En la figura NN se muestra el esquema general con los


bloques bsicos de un UART. Se distinguen los registros de
datos, tanto de recepcin como de transmisin y sus
correspondientes registros de desplazamiento (RxD, tXD),
los registros de control de transmisin y recepcin y seales
de sincronizacin para comienzo de la trasmisin/recepcin
(RTS, CTS).

Es importante ver que el transmisor USART tiene dos


banderas que indican un estado: Registro de Datos Vaco
(UDRE) y Transmisin Completada (TXC). Ambas banderas
pueden usarse para generar interrupciones. La bandera del
registro de datos vaca (UDRE) indica si el buffer del
transmisor est listo para recibir nuevos datos. Este bit se
pone a uno cuando el buffer del transmisor est vaco., y se
limpia cuando el buffer del transmisor contiene datos para ser
transmitidos que an no se han movido al registro de
corrimiento. Por compatibilidad para dispositivos futuros,
siempre escriba a este bit un cero cuando se escriba al
registro UCSRA. Cuando el bit de habilitacin de
interrupcin del registro de datos vaco (UDRIE) en el
UCSRB se escriba a uno, la interrupcin del registro de datos
vaco del USART ser ejecutada tan pronto como UDRE pase
a uno (siempre y cuando las interrupciones globales estn
habilitadas). UDRE se limpia escribiendo en UDR. Cuando
se usa una transmisin de datos manejada por interrupcin, la

rutina de interrupcin de registro vaco debe ya sea escribir


un nuevo dato a UDR para limpiar UDRE o deshabilitar la
interrupcin de datos de registro vaco, de lo contrario una
nueva interrupcin puede ocurrir una vez que la rutina de
interrupcin termine. [4]

Como se puede deducir de la descripcin anterior los


niveles lgicos estn invertidos, esto quiere decir, que lo que
se entiende como un 1 lgico en RS232 (estado de la lnea
abajo), se entiende en la UART como un 0, lo mismo ocurre
con el estado lgico 0 del RS232. [4]

A continuacin se muestran algunas diferencias entre RS232


y UART. Bsicamente son dos las diferencias entre la
comunicacin estndar RS232 y la comunicacin serie
mediante UART, estas son las siguientes:

Referencias

Los niveles de tensin para representar los estados lgicos


del bit son diferentes, en la comunicacin serie RS232 los
niveles de tensin son -12 V (1 lgico) y +12 V (0 lgico), en
cambio utilizando la UART se utilizan los niveles de tensin
+Vdd (1 lgico) y 0 V (0 lgico), en este caso Vdd utilizado
es 3,3V.

[1] https://galaxi0.wordpress.com/el-puerto-serial/
[2] http://www.zator.com/Hardware/H2_5_1_1.htm
[3] http://www.el.uma.es/marin/Practica4_UART.pdf
[4] http://bibing.us.es/proyectos/abreproy/40048/fichero/VOL
UMEN+1.+MEMORIA%252F10.+Comunicaciones.pdf
[5] https://geekytheory.com/puertos-y-buses-1-i2c-y-uart/

Common questions

Con tecnología de IA

Synchronous and asynchronous buses differ mainly in how they handle timing and synchronization for communication. In synchronous buses, a clock signal is used to synchronize all connected devices, allowing them to communicate in a coordinated manner even if they operate at different frequencies. The clock signal ensures that data is sent and received in time with this central timing reference. In asynchronous communication, devices must agree on a data rate in advance since there is no shared clock signal; data is sent using start and stop indicators to signal the beginning and end of transmission .

The implementation of UART/USART in microcontrollers such as the Atmega8/168/328 has significantly impacted the development of embedded systems by providing flexible and reliable communication interfaces. These microcontrollers facilitate both synchronous and asynchronous communication, allowing them to interface with a wide range of devices such as sensors, computers, and other microcontrollers in both fast and robust ways. Their ability to manage high-speed communication while offloading processing through features like interrupt-driven data handling enhances the capability of embedded systems to perform complex tasks efficiently without excessive CPU intervention, making them ideal for a variety of applications from simple data logging to real-time control systems .

Start and stop bits are crucial for maintaining data integrity in serial data transmission by framing each byte of data, enabling the receiving device to synchronize accurately. The start bit signals the beginning of a transmission, allowing the receiver to prepare its clock to sample incoming data bits correctly. The stop bit indicates the end, ensuring that each data byte is distinct and complete before the next byte begins. This framing mechanism is fundamental in asynchronous communication, where it compensates for the absence of a continuous timing signal, helping prevent data loss or misinterpretation .

Handshake signals significantly enhance the reliability of data transmission in USART systems by coordinating the data flow between sender and receiver, thereby preventing data overflow or loss. Signals like RTS (Request to Send) and CTS (Clear to Send) allow devices to communicate readiness to send or receive data, ensuring that neither device sends data faster than the other can process it. This flow control prevents buffer overflow, accommodates differing processing speeds, and adjusts for temporary data congestion, contributing to more stable and efficient communication in USART-based systems .

The voltage level differences between RS232 and UART significantly affect their direct compatibility. RS232 uses higher voltage levels (+/- 12V) compared to UART, which operates at logic levels such as 3.3V or 5V. The inverted logic levels also add complexity; a logical '1' in RS232 corresponds to a low voltage in UART and vice versa. For integration, level shifters or RS232 to UART converters are often required to adjust the voltage levels and correct the logic inversions to ensure proper signal interpretation between devices using these different communication standards .

On an I2C bus, the master device is responsible for initiating and controlling communication with one or multiple slave devices. The master generates a clock signal on the SCL line to synchronize communications and uses the SDA line to send or receive data. Each slave has a unique address, and the master uses this address to target specific slaves for communication. The master can either write data to or request data from the slaves. The addressing and sequential data transmission allow coexistence and orderly communication among multiple devices on the same bus without interference .

Pull-up resistors in the I2C bus system are crucial for ensuring proper communication between devices. The I2C bus uses open-drain or open-collector outputs, meaning that the devices can only pull the line to a low state but cannot push it high. Pull-up resistors connected between the voltage supply (Vcc) and the bus lines (SDA and SCL) ensure that the lines default to a high state when not actively driven low by a device. This arrangement allows for multiple devices to share the bus without conflicts, as it ensures a defined logic level when the bus is idle .

Using a UART system with FIFO buffers, like the NS 16550A, brings significant advantages to high-speed communication systems. FIFO buffers prevent data loss by storing incoming bytes until the processor can process them, which is crucial for high-speed data rates exceeding 9600 bps. This buffering capability allows the system to handle bursts of data without immediately needing processor intervention, reducing CPU overhead and allowing efficient data flow management, especially in environments with high data throughput. Additionally, the ability to use DMA channels with the NS 16550A further enhances its efficiency by allowing direct memory access for data transfer, minimizing processor load .

The NS UART chip series illustrates significant milestones in the evolution of computing communication. Starting with the NS 8250, used in the original IBM PC, each iteration brought technological advancements that addressed shortcomings like bugs and speed limitations. The introduction of FIFO buffers with the NS 16550 marked a pivotal upgrade for handling higher data rates and reducing processor load. This evolution facilitated faster and more reliable serial communication, making these chips instrumental in the progression to more complex and performance-demanding applications, underpinning the broader trend towards increased computing power and capacity .

Asynchronous data transmission handles errors primarily through start and stop bits and agreed data rates, which means each transmission can be independently verified for integrity without relying on a continuous clock signal. Each byte or character in asynchronous communication is framed with its own start and stop bits, providing a clear beginning and end for error checking and resynchronization if needed. In contrast, synchronous systems rely on continuous clock signals, which means error detection is often managed through error-checking codes or protocols that operate concurrently with data transmission. This can make synchronous systems more efficient in recognizing and correcting errors across large data blocks but also more dependent on accurate timing .

También podría gustarte