Для обмена файлами между отладочной платой и host-машиной можно использовать tftp-сервер. Для примера взят tftpd-hpa. Кроме этого, необходима терминальная программа для организации подключения к SOM-модулю. Использована PuTTY.
1. Установка PuTTY
В операционной системе Ubuntu установку программы можно выполнить либо в терминале:
sudo apt-get install putty
Либо вызвав из основного меню операционной системы программу Ubuntu Software Center (см. рис. 1 поз. 1), указать для поиска имя putty и, после завершения поиска, запустить процесс инсталляции пакета PuTTY SSH Client. На рис. 1 поз. 2 показано окно после завершения установки.
Рис. 1. Установка терминальной программы PuTTY.
2. Подключение отладочной платы по интерфейсу COM
Следующий шаг — это физическое подключение отладочной платы к ПК по интерфейсу COM. В рассматриваемом примере для подключения платы используется преобразователь COM-USB. Плата и преобразователь соединяются через переходник — нуль-модем. Затем преобразователь подключается к USBпорту ПК и на отладочный модуль подаётся питание.
Определить какой именно интерфейс COM используется в Ubuntu для связи с платой можно при помощи команды:
dmesg | grep tty
Результат её работы показан на рис. 2. На рисунке отчетливо видно, что ОС привязала COM интерфейс к ttyUSB0.
Рис. 2. Определение COM интерфейса.
Для удобства работы следует добавить в группу dialout, которой принадлежит интерфейс ttyUSB0, текущего пользователя (в примере, напомним, это am138):
sudo adduser am138 dialout
Результат выполнения команды показан на рис. 3.
Рис. 3.Добавление пользователя в группу dialout.
Добавление пользователя в одну группу с интерфейсом позволит запускать PuTTY в режиме пользователя из основное меню ОС (см. рис. 4), либо через терминал, выполнив команду putty.
Рис. 4. Запуск терминала putty через меню ОС.
Добавление текущего пользователю в группу dialout можно и не проводить. В этом случае запуск PuTTY возможен только через терминал в режиме суперпользователя (с указанием приставки sudo):
sudo putty
После запуска PuTTY необходимо настроить параметры подключения по интерфейсу COM. Последовательность необходимых действий представлена на рис. 5. Вначале выбирается категория Session (см. рис. 5 поз. 1), где указывается тип подключения Serial (см. рис. 5 поз. 2). Затем осуществляется переход в категориюSerial (см. рис. 5 поз. 3). Здесь настраиваются параметры подключения (см. рис. 5 поз. 4):
- Serial line to connect to: /dev/ttyUSB0,
- Speed (baud): 115200,
- Data bit: 8,
- Stop bits: 1,
- Parity: None,
- Flow control: None.
Рис. 5. Настройка PuTTY для подключения отладочной платы через COM.
Что бы при повторном подключении к плате не проводить настройки заново, нужно их сохранить. Поэтому, после установления требуемых параметров соединения необходимо вернуться в категорию Session (см. рис. 5 поз. 5). Указать произвольное имя сессии. В рассматриваемом примере — это am138_com(см. рис. 5 поз. 6). И нажать кнопку save (см. рис. 5 поз. 7). В окне доступных подключений появится новый пункт am138_com (см. рис. 5 поз. 8).
Теперь можно выполнить подключение к отладочной плате, нажав кнопку Open (см. рис. 5 поз. 9). Появится окно терминала. В качестве логина вводится root, пароль, по-умолчанию, то же root. Заметим, что при вводе пароля символы не отображаются. После этого появится приглашение для работы от имени пользователя root. Вид консольного окна после успешного подключения показан на рис. 6.
Рис. 6. Окно терминала PuTTY при подключении отладочной платы через COM.
При повторном подключении к отладочной платы через COM интерфейс необходимо запустить PuTTY (см. рис. 4), выбрать из доступных пунктов сохранённые настройки (см. рис. 5 поз. 8), нажать кнопку Load (см. рис. 5 поз. 10) и выполнить подключение, нажав кнопку Open (см. рис. 5 поз. 9).
3. Подключение отладочной платы по интерфейсу Ethernet
В рассматриваемом примере для подключения отладочной платы использовалась внешняя сетевая карта с подключением к ПК по USB. Для настройки подключения вначале требуется определить конкретный интерфейс Eth, выделенный операционной системой Ubuntu для данного физического подключения.
Воспользуемся уже известным приёмом:
dmesg | grep eth
Запустив команду до подключения сетевой платы к ПК и после, можно определить какой именно интерфейс Eth используется. На рис. 7 хорошо видно, что в рассматриваемом примере — это eth2.
Рис. 7. Определение Eth интерфейса, выделенного ОС для подключения отладочной платы.
Далее необходимо настроить параметры интерфейса Eth2 для подключения к отладочной плате. Для этого используется инструмент NetworkTools. Его запуск показан на рис. 8 поз. 1. В появившемся окне выбираем требуемый интерфейс (рис. 8 поз. 2), нажимаем кнопку выбора конфигурации (рис. 8 поз. 3), и в появившемся окне добавляется новый набор параметров (рис. 8 поз. 4). Появится ещё одно окно, где нужно указать требуемые значения настраиваемых параметров. Для этого нажимается кнопка Add (рис. 8 поз. 5) и вводятся значения IP адреса и маски (рис. 8 поз. 6). В рассматриваемом примере это 192.168.1.1 и 255.255.255.0, соответственно. Для удобства последующего выбора настроек нужно определить имя подключения. В данном примере — это Board OMAP(рис. 8 поз. 7). Настройки сохраняются (рис. 8 поз. 8). Оставшиеся окна закрываются (рис. 8 поз. 10).
Рис. 8. Настройка сетевого интерфейса для подключения отладочной платы.
Теперь необходимо подключить к используемой для подключения сетевой карте отладочную плату и подать на неё питание. После этого выбрать требуемое сетевое подключение, как это показано на рис. 9.
Рис. 9. Выбор сетевого интерфейса для подключения отладочной платы.
Для работы с отладочной платой по интерфейсу Ethernet можно использовать уже установленную терминальную программу PuTTY. Процесс настройки подключения аналогичен тому, что был показан для интерфейса COM. Основные его моменты отображены на рис. 10: выбрать категорию Session (см. рис. 10. поз. 1), определить протокол подключения SSH (см. рис. 10. поз. 2), указать сетевой адрес отладочной платы и порт, по-умолчанию — это 192.168.1.198 и 22, соответственно, (см. рис. 10. поз. 3), указать имя сессии (см. рис. 10. поз. 4), сохранить настройки для упрощения повторного подключения (см. рис. 10. поз. 5) и, наконец, подключиться к плате, нажав кнопку Open (см. рис. 10. поз. 6).
Рис. 10. Настройка PuTTY для подключения отладочной платы через Eth.
В дальнейшем, при повторном использовании подключения по интерфейсу Eth, нужно будет после запуска PuTTY выбрать сохранённую сессию (см. рис. 10. поз. 7), нажать кнопку Load (см. рис. 10. поз. 8) и подключиться, нажав Open (см. рис. 10. поз. 6).
После запуска процесса подключения появиться окно консоли, где вначале появиться запрос на логин, а затем на пароль. В рассматриваемом примере — этоroot и root. При вводе пароль не отображается. Окно консоли после подключения к отладочной плате по интерфейсу Eth показано на рис. 11.
Рис. 11. Окно терминала PuTTY при подключении отладочной платы через Eth.
Для отключения отладочной платы от host-машины необходимо выполнить в терминале PuTTY команду:
exit
4. Установка TFTP сервера
Возможные способы установки показаны на рис. 12. Установка выполняется либо в терминале (см. рис. 12 поз. 1):
sudo apt-get install tftpd-hpa
Рис. 12. Два способа установки сервера tftpd-hpa.
После установки tftp-сервера проводится его настройка, основные шаги по выполнению которой показаны на рис. 13. Вначале создаётся папка для tftp-сервера:
sudo mkdir /home/tftp
Затем владельцем папки делается пользователь tftp:
sudo chown -R tftp:tftp /home/tftp
Рис. 13. Настройка сервера tftpd-hpa.
Следующий шаг — это редактирование конфигурационного файла tftpd-hpa. В рассматриваемом примере используется редактор nano:
sudo nano /etc/default/tftpd-hpa
После выполнения данной команды откроется редактор nano (см. рис. 13 поз. 2). Требуется привести текст в соответствии с приведенным ниже:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/tftp"
TFTP_ADDRESS="192.168.1.8:69"
TFTP_OPTIONS="-s -c"
Для записи изменений одновременно нажимаются клавиши Ctrl+W, затем запись файла подтверждается кнопкой Enter. Для выхода из программы нажимается сочетание Ctrl+X.
Разрешается доступ к созданной папке всем пользователям (см. рис. 13):
sudo chmod 777 -R /home/tftp
И, последнее, рестарт tftp-сервера (последняя команда на рис. 13):
sudo service tftpd-hpa restart
Для проверки работы tftp-сервера при помощи редактора nano создадим в папке tftp файл test_HOST.txt (см. рис. 14 поз. 1) и сохраним в нем произвольный текст, например, This from HOST PS (см. рис. 14 поз. 1).
Рис. 14. Создание файла редактором nano.
Подключить отладочную плату к host-машине кабелем по интерфейсу Eth, выбрать требуемый сетевой интерфейс (см. рис. 9), запустить программу PuTTY(см. рис. 4) и подключиться (см. рис. 10 и 11).
В терминале PuTTY, отображающем подключение к отладочной плате по Eth, перейти в папку /mnt/nand:
cd /mnt/nand
Несколько слов о данной папке. Файловая система, загруженная в отладочную плату по-умолчанию, построена таким образом, что данные в указанной папке находятся в энергонезависимой области памяти и сохраняются при включении/выключении и перегрузке платы.
В этой папке, для проверки передачи данных с платы на host-машину, необходимо создать ещё один тестовый файл — test_OMAP.txt. Это можно сделать при помощи редактора vi, выполнив команду:
vi test_OMAP.txt
После запуска текстового редактора нажимается клавиша i для перевода редактора в режим набора текста. Набирается требуемый текст, например, This from OMAP. Для перехода в режим ввода команд нажимается клавиша Esc. Сохранение файла производиться нажатием клавиш ZZ, а выход их редактора — вводом символов :q. Вид терминального окна после создания файла редактором vi представлен на рис. 15.
Рис. 15. Создание файла редактором vi.
Выполнив команду:
ls -l
можно убедиться в наличии только-что созданного файла.
Теперь на host-машине необходимо запустить терминал, в нём выполнить переход в домашнюю директорию thtp-сервера и запуск самого сервера. Эти операции выполняются командами:
cd /home/tftp
sudo service tftp-hpa restart
В терминальном окне, отображающем подключение к отладочной плате по интерфейсу Eth, загружается файл test_HOST.txt с host-машины, а так же отправляется файл test_OMAP.txt на host-машину. Все действия выполняются командами:
tftp -g -r test_HOST.txt 192.168.1.1 69
tftp -p -l test_OMAP.txt 192.168.1.1 69
Убедиться в успешной передаче файлов можно выполнив команду:
ls -l
в обоих терминалах.
Процесс обмена файлами показан на рис. 16.
Рис. 16. Обмен файлами между платой и host-машиной.
Убедиться в правильности принятых и переданных файлов можно просмотрев их содержание в текстовых редакторах, например, в vi для платы и nano для host-машины (см. рис. 17.).
Рис. 17. Проверка содержание принятых файлов.
На этом описание алгоритма обмена файлами между отладочной платой и host-машиной закончен.