工具/软件:
如何在 Linux 中的捕获模式下启用计时器?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:
如何在 Linux 中的捕获模式下启用计时器?
我附加了使用计时器 IO 启用捕获的补丁:
U-Boot 驱动程序更改:
0001-patch.patch TIMER-CAPTURE-DTBO-ENV-OVERLAY
Linux 驱动程序更改:
0001-patch.patch TIMER-CAPTURE-DRIVER-CHANGES
Linux 器件树更改:
1072.0002-changes.patch TIMER-CAPTURE-DTS
DTBO:
问题 :
>make u-boot >make linux
#!/bin/bash #set -x cd /sys/class/pwm/pwmchip0 echo 0 > export #Will export pwm0 device cd pwm0/ echo 100000000 > period #In nanoseconds echo 30000000 > duty_cycle #In nanoseconds echo "normal" > polarity echo 1 > enable while true do cat capture sleep 2 done
devmem2 0x02400038 w 0x00004043

2) 此外、TIMER0 默认情况下会根据寄存器的默认值启用 PWM。 此处附上以供参考。 
因此、默认情况下、所有 TIMER0 输出都由 TIMER0 控制。
注意:
确保 uENV.txt 文件“ name_overlays “参数(如果存在) 不会覆盖 patch 0001-global.patch 中提供的 name_overlays 参数 TIMER-CAPTURE-DTBO-ENV-OVERLAY 。
限制:
正确捕获时间段值。
但是、占空比值可能不准确、因为计时器只有 2 个捕捉寄存器、这些寄存器可在上升时使用 CAP1 进行捕获、在下降时使用 CAP2 进行捕获、反之亦然。 因此、将捕获(占空比)或 (1-DUTY_CYCLE)。 这实际上是 IP 的硬件限制。
此致
Gokul