Почему частоту ШИМ у PMP20 задают значением в десять раз больше?

Проверено экспертом Опубликовано: 05.06.2026 426 просмотров Помогло 69%

Единица задания частоты в команде PWM — 0,1 Гц, поэтому в операнд пишут значение, в десять раз превышающее нужную частоту. Это сделано, чтобы можно было задавать дробные частоты целым числом.

Примеры пересчёта:

  • 100 Гц → в операнд пишут 1000.
  • 1 кГц → 10000.
  • 72 кГц → 720000.
  • 12,5 Гц → 125.

Из этого следуют две практические вещи. Первая: значение частоты почти всегда выходит за пределы 16 бит, поэтому команда 32-битная, а регистр под частоту занимает два слова — записывать в него нужно командой DMOV, а не MOV. Вторая: диапазон 1 Гц…100 кГц в операнде превращается в 10…1000000.

Частая ошибка при наладке: частота получается ровно в десять раз ниже ожидаемой. Это значит, что в операнд записали герцы, а не десятые доли герца.

Скважность, в отличие от частоты, задаётся не в процентах, а числом 1…65535 от полного периода, и пересчитывается как n / 65535 × 100 %.

Прикреплённая документация

Георгий Жуков Георгий Жуков Ведущий инженер

Этот ответ был полезен?

Не нашли ответ?

Инженер сервисной службы ответит на почту. Вопросы, которые повторяются, мы публикуем в базе знаний — без ваших контактов.

Вопрос из раздела Почему частоту ШИМ у PMP20 задают значением в десять раз больше?