mirror of
https://github.com/EmbedDevIOT/obsidian-vault-.git
synced 2026-11-06 04:13:25 +03:00
44 lines
2.1 KiB
Markdown
44 lines
2.1 KiB
Markdown
Все устройства в Linux живут тут:
|
|
`/dev`
|
|
## I2C.
|
|
По умолчанию шина отключена
|
|
Включить можно следующими способами:
|
|
1. `sudo raspi-config`
|
|
2. Корректировкой `/boot/firmware/config.txt`
|
|
1. Необходимо раскомментировать параметр `dtparam=i2c_arm=on`
|
|
Затем в устройство должно появиться в `/dev` как `i2c-1`
|
|
|
|
## Device tree - Описание аппаратной конфигурации.
|
|
|
|
Device Tree — это **описание аппаратной конфигурации конкретной платы**. Применяется GPU до запуска ядра.
|
|
Device Tree Overlays - фрагмент device tree, который:
|
|
добавляет новое устройство
|
|
включает отключенный контроллер
|
|
меняет параметры существующего узла
|
|
|
|
Пример изменения конфигурации DT без перекомпиляции ядра
|
|
Открыть config.txt и добавить `dtoverlay=i2c-rtc,ds3231`
|
|
|
|
Что происходит:
|
|
1. GPU загрузит основной DTB
|
|
2. GPU применит overlay
|
|
3. GPU передаст модифицированный DT ядру
|
|
4. Ядро увидит новое устройство
|
|
5. Драйвер RTC автоматически загрузится
|
|
|
|
|
|
Команды для работы:
|
|
`cat /proc/device-tree/model` - модель платы для которой device tree создан
|
|
`ls /proc/device-tree/` - дерево устройств, которое kernel получил от GPU
|
|
`ls /sys/bus/platform/devices` - вывод устройств, которые kernel создал на основе DT
|
|
`lsmod` - просмотр загруженных модулей св
|
|
|
|
## Commands
|
|
Система:
|
|
`vcgencmd get_config int` - параметры, которые передает GPU
|
|
`cat /etc/os-release` - просмотр версии системы
|
|
|
|
|
|
|
|
|