2012/05/13

UART通信を行う

BeagleBoneでUARTを行うために色々調べてみました。
BeagleBoneのURATポートが/dev/tty?にマッピングされているのがわからないため、
dmesgコマンドを使ってどのポートかを調査しました。


0.161328] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
[    0.161641] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
[    0.161924] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
[    0.162205] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
[    0.162494] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5

あとは

Using the Serial and Analog Pins にあるように、omap_muxの設定を変更します。

cd /sys/kernel/debug/omap_mux/
echo 20 > uart1_rxd
echo 0 > uart1_txd
echo 21 > uart2_rxd
echo 1 > uart2_txd

muxの設定が完了したら、minicomなどのターミナルソフトで接続すればOKです。
試しにuart1_txtとurart2_rxd、uart2_txdとuart1_rxdをつなげて、minicomで互いに通信できたので問題なく動くようです。

ではまた。

0 件のコメント:

コメントを投稿