Ответы пользователя по тегу Обмен данными
  • Приём данных от Arduino в Linux-консоли. Как?

    @howeal
    Не забывайте про stty и настройку COM порта. У меня настройка идёт такой командой.
    stty -F /dev/ttyACM0 cs8 9600 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts raw

    код для Arduino:
    Serial.begin(9600);
    Serial.println("START");

    Демон, читающий каждые 3 секунды команды с Arduino и выводящий всё на консоль (на sh). Текст от Arduino попадает в переменную $LINE:

    #!/bin/sh
    insmod usbserial
    insmod ftdi_sio
    insmod cdc-acm
    
    while [ true ]
    do
    
    stty -F /dev/ttyACM0 cs8 9600 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts raw
    
    	while read LINE
    	do
    	
    	echo $LINE
    			
    	done < /dev/ttyACM0
    /bin/sleep 3
    done
    
    


    Таким образом, при запуске демона Arduino сама перезагружается и пишет в консоль, при подключении/отключении производится повторная настройка порта и всё продолжает работать дальше.
    Ответ написан
    Комментировать