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

Temas similares

28/07/2012 #1


error para utilizar funciones con convertidor a/d con pic 16f887
hola!!

la idea del laboratorio es hacer las luces como las del auto fantastico y la velocidad esta controlada por una foto resistencia, entre mayor intensidad de luz mayor velocidad, además hay otras velocidades que se controlan con un dip switch. La programacion funciona antes de agregarle la parte de las velocidades con el dip switch. Esta es la programacion que tngo y los errores que me generan

Código PHP:
#include <htc.h>
#define _XTAL_FREQ 4000000

float conversion(){
    
ADCON0,GO1;
    
unsigned char datoad ADRESH;
    
int suma;
    
float Resultado;

    
datoad <<8;
    
sumadatoad ADRESL;
    
    
Resultado suma/2;
    
    return(
Resultado);
}


 
void tiempo(){
        
char a;
        
        
int cantidad =coversion(); 

        for(
a=0;a<=cantidad;a++)
        
__delay_ms(1);
}

char leds () {
    for(
int i=1;<= 128;i*=2){
                
PORTB=i;    
                
tiempo ();
            }
    for(
int i=128;i>=1;i/=2){
                
PORTB=i;
                
tiempo ();
            }
    return (
leds);        
}


void main () {
TRISB 0;
TRISA 255;
TRISC 255;
ANSEL 0X04//PARA HABILITAR PUERTA ANALOG
ANSELH 0;
ADCON0 0b11001001;
ADCON1 0b10000000;

int i;
    while (
1) {
        
leds ();

        switch (
PORTC){
            case 
:    for(i=1;<= 128;i*=2){

                        
PORTB=i;            // falta la ldr
                        
[COLOR="red"]tiempo ()[/COLOR]/ 1024;
                        }
                        for(
i=128;i>=1;i/=2){
                        
PORTB=i;
                        [
COLOR="red"]tiempo ()[/COLOR]/ 1024;
                        }        
                        break;
            case 
:   for(i=1;<= 128;i*=2){
                        
PORTB=i;        
                        [
COLOR="red"]tiempo ()[/COLOR]/2048;
                        }
                        for(
i=128;i>=1;i/=2){
                        
PORTB=i;
                        [
COLOR="red"]tiempo ()[/COLOR]/2048;
                        }
                        break;
            default : 
leds ();
         }
    
    }

Código:
Error   [209]  148.16 type conflict
Error   [209]  152.16 type conflict
Error   [209]  157.15 type conflict
Error   [209]  161.15 type conflict
esos errores me los pone cada vez que utilizo la función "tiempo" dentro del switch en cada uno de los cases y ya llevo rato con esto y no se la verdad que sera por favor necesito ayuda y ya estoy desesperada
28/07/2012 #2
Moderador

Avatar de Chico3001

conversion() es flotante y tu variable cantidad dentro de la funcion tiempo es INT... necesitas mandar peras con peras y manzanas con manzanas...

o haces conversion() de tipo INT (lo mas recomendado) o haces cantidad tipo FLOAT
29/07/2012 #3


gracias por responder.... ya corregí esa parte pero aun sigue tirando el mismo error... no estoy segura de si se puede utilizar la funcion tiempo y hacer operaciones con ella, esa es una duda que me surgió.. pero no se si sera el problema :s
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.