35
UNIVERSIDAD NACIONAL SAN LUIS GONZAGA DE ICA UNIVERSIDAD NACIONAL SAN LUIS GONZAGA DE ICA FACULTAD DE INGENIERIA MECANICA - ELECTRICA FACULTAD DE INGENIERIA MECANICA - ELECTRICA CURSO TALLER DE MICROCONTROLADORES CURSO TALLER DE MICROCONTROLADORES PIC – BASIC PIC – BASIC MICROCODE STUDIO MICROCODE STUDIO SESION Nº 08 SESION Nº 08 V FOINTEC - 2008 V FOINTEC - 2008

Microcontroladores 8

Embed Size (px)

Citation preview

Page 1: Microcontroladores 8

UNIVERSIDAD NACIONAL SAN LUIS GONZAGA DE ICAUNIVERSIDAD NACIONAL SAN LUIS GONZAGA DE ICAFACULTAD DE INGENIERIA MECANICA - ELECTRICAFACULTAD DE INGENIERIA MECANICA - ELECTRICA

CURSO TALLER DE MICROCONTROLADORESCURSO TALLER DE MICROCONTROLADORESPIC – BASICPIC – BASIC

MICROCODE STUDIOMICROCODE STUDIO

SESION Nº 08SESION Nº 08

V FOINTEC - 2008V FOINTEC - 2008

Page 2: Microcontroladores 8

- Control de Motores simples DC (2 terminales)- Control de Motores simples DC (2 terminales)- Control de Motores de Paso- Control de Motores de Paso- Introducción al manejo del Puerto Serial- Introducción al manejo del Puerto Serial

Page 3: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CONTROL DE MOTORES DC CONTROL DE MOTORES DC SIMPLES DE 2 TERMINALESSIMPLES DE 2 TERMINALES

Page 4: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

MOTOR SIMPLE DE C.C.MOTOR SIMPLE DE C.C.

El motor eléctrico es un dispositivo electromotriz, esto quiere decir que El motor eléctrico es un dispositivo electromotriz, esto quiere decir que convierte la energía eléctrica en energía motriz. Todos los motores convierte la energía eléctrica en energía motriz. Todos los motores disponen de un eje de salida para acoplar un engranaje, polea o disponen de un eje de salida para acoplar un engranaje, polea o mecanismo capaz de transmitir el movimiento creado por el motor. mecanismo capaz de transmitir el movimiento creado por el motor.

Para cambiar la dirección de giro en un motor de Corriente Continua tan Para cambiar la dirección de giro en un motor de Corriente Continua tan solo tenemos que invertir la polaridad de la alimentación del motor. solo tenemos que invertir la polaridad de la alimentación del motor.

Para modificar su velocidad podemos variar su tensión de alimentación Para modificar su velocidad podemos variar su tensión de alimentación con lo que el motor perderá velocidad, pero también perderá par de giro con lo que el motor perderá velocidad, pero también perderá par de giro (fuerza) o para no perder par en el eje de salida podemos hacer un (fuerza) o para no perder par en el eje de salida podemos hacer un circuito modulador de anchura de pulsos (pwm) con una salida a circuito modulador de anchura de pulsos (pwm) con una salida a transistor de mas o menos potencia según el motor utilizado. transistor de mas o menos potencia según el motor utilizado.

Page 5: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CONTROL UNIDIRECCIONAL DEL MOTOR CC USANDO ULN2003CONTROL UNIDIRECCIONAL DEL MOTOR CC USANDO ULN2003

Page 6: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CONTROL UNIDIRECCIONAL DEL MOTOR CC USANDO L293BCONTROL UNIDIRECCIONAL DEL MOTOR CC USANDO L293B

Page 7: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CONTROL BIDIRECCIONAL DEL MOTOR CC USANDO EL L293BCONTROL BIDIRECCIONAL DEL MOTOR CC USANDO EL L293B

Page 8: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

EJERCICIO: CONTROLAR UN MOTOR SIMPLE DE CC DE 12V. IMPLEMENTAR EL EJERCICIO: CONTROLAR UN MOTOR SIMPLE DE CC DE 12V. IMPLEMENTAR EL CONTROL DEL GIRO A LA DERECHA Y A LA IZQUIERDA.CONTROL DEL GIRO A LA DERECHA Y A LA IZQUIERDA.

OSC1/CLKIN16

RB0/INT 6

