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

#371
Cita de: Once en 22 Julio 2017, 20:21 PM
Brother, te estás ahogando en un vaso de agua, PySerial está tanto para Python2 como para Python 3 (https://pypi.python.org/pypi/pyserial/3.3)y la sintaxis es la misma.

La documentación la tienes acá: http://pyserial.readthedocs.io/en/latest/shortintro.html

Cuando tengas la apliación corriendo en la consola, perocupate por la interfaz gráfica.

Saludos!

Gracias.

A intentarlo.
#372
Hola:

Tengo un archivo llamado archivo.upg y no se si puedo hacerlo con algún programa, quiero saber nombre del programa para abrirlo. Mi objetivo es sacar un archivo.bin que es el firmware de un TV.

CitarArchivos UPG disfrutan de incesante popularidad. El nombre de archivo, que contiene la extensión de archivo UPG ocasiona alguna dificultad a determinada parte de los usuarios. De hecho, tienen problemas con la correcta apertura de archivo con la extensión UPG. Se debe recordar, sin embargo, que la extensión de archivo UPG puede significar uno o más cantidad de tipos de archivo. El más popular es el Firmware Upgrade Format, pero si hay otros, con toda la seguridad, encontraras información sobre ellos, más abajo.

Merece la pena pues, que veamos de cerca el problema relativo a archivos UPG y buscar una solución.
http://es.filesupport.org/extension-de-archivo/upg

¿Alguna ayuda?

Saludos.
#373
No hablo de lógica, sino manejo de las herramientas y sus libreerías, ejjejeje.
#374
Buenas:

Hablando de C# es una cosa, Python es otra. Hice algo de C# que puedes ver aquí.

Parece ser que encontré algo, pero es para Linux y el Python 2.x cuando me interea el 3.x.
https://gist.github.com/jreisstudio/4507236
https://robologs.net/2014/07/27/tutorial-de-arduino-y-python/
https://playground.arduino.cc/Interfacing/Python

Modo gráfico hay que uno que lo hizo, precisamente es lo que quiero hacer, antes en modo consola y bajo Windows.
[youtube=640,360]https://www.youtube.com/watch?v=uWWsK0bNWmg[/youtube]

Si quiero enviar datos para apagar un Led o encenderlo, también quiero que Arduino me avise.
https://pybonacci.es/2014/01/19/leer-datos-de-arduino-desde-python/

Saber comunicación sobre puerto serie.
https://polaridad.es/configuracion-comunicaciones-serie-python-arduino/

Instalación de herramientas de desarrollo para comunicaciones serie en Python.
https://polaridad.es/instalacion-herramientas-comunicaciones-serie-python/

Voy cogiendo ideas.

Saludos.
#375
Buenas:

Empezaré la casa desde el suelo. ;)

Por ahor ahe encontrado esto:
[youtube=640,360]https://www.youtube.com/watch?v=Cpc1nUfRyto[/youtube]

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

La base es que solo quiero hacer esto:


Como dije antes, quiero empezar desde el suelo, así que será al principio tipo consola algo parecido a esto:


Con Visual studioi Community 2017, NetBeans y vete a saber cual más se puede programar en Python. No se cual es el compilador real o oficial de Python para Windwos. Sea de consola y gráfica o visual.

Saludos.
#376
Hola:

Tu en lace pone si lo abro.
CitarThis page does not exist yet. You can create a new empty page, or use one of the page templates. Before creating the page, please check if a similar page already exists.

Si es posible quiero hacer las dos tipos de interfaz. Primero modo consola y luego gráfica. ¿Es complicado?

Saludos.
#378
Buenas:

Quiero hacer un experimento de Encender un Led y apagarlo con el lenguaje Python y Arduino. Nunca lo he hecho con este lenguaje y hace tiempo que no lo toco.

He hecho hacer encender y apagar un Led con Delphi y Aruino. Puedes ver el tutorial para que te hagas una idea de que va.

¿Alguna sugerencia para hacer esto en Windows?

Saludos.
#379


Tutorial Arduino Delphi 10.2 y Puerto serie. Interfaz creado con Delphi que puedes controlar el puerto serie a Arduino encendiendo y apagando un Led, manejar el LCD y recibes mensajes hacia el PC.

El entorno Delphi con el lenguaje pascal sigue vigente en la actualidad y su uso en Arduino está creciendo cada vez más.



Código fuente de Delphi:
unit Principal;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, CPort;

