comunicación serie (sci) y teclado práctica 5 cdm - 2010 1 autores: jorge osio 31/05/2014

Post on 23-Jan-2015

6 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Comunicación serie (SCI)Comunicación serie (SCI)Y TecladoY Teclado

Práctica 5 CDM - 2010

1Autores: Jorge Osio10/04/23

Subrutina serial TxSubrutina serial Tx

Descripción de la comunicación serial

Para el Kit EVALQTY

10/04/23 Autor: Jorge Osio 2

Terminologías y ConceptosTerminologías y Conceptos

Operación Half-Duplex.Formato de Transmisión.Detección de error de Trama.

Transmisión Half-DuplexTransmisión Half-Duplex

Solo transmite un nodo a la vez.El MCU no puede transmitir mientras

está recibiendo, ni recibir mientras transmite.

Formato de transmisiónFormato de transmisión

Formato estándar de transmisión non-return-to-zero (NRZ) Formato 8-N-1 (8 bits de datos, sin bit de paridad, un bit de

parada)

tp = periodo de un bit = 1/ tasa de baudio

Detección de Error de TramaDetección de Error de Trama

El bit de parada está definido como un uno lógico, si el bit de parada recibido es un cero, quiere decir que ocurrió un error de Trama.

Descripción de la Comunicación Descripción de la Comunicación Serie en el MCU.Serie en el MCU.

Descripción de las subrutinas.Transmisión.Aplicación.

Descripción de las subrutinasDescripción de las subrutinas

• Estás subrutinas se deberán hacer para una frecuencia de Bus de 2,45 MHz y un periodo T=0,406 useg.

• La rutina de comunicación se dividirá en tres subrutinas; inicializa_cristal, Saca_caracter, delay

TransmisiónTransmisión

Características principales:

1. Se envía el bit de inicio.

2. Se cuenta el tiempo equivalente a 1 bit de datos y se envían el primer bit,

3. Luego se cuenta nuevamente y se envía el segundo, hasta enviar los 8 bits.

4. Por último se pone el pin TDX a 1 (bit de parada).

TransmisiónTransmisión

Formato de transmisión: El formato de transmisión es estándar NRZ

n,8,1 posee una estructura configurable. El orden de los bits es el siguiente: - bit START

- bit 0 – bit 1 – bit 2 – bit 3 – bit 4 – bit 5 – bit 6 – bit 7

- bit STOP.

Características de un bit de TxCaracterísticas de un bit de Tx

10/04/23 Autores: Jorge Osio 11

TransmisiónTransmisión

Implementación en el KitImplementación en el Kit

Configuración de HW Pin PTA0 como Tx serial Configuración de jumpers en

modo usuario 1. JP2(1-2), JP3 (2-3), JP4(2-3), JP5(1-2), JP6(2-3), JP7(1-2) y JP8(2-3)

Configuración de oscilador externo de 9,8304 Mhz

Para transmitir un “0” poner el PTA0 como salida y e cero.

Para transmitir un 1 poner el PTA0 como entrada.

Configuración de Hiperterminal Se debe configurar con un bit

de inicio, 8 bits de datos y uno de parada.

Sin paridad y sin control de flujo

Cuando se inicie la comunicación se encenderá el led amarillo del kit lo que indica que la placa está alimentada.

Los datos se muestran en ASCII

10/04/23 Autor: Jorge Osio 13

ConclusionesConclusiones

El objetivo de esta Aplicación es realizar un Modulo SCI “virtual” en microcontroladores de muy bajo costo que no poseen un módulo “real”.

ReferenciasReferencias

Nota de Aplicación NA_SyHDe - SyHDe, Soft y Hard Desarrollos.

Nota de Aplicación AN1240 – Motorola Semiconductor by Scott George, CSIC MCU Product Engineering.

Implementación del TecladoImplementación del Teclado

Implementación del Teclado mediante el Kit EvalQTY

10/04/23 Autor: Jorge Osio 16

Conexiones de HardwareConexiones de Hardware

10/04/23 Autor: Jorge Osio 17

Configuración del Puerto BConfiguración del Puerto B

Se deberán configurar 4 pines como entrada interrumpibles KBI Se deberán configurar 4 pines como salida normalmente en alto Una subrutina que ponga a ‘0’ uno de los pines de salida durante

cierto tiempo, (ej. 100ms) y verifique el estado de los pines de entrada.

Cuando se verifique un ‘0’ en una entrada y una salida se deberá ir a la tabla para determinar que tecla se presionó

Se deberá hacer circular el “cero” por los 4 pines de salida.

10/04/23 Autor: Jorge Osio 18

Subrutina de retardoSubrutina de retardo

void espera(int micros) { TMOD=micros; /*configura el là mite del contador*/ TSC=0x02; /*arranca el contador con un prescaler de 4*/ while(TSC_TOF==0){ /*espera el desborde del contador*/ ; } TSC=0x32; /*detiene el contador y borra su cuenta*/}

10/04/23 Autor: Jorge Osio 19

Rutina del TecladoRutina del Teclado

interrupt void isrINT_KBI(void){ /*funcion que atiende las interrupciones por teclado*/

//El nibble bajo del puerto B se se usa como selector de filas

//El nibble bajo del puerto A se se usa como detector de columnas (entradas)

10/04/23 Autor: Jorge Osio 20

Rutina del TecladoRutina del Teclado

temp=PTA;

temp=temp & 0x0f;/*se aisla el nibble bajo del PTA*/

car=0;

for(car=0;-----;car++){

;

}

temp=PTB;

temp=temp & 0x0f;/*se aisla el nibble

bajo del PTB*/

for(;--------;------){

;

}

car=car+0x30;/*el primer caracter del teclado es el 0 (0x30 en ASCII)*/

10/04/23 Autores: Jorge Osio, 21

BibliografíaBibliografía

b) AN1239r1 MOTOROLA SEMICONDUCTOR APPLICATION NOTE (HC05 MCU Keypad Decoding Techniques Using the MC68HC705J1A).

10/04/23Autores: Jorge Osio, Jose Rapallini,

Federico costantino, sebastian Ledesma

22

top related