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

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

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

Илья
Сообщения: 18
Зарегистрирован: 28 ноя 2018, 00:10
Предприятие: ЛЭМЗ

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

Сообщение Илья »

bkolbov писал(а): 17 янв 2019, 09:16 Добрый день!
Илья писал(а): 16 янв 2019, 13:34
Максим, а где можно подробнее прочитать про эти счетчики? У меня возник такой же вопрос по полю INTPRD?
Или прошу администраторов дать ответ на этот вопрос

Благодарю.
Подраздел 14.9 Триггер событий, описание регистра ETPS.

Вот именно между этим подразделом и описанием регистра предделителя триггера событий (табл А.12.21) и есть противоречие.
В подразделе говорится, что Если значение INTPRD = 00b,то счетчик отключен, а входные события игнорируются.
В описании регистра говорится:
INTPRD = 00b - прерывание по каждому событию
INTPRD = 01b - прерывание по первому событию
...

Чему верить? Что есть каждое и что есть первое событие?

Благодарю
bkolbov
Сообщения: 248
Зарегистрирован: 14 дек 2015, 11:37
Предприятие: АО НИИЭТ
Откуда: Воронеж

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

Сообщение bkolbov »

Если значение INTPRD = 00b,
то счетчик отключен, а входные события игнорируются.
Эта фраза неверна.

Про первое и каждое тоже не совсем корректно написано.
INTPRD = 00b - прерывание по каждому событию
INTPRD = 01b -прерывание каждые 2 события
INTPRD = 10b - прерывание каждые 3 события
INTPRD = 11b -прерывание каждые 4 события
Илья
Сообщения: 18
Зарегистрирован: 28 ноя 2018, 00:10
Предприятие: ЛЭМЗ

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

Сообщение Илья »

Про первое и каждое тоже не совсем корректно написано.
INTPRD = 00b - прерывание по каждому событию
INTPRD = 01b -прерывание каждые 2 события
INTPRD = 10b - прерывание каждые 3 события
INTPRD = 11b -прерывание каждые 4 события
скажите пожалуйста, а для полей SOCBPRD/SOCAPRD справедливо то, что написано в описании:
00 - выдача сигнала запрещена
01 - по первому событию ....
или для этих полей данного регистра также будет правильным Ваша поправка:
00 - сигнал по каждому событию
01 - сигнал по каждому 2 событию ...

Благодарю
Илья
Сообщения: 18
Зарегистрирован: 28 ноя 2018, 00:10
Предприятие: ЛЭМЗ

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

Сообщение Илья »

Ребят, а как же он может генерить прерывания на каждое четвертое событие, если счетчик считает только до 3?
Прошу дать правильную полную информацию по всем полям регистра ETPS.

благодарю
bkolbov
Сообщения: 248
Зарегистрирован: 14 дек 2015, 11:37
Предприятие: АО НИИЭТ
Откуда: Воронеж

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

Сообщение bkolbov »

Илья писал(а): 17 янв 2019, 17:11 скажите пожалуйста, а для полей SOCBPRD/SOCAPRD справедливо то, что написано в описании:
00 - выдача сигнала запрещена
01 - по первому событию ....
или для этих полей данного регистра также будет правильным Ваша поправка:
00 - сигнал по каждому событию
01 - сигнал по каждому 2 событию ...

Благодарю
SOCBPRD/SOCAPRD имеют точно такой же механизм функционирования как и INTPRD. Т.е. да, поправка актуальна и для них.
Илья писал(а): 28 янв 2019, 15:35 Ребят, а как же он может генерить прерывания на каждое четвертое событие, если счетчик считает только до 3?
Прошу дать правильную полную информацию по всем полям регистра ETPS.

благодарю
Информация выше корректна.
- счетчик=0, происходит событие 1, счетчик инкрементируется
- счетчик=1, происходит событие 2, счетчик инкрементируется
- счетчик=2, происходит событие 3, счетчик инкрементируется
- счетчик=3, происходит событие 4, счетчик инкрементируется, генериуется прерывание
- счетчик=0, происходит событие 1, ...
Александр
Сообщения: 43
Зарегистрирован: 03 июл 2017, 09:28
Предприятие: ЛЭМЗ

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

Сообщение Александр »

- счетчик=0, происходит событие 1, счетчик инкрементируется
А как может происходить событие, когда счетчик равен 0? В момент включения контроллера он всегда имеет нулевое значение
bkolbov
Сообщения: 248
Зарегистрирован: 14 дек 2015, 11:37
Предприятие: АО НИИЭТ
Откуда: Воронеж

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

Сообщение bkolbov »

Александр писал(а): 29 янв 2019, 10:35
- счетчик=0, происходит событие 1, счетчик инкрементируется
А как может происходить событие, когда счетчик равен 0? В момент включения контроллера он всегда имеет нулевое значение
Да, имеет - 0 это начальная точка отсчета. И это никак не мешает происходить событию.
Александр
Сообщения: 43
Зарегистрирован: 03 июл 2017, 09:28
Предприятие: ЛЭМЗ

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

Сообщение Александр »

INTPRD = 00b - прерывание по каждому событию
INTPRD = 01b -прерывание каждые 2 события
INTPRD = 10b - прерывание каждые 3 события
INTPRD = 11b -прерывание каждые 4 события
Происходит прерывание по каждому событию, когда в регистре задан 0. А каждое событие это не нулевое значение счетчика, а первый импульс. Значит все таки не по 0 значению счетчика происходит событие?
bkolbov
Сообщения: 248
Зарегистрирован: 14 дек 2015, 11:37
Предприятие: АО НИИЭТ
Откуда: Воронеж

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

Сообщение bkolbov »

Александр писал(а): 29 янв 2019, 11:06
INTPRD = 00b - прерывание по каждому событию
INTPRD = 01b -прерывание каждые 2 события
INTPRD = 10b - прерывание каждые 3 события
INTPRD = 11b -прерывание каждые 4 события
Происходит прерывание по каждому событию, когда в регистре задан 0. А каждое событие это не нулевое значение счетчика, а первый импульс. Значит все таки не по 0 значению счетчика происходит событие?
Одновременно с прерыванием счетчик сбрасывается. Поэтому в режиме генерации по каждому событию счетчик постоянно находится в нуле. Если каждые 2 события - считает от 0 до 1, каждые 3 - от 0 до 2, каждые 4 - от 0 до 3.
Александр
Сообщения: 43
Зарегистрирован: 03 июл 2017, 09:28
Предприятие: ЛЭМЗ

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

Сообщение Александр »

То есть включился МК и я сразу ухожу в обработку прерывания, хотя и событий не было? Тк счетчик равен 0?
Ответить

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