type
  TForm1 = class(TForm)
    Label_Titulo: TLabel;
    Label_Mensajes: TLabel;
    Button_ON: TButton;
    Button_OFF: TButton;
    Button_COM: TButton;
    Button_Abrir: TButton;
    Memo_Mensajes: TMemo;
    Button_Limpiar: TButton;
    ComPort1: TComPort;
    procedure Button_ONClick(Sender: TObject);
    procedure Button_OFFClick(Sender: TObject);
    procedure Button_COMClick(Sender: TObject);
    procedure Button_AbrirClick(Sender: TObject);
    procedure Button_LimpiarClick(Sender: TObject);
    procedure ComPort1AfterClose(Sender: TObject);
    procedure ComPort1AfterOpen(Sender: TObject);
    procedure ComPort1RxChar(Sender: TObject; Count: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button_AbrirClick(Sender: TObject);
begin
  // Si el puerto está conectado.
  if ComPort1.Connected then
  begin
    ComPort1.Close; // Cierra el puerto.

    Button_COM.Enabled := True;
    Button_ON.Enabled := False;
    Button_OFF.Enabled := False;
  end

  else  // En caso contrario.

  begin
    ComPort1.Open;  // Abre el puerto.

    Button_COM.Enabled := False;
    Button_ON.Enabled := True;
    Button_OFF.Enabled := True;
  end;
end;

procedure TForm1.Button_COMClick(Sender: TObject);
begin
ComPort1.ShowSetupDialog; // Abre la configuración del puerto.
end;

procedure TForm1.Button_LimpiarClick(Sender: TObject);
begin
Memo_Mensajes.Clear();  // Limpia los mensajes del Memo.
end;

procedure TForm1.Button_OFFClick(Sender: TObject);
begin
ComPort1.WriteStr('Luz_OFF'); // Envía el comando "Luz_OFF" al puerto.
end;

procedure TForm1.Button_ONClick(Sender: TObject);
begin
ComPort1.WriteStr('Luz_ON');  // Envía el comando "Luz_ON" al puerto.
end;

procedure TForm1.ComPort1AfterClose(Sender: TObject);
begin
    if Button_Abrir <> nil then
    Button_Abrir.Caption := 'Abrir';
end;

procedure TForm1.ComPort1AfterOpen(Sender: TObject);
begin
   Button_Abrir.Caption := 'Cerrar';
end;

procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
var
  Str: String;
begin
  // Recibe mensajes desde Arduino.
  ComPort1.ReadStr(Str, Count);

  // Muestra los mensajes en pantalla.
  Memo_Mensajes.Lines.Add( Str );

  // Guarda los mensjes de Arduino en un archivo txt.
  Memo_Mensajes.Lines.SaveToFile('archivo.txt');
end;

end.




Código de Arduino:
// ----- Electrónica PIC -----
//
// Ejercicio 2.
//
// Encendido y apagado del Led 13 mediante puerto serie con pantalla.
// Es lo mismo que el Ejercicoi 1, pero usando el LCD Keypad Shield.

#include

// Inicializa la librería con sus pines indicados.
// RS, RW, Enable, D4, D5, D6, D7.
LiquidCrystal lcd(8, NULL, 9, 4, 5, 6, 7);
// LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// Pin 10 para saber que es luz de fondo.
const byte LuzFondo = 10;

const byte Led = 13;   // Declaramos la variable pin del Led.
char caracter;
String comando;

void setup()
{
  pinMode(Led, OUTPUT);  // Inicializa el pin del LED como salida:
  Serial.begin(115200);     // Puerto serie 115200 baudios.
  lcd.begin(16, 2);         // Formato de pantalla.
  lcd.clear();      // Borra la pantalla y su posición superior izquierda.
  lcd.print("    Arduino     ");
  delay(1000);
}

void loop()
{
  /*
    Voy leyendo carácter a carácter lo que se recibe por el canal serie
    (mientras llegue algún dato allí), y los voy concatenando uno tras otro
    en una cadena. En la práctica, si usamos el "Serial monitor" el bucle while
    acabará cuando pulsamos Enter. El delay es conveniente para no saturar el
    canal serie y que la concatenación se haga de forma ordenada.
  */
  while (Serial.available() > 0)
  {
    caracter = Serial.read();
    comando.concat(caracter);
    delay(10);
  }

  /*
    Una vez ya tengo la cadena "acabada", compruebo su valor y hago que
    la placa Arduino reacciones según sea este. Aquí podríamos hacer lo
    que quisiéramos: si el comando es "tal", enciende un Led, si es cual,
    mueve un motor... y así.
  */

  // Si los carácteres es recibido y verdadero.
  if (comando.equals("Luz_ON") == true)
  {
    digitalWrite(Led, HIGH); // Enciende el Led 13.
    Serial.write("ON - Led encendido.");    // Envía este mensaje al PC.
    lcd.setCursor(0, 1);
    lcd.print("Luz ON.         "); // Mostrar en el LCD.
  }


  if (comando.equals("Luz_OFF") == true)
  {
    digitalWrite(Led, LOW); // Apaga el Led 13.
    Serial.write("OFF - Led apagado. ");  // Envía este mensaje al PC.
    lcd.setCursor(0, 1);
    lcd.print("Luz OFF.        "); // Mostrar en el LCD.
  }

  // Limpiamos la cadena para volver a recibir el siguiente comando.
  comando = "";
}




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

Ver visor.

Ver PDF.

Un cordial saludo.
#380
Tengo un problema, debo instalar la librería y me da error por todas partes.

Quiero instalar una librería que se llama comport que es el componeten para controlar el puerto serie.

ComPort Library

Estoy siguiendo el vídeo tutorial abajo que usa Delphi 10.1, sigo los paso y me da errores por todas partes.

Ver víeo.

Guardo la carpeta donde está los proyectos que hago como si fuera un proyecto más.
Selecciono la librería tal como indica en el vídeo.



Pulse el archivo que pulse para abrir, me sale este error.



¿Hay alguna solución?

Saludos.