RB1 7

RB2 8

RB3 9

RB4 10

RB5 11

RB6 12

RB7 13

RA0 17

RA1 18

RA2 1

RA3 2

RA4/T0CKI 3

OSC2/CLKOUT15

MCLR4

U1

PIC16F84A

1B1 1C 16

2B2 2C 15

3B3 3C 14

4B4 4C 13

5B5 5C 12

6B6 6C 11

7B7 7C 10

COM 9

U2

ULN2003A

IN12 OUT1 3

OUT2 6

OUT3 11

OUT4 14

IN27

IN310

IN415

EN11

EN29

VS

8

VSS

16

GND GND

U3

L293D

D11N4007

+88.8

D21N4007

D31N4007 D4

1N4007

12V

+88.8

R1

4k7

R2

4k7

R3

4k7

R4

4k7

R5

4k7

Start

Stop

Left

Right

Stop

+88.8D5

1N4007

Page 9: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CÓDIGOCÓDIGO

TRISA = %11111111TRISA = %11111111TRISB = %00000000TRISB = %00000000PORTB = 0PORTB = 0

I I VARVAR BYTE BYTE

REPETIR:REPETIR:

I = PORTAI = PORTA

SELECT CASESELECT CASE I I CASE 1CASE 1^$1F: PAUSE 50: PORTB.7 = 1 ^$1F: PAUSE 50: PORTB.7 = 1 'Motor1 en ON'Motor1 en ON CASE 2CASE 2^$1F: PAUSE 50: PORTB.7 = 0 ^$1F: PAUSE 50: PORTB.7 = 0 'Motor1 en OFF'Motor1 en OFF CASE 4CASE 4^$1F: PAUSE 50: PORTB.0 = 0: PORTB.1 = 1 ^$1F: PAUSE 50: PORTB.0 = 0: PORTB.1 = 1 'Motor2 giro derecha'Motor2 giro derecha CASE 8CASE 8^$1F: PAUSE 50: PORTB.0 = 1: PORTB.1 = 0 ^$1F: PAUSE 50: PORTB.0 = 1: PORTB.1 = 0 'Motor2 giro izquierda'Motor2 giro izquierda CASE 16CASE 16^$1F: PAUSE 50: PORTB.0 = 0: PORTB.1 = 0 ^$1F: PAUSE 50: PORTB.0 = 0: PORTB.1 = 0 'Motor2 stop 'Motor2 stop END SELECTEND SELECT

GOTO REPETIRGOTO REPETIR

Page 10: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CONTROL DE MOTORES DE CONTROL DE MOTORES DE PASOPASO

Page 11: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

MOTORES DE PASOMOTORES DE PASO

Los motores paso a paso son ideales para la construcción de Los motores paso a paso son ideales para la construcción de mecanismos en donde se requieren movimientos muy precisos.mecanismos en donde se requieren movimientos muy precisos.

La característica principal de estos motores es el hecho de poder La característica principal de estos motores es el hecho de poder moverlos un paso a la vez por cada pulso que se le aplique. Este paso moverlos un paso a la vez por cada pulso que se le aplique. Este paso puede variar desde 90° hasta pequeños movimientos de tan solo 1.8°, puede variar desde 90° hasta pequeños movimientos de tan solo 1.8°, es decir, que se necesitarán 4 pasos en el primer caso (90°) y 200 es decir, que se necesitarán 4 pasos en el primer caso (90°) y 200 para el segundo caso (1.8°), para completar un giro completo de 360°.para el segundo caso (1.8°), para completar un giro completo de 360°.

Estos motores poseen la habilidad de poder quedar enclavados en una Estos motores poseen la habilidad de poder quedar enclavados en una posición o bien totalmente libres. Si una o más de sus bobinas está posición o bien totalmente libres. Si una o más de sus bobinas está energizada, el motor estará enclavado en la posición correspondiente energizada, el motor estará enclavado en la posición correspondiente y por el contrario quedará completamente libre si no circula corriente y por el contrario quedará completamente libre si no circula corriente por ninguna de sus bobinas.por ninguna de sus bobinas.

Page 12: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

