Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Meta

#641
Hola

Me respondo a mi mismo.

int estadoBoton=0; // Guardará el estado del botón HIGH o LOW.
char caracter;
String comando;
int flag = 0;

void setup()
{
  pinMode(13,OUTPUT); // Donde está el Led 13.
  pinMode(8,INPUT); // Entrada digital donde está el pulsador.
  Serial.begin(115200);
}

void loop()
{
    estadoBoton=digitalRead(8); // Leer entrada digital número 8.
    switch (estadoBoton)
{
  case 0:
      if(flag == 1){
      flag= 0;
      digitalWrite(13,HIGH);
      Serial.println("HIGH");
      }
      break;

  case 1:
      if(flag == 0){
      flag= 1;
      digitalWrite(13,LOW);
      Serial.println("LOW");
    }
      break;
      default:
      Serial.println("Error desconocido");
}
}


O este otro.
byte estadoBoton = 0; // Guardará el estado del botón HIGH o LOW.
byte estadoBotonAnt = 0;
long lastDebounceTime = 0;
char caracter;
String comando;

void setup(){
  pinMode(13,OUTPUT); // Donde está el Led 13.
  pinMode(8,INPUT);   //
  Serial.begin(115200);
}
void loop() {
    estadoBoton = digitalRead(8); // Leer entrada digital número 8.
    // Si el pulsador está pulsado, se enciende el Led 13 y
    // envía comando HIGH por el puerto serie.
  if ((millis() - lastDebounceTime) > 100)
  {
    if (estadoBoton == HIGH && estadoBotonAnt == LOW) {
        digitalWrite(13,HIGH);
        Serial.println("HIGH");
    }
       // De lo contrario, Led 13 epagado y envía LOW al puerto serie.
         if (estadoBoton == LOW && estadoBotonAnt == HIGH) {
      digitalWrite(13,LOW);
      Serial.println("LOW");   // sin el agregado de este if tendrian cientos de LOW en el MOnitor Serie
    }
    estadoBotonAnt = estadoBoton;
  }
}


Saludos, ;)
#642
Hola:

Hice un código de prueba sobre encender y apagar un Led 13 con Arduino UNO r3, con un pulsador en entrada digital número 8. Este es su código.

int estadoBoton=0; // Guardará el estado del botón HIGH o LOW.
char caracter;
String comando;

void setup()
{
  pinMode(13,OUTPUT); // Donde está el Led 13.
  pinMode(8,INPUT); // Entrada digital donde está el pulsador.
  Serial.begin(115200);
}

void loop()
{
    estadoBoton=digitalRead(8); // Leer entrada digital número 8.
    // Si el pulsador está pulsado, se enciende el Led 13 y
    // envía comando HIGH por el puerto serie.
if (estadoBoton == HIGH)
    {
      digitalWrite(13,HIGH);
      Serial.println("HIGH");
    }
// De lo contrario, Led 13 epagado y envía LOW al puerto serie.
else
    {
      digitalWrite(13,LOW);
      Serial.println("LOW");
    }
}



He intentado hacer la misma función pero sigue con el mismo problema de enviar mensajes a lo loco como si fuera un bucle.

int estadoBoton=0; // Guardará el estado del botón HIGH o LOW.
char caracter;
String comando;

void setup()
{
  pinMode(13,OUTPUT); // Donde está el Led 13.
  pinMode(8,INPUT); // Entrada digital donde está el pulsador.
  Serial.begin(115200);
}

void loop()
{
    estadoBoton=digitalRead(8); // Leer entrada digital número 8.
    // Si el pulsador está pulsado, se enciende el Led 13 y
    // envía comando HIGH por el puerto serie.
     
    switch (estadoBoton)
{
  case 0:
      digitalWrite(13,HIGH);
      Serial.println("HIGH");
      break;
     
  case 1:
      digitalWrite(13,LOW);
      Serial.println("LOW");     
      break;
      default:
      Serial.println("Error desconocido");
}
}


Para quitar el bucle, hice esto de otra manera pero no funciona nada de nada.
int estadoBoton=0; // Guardará el estado del botón HIGH o LOW.
char caracter;
String comando;

void setup()
{
  pinMode(13,OUTPUT); // Donde está el Led 13.
  pinMode(8,INPUT); // Entrada digital donde está el pulsador.
  Serial.begin(115200);


     
    switch (estadoBoton)
{
  case 0:
      digitalWrite(13,HIGH);
      Serial.println("HIGH");
      break;
     
  case 1:
      digitalWrite(13,LOW);
      Serial.println("LOW");     
      break;
      default:
      Serial.println("Error desconocido");
}
}

void loop()
{
        estadoBoton=digitalRead(8); // Leer entrada digital número 8.
    // Si el pulsador está pulsado, se enciende el Led 13 y
    // envía comando HIGH por el puerto serie.
}


A parte de encender un Led, no hay ningún problema, si al enviar mensaje de texto como HIGH o LOW de forma muy repetitiva hasta colapsar el otro programa que tengo al recibir mensajes. El otro programa en un ordenador de sobre mesa con Visual Studio 2015.

