Ppmsum

Материал из virt2real wiki
Перейти к: навигация, поиск

Загрузка драйвера может осуществляется с необязательными параметрами:

insmod ppmsum_mod.ko channels=6 ns=1
  • channels - означает количество каналов ppmsum, выдаваемых драйвером (по умолчанию 8)
  • ns - если значение не равно нулю, то значения каждого канала передаются в наносекундах, иначе в тиках таймера, который работает на частоте 24 МГц. По умолчанию значение передаётся в тиках таймера

Во время загрузки выводятся значения, которые загружены по умолчанию (в тиках таймера):

[  361.987033] pbuf[0]=9480             (395    ns)
[  361.995022] pbuf[1]=520              (21     ns)
[  362.003025] pbuf[2]=9480             (395    ns)
[  362.011023] pbuf[3]=10520            (438    ns)
[  362.019026] pbuf[4]=9480             (395    ns)
[  362.027022] pbuf[5]=20520            (855    ns)
[  362.035024] pbuf[6]=9480             (395    ns)
[  362.047010] pbuf[7]=30520            (1271   ns)
[  362.055024] pbuf[8]=9480             (395    ns)
[  362.063024] pbuf[9]=40520            (1688   ns)
[  362.071030] pbuf[10]=9480            (395    ns)
[  362.079021] pbuf[11]=50520           (2105   ns)
[  362.088024] pbuf[12]=9480            (395    ns)
[  362.096032] pbuf[13]=60520           (2521   ns)
[  362.104028] pbuf[14]=9480            (395    ns)
[  362.116018] pbuf[15]=70520           (2938   ns)
[  362.124027] pbuf[16]=9480            (395    ns)
[  362.132023] pbuf[17]=110520          (4605   ns)
[  362.141024] sum=480000 frame= 480000 (20000  ns)

После загрузки драйвера, запуск ppmsum осуществляется записью команды start в файл /dev/ppmsum

echo "start" > /dev/ppmsum

Смена интервала по каналу осуществляется записью в файл /dev/ppmsum значения соответствующего канала в тиках таймера (если ns=0), или в наносекундах (если ns!=0). Например:

echo "ch0=1000 ch1=1000 ch2=1000 ch3=1000 ch4=1000 ch5=1000 ch6=1000 ch7=1000 " > /dev/ppmsum

Порядок ввода каналов произвольный. Так же ввод может заканчиватся командой start Ширина импульса меняется записью слова pulse в файл /dev/ppmsum, например

echo "pulse=9000" > /dev/ppmsum 

Существует ещё команда stop, но лучше её пока не запускать. Выгрузка драйвера работает, но нестабильно. В принципе можно использовать пока её вместо stop, но лучше делать reboot.