Идите оба спать. Завтра со свежей головой перечитаете и поймете. Я же не попугай - одно и тоже повторять?!… )))
для осознания, на ночь, прикрепи скрин настройки таймера из куба)
Да лажа…
И не завтра, а в понедельник)
Мне кажется вы загнали б, или условия задачи кривое.
Поставьте cnt 4095, ccr регулируйте нужный шим, выходную частоту нужную делителями + на крайний случай кварц поменять.
Чтобы ты всю ночь не спал, а на картинку пялился?)))
у меня фантастическая память)))
Попробуйте сделать первый таймер ведомым, а тактировать его вторым. Т.е. Счетные импульсы по переполнению ведущего таймера будут подаваться на вход ведомого таймера в котором настроен модуль захвата.
Для примера я возьму таймеры TIM2 и TIM3. Задача состоит в том, таймер TIM3 тактировал таймер TIM2 по переполнению своего счётчика: то есть, счётчик таймера TIM2 будет увеличиваться при переполнении счётчика TIM3 - получаем 32-битный счётчик, “состоящий” из TIM2_CNT (старшие биты) и TIM3_CNT (младшие).
гыыы
на ночь тут подумалось
а гиганта мысли не спасет?
uint16_t pwm = ADC * 16;
CCR1 = pwm ;
Сдвиг влево на 4 и всё
xDriver, Arduman почему вы туда пытаетесь засунуть число больше чем 1500 при 48kHz таймера?
Полностью поддерживаю вопрос! )))
Я вчера это списал на «градус в крови» и отправил обоих спать (в смысле @xDriver и @andycat ). Чтобы сегодня с утра со свежей головой перечитали ))
А зачем мне каскадный таймер городить, если и один справляется (всего то до 1499 считает)? Вы по сути предделитель на таймерах описали. А мне предделитель не нужен.

если и один справляется (всего то до 1499 считает)?
сам же написал, хочу плавнее, плавнее можно только увеличив разрядность таймера, все!
Но при этом частота то снизится! (((
Я ведь могу до 4095 считать, но тогда частота не 48кГц, а всего 16кГц получается…
нет, разрядность повысится, будет не 1500 а 3000
А каким образом разрядность может повыситься? Я не понимаю. Можно по другому (или на картинках ) обьяснить?

но тогда частота не 48кГц, а всего 16кГц получается…
ставили то 48кГц, откуда 16кГц взялось

А каким образом разрядность может повыситься? Я не понимаю. Можно по другому (или на картинках
) обьяснить?
а давайте вы сами, а то одни накидывают, а мы под сомнение ставим, а тем еще и доказывать надо…
Это максимальная частота при таковой 72 МГц и постановкой вопроса максимальная плавность при ccr 4096, если нужна большая частота - берём более жирный МК.
Вру, ещё поделить в 2 раза.
Зачем делить? Я же вчера всё это проверял и именно без всяких делений при счете до 4096 получаем 17.5кГц…
Ладно, я еще вчера понял что счет только до 1500 возможен при 72МГц тактовой. ))
Тогда другой вопрос: Если с помощью map() приводить значе6ия с ацп к 1500 - то тем самым мы снижаем разрядность ацп до 10 с копейками бит (вместо 12), так? Как это повлияет на оцифрованный звук? Снизится качество? Или из-за того, что ацп работает на достаточно высокой частоте этого не будет (где-то читал что разрядность и частота оцифровки связаны)?
Еще такая была мысль - Если возможно снизить ацп до 10 бит, то счет будет до 1024, а частота поднимется до 70кГц (или с делителем на 2 опустится до 35кГц, что тоже приемлемо). Возможно снизить ацп до 10 бит?

Возможно снизить ацп до 10 бит?
4096>>2