Ciao a tutti, sono un nuovo utente di questo forum e da poco ho iniziato a sperimentare qualcosa di più avanzato con Arduino. Proprio questo mio sperimentare, mi ha portato ad un problema che non riesco a risolvere:
Sto cercando di far comunicare tramite porta seriale aggiuntiva (oltre a quella usata per trasmettere gli Sketch) il mio PC con Arduino Uno R3. Ho creato un connettore RS232 da collegare al PC con il seguente pinout:

Quindi ho creato questa associazione di collegamenti: RS pin 2 -> Arduino D10, RS pin 3 -> Arduino D11, RS pin 5 -> Arduino GND.
In C# ho scritto:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO.Ports;
namespace TAG_Simulator
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
string[] serialPorts = SerialPort.GetPortNames();
foreach (string comPort in serialPorts)
COMbox.Items.Add(comPort);
}
private void button1_Click(object sender, EventArgs e)
{
string selectedCOM = COMbox.Text;
SerialPort COMconn = new SerialPort(selectedCOM, 9600);
COMconn.Encoding = Encoding.ASCII;
try
{
COMconn.Open();
}
catch
{
Environment.Exit(1);
}
COMconn.Write("3");
COMconn.Write("2");
COMconn.Close();
}
}
}
mentre per Arduino ho scritto:
#include <SoftwareSerial.h>
SoftwareSerial com1(10, 11);
void setup()
{
Serial.begin(9600);
com1.begin(9600);
}
void loop()
{
{
Serial.println(com1.read());
delay(1000);
}
}
Ora come risultato sul monitor seriale dovrei avere:
-1 -> Nessuna TX
-1
-1
-1
51 -> 3 in codifica Ascii
0 -> Terminatore di stringa
50 -> 2 in codifica Ascii
0 -> Terminatore di stringa
-1
-1
-1
Invece come risultato ho:
-1
-1
-1
-1
102
0
51
0
-1
-1
-1
Come mai? Ho provato in tutti i modi a risolvere il problema ma proprio non riesco...
Per favore aiutatemi!!!! =(
