К1921ВК01Т - вопросы по ТО и его доработка

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Лашкевич »

Вероятно, было бы полезно добавить в документацию (или отдельный документ) рекомендации по конфигурации модулей ШИМ под разные задачи, как это сделано у TI в их описании. Сейчас можно посмотреть прямо в тексасовый документ, там на стр. 68 и далее для разных силовых преобразователей есть примеры с кодом. Ну или почитайте motorcontroldemo, там мертвое время настраивается тоже.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 107
Зарегистрирован: 15 фев 2017, 19:07

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение petrovitch »

В motorcontroldemo я не увидел работы с DMA. С чем это связано?

Кстати, очень туманное описание DMA в документации.
Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Лашкевич »

DMA в основном нужно для задач широкополосной передачи данных, для приложений, работающих с потоками данных - аудио, фото, видео, IO. Именно в motorcontrol задачах DMA редко для чего можно приспособить. Примеры работы с DMA можно найти на битбакете.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
Аватара пользователя
Disona
Сообщения: 81
Зарегистрирован: 06 дек 2016, 11:18
Предприятие: НПФ Вектор
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Disona »

Здравствуйте

У меня проблема с настройкой порогового выключателя в модулях ШИМ, а именно с регистром "HDSEL".

У меня не получается выставить биты "CBC" и/или "OSHT". Все остальные биты в этом регистре взводятся/сбрасываются нормально, а эти два никак.

Пробовал взводить их программно побитово (NT_PWM0->HDSEL_bit.OSHT= 1), программно через маску (NT_PWM0->HDSEL= (1 << 31)), пробовал в среде разработки в режиме отладке через просмотр памяти (адрес 0xA000B088 согласно документации), через окно "Watch", и через просмотр периферийных регистров, не получается никак.

Пробовал прописывать в регистр "HDSEL" значение 0xFFFFFFFF - при нажатии "Enter" значение регистра становится 0x07FFFFFF.
Про проблему со старым заголовочником с ошибкой знаю, её сейчас нет.

Такое поведение у регистра HDSEL во всех модулях ШИМ, не только в PWM0.

В документации указано, что эти регистры и на запись, и на чтение - то есть должны при чтении показывать, что в них записано, а не нули.

Не подскажите, в чем может быть проблема?
С уважением, Дмитрий Шпак
ООО "НПФ Вектор"
bkolbov
Сообщения: 248
Зарегистрирован: 14 дек 2015, 11:37
Предприятие: АО НИИЭТ
Откуда: Воронеж

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение bkolbov »

Добрый день!

Вот здесь было некоторое обсуждение удержания (применительно к его сбросу):
viewtopic.php?f=37&t=538&start=40#p3714

Могу лишь дополнить, что биты выбора режима удержания CBC и OST (регистр HDSEL) не влияют ни на что (писать туда бесполезно, читаются нули). Оба сигнала на удержание генерируются одновременно и объединяются через ИЛИ без учета разрешения конкретного режима. И если сигнал циклического удержания будет сброшен по новому периоду ШИМ автоматически, то сигнал одиночного удержания должен быть сброшен через флаг. Т.е. фактически циклический режим не функционирует, т.к. чтобы снять удержание необходимо также сбрасывать флаг одиночного удержания OST в регистре HDCLR.
В итоге, снятие удержания возможно только при сбросе флага OST в HDCLR лишь после наступления нового периода PWM (CTR==0).
Аватара пользователя
Disona
Сообщения: 81
Зарегистрирован: 06 дек 2016, 11:18
Предприятие: НПФ Вектор
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Disona »

Большое спасибо!
С уважением, Дмитрий Шпак
ООО "НПФ Вектор"
Аватара пользователя
Disona
Сообщения: 81
Зарегистрирован: 06 дек 2016, 11:18
Предприятие: НПФ Вектор
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Disona »

Да, и ещё.

В описании аналогового компаратора указано, что бит "TOEN" в регистре "CTLn" позволяет запретить запуск секвенсора АЦП.
Но оказалось, что одновременно с этим он также запрещает и триггер для порогового выключателя ШИМ.
То есть я установил "TOEN = 1", чтобы АЦП не запускать, и искал причину, почему у меня ШИМ не отключается.
С уважением, Дмитрий Шпак
ООО "НПФ Вектор"
Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Лашкевич »

Описание 1.5.1.0
1. Стр.98, на "рис. 14.1. – Функциональная схема блока ШИМ" на вход подается частота SysCLK, однако в тексте под рисунком говорится про синхросигнал SynCLK (на рисунке не показан и поиском в документе не находится).

2. Стр. 99, написано "Входной сигнал тактирования TBCLK для первого блока ШИМ формируется на основе сигнала, приходящего с вывода PWM_SYNCI микроконтроллера.". Хотя выше было сказано, и на рисунке показано, что TBCLK формируется на основе SynCLK.
на мой взгляд во всём этом тексте и картинке присутствует путаница, что от чего синхронизирует и на что влияет. Синхросигналы, обнуляющие таймер TBCTR перепутаны с его тактированием.

3. Стр. 108, Фильтр коротких импульсов. "Ширина минимального импульса, допускаемого к прохождению на выход, задается в регистре FWDTH в тактах PCLK". Термин "PCLK" по документу поиском не находится, что это и как формируется - необходимо указать хотя бы, см. рисунок такой-то или раздел такой-то.

4. В FAQ (viewtopic.php?f=37&t=931) в разделе с предложением скачать документацию ссылки устарели. Для 1921ВК01Т1 даже на сайте нельзя открыть страницу продукта, ссылка ведет на несуществующую страницу https://niiet.ru/chips/microcont/602-арм
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Лашкевич »

Сторожевой таймер описан скудно. Регистр LOCK и как им пользоваться не описан в тексте, как сбрасывать таймер тоже. В описании регистра LOCK (Таблица А.7.5) описывается регистр WDTLOCK. Непонятно, то одно и то же или нет.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
Василий
Сообщения: 11
Зарегистрирован: 15 ноя 2017, 15:30
Предприятие: ООО "НПФ Вектор"

Re: К1921ВК01Т - вопросы по ТО и его доработка

Сообщение Василий »

Столкнулся с проблемой при настройке усреднителя АЦП. Сделал параметр AVG настраиваемым. При изменении параметра на несколько единиц вниз стабильно зависает весь АЦП: перестают выполняться измерения, не формируются прерывания. Например, если задать AVG=4, а потом сбросить на AVG=0. Или сбросить AVG с 6 до 3.

Код: Выделить всё

    if (p->Idc_AVG_setting < 0)
        p->Idc_AVG_setting = 0;
    if (p->Idc_AVG_setting > 6)
        p->Idc_AVG_setting = 6;
    NT_ADC->SAC_bit.AVG2=p->Idc_AVG_setting;
В документации не нашел запретов редактирования параметра AVG в каких-либо режимах работы микроконтроллера.
Ответить

Вернуться в «32-разрядные микроконтроллеры»