¿Hay alguna solución?

Un cordial saludo.
#644
Hola:

Busqué la solución.

[youtube=640,360]https://www.youtube.com/watch?v=AP8Tz9RfbxE[/youtube]

Código (cpp) [Seleccionar]
#include "MyForm.h"

using namespace System;
using namespace System::Windows::Forms;

[STAThread]
void main(array<String^>^ args)
{
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
Project1::MyForm form;
Application::Run(%form);
}


Saludos.
#645
Cita de: kondrag_X1 en 13 Noviembre 2015, 12:23 PM
tienen buena pinta.
ya me imagino que no solo es la electrónica además hay todavia no se si hacer con una FPGA. tirando de micro.


PAra lo que quieres hacer, hasta co un simnple PIC te funciona, lo que no me he metido en ese mundo. No necesitas un FPGA ni loco.
#646
Hola:

El tuto es muy cerrado porque se dedica a una cosa específica, ejjejeje. El mejor tutorial que he hecho ya par aun PIC16F84A en la época es este.

http://electronica-pic.blogspot.com.es/2008/11/electrnica-pic.html

Poco a poco iré haciendo documentación con Arduino con diferentes lenguajes y tecnologías. Visual C#/C++/VB .net y con WPF incluido. Así la gente usará el qmás que le guste o necesite para sus proyectos.

Como puedes ver, este es el primer documento directo y sencillo llamado:

1) Encender y apagar un Led con Arduino y Visual Studio 2015.

Luego se hará más tutoriales que yo crea conveniente o lo que me pida la gente. El segundo se trata de recibir entradas digitales, por ejemplo, 4 interruptores como entradas digitales a Arduino y lo muestre en un label o etiqueta. Se llamará.

2) Lectura de entradas digitales con Arduino y Visual Studio 2015.

Algunos más que haré.

3) Salida analógica con Arduino y Visual Studio 2015. (Control iluminosidad de un Led y un servo motor).
4) Entrada analógica con Arduino y Visual Studio 2015. (Con potenciómetro o sensores de temperatura y humedad como ejemplos).
5) Enviar comandos y mensajes al LCD con Arduino y Visual Studio 2015.
6) Recibir mensajes con Arduino y Visual Studio 2015. (Recibir mensajes de textos).
7) Control LCD hitachi hd44780 con Arduino. (Como funciona por dentro toda sus funciones y creando menús en ella).

Estos tutoriales lo tengo en mente, cuando los acabe, ya que requiere tiempo porque usa mucho lenguaje de programación diferentes que será publicada en PDF y XPS, haré tutoriales ya no tan cerrados como crees, así que, les dejo que me pidan qué tutoriales quieren que haga haciendo referencia con Visual Studio.

¿Alguna sugerencia? :)

Un cordial saludo.

PD: Un amigo hizo el dron, tienes que aprender muchas cosas sobre el vuelo de los drones antes de programar algo, es más complicado de lo que parece.
#647
Hola:

Si, Java es tedioso, mira en la página 337 de este PDF que estoy haciendo también. Este si que es un tutorial.

https://www.dropbox.com/s/ha07f67zieee7v6/Interfaz%20control%20reles%20Arduino.pdf?dl=0

Saludos.
#648
Hola:

Tanto en Visual Express y Community de C++ 2015 me da este error.



Ocurre cuando agrego un nuevo elemento en UI, luego Windows Form. He desinstalado e instalado de nuevo varias veces llevándome mucho tiempo y sigue igual.

¿Alguna idea?

Saludos.
#649
Hola:

Antes que nada, disculpen por las molestias.

Voy a instalar otra vez si me sal eesa opción.

Muchísimas gracias, mi muy distinguido amigo. ;)
#650
Hola:

En Visual C++2015 Express tiene la opción de elegir CLR, UI. en l aversión del 2015 no tiene nada.

1. ¿Qué es lo que ocurre?

Cada entrega me gusta menos el Visual C++ porque le quitan cosas.

Exactamente lo que quiero hacer está en la página 232 de este documento en PDF en la versión Visual C++ 2013.

Ver documento pdf (27 MB).

2. ¿Hay alguna manera de usarlo o me tengo que olvidar ya del C++?

Un cordial saludo.

Edito:

3. ¿Se puede coger plantillas visual studio 2013 express a visual studio 2015 express?




Hola:

En la versión Visul C++ 2013 Express encuentro las plantillas del Windows Forms como indica el proceso de como hacerlo en la imagen de abajo.


Ver zoom.

Estoy probando la versión Visual C++ 2015 Expess y no aparece nada. Como indica la imagen de abajo, no tiene plantillas y ni las puedo descargar.


Ver Zoom.

1. ¿Hay alguna solución a este problema?

2. Tengo Visual C++ 2013 Express instalado también. ¿Se ppuede coger de alguna forma sus plantillas y agregarlo en el Visual C++ 2015 Express?

Saludos.