Go Down

Topic: Problema con arduino y C# (Read 2 times) previous topic - next topic

Cispy

Nov 30, 2010, 07:38 pm Last Edit: Nov 30, 2010, 07:39 pm by Cispy Reason: 1
Hola buenas, soy nuevo con esto de arduino y tengo un problemilla que haber si vosotros que sois unos maquinas me podeis resolver o aclarar.

La cosa es que tengo mi arudino conectado al pc con el cable usb, y uso el puerto serie para mandar datos al pc, hasta aqui bien, los datos llegan y todo funciona perfectamente, pero ahora cuando programo una aplicacion en c# para que reciba los datos por el puerto serie (le pongo el puerto por el cual se conecta arduino) arduino deja de mandar datos, parece como si mi programa echara a patadas al arduino del puerto y no se como solucionarlo.

Bueno espero que alguien me pueda aclarar algo, por que me trae de cabeza, gracias

complubot

Igual si pones los programas te podemos orientar un poco
Centro de Robótica Educativa
www.complubot.com

Cispy

Pues tienes razon bueno aqui os dejo el codigo de arduino
Code: [Select]

// Declaramos las variables globales
int pinanalogico = 2; // Declaro variable con el pin analogico de arduino
int temperatura = 0; // Declaro la variable que guardara la temperatura
int lecturaLm35; // Declaro variable que obtendra la lectura del sensor

void setup ()
{
  Serial.begin(9600);  // Comienzo la comunicacion con el puerto serie a 9600
 
}
void loop ()
{
 lecturaLm35 = analogRead(pinanalogico);
 temperatura = (5.0 * lecturaLm35 *100.0)/1024.0;
 Serial.print(temperatura);
 
 // Realizo una pausa para volver a medir
 delay(1000);
}


Bien y aqui os dejo el codigo del programilla en c#, esta echo en el visual studio 2008 y usa el componente serial port para usar el puerto serie
Code: [Select]

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication6
{
   public partial class Form1 : Form
   {
       string lectura;

       public Form1()
       {
           InitializeComponent();
       }

       private void Form1_Load(object sender, EventArgs e)
       {
           serialPort1.Open();
       }

       private void button1_Click(object sender, EventArgs e)
       {
           lectura = serialPort1.ReadExisting();
           textBox1.Text = lectura;
       }
   }
}


Para aclarar el componete serial port tiene configurado el mismo com al cual se conecta arduino y a 9600 las demas caracteristicas tambien estan bien.

El mayor problema es que arduino trasmite bien de echo se ven los leds encendiendose y apagandose, pero al ejecutar el programa echo en C# este deja de trasmitir

Gracias

complubot

¿Seguro que no tienes ninún protocolo, XON/XOFF ni Hardware en el puerto serie?
Centro de Robótica Educativa
www.complubot.com

Cispy

Gracias complubot efectivamente eran los protocolos despues de un ratillo buscandolos he dado con ellos xD

Milgracias tio

Go Up