Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: julioespericueta87 en 24 de Junio 2016, 19:32

Título: Word to string, string a entero microcontrolador PIC18f2550 con software Mikro C
Publicado por: julioespericueta87 en 24 de Junio 2016, 19:32
Hola. Actualmente estudio mecatronica. Llevo una materia de microcontroladores. Usamos el PIC18f2550, con el softwware Mikro C, el cual utiliza el lenguage de programacion C. Es por eso que empece el curso ofrecido en esta pagina llamado C desde cero.

Voy en la leccion 21. Pero hay ciertas cosas que no entiendo todavia.

1.-Cual es la diferencia entre word y string? (pense que ambos se referian a texto)

2.- Trabajo en un proyecto el cual lee una de las entradas analogicas del PIC, el profesor de la clase hizo lo suiguiente:

////// Leer una entrada analogica
            if(buffer[0]=='I')
            {
                WordToStr(ADC_Read(0),van);// Lee el valor de AN0 y lo cambia a String
                Strcpy(buffer,van); //buffer = van
                dataReceivedSize = 6;// numero de bites a regresar a la PC
            }

Utilizo WordToStr porque dice que la senal analogica proveniente del pic viene en formato word y que lo necesitabamos cambiar a texto para poder verlo en nuestro emulador de terminal  "Tera Term".  Y a medida que variamos la entrada analogica nos muestra un numero entre 0 y 1023.

Ahora, como lo que realmente queremos leer es una senal entre 0 y 5 volts.
El profesor nos pidio que realizaramos una opracion matematica para en lugar de tener un rango ente 0 y 1023, tuvieramos el rango entre 0 y 5.
El problema es que no puedo aplicarle una operacion matematica a la variable van, ya que es cadena de tecto y no un entero.

3.-Mi pregunta es? como lo cambio a entero para aplicarle la opracion matematica y luego regresarlo a cadena de texto para mostrarlo en el Tera Term.

4.- Podria aplicarle la operacion matematica directamente a la informacion proveniente del pic antes de transformarlo a cadena de texto, para luego ya trasformarlo a cadena de texto y hacer asi solo un cambio de formatoy no 4?

Gracias. Espero no molestarlos con mi pregunta, pero es que soy nuevo en esto de la programacion.
Título: Re:Word to string, srting a entero
Publicado por: javi in the sky en 29 de Junio 2016, 15:59
Hola en C no hay words ni strings, aunque hay algunas funciones para el manejo de cadenas. La única forma de manejar texto es como arrays o arreglos de caracteres.

Cada carácter lleva asociado un código numérico, puedes verlo en tu sistema ejecutando este programa:

Código: [Seleccionar]
#include stdio.h;
void main(){
  int i; //variable contador para el bucle
  printf(“C%cdigo\t-\tLetrann”, 162);
 
  for(i=0; i<256; i++)//bucle for que recorre los 256 caracteres ASCII
    {
      printf(“%d\t-\t%c\n”, i, i);//imprimimos el número y el caracter
    }
}

Puedes obtener el valor numérico asociado a un carácter de esta forma: int a_as_int = (int)'a';

De esta manera tienes el código numérico de la letra a.

Hasta luego