TIPOS DE MOTORES DE PASOTIPOS DE MOTORES DE PASOMOTOR BIPOLAR:MOTOR BIPOLAR: Estos tiene generalmente cuatro cables de salida. Necesitan ciertos trucos Estos tiene generalmente cuatro cables de salida. Necesitan ciertos trucos para ser controlados, debido a que requieren del cambio de dirección del flujo para ser controlados, debido a que requieren del cambio de dirección del flujo de corriente a través de las bobinas en la secuencia apropiada para realizar un de corriente a través de las bobinas en la secuencia apropiada para realizar un movimiento. En figura podemos apreciar un ejemplo de control de estos movimiento. En figura podemos apreciar un ejemplo de control de estos motores mediante el uso de un puente en H (H-Bridge). Como se aprecia, será motores mediante el uso de un puente en H (H-Bridge). Como se aprecia, será necesario un H-Bridge por cada bobina del motor, es decir que para controlar necesario un H-Bridge por cada bobina del motor, es decir que para controlar un motor Paso a Paso de 4 cables (dos bobinas), necesitaremos usar dos H-un motor Paso a Paso de 4 cables (dos bobinas), necesitaremos usar dos H-Bridges iguales al de la figura . En general es recomendable el uso de H-Bridge Bridges iguales al de la figura . En general es recomendable el uso de H-Bridge integrados como son los casos del L293integrados como son los casos del L293

Page 13: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

MOTOR BIPOLARMOTOR BIPOLARMANEJO DEL MOTOR BIPOLAR CON L293:MANEJO DEL MOTOR BIPOLAR CON L293:

Page 14: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

MOTOR BIPOLARMOTOR BIPOLARSECUENCIA PARA EL CONTROL DE UN MOTOR BIPOLAR:SECUENCIA PARA EL CONTROL DE UN MOTOR BIPOLAR:

PASOPASO TERMINALESTERMINALES

AA BB CC DD

11 11 00 11 00

22 11 00 00 11

33 00 11 00 11

44 00 11 11 00

Page 15: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

TIPOS DE MOTORES DE PASOTIPOS DE MOTORES DE PASO

UNIPOLAR:UNIPOLAR:Estos motores suelen tener 6 o 5 cables de salida, dependiendo de su Estos motores suelen tener 6 o 5 cables de salida, dependiendo de su conexionado interno (ver figura 2). Este tipo se caracteriza por ser más simple conexionado interno (ver figura 2). Este tipo se caracteriza por ser más simple de controlar. En la figura podemos apreciar un ejemplo de conexionado para de controlar. En la figura podemos apreciar un ejemplo de conexionado para controlar un motor paso a paso unipolar mediante el uso de un ULN2803, el controlar un motor paso a paso unipolar mediante el uso de un ULN2803, el cual es una array de 8 transistores tipo Darlington capaces de manejar cargas cual es una array de 8 transistores tipo Darlington capaces de manejar cargas de hasta 500mA. Las entradas de activación (Activa A, B , C y D) pueden ser de hasta 500mA. Las entradas de activación (Activa A, B , C y D) pueden ser directamente activadas por un microcontrolador. directamente activadas por un microcontrolador.

Page 16: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

EJERCICIO. CONTROLAR UN MOTOR DE PASO BIPOLAR. IMPLEMENTAR EJERCICIO. CONTROLAR UN MOTOR DE PASO BIPOLAR. IMPLEMENTAR GIRO DERECHA, IZQUIERDA Y STOPGIRO DERECHA, IZQUIERDA Y STOP

OSC1/CLKIN16

RB0/INT6

RB17

RB28

RB39

RB410

RB511

RB612

RB713

RA017

RA118

RA21

RA32

RA4/T0CKI3

OSC2/CLKOUT15

MCLR4

U1

PIC16F84A

IN12

OUT13

OUT26

OUT311

OUT414

IN27

IN310

IN415

EN11

EN29

VS

8

VSS

16

GND GND

U3

L293D

12V

R3

4k7

R4

4k7

R5

4k7

Left

Right

Stop

R1

4k7

R2

4k7

+88.8

D11N4007

D21N4007

D31N4007 D4

1N4007

Page 17: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CÓDIGOCÓDIGO

TRISA = %11111111TRISA = %11111111

TRISB = %00000000TRISB = %00000000

PORTB = 0PORTB = 0

I I VARVAR BYTE BYTE

J J VARVAR BYTE BYTE

REPETIR:REPETIR:

SELECT CASESELECT CASE PORTA PORTA

CASE 1^$1FCASE 1^$1F: PAUSE 50: GOSUB DERECHA: PAUSE 50: GOSUB DERECHA

