Diskuze: Sériový port

Člen

Zobrazeno 8 zpráv z 8.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Protože chci ovládat servo pomocí trackBar(událostí na trackBar chci odesílat).Tak jsem si myslel že když tam nedám to c tak se ty čísla neodliší (např. 56 a 58 se mu ukáže jako 5658).
A nešel by nějak otevřít sériový port v arduino(když je zároveň otevřen ve VS.
používej tlačítko odpovědět.
Sériový port může používat jen jedna aplikakace/proces, takže buď
Arduino IDE, nebo VS - obojí nejde (leda že by jsi měl nějakou aplikaci,
který by vytvořila v počítači dva virtuální porty a kopírovala je na ten
jeden skutečný).
Co se týče odlišení čísel, když už používáš v Arduinu
Serial.readString, tak v C# zapisuj taky string. Takže C#:
public void trackBar1_Scroll(object sender, EventArgs e)
{
label1.Text = trackBar1.Value.ToString();
port.WriteLine(trackBar1.Value.ToString());
}
A Arduino:
#include <Servo.h>;
Servo myservo;
int val;
int radval=0;
void setup() {
Serial.begin(9600);
myservo.attach(9);
}
void loop() {
if(Serial.available())
{
readval =Serial.readString().toInt();
val = map(readval, 0,100,0,180);
myservo.write(val);
}
Dyť odezva na jakýkolliv pohyb trackbaru je v té události public void trackBar1_Scroll(object sender, EventArgs e), mělo by to reagovat na každý pohyb trackbaru.
O visual mikro slyším prvně, vypadá dobře, každopádně je placený... Ikdyž jsem párkrát scháněl lepší IDE pro arduino, tak jsem vždy dospěl k názoru, že standardní mi stačí, i když nenapovídá
A používej tlačítko odpovědět
Ono by asi bylo nejlepší zkusit propojit sériovým kabelem dva počítače, abys viděl, co na druhé straně opravdu vyleze. Protože takhle podle mě jen hádáš, co se ve skutečnosti na Arduino dostane. Špatné je, že na takové řešení je potřeba pár věcí navíc ("sériový modem" (kabel pro propojení dvou počítačů, pokud ty stroje nemají nativní COM port, tak příslušný počet redukcí USB->COM).
Možná by ale stačilo jen zmonitorovat, co se přesně posílá na ten sériový port z C#, protože jestli to kódování řetězce není jednobajtové, ale třeba v nižších vrstvách Windows zvláště oblíbené UCS-16 a jestli Arduino očekává ANSI, tak ti rozhodně ten řetězec na nějaké rozumné číslo nepřevede.
Arduino ma(jeden port vyresen), staci mu jeden TTL-USB prevodnik, ten pichne
na piny 0 a 1 na arduinu a muze monitorovat co posila
// ja na to mam FTDI232, ale mel by stacit i nejaky "horsi"
Zobrazeno 8 zpráv z 8.