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

Temas similares

Hace 3 Semanas #41

Avatar de callecuatro1976

Estoy probando esta función:
Código:
 void funcion(){ 
  if (input(pin_a6)==0){
      while(!input(PIN_a6));         
   output_HIGH(pin_b4);
 delay_ms(50);
 }
   if (input(pin_a6)==1){
      while(!input(PIN_a6));
   output_low(pin_b4);
   delay_ms(50);
  }
 }
Hace 3 Semanas #42

Avatar de roberttorres

callecuatro1976 dijo: Ver Mensaje
Estoy probando esta función:
Código:
 void funcion(){ 
  if (input(pin_a6)==0){
      while(!input(PIN_a6));         
   output_HIGH(pin_b4);
 delay_ms(50);
 }
   if (input(pin_a6)==1){
      while(!input(PIN_a6));
   output_low(pin_b4);
   delay_ms(50);
  }
 }
lo estas haciendo mal, con esas sentencias al pulsar el botón encenderá, y al soltarla se apagara, prueba de esta forma:
Código:
 void funcion(){
 while(!input(PIN_A6)){                             
   output_toggle(PIN_B4);
   while(!input(PIN_A6));        
   }  
 }
Hace 3 Semanas #43

Avatar de callecuatro1976

Si ya me funciona solo tengo unos tildes en el programa que hicimos lo subo si alguien me puede dar una mano para ver porque se me tilda cuando activo el pulsador para que encienda el led por el pin b4 , gracias a todos por la ayuda
Archivos Adjuntos
Tipo de Archivo: rar voltimetro 4 lineas pulsadores.rar (2,4 KB (Kilobytes), 6 visitas)
Hace 3 Semanas #44

Avatar de callecuatro1976

Y tengo otro problema con mi fuente cuando la apagó y enciendo arranca al máximo de tensión y tendría que guardar el último valor en pantalla y cuando enciende mostrar ese otro problema más a resolver con su ayuda...
Hace 3 Semanas #45

Avatar de papirrin

pusiste el on/off del regulador con un transistor no?

inicialo apagado cuan el pic arranque, y guarda el ultimo valor del pwm en la eeprom.. eso no es complicado..
Hace 3 Semanas #46

Avatar de callecuatro1976

Si lo puse con un transistor.
esto estuve pensando si conecto un pin x y coloco un diodo y un capacitor para aislarlo y coloco un capacitor mas grande en la alimentación del pic para que cuando se apague la fuente tarde un segundo para leer el pin x que si esta a cero grabe la memoria y como hago que cuando este a uno la lea?

void energia()
{
int16 cont;
if(input(pin_xx)==0){

cont++;
delay_ms(5);
if (cont >50){

write_eeprom(00,ciclo_activo ); // guardo el dato ciclo activo
delay_ms(50);
cont = 0;
}
ciclo_activo =read_eeprom(00); // paso el dato a la variable ciclo_activo
cont=0;
delay_ms(50);
establecer_ciclo(ciclo_activo);
}
Hace 2 Semanas #47

Avatar de roberttorres

callecuatro1976 dijo: Ver Mensaje
Si lo puse con un transistor.
esto estuve pensando si conecto un pin x y coloco un diodo y un capacitor para aislarlo y coloco un capacitor mas grande en la alimentación del pic para que cuando se apague la fuente tarde un segundo para leer el pin x que si esta a cero grabe la memoria y como hago que cuando este a uno la lea?

void energia()
{
int16 cont;
if(input(pin_xx)==0){

cont++;
delay_ms(5);
if (cont >50){

write_eeprom(00,ciclo_activo ); // guardo el dato ciclo activo
delay_ms(50);
cont = 0;
}
ciclo_activo =read_eeprom(00); // paso el dato a la variable ciclo_activo
cont=0;
delay_ms(50);
establecer_ciclo(ciclo_activo);
}
Buenas
No se si ya solucionaste, pero te doy una idea en cuanto a la programación, esta bien la forma de guardar el ciclo activo en la eeprom(salvo lo de leer en pin por un segundo y luego guardar me parece mucho tiempo para el pic), en cuanto al leer la memoria y establecer el ciclo activo al encenderla yo lo pondría en el Main del porgrama.
Asi:
Código:
//Cabezera del programa
 int16 cont;  

void energia()   
{
if(input(pin_B7)==0){ 
cont++;
delay_ms(1);
if (cont >10) {
write_eeprom(00,ciclo_activo ); // guardo el dato ciclo activo
delay_ms(50);
cont = 0;             
               } 
                  } 
} 
void main()
{ 
ciclo_activo =read_eeprom(00);                   
    establecer_ciclo(ciclo_activo);

While(true){

codigos
}
}
Hace 2 Semanas #48

Avatar de callecuatro1976

Voy a probar ahora como conecto el pin para saber cuando está baja la tensión, yo pensaba un divisor resistivo para que leea el valor más bajo antes que se apague el pic
Hace 2 Semanas #49

Avatar de roberttorres

callecuatro1976 dijo: Ver Mensaje
Voy a probar ahora como conecto el pin para saber cuando está baja la tensión, yo pensaba un divisor resistivo para que leea el valor más bajo antes que se apague el pic
También podrías leer por por un puerto con adc y si el voltaje es menor, guarda en la memoria el ciclo activo.
en ese caso seria If (adc < 200) {write_eeprom(00,ciclo_activo )}
Hace 2 Semanas #50

Avatar de callecuatro1976

Si ya lo probé y funciona perfectamente bien coloque un diodo que me quita los 0,7 me falta estabilizar la medición del adc para el voltimetro y probar bien el lm2576 y ya quedo mi fuente, gracias a todos este proyecto bienes de mucho trabajo mio y de los integrantes del foro les debo un buen asado a todos........
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 - 2016, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.