Microcontroladores - Funcion para incrementar/decrementar valores con pulsadores

   
Vista:

Funcion para incrementar/decrementar valores con pulsadores

Publicado por Roberth (1 intervención) el 27/12/2013 20:05:30
Muy buenas a todos... Espero alguien me pueda ayudar!!

Estoy realizando una funcion en pcw ccs para incrementar y decrementar el valor de una variable pero al ejecutarla solo me visualiza el numero uno...lo que quiero es que la funcion me devuelva el valor de la variable para asi poder asignarle este valor a otra variable pero no se como hacer.

A continuacion pongo el codigo para explicarme mejor:

#include <18f4550.h>
#fuses HS,NOWDT,NOLVP,NOWRT,NOWRTD,NOWRTC,NOWRTB,NOEBTR //Configuracion de los fusibles
#use delay(clock=20000000) //Frecuencia de reloj
#use fast_io(B)
#use standard_io(D)
#use standard_io(E)
//Inclusion de librerias
#include <lcd4x20.c> //Libreria para controlar el lcd 20x4

int cantidad(void) //Funcion para incrementar/decrementar valor
{
int i=0;
do
{
}while(input(PIN_B6)==1);
do
{
if(!input(PIN_B6))
{
do
{
}while(!input(PIN_B6));
i++;
if(i>9)
{
i=9;
}
}
else if (!input(PIN_B7))
{
do
{
}while(!input(PIN_B7));
i--;
if(i>9)
{
i=0;
}
}
return(i);
//! lcd_gotoxy(1,3);
//! printf(lcd_putc, "Cantidad: %d",i);
//! printf(lcd_putc, "\b");
}while(TRUE);

}

void main()
{
int x;
lcd_init();
//cantidad();
x=cantidad();
lcd_gotoxy(1,1);
printf(lcd_putc, "Cantidad: %d",x);
printf(lcd_putc, "\b");
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder