Как упомянуто в вопросе, файл слотов и bone_capemgr отключены в v4.14 ядра в пользу оверлеев U-Boot .
Как объяснено в ответе разработчика ядра BeagleBone , U-Boot теперь обрабатывает оверлеи и автоматически включает эквивалент cape_enable=bone_capemgr.enable_partno=univ-all,BB-ADC,BB-PWM0,BB-PWM1,BB-PWM2
:
Все 5 из них включены из коробки с изображениями, которые теперь отправляются
в:
https://beagleboard.org/latest-images
Для ШИМ обязательно используйте ссылку
https://github.com/beagleboard/bb.org-overlays/blob/master/examples/cape-unversal-pwm.txt
и конфиг-пин pwm ..
Таким образом, интерфейс ШИМ уже настроен! Теперь просто экспортируйте и используйте ШИМ. Например, чтобы получить доступ к pwm0:
root@beaglebone:~# cd /sys/class/pwm/pwmchip0
root@beaglebone:/sys/class/pwm/pwmchip0# ls
device export npwm power subsystem uevent unexport
root@beaglebone:/sys/class/pwm/pwmchip0# echo 0 > export
root@beaglebone:/sys/class/pwm/pwmchip0# ls
device export npwm power pwm-0:0 subsystem uevent unexport
root@beaglebone:/sys/class/pwm/pwmchip0# ls pwm-0:0
capture device duty_cycle enable period polarity power subsystem uevent
Примечание. Возможно, потребуется отключить HDMI с помощью disable_uboot_overlay_video=1
в /boot/uEnv.txt
, если контакты уже используются.
Чтобы определить назначение контактов для интерфейсов PWM, см. Мой следующий пост PWM-чип для сопоставления контактов на BeagleBone Black (v4.14) .