12 063
правки
м |
(Отметить эту версию для перевода) |
||
Строка 3: | Строка 3: | ||
<!--T:1--> | |||
Модуль трансивера IEEE 802.15.4 от Olimex. Содержит чип Microchip MRF24J40. | Модуль трансивера IEEE 802.15.4 от Olimex. Содержит чип Microchip MRF24J40. | ||
Модуль можно купить в магазине Olimex с доставкой в Россию. | Модуль можно купить в магазине Olimex с доставкой в Россию. | ||
<!--T:2--> | |||
Вставляется в разъём UEXT, использует интерфейс SPI. | Вставляется в разъём UEXT, использует интерфейс SPI. | ||
==IEEE 802.15.4== | ==IEEE 802.15.4== <!--T:3--> | ||
IEEE 802.15.4 - физический уровень, который используется стандартами ZigBee, 6LoWPAN и другими. В Linux поддерживается стандарт [https://ru.wikipedia.org/wiki/6LoWPAN 6LoWPAN] - IPv6-сеть поверх физического уровня. | IEEE 802.15.4 - физический уровень, который используется стандартами ZigBee, 6LoWPAN и другими. В Linux поддерживается стандарт [https://ru.wikipedia.org/wiki/6LoWPAN 6LoWPAN] - IPv6-сеть поверх физического уровня. | ||
Рабочая частота - 2.4Ghz, нелицензируемый диапазон. | Рабочая частота - 2.4Ghz, нелицензируемый диапазон. | ||
<!--T:4--> | |||
<b> Поддержка 6LoWPAN в Linux в настоящее время не полностью работоспособна. </b> | <b> Поддержка 6LoWPAN в Linux в настоящее время не полностью работоспособна. </b> | ||
http://elinux.org/images/7/71/Wireless_Networking_with_IEEE_802.15.4_and_6LoWPAN.pdf | http://elinux.org/images/7/71/Wireless_Networking_with_IEEE_802.15.4_and_6LoWPAN.pdf | ||
==Подключение== | ==Подключение== <!--T:5--> | ||
Модуль подключается к Wiren Board через разъём UEXT2. При этом выводы 6-7 (программный I2C) используются в режиме GPIO. | Модуль подключается к Wiren Board через разъём UEXT2. При этом выводы 6-7 (программный I2C) используются в режиме GPIO. | ||
<!--T:6--> | |||
Для работы в Linux необходимо использовать выход прерывания INT. В UEXT-разъёме модуля этот сигнал заведён на вывод UART RX (4), что делает невозможным его использование в качестве источника прерывания. | Для работы в Linux необходимо использовать выход прерывания INT. В UEXT-разъёме модуля этот сигнал заведён на вывод UART RX (4), что делает невозможным его использование в качестве источника прерывания. | ||
Необходимо подключить вывод INT на выводы UEXT2, которые представляют из себя GPIO, например на вывод 6 UEXT2 (GPIO53). | Необходимо подключить вывод INT на выводы UEXT2, которые представляют из себя GPIO, например на вывод 6 UEXT2 (GPIO53). | ||
<!--T:7--> | |||
Самый простой способ сделать это - накоротко замкнуть (например припоем) ножки 4 и 6 на UEXT-вилке модуля. | Самый простой способ сделать это - накоротко замкнуть (например припоем) ножки 4 и 6 на UEXT-вилке модуля. | ||
==Настройка== | ==Настройка== <!--T:8--> | ||
Драйвер трансивера в ядре [https://github.com/contactless/linux/blob/v3.12-rc3-imxv5-x0.3/drivers/net/ieee802154/mrf24j40.c]. В драйвер добавлены незначительные изменения для работы в полудуплексном режиме SPI и для использования Device Tree. Драйвер в виде модуля включен в образ по-умолчанию. | Драйвер трансивера в ядре [https://github.com/contactless/linux/blob/v3.12-rc3-imxv5-x0.3/drivers/net/ieee802154/mrf24j40.c]. В драйвер добавлены незначительные изменения для работы в полудуплексном режиме SPI и для использования Device Tree. Драйвер в виде модуля включен в образ по-умолчанию. | ||
<!--T:9--> | |||
Для подключения модуля, необходимо объявить устройство в [[Device Tree]]: | Для подключения модуля, необходимо объявить устройство в [[Device Tree]]: | ||
<!--T:10--> | |||
<pre> | <pre> | ||
ssp1: ssp@80034000 { | ssp1: ssp@80034000 { | ||
.............. | .............. | ||
cs-gpios = <&gpio0 17 0 | <!--T:11--> | ||
cs-gpios = <&gpio0 17 0 | |||
&gpio2 28 0 | &gpio2 28 0 | ||
&gpio1 20 0 | &gpio1 20 0 | ||
Строка 43: | Строка 51: | ||
.............. | <!--T:12--> | ||
.............. | |||
6lowpan@0 { | <!--T:13--> | ||
6lowpan@0 { | |||
compatible = "microchip,mrf24j40"; | compatible = "microchip,mrf24j40"; | ||
spi-max-frequency = <100000>; | spi-max-frequency = <100000>; | ||
Строка 54: | Строка 64: | ||
.............. | <!--T:14--> | ||
.............. | |||
<!--T:15--> | |||
}; | }; | ||
</pre> | </pre> | ||
==Работа с 6LoWPAN== | ==Работа с 6LoWPAN== <!--T:16--> | ||
Устанавливаем пакеты для работы с 6LoWPAN: | Устанавливаем пакеты для работы с 6LoWPAN: | ||
<!--T:17--> | |||
<pre> | <pre> | ||
apt-get install lowpan-tools | apt-get install lowpan-tools | ||
Строка 69: | Строка 82: | ||
<!--T:18--> | |||
Работа с 6LoWPAN производится с помощью утилиты <b>iz</b> | Работа с 6LoWPAN производится с помощью утилиты <b>iz</b> | ||
<!--T:19--> | |||
<pre> | <pre> | ||
root@wirenboard:~# iz listphy | root@wirenboard:~# iz listphy | ||
Строка 79: | Строка 94: | ||
<!--T:20--> | |||
Для работы необходим пакет lowpan-tools из sid | Для работы необходим пакет lowpan-tools из sid | ||
==Ссылки== | ==Ссылки== <!--T:21--> | ||
* [https://www.olimex.com/Products/Modules/RF/MOD-MRF24J40/resources/MOD-MRF24J40-schematic.pdf принципиальная схема] | * [https://www.olimex.com/Products/Modules/RF/MOD-MRF24J40/resources/MOD-MRF24J40-schematic.pdf принципиальная схема] | ||
* [https://www.olimex.com/Products/Modules/RF/MOD-MRF24J40/ | * [https://www.olimex.com/Products/Modules/RF/MOD-MRF24J40/ | ||
</translate> | </translate> |
правки