Está en la página 1de 37

DISEOS ELECTRONICOS CULHUACAN

SISTEMA DE PRACTICAS PARA PIC

Elementos que componen la tarjeta de entrenamiento para Pic.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


PROGRAMACION DE PICS
El sistema de desarrollo para PIC incorpora un programador para descargar los
programas realizados.
Paso 1:

Debemos colocar los interruptores de programacin hacia la palabra programar y


verificar que el sistema se encuentra encendido.
Paso2:

Dar doble clic en el icono llamado Master prog.


Paso 3: Al tener conectado el programador en el puerto USB nos mostrara el tipo de
PIC que se encuentra conectado y que esta listo para programar.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN

Paso 4: Una vez reconcido el pic y el programador buscar el archivo .hex que
deseamos grabar en el pic.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN

Paso 5: Al tener el archivo hex dar clic en el botn escribir para programar el PIC.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


Paso 6: En la ventana se indicara que la programacin ha sido exitosa.

Paso7: Una vez terminado de programar el PIC debemos regresar los interruptores
hacia abajo para poder utilizar los bits del puerto B.
Atencin: si no regresamos los interruptores la ejecucin del programa puede ser
errnea o nula.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


En las siguientes paginas mostraremos el uso de de los diferentes mdulos de la tarjeta,
para ello mostramos la conexin hacia los mdulos, el diagrama elctrico y el cdigo
referente al control del modulo.
Los programas se encuentran en el formato .bas y .hex para que se descarguen
directamente.
Tambin se incluyen las fotografas de conexin para que se puedan observar con mayor
facilidad.
El archivo y el programa para la instalacin y configuracin del programador vienen
contenido en la carpeta programador as como soluciones a diferentes problemas.

ATENCION:
Debemos tener cuidado al configurar los puertos del PIC ya que
una mala configuracin o conexin podra daar de forma
irremediable los puertos del PIC.
Los programas aqu presentados as como las interconexiones
han sido realizados y probados en nuestro laboratorio de
investigacin.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


COMPROBACION MODULO LED

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program leds
dim t as byte
trisa = 0x10
trisb = 0x00
portb = 0x00
cmcon=7
main:
t=0
for t=0 to 7
portb.t=1
delay_ms(1000)
next t
portb =0
delay_ms(1000)
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


PUSH BOTON

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program push
main:
cmcon=7
trisb =%00000000
trisa =%11111111
ciclo:
if porta.0 =0 then goto uno
end if
if porta.1 =0 then goto dos
end if
if porta.2 =0 then goto tre
end if
if porta.3 =0 then goto cua
end if
goto ciclo
uno: portb= 1
delay_ms(1000)
portb= 0
goto ciclo
dos: portb= 3
delay_ms(1000)
portb= 0
goto ciclo
tre: portb= 7
delay_ms(1000)
portb= 0
goto ciclo
cua: portb= 15
delay_ms(1000)
portb= 0
goto ciclo
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


DIP SWITCH

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program dip
main:
cmcon=7
trisb =%00000000
trisa =%11111111
ciclo:
if porta.0 =0 then goto uno
end if
if porta.1 =0 then goto dos
end if
if porta.2 =0 then goto tre
end if
if porta.3 =0 then goto cua
end if
goto ciclo
uno: portb= 1
delay_ms(1000)
portb= 0
goto ciclo
dos: portb= 3
delay_ms(1000)
portb= 0
goto ciclo
tre: portb= 7
delay_ms(1000)
portb= 0
goto ciclo
cua: portb= 15
delay_ms(1000)
portb= 0
goto ciclo
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


SERVO

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO

program servo
main:
cmcon=7
trisb =0x00
trisa =0xFF
preg:
if porta.0=0 then
goto der
end if
if porta.1=0 then
goto cen
end if
if porta.2=0 then
goto izq
end if
goto preg
der:
PortB=0x01
Delay_us(650)
PortB=0x00
delay_ms(20)
goto preg
cen:
PortB=0x01
Delay_us(1550)
PortB=0x00
delay_ms(20)
goto preg
izq:
PortB=0x01
Delay_us(2500)
PortB=0x00
delay_ms(20)
goto preg
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


TRIAC

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


ESQUEMA

CODIGO
program triac
main:
cmcon=7
trisb =%00000000
trisa =%11111111
ciclo:
portb= 1
delay_ms(1000)
portb= 0
delay_ms(1000)
goto ciclo
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


MOTOR

