Autor Tema: creacion de funcion, problema con RA4  (Leído 2087 veces)

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

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
creacion de funcion, problema con RA4
« en: 14 de Mayo de 2006, 17:11:25 »
Hola saludos a todos, tengo una duda al programar en ccs, hago una función que me provoca un error, "Expression must evaluate to a constant"

la funcion es:

void parpadeo(int pin)
{
   output_high(pin);
   delay_ms(250);
   output_low(pin);
   delay_ms(250);
}

donde pin es el pin en el cual se realizará el parpadeo, que es enviado por el prog principal, por ejemplo:
parpadeo(PIN_A5);

que falta en esta función o que debo corregir para que funcione??? intente varias cosas y no me funciona, por si fuera necesario defini con set_tris_x cuales serian entradas y todo, no me olvide de nada creo, ni del clock, ni fuses, talvez algo incorrecto, ayuda por favor!

y tengo otro problema, hago parpadear RA4, y al momento de la simulación en proteus, el led conectado en RA4 no parpadea, le di en el programa un valor alto al principio y tampoco encendía, que debo hacer para que funcione??

trabajo con el pic16f877a
muchas gracias por la ayuda, chao.
.

Desconectado Yosupicprog

  • PIC10
  • *
  • Mensajes: 36
Re: creacion de funcion, problema con RA4
« Respuesta #1 en: 14 de Mayo de 2006, 17:33:55 »
Hola amigo,

Dos tips para que salgas del yoyo en que te metistes.... para poder configurar el púerto A debes meterte con el registro ADCON1 (Analog To Digital Register Control 1), en el cual le dices al pic que tu puerto A sera utilizado como entradas y salidas digitales, porque recuerda que siempre que se enciende el pic, o lo rteseteas el puerto A se coloca como entradas todas y analógicas.... abajao te coloco en assembled como configurar el puerto A:





   BSF     STATUS,RP0   ;CAMBIO A BANCO 1                   

                MOVLW   B'000000'                   ;todo el puerto A colocado como salida   
                MOVWF   TRISA               
           MOVLW   b'10000110'     ;TODAS DOGITAL I/O, A0-A5= I/O DIGITAL
   MOVWF   ADCON1
   
   BCF     STATUS,RP0   ;CAMBIO A BANCO 0   



Por último recuerda que el RA4 es un pin que se mantiene como colector abierto, pór lo tanto debes colocarle una resistencia de Pull UP para que puedas ver el led encender..¡¡¡


Suerte...¡¡¡¡
Ing. Yosu Izaguirre R.
yosupicprog@yahoo.com
yosupicprog@hotmail.com
Maracaibo Estado Zulia, VENEZUELA..¡

PROGRAMARLOS ES MI HOBBYE-EL LIMITE ES TU IMAGINACION

Desconectado Azicuetano

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1020
    • Aplicaciones Electrónicas en Alicante.
Re: creacion de funcion, problema con RA4
« Respuesta #2 en: 14 de Mayo de 2006, 20:12:17 »
Hola Cryn!

En tu función 'void parpadeo(int pin)' el parametro que espera recibir cuando la llamas es un INT. No se yo que puede interpretar el compilador si en lugar de pasarle un númerode 8 bits le pasas 'PIN_A5'.

En referencia al problema  que comentas del RA4 mira esto:

http://www.todopic.com.ar/foros/index.php?topic=8121.0

Mucha suerte!


Un saludo desde Alicante.

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: creacion de funcion, problema con RA4
« Respuesta #3 en: 14 de Mayo de 2006, 23:45:24 »
Si, ya logre solucionar el problema en RA4, muy similar a la forma en la cual explican por el enlace que me dejaste, muchas gracias; en cuanta a la funcion que quiero crear, es que la usare muchas veces, por eso quiero crearla, para evitar mucho codigo, pero el complilador no me lo permite, y si se fijan en el archivo de definicines (16f877a.h):

#define PIN_A0  40
#define PIN_A1  41
#define PIN_A2  42
#define PIN_A3  43
#define PIN_A4  44
#define PIN_A5  45

#define PIN_B0  48
#define PIN_B1  49
#define PIN_B2  50
#define PIN_B3  51
#define PIN_B4  52
#define PIN_B5  53
#define PIN_B6  54
#define PIN_B7  55
por ejemplo, para mi esos son bytes, verdad?? ayuda porfavor, se puede hacer la funcion que quiero verdad????
« Última modificación: 14 de Mayo de 2006, 23:53:51 por Cryn »
.

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: creacion de funcion, problema con RA4
« Respuesta #4 en: 21 de Mayo de 2006, 12:41:39 »
vamos, yo se que ustedes son muy buenos para la programación, cual es el error, como puedo solucionarlo?? ncesito su ayuda, es solo una funcion, vamos muchachos (as); muchas gracias, chao.
.

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re: creacion de funcion, problema con RA4
« Respuesta #5 en: 21 de Mayo de 2006, 13:50:22 »
Hola Cryn, busca en el foro, ese ejemplo esta posteado como 1000 veces, no te quieren responder por la falta de ganas de trabajar que tienes, y no porque no sepan como hacerlo.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: creacion de funcion, problema con RA4
« Respuesta #6 en: 23 de Mayo de 2006, 12:58:12 »
Te juro que he buscado un monton, siempre que paso por mi pc me conecfto a internet y constantemente busco lo que necesito, a veces encuentro lo que necesito, otras no, ayer por ejemplo despues de leer tu post busque como loco sin ningun resultado, ayudame, si sabes como solucionar el problema, alguien porfavor, o conque palabras claves puedo buscar, ya use función y nada, delay y sale cualquier post, parametro y nada, bueno nose como podria especificar, si alguien, pues muy agradecido estare, de antemano muhcas gracias.
chau.
.