LINUX.ORG.RU

Сообщения timbo

 

Нужна помощь в bash и в работе с stty

Форум — Development

Решил поизучать bash, написал скрипт для работы с платкой launchpad на контроллере msp430, но появились несколько проблем: 1) при записи сообщений из /dev/ttyACM0 скрипт не отвечает, например не выводит сообщения с помощью echo

2) общение скрипта с платой осуществляется с помощью файла куда записывается сообщения от платы, а скрипт потом перебирает этот файл в поиске нужной команды, перебирает с помощью цикла for непосредственно из файла, а if ищет нужную команду, но проблема в том что не определяет ее при том что она есть, при просмотре с помощью echo переменной которой присваиваются значения из файла, показывает команду, но оператор if считает что допустим символ 1(будем считать что это команда) не равен 1, в общем бред какой то.

#!/bin/bash

if [ -e /dev/ttyACM0 ]
then

stty 9600 -F /dev/ttyACM0 raw -echo
echo -n "connect">/dev/ttyACM0 #говорит устройству что готов

cat /dev/ttyACM0 >> serial #записывает "диалог"

echo "podkluchen" #сообщение для отладки

for strin in $(cat serial) #ищет команды

do

echo $strin #пишет сообщения от платы, при этом команда "1" там есть

if [ $strin = 1 ] #поиск команды

then#какая нибудь функция

echo "komanda opredelena" #сообщение для отладки

fi

done #конец перебора файла

fi #конец поиска устройства

Содержание файла serial выглядит так:
1
1
и т.д.,т.е. каждое сообщение записываются в новой строке.

Также пробовал использовать разделители полей IFS=$'\n', так он вообще не определяет символ \ и заменяет все буквы n на пробелы в списке.

 , ,

timbo
()

RSS подписка на новые темы