Я пытаюсь использовать датчик температуры DS18B20. http://adafru.it/381
Я использую Beagle Bone Black.
Дело в том, что я не хочу использовать менеджер мыса. Поэтому я пытаюсь изменить дерево устройств, чтобы заставить GPIO на панели P9.22 работать с устройством.
План такой:
- Как работает дерево устройств 2. Затем, используя драйвер провода Dallas 1, который есть в моем Linux в BBB, запустите его.
Но, как и ожидалось, я застрял на первом шаге.
Для изменения дерева устройств в качестве ссылки я использую следующие две ссылки:
a) Сначала это удивительное Техническое примечание о содержимом дерева устройств для BBB: https://www.ofitselfso.com/BeagleNotes/AboutTheDeviceTree.pdf
b) И эта другая ссылка, которая предоставляет измененное дерево устройств, которое я не совсем уверен, работает ли оно с моими инструментами, так как я не могу его скомпилировать, поэтому я адаптирую его для работы с тем, который я использую. Дерево устройств, которое я использую, является базовым, но с работающим i2c1, так как я использую его для другого датчика. Кроме того, я бы сказал, что они используют другое название для мультиплексора. https://kvurd.com/blog/beaglebone-black-1-wire-temperature-debian-8-kernel-4.1-no-capemgr/
Я добавил следующее содержание в dts:
В разделе pinmux@44e10800:
dallas_w1_pins: pinmux_dallas_w1_pins {
pinctrl-single,pins = <0x150 0x37>;
};
Чуть выше Раздел c, но из раздела c:
onewire {
compatible = "w1-gpio";
pinctrl-names = "default";
pinctrl-0 = <&dallas_w1_pins>;
status = "okay";
gpios = <&gpio0 2 0>;
};
В разделе so c:
P9_22_pinmux {status = "disabled"; }; /* Dallas 1W */
Итак, когда я пытаюсь его получить скомпилировано (dt c -I dts -O dtb -o am335x-bone.dtb am335x-bone.dts), происходит сбой, похоже, ему не нравится бит & gpio0. Должен ли я отослать это куда-нибудь? Я довольно новичок ie, когда дело доходит до модификации дерева устройств, как это. Я понимаю, что пытаюсь сослаться на gpio0 [2], который подключен к этому пэду (я имею в виду, он будет подключен, если я смогу заставить мультиплексор делать то, что я хочу).
Ошибка:
ERROR (phandle_references): Reference to non-existent node or label "gpio0"
ERROR: Input tree has errors, aborting (use -f to force output)
Я также добавляю точки, которые я использую в этой ссылке: https://drive.google.com/file/d/1mGMnXG ... sp = share
Спасибо, парни! BR