Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

27/06/2016 #81

Avatar de banistelrroy

Hola a todos. Muchachos, tengo un problema similar al de deimos1000 y tlaloc.
Resulta que tenía un PIC16F628A y trabajaba muy bien antes, pero ahora no funciona por nada....
El circuito es el básico de un LED intermitente y el código similar.

Es más, sé que ese ejemplo es del libro PICBasic de Reyes, pero mi PIC no funciona por nada.
Compré 2 PIC16F628A nuevos y nada.......

Estoy usando MicroCode estudio Plus, de compilador instalé el PBP y una carpeta de MPLAB.
Estoy usando el esquema básico sin oscilador, sólo 5 V, su tierra, una resistencia con un LED en la salida y nada...

Tengo Windows 8 de 64 bits y el código es similar al que inicialmente tuvo deimos 1000 y tlaloc.

Por-favor, necesito ayuda.
27/06/2016 #82
Moderador

Avatar de D@rkbytes

¿Qué programador estás usando?
Mencionas que el PIC no funciona, ¿pero cuál es el problema?
¿Qué hace o qué no hace?
¿El compilador o el programador muestra o errores?

Adjunta el programa que estás usando, porque puedes tener problemas con la palabra de configuración.
29/06/2016 #83

Avatar de banistelrroy

Bueno, leí todo el tema y al parecer es que estoy compilando usando MPASMWIN520.

Al comienzo el PIC no funciona con ningún ejemplo porque no configuraba los fuses y creo que MicroCode graba con oscilador externo y yo lo estaba montando sin oscilador, o sea, que funcione el interno, ahora sé que por eso el PIC no funcionaba.

1. Ahora necesito compilar programas configurados con el uso de oscilador interno, o sea, sin usar el cristal de 4 MHz.

2. Uso MicroCode Studio Plus 4.0, PBP 2.60, MPASMWIN520 y Windows 8.1 de 64 bits.
Creé una carpeta llamada PBP ejercicios cerca a la carpeta PBP para que no genere error de dirección larga al compilar y guardar el hex, todo esto en la unidad C .

3. Ayuda en cómo configurar los fuses desde el Microcode introduciendo la configuración compatible con MPASM, o otra forma que se pueda.

4. Estoy implementado un contador de pulsos con 3 entradas y visualización por LCD 16x2.

Código PHP:
' DEFINICIÓN DE REGISTROS PARA EL LCD
Define LCD_DREG PORTB '
Utilizar 4 bits del puerto B para tx de datos
Define LCD_DBIT 4     
'Desde el Bit B.4 al Bit B.7
Define LCD_RSREG PORTB'
Selección del puerto del registro 
Define LCD_RSBIT 3    
'En el bit B.1
Define LCD_EREG PORTB '
Utilizar el enable en el puerto B
Define LCD_EBIT 2     
'En el bit B.2

CMCON = 7 ;convierte en digitales el puerto A
trisb=0 ;hace salidas sólo los bits más bajos de Puerto B
numero1 VAR word ;crea la variable número con valor 255
numero2 VAR word
numero3 VAR word
bot1 VAR porta.0
bot2 VAR porta.1
bot3 VAR porta.2

pause 200
LCDOUT $FE, 1 ;limpiar pantalla LCD
LCDOUT $FE,$80,"GAN" ;cursor en el casillero 3 de la 1era línea
LCDOUT $FE,$86,"TROL" ;cursor en el casillero 3 de la 1era línea
LCDOUT $FE,$8C,"PUEN" ;cursor en el casillero 3 de la 1era línea
LCDOUT $FE,$C0, DEC numero1
LCDOUT $FE,$C6, DEC numero2
LCDOUT $FE,$CC, DEC numero3

contar1:
IF bot1=0 THEN aumentar1
contar2:
IF bot2=0 THEN aumentar2
contar3:
IF bot3=0 THEN aumentar3   
goto contar1

aumentar1:
IF bot1=0 THEN aumentar1
numero1=numero1 + 1
LCDOUT $FE,$C0, DEC numero1  
pause 200
goto contar2

aumentar2:
IF bot2=0 THEN aumentar2
numero2=numero2 + 1 
LCDOUT $FE,$C6, DEC numero2
pause 200
goto contar3

aumentar3:
IF bot3=0 THEN aumentar3
numero3=numero3 + 1 
LCDOUT $FE,$CC, DEC numero3
pause 200
goto  contar1
end 
Hasta aquí me compila bien, pero como les repito, creo que escribiéndolo así funciona con oscilador externo y quiero configurar para que funcione el interno y cómo configurar el Master Clear y demás fuses.

Gracias de antemano.

Adjunté imágenes y agradezco infinitamente su ayuda.
Imágenes Adjuntas
Tipo de Archivo: jpg a1.jpg (175,8 KB (Kilobytes), 8 visitas)
Tipo de Archivo: jpg a2.jpg (165,5 KB (Kilobytes), 6 visitas)
Tipo de Archivo: jpg a3.jpg (179,2 KB (Kilobytes), 6 visitas)
Tipo de Archivo: jpg a5.jpg (163,0 KB (Kilobytes), 6 visitas)
Tipo de Archivo: jpg a6.jpg (354,1 KB (Kilobytes), 7 visitas)
Archivos Adjuntos
Tipo de Archivo: rar contador de pulsos.rar (14,4 KB (Kilobytes), 1 visitas)
29/06/2016 #84

Avatar de Daniel Meza

Hola
¿Con que programador grabas al PIC?, en el caso del PIckit 2 y sus clones la misma interfaz permite modificar los bits de configuración.
29/06/2016 #85

Avatar de banistelrroy

tengo 2 el pickit 2 original y grabo con su sofware original y un grabador pickit 2 clone que tambien grabo con su sofware original

este ultimo cuando trato de borrar el pic 16f628a no lo borra todo al chequear si esta en blanco sale un error con mensaje en rojo eso pasa con el pickit 2 clone con el original lo deja en blanco asumo que el por el grabador
29/06/2016 #86

Avatar de Daniel Meza

Bien, en el Pickit 2 hay una opción donde se puede configurar manualmente los bits que definen el tipo de oscilador a usar. Es cuestión de modificar esos bits. En la hoja de datos del respectivo micro en la sección "Configuration bits" están los valores que deben de tomar para configurar uno u otro oscilador.

Otra cosa, el problema que mencionas me suena a un problema con la entrada del voltaje de programación y VCC del micro. De igual forma el Pickit2 cuenta con la opción "Vpp first", con esto, el programador coloca VPP en MCLR antes de VDD, así se evita que el micro comience a ejecutar el programa cuando se está configurado el oscilador interno.

Este tema ya se ha tratado aquí en el foro y se dan otras alternativas.

Saludos
30/06/2016 #87

Avatar de banistelrroy

Gracias ya pude compilar y gracias por la ayuda .....configure de 2 formas modificado el archivo INC del pic dentro de pbp y desde el pickit 2
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.