3 - Interfaz PC

Anuncio
3 Interfaz PC – DSP
3 Interfaz PC – DSP
3.1 Introducción a las comunicaciones serie
Las comunicaciones serie se utilizan para enviar datos a través de largas distancias, ya que
las comunicaciones en paralelo exigen demasiado cableado para ser operativas. Los datos serie
recibidos desde un módem u otros dispositivos son convertidos a paralelo para poder ser usados por
el bus del PC.
Los equipos de comunicaciones serie se pueden dividir entre simplex, half-duplex y fullduplex. Una comunicación serie simplex envía información en una sola dirección (por ejemplo, una
emisora de radio comercial). Half-duplex significa que los datos pueden ser enviados en ambas
direcciones entre dos sistemas, pero en una sola dirección al mismo tiempo. En una transmisión
full-duplex cada sistema puede enviar y recibir datos al mismo tiempo. Este último será el caso de
nuestro sistema, ya que tanto el DSP como el PC podrán enviar y recibir datos a la vez.
3 Interfaz PC – DSP
3.2 Comunicaciones serie asíncronas
Hay dos tipos de comunicaciones: síncronas o asíncronas. En una transmisión síncrona los
datos son enviados en bloques y el transmisor y el receptor son sincronizados por uno o más
caracteres especiales llamados caracteres de sincronización.
El puerto serie del PC es un dispositivo asíncrono por lo que la comunicación establecida
entre él y el DSP será asíncrona. Para la sincronización de este tipo de comunicación se precisa
siempre de una línea adicional a través de la cual el emisor y el receptor intercambian la señal del
pulso. Pero en la transmisión serie a través de un cable de dos líneas esto no es posible ya que
ambas están ocupadas por los datos y la masa. Por este motivo se intercalan antes y después de los
datos informaciones de estado (según la norma RS-232). Esta información es determinada por el
emisor y receptor al estructurar la conexión mediante la correspondiente programación de sus
puertos serie:
➢
Bit de inicio (start): Cuando el receptor detecta el bit de inicio sabe que la transmisión ha
comenzado y es a partir de entonces cuando debe leer las señales de la línea a intervalos
concretos de tiempo, en función de la velocidad determinada para la comunicación.
Electrónicamente es una transición de '1' a '0' lógicos.
➢
Bit de paridad (opcional): Si se usa ocupa el lugar del octavo bit de datos y sirve para detectar
errores en la transmisión. La paridad puede ser par o impar. En la paridad par, por ejemplo, la
palabra de datos a transmitir se completa con el bit de paridad de manera que el número de bits a
'1' enviados sea par.
➢
Bits de parada (stop): Indica la finalización de la transmisión de una palabra de datos. El
protocolo de transmisión de datos permite 1, 1.5 y 2 bits de parada. Electrónicamente equivale al
regreso al nivel lógico '0'.
Figura 3.1a: Trama genérica de una comunicación asíncrona.
3 Interfaz PC – DSP
Normalmente, las comunicaciones serie tienen los siguientes parámetros: 1 bit de start, 8 bits de
Datos, 1 bit de stop y sin paridad.
En la figura 3.1b se puede ver un ejemplo de la transmisión del dato binario 10011010. La
línea en reposo está a nivel alto:
Figura 3.1b: Ejemplo de transmisión asíncrona.
3 Interfaz PC – DSP
3.3 Conexión física entre el PC y el DSP
El puerto serie del PC es compatible con el estándar RS-232 que establece las
características físicas y mecánicas del conector, el tipo de dispositivo (emisor o receptor), las
características eléctricas de la conexión y los mecanismos de sincronización de la comunicación.
El estándar especifica 25 pins de señal, y que el conector de DTE (Data Terminal
Equipment, el PC en este caso) debe ser macho y el conector del DCE (Data Communication
Equipment, para nosotros el DSP) hembra. El conector mas usado es el DB-25 macho, pero muchos
de los 25 pines no son necesarios. Por esta razón en los PC se suelen utilizan los DB-9 macho (ver
figura 3.3a). Los niveles de tensión para un nivel lógico alto están entre -3V y -15V y para un nivel
lógico bajo tendrá una tensión entre +3V y +15V siendo los mas comunes los de +12V y -12V
(recogidos en la norma RS-232). Las señales mas usadas son:
1. Línea de transmisión de datos (TxD): Línea por la que el DTE (PC) envía los datos.
2. Línea de recepción de datos (RxD): Línea por la que el DTE (PC) recibe los datos.
3. DTE preparado (DTR): Línea por la que el DTE (PC) indica al DCE (DSP) que está activo
para comunicarse con él.
4. DCE preparado (DSR): Línea por la que el DCE (DSP) indica al DTE (PC) que está activo
para establecer la comunicación.
5. Petición de envío (RTS): con esta línea, el DTE (PC) indica al DCE (DSP) que está preparado
para transmitir datos.
6. Preparado para enviar (CTS): tras un RTS, el DCE (DSP) pone esta línea en 1 lógico, tan
pronto como está preparado para recibir datos.
7. Masa: necesaria para que tenga lugar la transmisión.
3 Interfaz PC – DSP
Estas líneas las controla el PC través de la UART, un controlador conectado al bus de un
ordenador que realiza las funciones de convertidor bidireccional Serie / Paralelo y Paralelo / Serie.
Figura 3.3a: Distribución de pines en un conector DB-9.
Número de pin
Señal
1
DCD (Data Carrier Detect)
2
RX
3
TX
4
DTR (Data Terminal Ready)
5
GND
6
DSR (Data Sheet Ready)
7
RTS (Request To Send)
8
CTS (Clear To Send)
9
RI (Ring Indicator)
Tabla 3.3: Correspondencia entre pines y señales en un conector DB-9.
Para hacer posible la comunicación entre los dos equipos (PC y DSP) se han interconectado
las líneas descritas anteriormente de la siguiente manera:
(PC1) RxD <================== TxD (DSP)
(PC1) TxD ==================> RxD (DSP)
(PC1) DTR ==================> DSR (DSP)
(PC1) DSR <================== DTR (DSP)
(PC1) RTS ==================> CTS (DSP)
(PC1) CTS <================== RTS (DSP)
(PC1) MASA =================== MASA (DSP)
Una forma de conectar PC y DSP con la configuración anterior es utilizando un cable serie
macho-hembra cruzado (ver figura 3.3b).
3 Interfaz PC – DSP
Figura 3.3b: Cable serie macho-hembra.
3.3.1 Adaptación de tensiones
El puerto serie del PC suele trabajar con niveles de tensión de ±12V, mientras que los
microcontroladores suelen trabajar con tensiones de 0 y 5V. Es por ello por lo que se hace necesario
adaptar las tensiones de transmisión de ambos dispositivos para que puedan comunicarse entre
ellos. Para ello, lo mas usual es usar el integrado de MAXIM llamado MAX 232 que adapta los
niveles antes mencionados.
En el caso del presente proyecto, el DSP TMS2812 trabaja con niveles de tensión de 0 y
3,3V por lo que es necesario usar un dispositivo de la familia del MAX 232, el MAX 3322E/MAX
3323E que adapta estas tensiones a las de ±12V del PC. Sin embargo, para las pruebas del software
se diseño un convertidor que realiza las misma función que los integrados anteriores cuyo esquema
se puede ver en el anexo IV.
Descargar