desktop

No consigo grabar el pic

si lo compilaste sin el "use MPASM" y este codigo

tal cual

Código:
@ Device PIC16F628A 
@ Device Intrc_Osc 
@ Device Protect_Off 
@ Device WDT_Off 
@ Device Pwrt_Off 
@ Device MCLR_On 
@ DEvice BOD_Off 
@ Device LVP_Off 
@ Device CPD_Off 

TRISB=0
INICIO:
PORTB.0=1
PAUSE 500
PORTB.0=0
PAUSE 500
GOTO INICIO
END

y no funciona...

entonces es problema de conexiones... pero ahi sin un esquema no te puedo ayudar...

grabale este archivo al pic para descartar error de compilacion...
 

Adjuntos

  • TEST1.rar
    262 bytes · Visitas: 11
quita la resistencia de 100 al MCLR, y si pusiste los leds sin una resistencia limitadora de 220 Ohms en serie, probablemente ya se daño el pic en esos puertos o los leds....
 
mmmmmmmm ya quite la resistencia
pero pues el pic esta bien pues el programador si me lo detecta bien en el pickit2
y los leds si tienen resistencias de 220 ohms,solo que no ce me hixo necesario ponercelos en proteus
 
mira quiero probar este



@ Device PIC16F628A
@ Device Intrc_Osc
@ Device Protect_Off
@ Device WDT_Off
@ Device Pwrt_Off
@ Device MCLR_On
@ DEvice BOD_Off
@ Device LVP_Off
@ Device CPD_Off

CMCON=7
TRISA=0
TRISB=0
INICIO:
TRISA=%01010101
TRISB=%1010101
PAUSE 100
TRISA=0
TRISB=0
PAUSE 50
GOTO INICIO
end


pero no me funciona en el pic
 
Prueba asi...

Código:
@ Device PIC16F628A 
@ Device Intrc_Osc 
@ Device Protect_Off 
@ Device WDT_Off 
@ Device Pwrt_Off 
@ Device MCLR_On 
@ DEvice BOD_Off 
@ Device LVP_Off 
@ Device CPD_Off

CMCON=7
TRISA=0
TRISB=0
INICIO:
[COLOR="Red"]PortA=%01010101
PortB=%1010101[/COLOR]
PAUSE 1000
[COLOR="red"]PortA=0
PortB=0[/COLOR]
PAUSE 50
GOTO INICIO
end

El tris es solo para configurar los puertos, para establecer el estado del puerto se utiza el Port...

como lo tienes tu no deberia hacer nada y lo esta haciendo bien si dices que no hace nada:D
 
Última edición:
se te agradece mucho la ayuda por fin pude compilar sin errores y garxias a ti me logro funcionar en el pic y placa..........
muchas gracias..........
 
DISCULA LUBECK PERO NECESITO TU AYUDA CON UN CONTADOR............
NO PUEDO HACER QUE ME APARESCAN AL MISMO TIEMPO LOS DIGITOS CON 4 DISPLAY......

como puedo calcular el tiempo para que pueda aparecer los digitos al mismo tiempo ..


cmcon=7 ;convierte todo el puerto A en digital
trisb=0 ;convierte todos los pines del puerto B en salidas
trisa=0 ;convierte todos los pines del puerto A en salidas
x VAR BYTE ;crea la variable x con un tamaño de 255



texto:
FOR x=1 TO 20 ;repeticiones de este segmento
porta=14 :portb=8 ;pA%1110 y pB%0001000 forma la letra A
GOSUB TTL
porta=13 :portb=71 ;pA%1101 y pB%1000111 forma la letra L
GOSUB TTL
porta=11 :portb=64 ;pA%1011 y pB%1000000 forma la letra O
GOSUB TTL

porta=7 :portb=9 ;pA%0111 y pB%0001001 forma la letra H
GOSUB TTL
NEXT
FOR x=1 TO 20 ; repeticiones de este segmento
porta=14 :portb=127 ;pA%1110 y pB%1111111 apaga el display
GOSUB TTL
porta=13 :portb=8 ;pA%1101 y pB%0001000 forma la letra A
GOSUB TTL
porta=11 :portb=71 ;pA%1011 y pB%1000111 forma la letra L
GOSUB TTL
porta=7 :portb=64 ;pA%0111 y pB%1000000 forma la letra O
GOSUB TTL