CASE 2^$1FCASE 2^$1F: PAUSE 50: GOSUB IZQUIERDA: PAUSE 50: GOSUB IZQUIERDA

CASE 4^$1FCASE 4^$1F: PAUSE 50: PORTB=0: PAUSE 50: PORTB=0

END SELECTEND SELECT

GOTO REPETIRGOTO REPETIR

Page 18: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CÓDIGOCÓDIGODERECHA:DERECHA:

FORFOR I=0 I=0 TOTO 3 3

LOOKUPLOOKUP I,[10,9,5,6], PORTB I,[10,9,5,6], PORTB

FOR J=0 TO 100FOR J=0 TO 100

PAUSE 1PAUSE 1

IF PORTA != $1F THEN: RETURNIF PORTA != $1F THEN: RETURN

NEXT JNEXT J

NEXT INEXT I

GOTO DERECHAGOTO DERECHA

IZQUIERDA:IZQUIERDA:

FOR FOR I=3 I=3 TOTO 0 0 STEPSTEP -1 -1

LOOKUPLOOKUP I,[10,9,5,6], PORTB I,[10,9,5,6], PORTB

FOR J=0 TO 100FOR J=0 TO 100

PAUSE 1PAUSE 1

IF PORTA != $1F THEN: RETURNIF PORTA != $1F THEN: RETURN

NEXT JNEXT J

NEXT INEXT I

GOTO IZQUIERDAGOTO IZQUIERDA

Page 19: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

MOTOR UNIPOLARMOTOR UNIPOLAR

MANEJO DEL MOTOR UNIPOLAR CON ULN 2003, ULN 2803MANEJO DEL MOTOR UNIPOLAR CON ULN 2003, ULN 2803

Page 20: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

MOTOR UNIPOLARMOTOR UNIPOLARCONEXION CON L293CONEXION CON L293

Page 21: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

SECUENCIAS DE CONTROL PARA MOTORES UNIPOLARESSECUENCIAS DE CONTROL PARA MOTORES UNIPOLARES

PASOPASO Bobina ABobina A Bobina BBobina B Bobina CBobina C Bobina DBobina D

11 11 11 00 00

22 00 11 11 00

33 00 00 11 11

44 11 00 00 11

SECUENCIA NORMAL: MAYOR TORQUE (RECOMENDADA)SECUENCIA NORMAL: MAYOR TORQUE (RECOMENDADA)

Page 22: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

SECUENCIAS DE CONTROL PARA MOTORES UNIPOLARESSECUENCIAS DE CONTROL PARA MOTORES UNIPOLARES

PASOPASO Bobina ABobina A Bobina BBobina B Bobina CBobina C Bobina DBobina D

11 11 00 00 00

22 00 11 00 00

33 00 00 11 00

44 00 00 00 11

SECUENCIA WAVE DRIVE: MENOR TORQUESECUENCIA WAVE DRIVE: MENOR TORQUE

Page 23: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

SECUENCIAS DE CONTROL PARA MOTORES UNIPOLARESSECUENCIAS DE CONTROL PARA MOTORES UNIPOLARES

PASOPASO Bobina ABobina A Bobina BBobina B Bobina CBobina C Bobina DBobina D

11 11 00 00 00

22 11 11 00 00

33 00 11 00 00

44 00 11 11 00

55 00 00 11 00

66 00 00 11 11

77 00 00 00 11

88 11 00 00 11

SECUENCIA MEDIO PASOSECUENCIA MEDIO PASO

Page 24: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

EJERCICIO:EJERCICIO: CONTROLAR UN MOTOR DE PASO UNIPOLAR CON LA CONTROLAR UN MOTOR DE PASO UNIPOLAR CON LA SECUENCIA WAVE DRIVE. IMPLMENTAR GIRO DERECHA, IZQUIERDA, STOPSECUENCIA WAVE DRIVE. IMPLMENTAR GIRO DERECHA, IZQUIERDA, STOP

OSC1/CLKIN16

RB0/INT6

RB17

RB28

RB39

RB410

RB511

RB612

RB713

RA017

RA118

RA21

RA32

RA4/T0CKI3

OSC2/CLKOUT15

MCLR4

U1

PIC16F84A

1B1

1C16

2B2

2C15

3B3

3C14

4B4

4C13

5B5

5C12

6B6

