Puis-je envoyer un int par serialPort en C#?
Puis-je envoyer un int par serialPort en C# ?
A développé une application en C# qui envoyer des données par le port série de l'arduino. De ces données est une comand que juste peut être un int ! Pas une Chaîne de caractères !
Comment puis-je faire cela ? J'ai lu quelque chose d'octets, mais une ne undertsand.
using System;
using System.Windows.Forms;
//
using System.Threading;
using System.IO;
using System.IO.Ports;
pulic class senddata(){
private void Form1_Load(object sender, System.EventArgs e)
{
//Define a Porta Serial
serialPort1.PortName = textBox2.Text;
serialPort1.BaudRate = 9600;
serialPort1.Open();
}
private void button1_Click(object sender, System.EventArgs e)
{
serialPort1.Write("1"); //"1" is a string, but i put 1 (int) give me a error.
}
}
Le code arduino:
#include <Servo.h>
void setup()
{
servo.attach(9);
Serial.begin(9600);
pinMode(13, OUTPUT);
}
void loop()
{
if(Serial.available())
{
int cmd = (unsigned char)Serial.read();
if(cmd == 91){
digitalWrite(13,HIGH);
}
}
}
OriginalL'auteur FredVaz | 2011-11-27
Vous devez vous connecter pour publier un commentaire.
À écrire un entier de 4 octets, la valeur
1
, vous devez le convertir en un tableau d'octets en premier.Je le fais avec
BitConverter
. Vous pouvez aussi le faire avecConvert.ToByte
, comme indiqué par @sll.Noter qu'il est très important de spécifier le nombre d'octets que vous souhaitez envoyer vers le port série.
4 octets int? 2-octets? un seul octet?
Il ne semble pas que vous avez spécifié dans votre question.
Merci ... Il travail 😉
Vous devriez commencer à recevoir des réponses à vos questions. Veuillez cocher la case "Coche" à côté de la réponse que vous aimez le mieux.
Comme je l'ai mentionné, je n'ai rien vu dans la question que spécifié s'il voulait un octet ou un entier de 4 octets. Mais le changement est assez trivial.
Si cela fonctionne, s'il vous plaît accepter cette réponse.
OriginalL'auteur abelenky
Vous pouvez utiliser une autre surcharge de la méthode: (MSDN)
Ceci va écrire un octet à partir d'un tampon
OriginalL'auteur sll