NEXT
FOR x=1 TO 20 ; repeticiones de este segmento
porta=14 :portb=9 ;pA%1110 y pB%0001001 forma la letra H
GOSUB TTL
porta=13 :portb=127 ;pA%1101 y pB%1111111 apaga el display
PAUSE 256
GOSUB TTL
:portb=8 ;pA%1011 y pB%0001000 forma la letra A
GOSUB TTL
porta=7 :portb=71 ;pA%0111 y pB%1000111 forma la letra L
GOSUB TTL
NEXT
FOR x=1 TO 20 ; repeticiones de este segmento
porta=14 :portb=64 ;pA%1110 y pB%1000000 forma la letra O
GOSUB TTL
porta=13 :portb=9
GOSUB TTL
porta=11 :portb=127 ;pA%1011 y pB%1111111 apaga el display
PAUSE 256
porta=7 :portb=8 ;pA%0111 y pB%0001000 forma la letra A
GOSUB TTL
NEXT
FOR x=1 TO 20 ; repeticiones de este segmento
porta=14 :portb=71 ;pA%1110 y pB%1000111 forma la letra L
GOSUB TTL
porta=13 :portb=64 ;pA%1101 y pB%1000000 forma la letra O
GOSUB TTL
porta=11 :portb=9 ;pA%1011 y pB%0001001 forma la letra H
GOSUB TTL
porta=7 :portb=127 ;pA%0111 y pB%1111111 apaga el display
GOSUB TTL
NEXT
GOTO texto

TTL
PAUSE 5
RETURN

END
 
al pause aumentale mas... ponle PAUSE 50...

aunque si lo estas simulando nada mas, ni remotamente va a ser lo mismo en la realidad...

de cualquier manera sube el archivo en proteus para simularlo yo tambien y ver de lo que estas hablando...
 
prueba con este archivo de proteus...

le puse un transistor generico PNP, puesto que no estas ponieno la resistencia limitadora, ni la resistencia en la base del transistor...
 

Adjuntos

  • displays.rar
    7.1 KB · Visitas: 11
disculpa pero si en mi placa si se las puse
en base les puse resistencias de 1 k.........

el archivo q me distes si lo agarrra bien pero mira el video o link y veras q no



la resistencias de la base del transistor se las cambie por 1k
y las del display por 100 y use transistores bc547
 

Adjuntos

  • Sin título.png
    Sin título.png
    79.5 KB · Visitas: 6
Última edición:
y si empiezas por un simple hola... prueba esto...
Código:
@ Device PIC16F628A 
@ Device Intrc_Osc 
@ Device Protect_Off 
@ Device WDT_Off 
@ Device Pwrt_Off 
@ Device MCLR_On 
@ DEvice BOD_Off 
@ Device LVP_Off 
@ Device CPD_Off

cmcon=7 ;convierte todo el puerto A en digital
trisb=0 ;convierte todos los pines del puerto B en salidas
trisa=0 ;convierte todos los pines del puerto A en salidas
x VAR BYTE ;crea la variable x con un tamaño de 255



texto:
 FOR x=1 TO 20 ;repeticiones de este segmento
  porta=14 :portb=8 ;pA%1110 y pB%0001000 forma la letra A
  Pause 10
  porta=13 :portb=71 ;pA%1101 y pB%1000111 forma la letra L
  Pause 10
  porta=11 :portb=64 ;pA%1011 y pB%1000000 forma la letra O
  pause 10
  porta=7 :portb=9 ;pA%0111 y pB%0001001 forma la letra H
  pause 10
 NEXT
GOTO texto

END
 
Creo que esta mal definido el puerto A...

prueba esto y deja lo sigo simulando ....

Código:
texto:
 FOR x=1 TO 20 ;repeticiones de este segmento
 
  portb=9:porta=1:  ;pA%0111 y pB%0001001 forma la letra H
  pause 1500
  portb=64:porta=2 ;pA%1011 y pB%1000000 forma la letra O
  pause 1500 
  portb=71:porta=4  ;pA%1101 y pB%1000111 forma la letra L
  Pause 1500  
  portb=8:porta=8  ;pA%1110 y pB%0001000 forma la letra A
  Pause 1500 
 NEXT
GOTO texto
 
Atrás
Arriba