Globered
Consigue tu propia página web

Electronica para todos  

0 0 0

Comunicación serial Pic-Pic

Por: fabio luis sierra castro | Publicado: 12/03/2011 00:06 | | #Cont:1
muestra la forma de comunicar dos microcontroladores pic de forma serial en código ASCII. programación en lenguaje basic, simulación con el software proteus.

Bueno amigos de esta web aquí comenzamos con lo básico

materiales:
-Software Proteus modulo isis.
-software Microcode studio.
-Ganas y disposición de aprender.

*en caso tal queramos armar el proyecto físico necesitaremos lo siguiente
-2 Microcontroladores Pic16F628A
-1 Led´s del color que queramos
-1 resistencia de 330ohmios 
-1 pulsadore 
-cables de diferentes colores
-fuente de poder de 5v
-protoboard

Ahora si manos a la obra

Comunicación serial con el microcontrolador PIC16F628A

Un cable de comunicación serial permite que dos dispositivos se comuniquen uno con el otro enviando y recibiendo datos por una línea de transmisión y una de recepción.

Los datos enviados por esta línea, se enviaran en grupos de 8 bits, utilizando un formato de envió denominado código ASCII

Tabla Ejemplos ASCII

ASCII

HEX

CARACTER

00 00 00 00

00

(nulo)

00 11 00 00

30

0

00 11 00 01

31

1

01 00 00 01

41

a

01 10 00 01

61

A

01 11 10 10

7B

{

 

ASCII son las siglas de American Standart Code For Information Interchange o Código Estándar Para El Intercambio De Información

El formato ASCII es el utilizado por todas las computadoras y puede utilizarse para comunicarse con el microcontrolador. Como se pudo ver en la tabla del ejemplo un conjunto de bits representa un carácter, una forma más compacta de representar un conjunto de bits es por mediante la representación hexadecimal esta representación toma 4 bits y los representa por un numero o una letra que va desde el 0 al F.

Se llama comunicación serial por que los códigos se reciben uno detrás de otros o “en serie”. Existen dos formas de comunicación 
serial la síncrona y la asíncrona la única diferencia entre las dos es, la síncrona necesita una señal de reloj para enviar los datos y así verificar que los datos fueron enviados correctamente, en cambio la asíncrona utiliza un mecanismo como referencia tierra (norma RS232) o voltajes referenciales (norma RS422/485)

Velocidad de transmisión de datos

La velocidad de transmisión de los datos va desde los 300 hasta los 9600 bits por segundo pero hay que tener presente si son velocidades de datos verdaderos o datos invertidos a continuación presentaremos una tabla para cada uno de estos casos  

DATO VERDADERO

DATO INVERTIDO

T300

N300

T1200

N1200

T2400

N2400

T9600

N9600

 

 

INSTRUCCIÓN SERIN-SEROUT

La instrucción que permite al microcontrolador son SERIN y SEROUT, las cuales recepta y transmite los datos respectivamente

Para utilizar estas instrucciones es necesario incluir los modos de comunicación mediante la siguiente instrucción:

INCLUDE  modedefs.bas”

SERIN: como se había dicho anteriormente esta instrucción permite recibir un dato serial enviado por otro dispositivo electrónico y su sintaxis es la siguiente:

SERIN PORTB.0, N2400, DATOS

Que significa recepte el dato serialmente por el BIT B.0 del puerto B a una velocidad de 2400 bits por segundo  y guarde en la variable DATOS

SEROUT: mediante esta instrucción se enviaran los datos seriales por un  pin del microcontrolador su sintaxis es:

SEROUT PORTB.0, N2400, [“A”]

Que significa envié el dato “A” en código ASCII a una velocidad de 2400 bits por segundo por el bit B.0 del puerto B

Conocida la teoría pasaremos a realizar una aplicación 


Para que exista la comunicación serial deben existir dos dispositivos trabajando a la misma velocidad de transmisión y recepción para ello utilizaremos dos PIC16F628A uno será el transmisor y el otro el receptor, como se puede observar en la figura el PIC transmisor tendrá un pulsador que al ser presionado enviara el dato y PIC receptor tendrá un led que encenderá cuando reciba el dato indicado

Este es el código para el PIC que será el transmisor 

 

                                 Transmisor.pbp 

Y este es el código para el PIC que será el receptor



Nótese que cuando el pulsador es presionado el LED enciende

Bueno eso era todo hasta la próxima con otro proyecto,

Este material fue recopilado del libro Electrónica Práctica Con Microcontroladores de Microchip, muchas gracias espero los ayude mucho para lo que sea. 

                     


 



0 0 0

Es muy bueno el aporte me interesa saber un poco mas del...

Por: mauro301 | Creado: 22/11/2012 21:59 | |
Es muy bueno el aporte, me interesa saber un poco mas del tema. Estamos realizando un trabajo practico para la universidad en el cual necesito transmitir y recibir datos en serie. Y por lo que estuve investigando, con los pics de alta gama es posible transmitir a travez de la USART. Pero necesitamos comunicacion entre 1 microcontrolador maestro y 5 esclavos, lo que demandaria mucho gasto trabajando con pics de alta gama. Quisiera saber si es posible la utilizacion de esta funcion en el ccs y si no tiene derechos de copyright. muchas gracias
Comenta