Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

22/09/2016 #121
Moderador

Avatar de D@rkbytes

dosekk dijo: Ver Mensaje
Cierto, subí otro código que no era xD jejeje
La variable "tempC" la estás manejando como un arreglo, por eso el compilador no te permite hacer esa comparación.
Podrías trabajarlo cómo puntero, "if(*tempC<minimo)PORTE=0X01;" aunque de la forma en que vienes manejando los datos, no creo que funcione.
También puedes comparar un elemento, (El elemento que contenga la temperatura deseada) o varios elementos con un bucle for.

Por cierto, en ésta instrucción estás terminando con dos puntos:
Código PHP:
    if(tempC>maximo)PORTE=0X02
24/09/2016 #122


ya hice que funcione jejeje gracias por todo, ahora viene una pregunta ¿Puedo conectar un modulo bluetooth y al mismo tiempo el max232 por los pines rx y tx del pic? lo que pasa es que tengo que mandar los datos de la temperatura a mi celular y a la pc..
24/09/2016 #123
Moderador

Avatar de D@rkbytes

Podría ser, pero sería mejor que usaras otros pines y para alguno uses RS-232 por software.
25/09/2016 #124


no tendrías un ejemplo en MikroC de como puedo configurar otros pines para que hagan la función de la comunicación serial???

Para que me de una idea mas o menos..
25/09/2016 #125
Moderador

Avatar de D@rkbytes

No uso ese compilador, pero posiblemente la instalación incluya algún ejemplo.
25/09/2016 #126

Avatar de ruben90

El compilador tiene una librería llamada UART que permite asignar los pines TX y RX a cualquier pin del microcontrolador. Hay una pestaña en la parte izquierda del compilador llamada "Library Manager", busca la librería que te comento y clic sobre el signo (+). Te mostrara las funciones correspondiente a la librería, doble Clic sobre cualquiera y te mostrara una ventana de ayuda explicando cada función. Para futuras referencias descarga el manual de usuario del compilador, la versión en ingles, es gratuita y trae muchos ejemplos.

01/07/2017 #127


Una consulta estoy empezando a usar MicroC PRO for PIC y el tema es LCD cuando envio el dato tipo FLOAT valor = 0.125 .... en pantalla me imprime el valor de la imagen.
Lo que digo es que en otro compilador como PIC C eso no ocurria osea te da chance a modificar incluso la cantidad de datos despues del punto decimal y no se tenia que hacer conversion de dato como el FloatToStr(valor,x)....
Ahora estoy usando este compilador porque lo necesito por temas de curso.

Ojo: No tomar en cuenta el dato ADC = 573, ya que la aplicacion era tomar datos analogicos y mostrarlo en una lcd pero tengo problemas con la conersion FloatToString.
Imágenes Adjuntas
Tipo de Archivo: jpg lcd_duda.jpg (35,3 KB (Kilobytes), 11 visitas)
02/07/2017 #128
Moderador

Avatar de D@rkbytes

ericl dijo: Ver Mensaje
Una consulta. Estoy empezando a usar MikroC PRO for PIC y el tema es LCD cuando envío el dato tipo FLOAT valor = 0.125, en pantalla me imprime el valor de la imagen.
Otro de los problemas de mikroC.
ericl dijo: Ver Mensaje
Lo que digo es que en otro compilador como PIC C, eso no ocurría.
O sea, te da chance a modificar incluso la cantidad de datos después del punto decimal y no se tenía que hacer conversión de dato como el FloatToStr(valor,x)
Ahora estoy usando este compilador porque lo necesito por temas de curso.
En mikroC se puede obtener la cantidad de dígitos después del punto, poniendo en 0 algún vector del arreglo que se usa como búfer.
Por ejemplo: buffer[4] = 0; y a continuación se pasa a la función de conversión.
Así se mostrarán dos dígitos después del punto.

Cuando termine el curso, cambia inmediatamente de compilador.

ericl dijo: Ver Mensaje
Ojo: No tomar en cuenta el dato ADC = 573, ya que la aplicación era tomar datos analógicos y mostrarlo en una lcd, pero tengo problemas con la conversión FloatToString.
Prueba de esta forma, evitando usar FloatToStr y mejor ir extrayendo las fracciones.
Código PHP:
void main (void)
{
    
unsigned int valor_adc;
    
long voltaje;
    
char fracc, *msj " Voltios";

    
lcd_init();
    
lcd_cmd(_LCD_CURSOR_OFF);

    
ANSEL 0x01;            // Canal 0
    
adc_init();

    while (
1)
    {
        
valor_adc adc_read(0);
        
voltaje = ((long5000 valor_adc);
        
voltaje /= 1024;
        
fracc voltaje 1000;
        
lcd_chr(1,1fracc 48);
        
lcd_chr_cp('.');
        
fracc = (voltaje 100) % 10;
        
lcd_chr_cp(fracc 48);
        
fracc = (voltaje 10) % 10;
        
lcd_chr_cp(fracc 48);
        
fracc voltaje 10;
        
lcd_chr_cp(fracc 48);
        
LCD_Out(16msj);
        
delay_ms(100);
    }

10/07/2017 #129


Gracias D@rkbytes el codigo es efectivo =)... Cuando termine el curso pasare a usar MPLAB en xc8, sera recomendable???
10/07/2017 #130
Moderador

Avatar de D@rkbytes

ericl dijo: Ver Mensaje
Gracias, D@rkbytes. El código es efectivo. =)
Así es. De esa forma se tiene más control sobre los dígitos y se ahorra memoria.
ericl dijo: Ver Mensaje
Cuando termine el curso pasaré a usar MPLAB en xc8.
¿Será recomendable?
Sí es recomendable, pero tendrás que aprenderte muy bien las hojas de datos de los microcontroladores.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.