6C11

7B7

7C10

COM9

U2

ULN2003A

IN12

OUT13

OUT26

OUT311

OUT414

IN27

IN310

IN415

EN11

EN29

VS

8

VSS

16

GND GND

U3

L293D

12V

R3

4k7

R4

4k7

R5

4k7

Left

Right

Stop

+88.8

R1

4k7

R2

4k7

+88.8

Page 25: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CÓDIGOCÓDIGO

TRISA = %11111111TRISA = %11111111

TRISB = %00000000TRISB = %00000000

PORTB = 0PORTB = 0

I I VARVAR BYTE BYTE

J J VARVAR BYTE BYTE

REPETIR:REPETIR:

SELECT CASESELECT CASE PORTA PORTA

CASE 1^$1FCASE 1^$1F: PAUSE 50: GOSUB DERECHA: PAUSE 50: GOSUB DERECHA

CASE 2^$1FCASE 2^$1F: PAUSE 50: GOSUB IZQUIERDA: PAUSE 50: GOSUB IZQUIERDA

CASE 4^$1FCASE 4^$1F: PAUSE 50: PORTB=0: PAUSE 50: PORTB=0

END SELECTEND SELECT

GOTO REPETIRGOTO REPETIR

Page 26: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CÓDIGOCÓDIGODERECHA:DERECHA:

FORFOR I=0 I=0 TOTO 3 3

PORTB = (DCD I)PORTB = (DCD I)

FOR J=0 TO 100FOR J=0 TO 100

PAUSE 1PAUSE 1

IFIF PORTA != $1F PORTA != $1F THENTHEN: RETURN: RETURN

NEXT JNEXT J

NEXT INEXT I

GOTO DERECHAGOTO DERECHA

IZQUIERDA:IZQUIERDA:

FORFOR I=3 I=3 TOTO 0 0 STEP STEP -1-1

PORTB = (PORTB = (DCD IDCD I))

FOR J=0 TO 100FOR J=0 TO 100

PAUSE 1PAUSE 1

IFIF PORTA != $1F PORTA != $1F THENTHEN: RETURN: RETURN

NEXT JNEXT J

NEXT INEXT I

GOTO IZQUIERDAGOTO IZQUIERDA

Page 27: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CONSIDERACIONES FINALESCONSIDERACIONES FINALES

Como comentario final, cabe destacar que debido a que los motores Como comentario final, cabe destacar que debido a que los motores paso a paso son dispositivos mecánicos y como tal deben vencer paso a paso son dispositivos mecánicos y como tal deben vencer ciertas inercias, el tiempo de duración y la frecuencia de los pulsos ciertas inercias, el tiempo de duración y la frecuencia de los pulsos aplicados es un punto muy importante a tener en cuenta. En tal sentido aplicados es un punto muy importante a tener en cuenta. En tal sentido el motor debe alcanzar el paso antes que la próxima secuencia de el motor debe alcanzar el paso antes que la próxima secuencia de pulsos comience. Si la frecuencia de pulsos es muy elevada, el motor pulsos comience. Si la frecuencia de pulsos es muy elevada, el motor puede reaccionar en alguna de las siguientes formas:puede reaccionar en alguna de las siguientes formas:

- Puede que no realice ningún movimiento en absoluto. - Puede que no realice ningún movimiento en absoluto. - Puede comenzar a vibrar pero sin llegar a girar. - Puede comenzar a vibrar pero sin llegar a girar. - Puede girar erráticamente. - Puede girar erráticamente. - O puede llegar a girar en sentido opuesto. - O puede llegar a girar en sentido opuesto.

Para obtener un arranque suave y preciso, es recomendable comenzar Para obtener un arranque suave y preciso, es recomendable comenzar con una frecuencia de pulso baja y gradualmente ir aumentándola con una frecuencia de pulso baja y gradualmente ir aumentándola hasta la velocidad deseada sin superar la máxima tolerada. El giro en hasta la velocidad deseada sin superar la máxima tolerada. El giro en reversa debería también ser realizado previamente bajando la reversa debería también ser realizado previamente bajando la velocidad de giro y luego cambiar el sentido de rotación.velocidad de giro y luego cambiar el sentido de rotación.

Page 28: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

PARA RECORDARPARA RECORDAR

- Un motor de paso con 5 cables es casi seguro de 4 fases y - Un motor de paso con 5 cables es casi seguro de 4 fases y unipolar. unipolar.

