Давайте проанализируем две команды, которые вы предоставляете своей оболочке:
cat /dev/smd7 &
echo "some_data" > /dev/smd7
cat /dev/smd7 &
: прослушивание устройства /dev/smd7
: теперь все данные поступают от это устройство будет перенаправлено на стандартный вывод (оболочка, в которую вы пишете). Сделайте это в фоновом режиме (&
), чтобы иметь возможность отправлять дальнейшие команды echo "some_data" > /dev/smd7
: отправьте some_data
на устройство /dev/smd7
- Открыто соединение с устройством
- Данные отправлены
- Соединение закрыто и управление возвращается оболочке
При отправке echo "AT+CMGS=24;\r" > /dev/smd7
AT+CMGS=24;\r
отправляется на устройство - Соединение закрывается
- ... тем временем устройство отправляет обратно
>
символ приглашения, говорящий вам, что оно ожидает сообщения PDU - ... но оболочка имеет управление. Приглашение
>
- это просто печать в оболочке, поэтому любые отправленные данные будут напрямую отправлены в оболочку! - Поскольку отправленные данные не являются командой оболочки,
not found
отображается ошибка
В заключение , чтобы правильно отправить сообщение PDU на устройство, просто продолжайте отправлять его через echo
команду:
echo "07...985C369F01" > /dev/smd7
Примечание: Обязательно завершайте последовательность символом CTRL + Z (ASCII 0x1A
).