Архив/Электроника/Подключение AiThinker A6 к Orange PI Zero и уроки работы с СОМ портом.
ЭЛЕКТРОНИКА2026.06.0205 мин чтения

Подключение AiThinker A6 к Orange PI Zero и уроки работы с СОМ портом.

В этой статье подключим AiThinker A6 к Orange PI Zero. И напишем небольшую программу на СИ посылающая строки в СОМ порт.

Подключение AiThinker A6 к Orange PI Zero и уроки работы с СОМ портом.

Подключение GSM-модуля AiThinker A6 к Orange Pi Zero через UART

Введение

В данной статье рассмотрим подключение GSM/GPRS-модуля AiThinker A6 к одноплатному компьютеру Orange Pi Zero через последовательный интерфейс UART. Также проверим работу COM-порта из Linux, отправим несколько AT-команд в модуль и напишем простую программу на языке C для взаимодействия с устройством.

Используемое оборудование

Для эксперимента понадобятся:

  • Orange Pi Zero (в видео используется Orange Pi R1 с аналогичной GPIO-гребёнкой);
  • GSM-модуль AiThinker A6;
  • Антенна GSM;
  • Соединительные провода Dupont;
  • Блок питания для Orange Pi;
  • SIM-карта.


Подключение модуля

Модуль A6 подключается к UART-интерфейсу Orange Pi. Для обмена данными используются линии TX, RX и общий провод GND.

Распиновка Orange Pi

На изображении ниже показано расположение UART-пинов на GPIO-разъёме.

В примере используется второй UART:

Orange PiНазначение
Pin 11UART2_RX
Pin 13UART2_TX
Pin 6 или 14GND

Схема соединения

UART подключается перекрёстно:

Orange PiAiThinker A6
TXRX
RXTX
GNDGND

После подключения схема выглядит следующим образом:


Запуск системы

После подачи питания GSM-модуль начинает регистрацию в сети оператора.

В ролике используется два терминала:

  • левое окно — подключение к Orange Pi;
  • правое окно — мониторинг обмена по UART.

В правом окне можно наблюдать загрузку GSM-модуля и ответы на команды.


Полезные команды Linux

Проверка свободного места

df -h

Команда показывает размер подключённых файловых систем и свободное место.

Просмотр процессов

ps aux

Выводит список запущенных процессов.

Мониторинг системы

htop

Отображает:

  • загрузку процессора;
  • использование памяти;
  • температуру;
  • частоту процессора;
  • системные процессы.

Проверка доступных UART-портов

Устройства UART находятся в каталоге /dev.

Для просмотра доступных устройств можно использовать:

ls /dev/tty*

Список портов в моём устройстве:

/dev/ttyS0
/dev/ttyS1
/dev/ttyS2

UART2 выведен на GPIO-разъём и используется для подключения GSM-модуля.


Настройка COM-порта

Параметры порта задаются командой stty.

Пример настройки скорости:

stty -F /dev/ttyS2 115200

После настройки можно отправлять команды напрямую в устройство.


Отправка AT-команд из Linux

Для проверки связи отправим команду идентификации модуля:

echo -e "ATI\r\n" > /dev/ttyS2

Здесь:

  • ATI — команда идентификации устройства;
  • \r\n — перевод строки, обязательный для обработки команды модулем.

Ответ модуля:

AiThinker A6
OK

Для чтения данных из COM-порта можно использовать:

cat /dev/ttyS2

Работа через терминальную программу Minicom

Для более удобного взаимодействия можно использовать терминальную программу:

minicom

После подключения отправляем команду:

AT

Ответ:

OK

Проверяем модель:

ATI

Модуль возвращает своё имя и версию прошивки.


Анализ данных в шестнадцатеричном виде

При разработке программ полезно видеть каждый полученный байт.

Для этого данные можно выводить в HEX-представлении.

Пример ответа:

4F 4B 0D 0A

Расшифровка:

HEXСимвол
4FO
4BK
0DCR
0ALF

Последовательность 0D 0A обозначает конец строки и позволяет программе определить завершение ответа устройства.


Создание первой программы на C

Создадим каталог проекта:

mkdir hello
cd hello

Создадим файл:

nano hello.c

Содержимое программы:

#include <stdio.h>

int main()
{
    printf("Hello World\n");
    return 0;
}

Компиляция:

gcc hello.c

Запуск:

./a.out

Результат:

Hello World

Отправка AT-команд из программы

Следующим шагом создадим программу для взаимодействия с COM-портом.

Логика работы:

  1. Открыть UART.
  2. Отправить команду AT.
  3. Закрыть порт.
  4. Завершить программу.

Пример:

FILE *port;

port = fopen("/dev/ttyS2", "w");

fprintf(port, "AT\r\n");

fclose(port);

Компиляция:

gcc lesson1.c -o lesson1

Запуск:

./lesson1

В окне мониторинга UART появляется отправленная команда и ответ модуля:

AT
OK

Это означает, что программа успешно взаимодействует с GSM-модулем через последовательный интерфейс.


Возможности дальнейшего развития проекта

Развитие проекта до полноценной системы управления по SMS.

Идея заключается в следующем:

  1. Программа постоянно контролирует COM-порт.
  2. При получении SMS анализирует текст сообщения.
  3. Выполняет требуемую команду.
  4. Отправляет ответное SMS.

Например:

Температура?

После получения команды устройство может:

  • считать показания датчиков;
  • сформировать отчёт;
  • отправить ответное SMS владельцу.

Таким образом можно реализовать систему удалённого мониторинга объекта через GSM-сеть.


Заключение

В ходе эксперимента были выполнены следующие задачи:

  • подключён GSM-модуль AiThinker A6 к Orange Pi через UART;
  • настроен COM-порт Linux;
  • отправлены тестовые AT-команды;
  • рассмотрена работа терминальной программы Minicom;
  • изучён обмен данными в шестнадцатеричном формате;
  • написана первая программа на C для взаимодействия с GSM-модулем.

Такой подход является хорошей основой для создания GSM-шлюзов, систем удалённого мониторинга и устройств управления по SMS.

Видеоролик на Ютубе