TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: homer22 en 18 de Junio de 2014, 09:17:53
-
buenos dias compañeros, e iniciado una serie de videotutoriales basicos donde usaremos las estructuras en c para programar algunos micros
por lo que cada ves que haga un tutorial se subiran en este post espero y les ayude en algo...saludos
TUTO 1
PIC C 1 (https://www.youtube.com/watch?v=JDayNWTrmeI)
TUTO 2
PIC C 2 (https://www.youtube.com/watch?v=ig9m-ocX14A)
TUTO 3
PIC C 3 (https://www.youtube.com/watch?v=QyL8_H-dJwI)
TUTO 4
PIC C 4 (https://www.youtube.com/watch?v=QyL8_H-dJwI)
TUTO 5
PIC C 5 (https://www.youtube.com/watch?v=MKFEXNSw45I)
TUTO 6
PIC C 6 (https://www.youtube.com/watch?v=zRxoszoqJTU)
:lol:
-
Hola Compa buen tuto para principiantes ((:-))
-
buenos dias compañeros, e iniciado una serie de videotutoriales basicos donde usaremos las estructuras en c para programar algunos micros
por lo que cada ves que haga un tutorial se subiran en este post espero y les ayude en algo...saludos
Muy buerno sus tutoriales, quisiera hacerle una consulta en mis estudios me piden hacer un programa en pic c compiler, las condiciones son
1.- Son dos datos uno entero y otro decimal (float)
2.- se deben ver en un lcd
3.- al pulsar un boton se deben variar en forma simultanea el entero en 1 y el decimal en fraccion de 1
4.- se deben guardar en memoria, el entero en int8 y el decimal en float
5.- al reiniciar el pic se debe leer la memoria y esos datos se deben visualizar en el lcd
6.- al pulsar el boton se deben variar
7.- a asi susecivamente
adjunto lo hecho
#include <16f877a.h>
#device adc = 8 // ADC a 8 bits
#use delay(crystal = 4MHz)
#include <lcd420.c>
#include <internal_eeprom.c>
#define pulsador pin_c0
#define reset pin_c1
void main (void)
{
int8 entero;
float decimal;
//leo las memorias
entero = read_eeprom(0);
read_float_eeprom(02);
lcd_init(); // Inicializar la pantalla.
while (true)
{
if(input(pulsador))
{
entero=entero + 1.9; // varia el valor.
decimal=decimal + 1.1; // Varia el valor.
}
if(input(reset))
{
lcd_init();
entero=00; //`pone a cero la cuenta.
decimal=0; // pone a cero la cuenta.
}
lcd_gotoxy(1,1);
printf(lcd_putc,"ent=");// impr
lcd_gotoxy(8,1);
printf(lcd_putc,"dec=");//imprime tem actual
lcd_gotoxy(5,1);
printf(lcd_putc,"%d",entero);//
delay_ms(100);
lcd_gotoxy(13,1);
printf(lcd_putc,"%f",decimal);
delay_ms(100);
//aqui debo escribir en memoria
write_eeprom(0,entero);
delay_ms(10);
write_float_eeprom(02,decimal);
delay_ms(10);
}
}
el ent5ero bien pero el decimal nada, me indica 00 en el lcd
Espero me pueda ayudar
Juka