ESQUEMA
www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program motor
dim current_duty,old_duty as byte
sub procedure InitMain()
cmcon = 7
TRISA = 0XFF
PORTB = 0
TRISB = 0
PWM1_Init(1000) 'inicializa el pwm a 1000hz
end sub
main:
InitMain()
current_duty = 50 'inicia ciclo de trabajo al 50%
PWM1_Start()
PWM1_Set_Duty(current_duty)
while (TRUE)
if (RA0_bit <> 0) then
Delay_ms(40)
Inc(current_duty)
PWM1_Set_Duty(current_duty)
end if
if (RA1_bit <> 0) then
Delay_ms(40)
Dec(current_duty)
PWM1_Set_Duty(current_duty)
end if
Delay_ms(5)
wend
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


BOCINA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


ESQUEMA

CODIGO
program boci
sub procedure Tone1()
Sound_Play(659, 250)
' Frequency = 659Hz, duration = 250ms
end sub
sub procedure Tone2()
Sound_Play(698, 250)
' Frequency = 698Hz, duration = 250ms
end sub
sub procedure Tone3()
Sound_Play(784, 250)
' Frequency = 784Hz, duration = 250ms
end sub
sub procedure Melody()
' Plays the melody "Yellow house"
Tone1() Tone2() Tone3() Tone3()
Tone1() Tone2() Tone3() Tone3()
Tone1() Tone2() Tone3()
Tone1() Tone2() Tone3() Tone3()
Tone1() Tone2() Tone3()
Tone3() Tone3() Tone2() Tone2() Tone1()
end sub
main:
CMCON=7
TRISB = 0x00
TRISA = 0xFF
Sound_Init(PORTB, 0)
Melody()
end.
www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


RELES

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program rele
cmcon =7
main:
TRISB=0X00
TRISA=0XFF
PORTB=0X00
DELAY_ms(50)
PORTB=0X01
DELAY_ms (2000)
PORTB=0x00
DELAY_ms (2000)
PORTB=0x02
DELAY_ms (2000)
PORTB=0x00
delay_ms(2000)
GOTO main
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


DISPLAY

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program dis
main:
cmcon=7
trisb =%00000000
trisa =%00010000
porta.2 =1
portb=0
ciclo:
portb=$3f
delay_ms(500)
portb=0
delay_ms(500)
portb=$06
delay_ms(500)
portb=0
delay_ms(500)
portb=$5b
delay_ms(500)
portb=0
delay_ms(500)
portb=$4f
delay_ms(500)
portb=0
delay_ms(500)
portb=$66
delay_ms(500)
portb=0
delay_ms(500)
portb=$6d
delay_ms(500)
portb=0
delay_ms(500)
portb=$7d
delay_ms(500)
portb=0
delay_ms(500)
portb=$07
delay_ms(500)
portb=0
delay_ms(500)
portb=$7f
delay_ms(500)
portb=0
delay_ms(500)
portb=$6f
delay_ms(500)
portb=0
delay_ms(500)
goto ciclo
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


DISPLAY MUX

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program dimux
trisb = 0x00
portb = 0x00
trisa = 0x10
porta = 0x00
cmcon=7
main:
aqui:
portb= 0x76
porta= 0x01
delay_ms(240)
portb= 0x3f
porta= 0x02
delay_ms(240)
portb= 0x38
porta= 0x04
delay_ms(240)
portb= 0x77
porta= 0x08
delay_ms(240)
goto aqui
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


MOTOR A PASOS

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


ESQUEMA

CODIGO
program PASO
DIM T AS BYTE
TRISA = 0X10
Porta=0X00
main:
CMCON=7
REGRESO: T=0
FOR T=0 TO 50
PORTA= 0X01
DELAY_MS (200)
PORTA= 0X02
DELAY_MS (200)
PORTA= 0X04
DELAY_MS (200)
PORTA= 0X08
DELAY_MS (200)
NEXT T
PORTA=%00000000
DELAY_MS(5000)
GOTO REGRESO
end.
www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


LCD

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program LCD

dim LCD_RS as sbit at RA6_bit


LCD_EN as sbit at RA7_bit
LCD_D4 as sbit at RA0_bit
LCD_D5 as sbit at RA1_bit
LCD_D6 as sbit at RA2_bit
LCD_D7 as sbit at RA3_bit
LCD_RS_Direction as sbit at TRISA6_bit
LCD_EN_Direction as sbit at TRISA7_bit
LCD_D4_Direction as sbit at TRISA0_bit
LCD_D5_Direction as sbit at TRISA1_bit
LCD_D6_Direction as sbit at TRISA2_bit
LCD_D7_Direction as sbit at TRISA3_bit

