Autor Tema: parpadear leds con hitech  (Leído 2922 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado black_flowers

  • PIC18
  • ****
  • Mensajes: 450
parpadear leds con hitech
« en: 15 de Julio de 2007, 14:29:18 »
hola estoy intentando empezar con hitech picc y con el típico programa de encender leds. He hecho esto pero me manda dos errores:

#include <pic1684.h>
#include "delay.h"
void main(){
TRISA=0;
PORTA=0;

while (1);
{PORTA=0;
DelayMs(10);
PORTA=1;
DelayMs(10);
}
}



Executing: "C:\HT-PIC\BIN\PICC.EXE" -C -E"parpadeo_leds.cce" "parpadeo_leds.c" -O"parpadeo_leds.obj" -I"C:\HT-PIC\samples\delay" -Zg9 -O -ASMLIST -Q -MPLAB -16F84A
Executing: "C:\HT-PIC\BIN\PICC.EXE" -E"parpadeo_leds_hitech.lde" "D:\PIC\Fuentes\16F84A\C\parpadeo leds hi-tech\parpadeo_leds.obj" -M"parpadeo_leds_hitech.map" -O"parpadeo_leds_hitech.cof" -O"parpadeo_leds_hitech.hex" -Q -MPLAB -16F84A
Error[000]   : undefined symbol:
Error[000]   : _DelayMs (D:\PIC\Fuentes\16F84A\C\parpadeo leds hi-tech\parpadeo_leds.obj)
BUILD FAILED: Sun Jul 15 19:28:17 2007[/i]


¿veis algún error en el código así a simple vista?

1 saludo. :-)

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: parpadear leds con hitech
« Respuesta #1 en: 15 de Julio de 2007, 21:29:29 »
a mi paso lo mismo, sucede que debes colocar el archivo delay.h dentro de la carpeta donde esta alojado tu programa. El compilador busca el include delay.h y como no lo encuentra no sabe que es delay_Ms. Este aspecto no me gusta del hitech  :x
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado vszener

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2395
Re: parpadear leds con hitech
« Respuesta #2 en: 16 de Julio de 2007, 15:11:04 »
Tienes que poner la libreria de delays.h dentro d ela carpeta de proyectos porque así tú lo has querido al poner dobles comillas  dicha librería, si la pones entre triangulitos <>, el compilador buscará en la carpeta propia de drivers.


Suerte!!! ;)
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado black_flowers

  • PIC18
  • ****
  • Mensajes: 450
Re: parpadear leds con hitech
« Respuesta #3 en: 21 de Julio de 2007, 18:55:28 »
al final lo he solucionado, eso qu eme habeis puesto es cierto, pero la razón por la que no funcionaba era porque había que incluír el "delay.c" y no el "delay.h"

gracias, un saludo.  :-) :-)

Desconectado certikc

  • PIC10
  • *
  • Mensajes: 3
Re: parpadear leds con hitech
« Respuesta #4 en: 18 de Abril de 2008, 17:54:28 »
eso no es cierto, yo tengo ese mismo programa con el archivo incluido delay.h y funciona perfectamente, de hecho si incluyes la carpeta delay.c sola no funciona y te muestra errores parecidos o iguales al qeu tu dices.

#include "init.h"   // included by C-Wiz
#include <htc.h>
#include"delay.h"

void
main(void)
{
   init();   // función generada por C-Wiz, en donde se encuentran configuradas las palabras de configuración
   PORTB=0X00;
   while (1){
      PORTB=0b00000001;
      DelayMs(200);
      PORTB=0b00000010;
      DelayMs(200);
      PORTB=0b00000100;
      DelayMs(200);
      PORTB=0b00001000;
      DelayMs(200);
      PORTB=0b00010000;
      DelayMs(200);
      PORTB=0b00100000;
      DelayMs(200);
      PORTB=0b01000000;
      DelayMs(200);
      PORTB=0b10000000;
      DelayMs(200);
      
      
   }
}


 

anything