Итак, попытка работать с портом из приложения почти работает, кажется нам мешает ssh который висит на этом же порте. Пока не знаю, как отключить.
Как включить uart1
root@beaglebone:~# ls /dev/tty*
/dev/tty /dev/tty19 /dev/tty3 /dev/tty40 /dev/tty51 /dev/tty62
/dev/tty0 /dev/tty2 /dev/tty30 /dev/tty41 /dev/tty52 /dev/tty63
/dev/tty1 /dev/tty20 /dev/tty31 /dev/tty42 /dev/tty53 /dev/tty7
/dev/tty10 /dev/tty21 /dev/tty32 /dev/tty43 /dev/tty54 /dev/tty8
/dev/tty11 /dev/tty22 /dev/tty33 /dev/tty44 /dev/tty55 /dev/tty9
/dev/tty12 /dev/tty23 /dev/tty34 /dev/tty45 /dev/tty56 /dev/ttyGS0
/dev/tty13 /dev/tty24 /dev/tty35 /dev/tty46 /dev/tty57 /dev/ttyO0
/dev/tty14 /dev/tty25 /dev/tty36 /dev/tty47 /dev/tty58 /dev/ttyS0
/dev/tty15 /dev/tty26 /dev/tty37 /dev/tty48 /dev/tty59 /dev/ttyS1
/dev/tty16 /dev/tty27 /dev/tty38 /dev/tty49 /dev/tty6 /dev/ttyS2
/dev/tty17 /dev/tty28 /dev/tty39 /dev/tty5 /dev/tty60 /dev/ttyS3
/dev/tty18 /dev/tty29 /dev/tty4 /dev/tty50 /dev/tty61
root@beaglebone:~# echo BB-UART1 > /sys/devices/bone_capemgr.*/slots
root@beaglebone:~# ls /dev/tty*
/dev/tty /dev/tty19 /dev/tty3 /dev/tty40 /dev/tty51 /dev/tty62
/dev/tty0 /dev/tty2 /dev/tty30 /dev/tty41 /dev/tty52 /dev/tty63
/dev/tty1 /dev/tty20 /dev/tty31 /dev/tty42 /dev/tty53 /dev/tty7
/dev/tty10 /dev/tty21 /dev/tty32 /dev/tty43 /dev/tty54 /dev/tty8
/dev/tty11 /dev/tty22 /dev/tty33 /dev/tty44 /dev/tty55 /dev/tty9
/dev/tty12 /dev/tty23 /dev/tty34 /dev/tty45 /dev/tty56 /dev/ttyGS0
/dev/tty13 /dev/tty24 /dev/tty35 /dev/tty46 /dev/tty57 /dev/ttyO0
/dev/tty14 /dev/tty25 /dev/tty36 /dev/tty47 /dev/tty58 /dev/ttyO1
/dev/tty15 /dev/tty26 /dev/tty37 /dev/tty48 /dev/tty59 /dev/ttyS0
/dev/tty16 /dev/tty27 /dev/tty38 /dev/tty49 /dev/tty6 /dev/ttyS1
/dev/tty17 /dev/tty28 /dev/tty39 /dev/tty5 /dev/tty60 /dev/ttyS2
/dev/tty18 /dev/tty29 /dev/tty4 /dev/tty50 /dev/tty61 /dev/ttyS3
Взято из
http://tenderlovemaking.com/2014/01/19/enabling-ttyo1-on-beaglebone.html
Enabling at boot
I want the tty to be available every time I boot the machine. Angstrom doesn’t use normal System V init scripts, so you have to do something different. You need two files, and a symbolic link.
First I created /usr/local/bin/enable_uart1 , and it looks like this:
root@beaglebone:/# cat /usr/local/bin/enable_uart1
#!/bin/sh
echo BB-UART1 > /sys/devices/bone_capemgr.7/slots
root@beaglebone:/#
(make sure enable_uart1 is executable).
Then I created /lib/systemd/enable_uart1.service , and it looks like this:
root@beaglebone:/# cat /lib/systemd/enable_uart1.service
[Unit]
Description=Enable UART1
After=syslog.target network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/enable_uart1
[Install]
WantedBy=multi-user.target
root@beaglebone:/#
Then I created a symbolic link:
root@beaglebone:/# cd /etc/systemd/system/
root@beaglebone:/# ln /lib/systemd/enable_uart1.service enable_uart1.service
Then I loaded and enabled the service:
root@beaglebone:/# systemctl daemon-reload
root@beaglebone:/# systemctl start enable_uarts.service
root@beaglebone:/# systemctl enable enable_uarts.service
After running these commands, /dev/ttyO1 should be available even after rebooting the machine.
Вобщем, у меня не работает. Во-первых, у меня не
/sys/devices/bone_capemgr.7/slots
а
/sys/devices/bone_capemgr.8/slots
Ну и вобщем не работает. Исполняемым файлом я сделал chmod +x
Кажется, проблема в том, что нельзя создавать файлы эклипсом --- неправильные переыоды строк
Получилось вобщем. Скрипт надо создавать через mc через putty, тогда с переводом строк все ок. Файл скрипт пофиг как создавать.
|