dim txt1 as char[8]

main:
TRISA = 0x10
PORTA = 0x00
cmcon = 0x07

txt1 = "POZARICA"
Lcd_Init()
Lcd_Cmd(_LCD_CLEAR)
Lcd_Cmd(_LCD_CURSOR_OFF)
Lcd_out(1,1,txt1)
Delay_ms(2000)
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


TECLADO MULTIPLEXADO

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program tecla
TRISB = 0xf0
trisa = 0x10
cmcon=7
main:
Teclado:
PORTB.0 = 0 ' Columna 1 = 0
PORTB.1 = 1 ' Columna 2 = 1
PORTB.2 = 1 ' Columna 3 = 1
portb.3 = 1 'Columna 4 = 1
If PORTB.4 = 0 Then PORTa = 0x01 delay_ms(500) ' tecla "1"
end if
If PORTB.5 = 0 Then PORTa = 0x04 delay_ms(500)' tecla "4"
end if
If PORTB.6 = 0 Then PORTa = 0x07 delay_ms(500)' tecla "7"
end if
If PORTB.7 = 0 Then PORTa = 0x0a delay_ms(500)' tecla "A"
end if
PORTB.0 = 1 ' Columna 1 = 1
PORTB.1 = 0 ' Columna 2 = 0
PORTB.2 = 1 ' Columna 3 = 1
PORTB.3 = 1 ' Columna 4 = 1
If PORTB.4 = 0 Then PORTa =0x02
end if
If PORTB.5 = 0 Then PORTa =0x05
end if
If PORTB.6 = 0 Then PORTa =0x08
end if
If PORTB.7 = 0 Then PORTa =0x00
end if
PORTB.0 = 1 ' Columna 1 = 1
PORTB.1 = 1 ' Columna 2 = 1
PORTB.2 = 0 ' Columna 3 = 0
PORTB.3 = 1 ' Columna 4 = 1

delay_ms(500)' tecla "2"


delay_ms(500)' tecla "5"
delay_ms(500)' tecla "8"
delay_ms(500) ' tecla "0"

If PORTB.4 = 0 Then PORTa = 0x03 delay_ms(500)' tecla "3"


end if
If PORTB.5 = 0 Then PORTa = 0x06 delay_ms(500)' tecla "6"
end if
If PORTB.6 = 0 Then PORTa = 0x09 delay_ms(500)' tecla "9"
end if
If PORTB.7 = 0 Then PORTa = 0x0b delay_ms(500) ' tecla "b"
end if
PORTB.0 = 1 ' Columna 1 = 1
PORTB.1 = 1 ' Columna 2 = 1
PORTB.2 = 1 ' Columna 3 = 1
PORTB.3 = 0 ' Columna 4 = 0
If PORTB.4 = 0 Then PORTa = 0x0c delay_ms(500)' tecla "c"
end if
If PORTB.5 = 0 Then PORTa = 0x0d delay_ms(500)' tecla "d"
end if
If PORTB.6 = 0 Then PORTa = 0x0e delay_ms(500)' tecla "e"
end if
If PORTB.7 = 0 Then PORTa = 0xf delay_ms(500)' tecla "f"
end if
goto teclado
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


MATRIZ DE LEDS

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program matrix
trisb = 0x00
portb = 0x00
trisa = 0x10
porta = 0x00
cmcon=7
main:
aqui:
portb= 0x10
porta= 0x1E
delay_ms(2)
portb= 0x20
porta= 0x1D
delay_ms(2)
portb= 0xFF
porta= 0x1B
delay_ms(2)
portb= 0x20
porta= 0x17
delay_ms(2)
portb= 0x10
porta= 0x0F
delay_ms(2)
goto aqui
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


MAX 232

ESQUEMA

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

DISEOS ELECTRONICOS CULHUACAN


CODIGO
program max
dim uart_rd as byte
TRISA = 0x10
PORTA = 0x00
cmcon=7
main:
UART1_Init(9600)
Delay_ms(100)
while (TRUE)
if (UART1_Data_Ready() =1) then
uart_rd = UART1_Read()
UART1_Write(uart_rd)
delay_ms(500)
porta= uart_rd
delay_ms(1000)
end if
wend
end.

www. robotica-dec.com.mx
Practicas PICAXE 08M.

Mex. D.F Tel (01)55 58502344


disenosculhuacan@yahoo.com.mx

También podría gustarte