Программирование ARM BeagleBoard: доступ к командной строке терминала Thu, October 01 2020  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

BeagleBoard: доступ к командной строке терминала Печать
Добавил(а) microsin   

Из коробки у BeagleBone Black (далее кратко BBB) есть возможность сетевого подключения к командной строке Debian. Благодаря этим встроенным сетевым службам можно через Интернет удаленно получить доступ к электронным проектам. Существует несколько способов подключиться к BBB. В этом руководстве (перевод wiki [1]) приведены инструкции по подключению через последовательный порт (serial connection), по протоколу SSH через кабель Ethernet, или по протоколу SSH к IP-адресу BBB через кабель USB. Преимущества каждого способа подключения зависят от функций, необходимых пользователю.

Если нужно поменять некоторые файлы, просмотреть каталог или решить вопросы отладки, serial-подключение хороший способ получить доступ, потому что предоставляется надежное подключение с возможностью root привилегий. Поскольку платка BBB имеет на борту разъем miniUSB, то это действительно самый простой способ подключения к компьютеру. Если пользователю нужно решить такие проблемы, как конфликт выводов HDMI/eMMC, подключение serial через кабель FTDI (к ножкам 4, 5 разъема J1) будет самым лучшим выбором. Это даст возможность увидеть, что происходит при загрузке BBB.

BBB TTL UART J1 pinout

Предположим, что у BBB имеется подключение к глобальной сети Интернет через интерфейс Ethernet или WiFi, и на ней работает проект, которому нужно передавать данные (например, какой-то лог) по сети, и он находится удаленно в другом месте. Тогда хорошим выбором будет настройка статического IP, к которому можно подключиться из любого места. Поскольку в этом случае для подключения необходимо только соединение с Интернет, на компьютере хоста не нужно загружать и устанавливать никакие драйверы.

Если Вам нужно программировать в BoneScript, то подключение через BeagleBone IP-адрес по кабелю USB будет самым лучшим выбором, потому что дистрибутив BeagleBone Black Angstrom поставляется с сокет-сервером, работающим как служба, поддерживающая node.js и bonescript. Когда платка BBB подключена к компьютеру через кабель miniUSB (коннектор P4 USB), то к ней можно подключиться по IP-адресу 192.168.7.2 в браузере Chrome или Firefox. Веб-сервер BBB предоставляет интерактивное руководство по использованию платы, можно запускать среды программирования Node-RED [7] и Cloud9 IDE [8]. Дополнительную информацию можно получить на страничке Getting Started [9].

[Подключение serial]

1. В окне диалога настройки подключения PuTTy выберите радиокнопку "Serial", это позволит подключиться через UART (виртуальный COM-порт BBB, или переходничок USB UART FTDI). Поменяйте номер COM-порта на номер COM-порта платы BBB (можно узнать в Диспетчере Устройств).

Примечание: виртуальный COM-порт BBB доступен не сразу после включения питания, а через некоторое время. Это время необходимо для загрузки операционной системы Debian.

2. Настройте параметры подключения:

Speed(baud): 115200
Data Bits: 8
Stop bits: 1
Parity: None
Flow Control None

3. Введите имя сессии и кнопкой Save сохраните её. Это упростит повторное использование созданной сессии в будущем.

4. Кнопкой Open запустите подключение.

По умолчанию для доступа используются следующие пароли:

Имя пользователя Пароль Функция
root root Суперпользователь (полные права)
debian temppwd Обычный пользователь

Примечание: по умолчанию доступ root работает только на последовательной консоли, через SSH права суперпользователя недоступны (не работает даже повышение привилегий sudo). В зависимости от версии BBB и прошивки Debian могут быть другие пароли, см. [6].

[SSH: настройка статического IP]

Если необходимо подключаться по протоколу SSH через кабель Ethernet, можно сконфигурировать настройки IP командами Linux. Процесс по шагам:

1. Подключитесь к BBB через serial под суперпользователем root, как было описано в предыдущей секции.

2. Выполните команду ifconfig, она покажет имена сетевых интерфейсов и их текущие настройки. Выведется примерно следующее:

root@beaglebone:~# ifconfig
eth0: flags=-28605< UP,BROADCAST,RUNNING,MULTICAST,DYNAMIC>  mtu 1500
        inet 192.168.0.103  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::7a04:73ff:fe80:d248  prefixlen 64  scopeid 0x20< link>
        ether 78:04:73:80:d2:48  txqueuelen 1000  (Ethernet)
        RX packets 3746  bytes 433902 (423.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2869  bytes 264127 (257.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 45  
 
lo: flags=73< UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10< host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 11221  bytes 752905 (735.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 11221  bytes 752905 (735.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 
usb0: flags=4163< UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.7.2  netmask 255.255.255.0  broadcast 192.168.7.255
        inet6 fe80::7a04:73ff:fe80:d24a  prefixlen 64  scopeid 0x20< link>
        ether 78:04:73:80:d2:4a  txqueuelen 1000  (Ethernet)
        RX packets 6930  bytes 719520 (702.6 KiB)
        RX errors 0  dropped 12  overruns 0  frame 0
        TX packets 1759  bytes 525012 (512.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 
usb1: flags=4099< UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.6.2  netmask 255.255.255.0  broadcast 192.168.6.255
        ether 78:04:73:80:d2:4e  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Здесь eth0, lo, usb0 и usb1 это имена сетевых интерфейсов.

3. Выведите содержимое файла /etc/network/interfaces командой cat (если файла /etc/network/interfaces нет, перейдите к шагу 4):

cat /etc/network/interfaces

Если плата сконфигурирована на использование сервисов DHCP, то увидите строчку наподобие

iface eth0 inet dhcp

Если плата BBB настроена на использование статического IP, то увидите следующую строку:

iface eth0 inet static

4. С помощью текстового редактора (например nano) отредактируйте настройки интерфейсов:

$cd /etc/network
$sudo nano interfaces

Введите необходимые значения адреса сети и маски в параметрах address и netmask:

iface eth0 inet static
 address xxx.xxx.xxx.xx
 netmask xxx.xxx.xxx.x

Для выхода из редактора нажмите Ctrl+x, введите Y и Enter для подтверждения сохранения изменений.

После выполнения этих шагов перезагрузите BBB (передерните питание). Проверьте настроенный адрес командой ping, для подключения настройте SSH-сессию в утилите PuTTy.

[SSH: подключение через BeagleBone IP]

Также можно подключиться через виртуальный сетевой адаптер, который появляется в операционной системе Windows при подключении через коннектор miniUSB (P4 USB). В этом случае платка BBB доступна по IP-адресу 192.168.7.2, настройте сессию SSH на этот адрес.

[Secure Shell App - Google Chrome]

Для браузера Google Chrome есть отличное бесплатное расширение Secure Shell App, позволяющее использовать подключение SSH. После установки это расширение будет доступно в браузере Chrome по ссылке chrome://apps/.

[Ссылки]

1. Beagleboard:Terminal Shells site:elinux.org.
2. BeagleBone Usb Networking site:elinux.org.
3. BeagleBone Installing Drivers (Windows) site:learn.adafruit.com.
4. BELCARRA USBLAN site:belcarra.com.
5. Secure Shell App - Google Chrome site:chrome.google.com.
6. BeagleBoard.org Default Usernames & Passwords site:router-reset.com.
7. Node-RED Documentation site:nodered.org.
8. Cloud9 IDE on the BeagleBone Black site:randomnerdtutorials.com.
9. Getting Started site:beagleboard.org.

 

Добавить комментарий


Защитный код
Обновить

Top of Page