NewGuy
#arduino #socket.io #ubuntu #javascript
Mam problem. Napisałem aplikację która wysyła mi po porcie liczbę "1" co sekundę. Gdy wpiszę w terminalu cat /dev/ttyUSB0 to widzę jak te jedynki mi wyskakują w nowej lini. Więc program jest ok. Napisałem taki program w JS:
`var serialport = require("serialport");
SerialPort = serialport.SerialPort;

var mySerial = new SerialPort("/dev/ttyUSB0", {
baudrate: 9600,
parser: serialport.parsers.readline("/n")
});
mySerial.on("open", function(){
console.log("Port otwarty.");
});
mySerial.on("data", function(data){
console.log(data);
});
`
Wpisuję w terminalu node app.js i otrzymuję Port otwarty. Ale żadnych danych nie odczytuje. Co jest źle ?
2
  • Najlepsze
  • Wszystkie komentarze
facefear
@NewGuy: U mnie coś takiego hula

var SerialPort = require("serialport").SerialPort
var serialPort = new SerialPort("COM4", {
baudrate:
2
M.....s
M.....s
@NewGuy: zara poszukam w moich starych projektach
1
M.....s
M.....s
@NewGuy: musisz umieścić
mySerial.on("data", function(data){

w funkcji
mySerial.on("open", function(){
bo ta funkcja otwierająca
1
M.....s
M.....s
@NewGuy: no i pamiętaj, żeby zamknąć wszystkie inne serial monitory.
Kod jest ok, pokombinuj z lokalizacją portu
1
NewGuy
@MirkoStats:
@facefear:
Lokalizacja portu jest dobra /dev/ttyUSB0, sprawdzam to wpisując cat /dev/ttyUSB0 i otrzymuję dane z arduino.
Baud rate też w programie na uc jak i js jest taki sam 9600
Sprawdzałem też umieszczenie my.Serial.on("data"... w funkcji open i nic to nie zmienia.
Kod wygląda na poprawny ale nie działa i nie mogę znaleść przyczyny.
0
M.....s
M.....s
@NewGuy: poka kod arduino
0
NewGuy
@MirkoStats:
Pisze z glowy, program dziala:
void setup(){Serial.begin(9600);}
void loop(){
Serial.println(1);
waitms(2000);
}
0
M.....s
M.....s
@NewGuy: może próbuj stringa printować
0
NewGuy
@MirkoStats: niestety nie pomaga
0