TODOPIC

Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: karlosguay en 21 de Agosto de 2003, 06:48:00

Título: Empezando con PBP, por qué no me funciona??
Publicado por: karlosguay en 21 de Agosto de 2003, 06:48:00
Hola a todos.
Estoy empezando en esto y seguro que es una tontería, pero os lo cuento. Tengo el MPLAB ICD2 y una tarjeta demo, DM183020, que tiene el 18F8720 y leds conectados al puerto d. Tengo un programita para encender uno, pero no hace nada:


led6        VAR   PortD.6  " Baud select pin
TRISD=%00000000" PortD = salida
otravez:
high led6
PAUSE 3000             " espero
low led6
pause 3000
goto otravez
end


No se lo que estoy haciendo mal. En el MPLAB IDE, selecciono en "Debugger/"Select tool" el ICD2. Luego "Debugger/program" y luego "Debugger/Run". Y me dice que "Running Target", pero no hace nada

Alguien me puede dar una pista de lo que hago mal???
Gracias anticipadas
Título: RE: Empezando con PBP, por qué no me funciona??
Publicado por: RGL en 21 de Agosto de 2003, 08:11:00
El micro que estas usando no lo he usado nunca, pero puedo darte algunas pistas que pueden ser utiles en la busqueda del error.

1.- Supongo que no estras haciendo la grabacion con bootloader, de ser asi deberias a/adir una linea al principio con

Define   LOADER_USED   1

2.- Desconozco el micro pero al igual que en el 16F877 para usar el puerto A como digital hay que poner un valor en ADCON. Deberias comprobar si el puerto D tiene alguna funcion que se pueda conmutar de estado.

3.- Los fusibles de programacion: el oscilador, el MCLR, etc debes ajustarlos bien.

4.- Comprueba que se graba bien con otro ejecutable que tengas que funcione, por si esta fallando el hard.

Saludos
Ricky
Título: RE: Empezando con PBP, por qué no me funciona??
Publicado por: karlosguay en 22 de Agosto de 2003, 10:27:00
Gracias Ricky:
He probado lo que me dices, y me queda así el código:

define loader_used 1
define osc 20
TRISD=%00000000" PortD = salida
memcon = %10000000 "system bus disabled
led6        VAR   PortD.6  " pin con led
otravez:
high led6
PAUSE 3000             " espero
low led6
pause 1000
goto otravez
end

Me he empollado la data sheet y no veo nada mas, pero no consigo que funcione. Tengo la duda de la placa, pero no tengo todavía ningún programa que sepa que funciona con ese micro (es lo primero que hago). Voy a buscar algo.

Gracias
Título: RE: Empezando con PBP, por qué no me funciona??
Publicado por: Sispic en 22 de Agosto de 2003, 11:35:00
Asegurate que tienes bien definido el tipo de oscilador que utiliza .

Asegurate que funcione el oscilador de la placa .

Con un led por ejemplo conectado a clkout  tiene que lucir menos que si se conecta a +5 .

No se con que lo compilas pero asegurate que usa PBPPIC18.lib

haber si rula .
Título: RE: Empezando con PBP, por qué no me funciona??
Publicado por: RGL en 23 de Agosto de 2003, 08:09:00
Otra cosa que es importante es usar el MPASM (de Microchip) en vez del MP de Melabs. El MP no funciona con la serie 18. No se si esto lo has tenido en cuenta ya que por defecto suele utilizar el MP y entonces no funcionaria.

Saludos
Ricky
Título: RE: Empezando con PBP, por qué no me funciona??
Publicado por: Eduagra en 28 de Agosto de 2003, 05:08:00
Prueba a añadir la siguiente línea al principio del programa:

CMCOM=7

Esta orden define todos los pines como DIGITALES, el mismo problema lo tuve yo con el 16F628 y leyendo el manual del PBP probé esta orden y funcionó

Salu2