- Un motor de paso con 6 cables también puede ser de 4 fases y - Un motor de paso con 6 cables también puede ser de 4 fases y unipolar, pero con 2 cables comunes para alimentación. pueden unipolar, pero con 2 cables comunes para alimentación. pueden ser del mismo color. ser del mismo color.

- Un motor de pasos con solo 4 cables es comúnmente bipolar. - Un motor de pasos con solo 4 cables es comúnmente bipolar.

Page 29: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

INTRODUCCIÓN AL MANEJO DEL PUERTO INTRODUCCIÓN AL MANEJO DEL PUERTO SERIALSERIAL

Page 30: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

EL PUERTO SERIALEL PUERTO SERIALUn puerto de serie es una interfaz de comunicaciones de datos Un puerto de serie es una interfaz de comunicaciones de datos digitales, frecuentemente utilizado por computadoras y periféricos, en digitales, frecuentemente utilizado por computadoras y periféricos, en donde la información es transmitida bit a bit enviando un solo bit a la donde la información es transmitida bit a bit enviando un solo bit a la vez.vez.El puerto serial utiliza la norma RS-232 que determina la interfaz y El puerto serial utiliza la norma RS-232 que determina la interfaz y lógica usada en la transferencia de datos.lógica usada en la transferencia de datos.

Page 31: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

PINES USADOS EN EL CONECTOR DB9 (SERIAL)PINES USADOS EN EL CONECTOR DB9 (SERIAL)

Page 32: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

EL CIRCUITO INTEGRADO MAX232EL CIRCUITO INTEGRADO MAX232

Dado que los niveles lógicos del estándar TTL y del RS232 (Puerto serial) Dado que los niveles lógicos del estándar TTL y del RS232 (Puerto serial) son diferentes, se requiere de un adaptador. EL cricuito integrado son diferentes, se requiere de un adaptador. EL cricuito integrado MAX232 adapta fácilmente estos niveles y es por eso su utilización en MAX232 adapta fácilmente estos niveles y es por eso su utilización en los diseños de circuitos que usen transferencia serial.los diseños de circuitos que usen transferencia serial.

Page 33: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

ADAPTADOR TTL – RS232ADAPTADOR TTL – RS232

Page 34: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

EJERCICIO. TRANSMITIR LA PALABRA “PIBASIC”, GENERADA EJERCICIO. TRANSMITIR LA PALABRA “PIBASIC”, GENERADA DESDE UN PIC16F84 HACIA UNA PC MEDIANTE EL PUERTO DESDE UN PIC16F84 HACIA UNA PC MEDIANTE EL PUERTO SERIALSERIAL

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA4/T0CKI6

RA5/AN4/SS7

RE0/AN5/RD8

RE1/AN6/WR9

RE2/AN7/CS10

OSC1/CLKIN13

OSC2/CLKOUT14

RC1/T1OSI/CCP216

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RB7/PGD40

RB6/PGC39

RB538

RB437

RB3/PGM36

RB235

RB134

RB0/INT33

RD7/PSP730

RD6/PSP629

RD5/PSP528

RD4/PSP427

RD3/PSP322

RD2/PSP221

RC7/RX/DT26

RC6/TX/CK25

RC5/SDO24

RC4/SDI/SDA23

RA3/AN3/VREF+5

RC0/T1OSO/T1CKI15

MCLR/Vpp/THV1

U1

PIC16F877E

RR

OR

TX

D3

RX

D2

CT

S8

RT

S7

DS

R6

DT

R4

DC

D1

RI

9

COMPIM.DLL

RX

D

RT

S

TX

D

CT

S

Page 35: Microcontroladores 8

PicBasic - Microcode StudioPicBasic - Microcode Studio

CODIGOCODIGO

' Define parámetros para el Usart' Define parámetros para el Usart

DEFINE HSER_TXSTA 24hDEFINE HSER_TXSTA 24hDEFINE HSER_BAUD 9600DEFINE HSER_BAUD 9600DEFINE HSER_SPBRG 25DEFINE HSER_SPBRG 25

Pause 500 ' Espera 0.5 segPause 500 ' Espera 0.5 seg

Loop:Loop:

HSEROUT HSEROUT ["PICBASIC"] ["PICBASIC"] Pause 1000 Pause 1000

Goto loopGoto loop EndEnd