-
- Спасибо! В итоге AtXmega не подходит по скорости обработки, не успеет обсчитывать ПИД регулятор при частоте опроса 100 кГц. + Датчик на 20+ разрядов, а каскадировать энкодер занятие неблагодарное. Нацелился на STM32F4 - De_User(27.05.2019 20:09)
- В Хмегах аппаратное каскадирование таймеров, но будет ли это работать с энкодером - большой вопрос. Обсчитывать ПИД с частотой 100 кГц Хмега конечно не сможет, если только не писать все на ассемблере. AlexG(133 знак., 28.05.2019 12:46)
- Я заводила под старшие разряды переменную в памяти (разряды 0-15 в регистре CNT, разряды 16-31 в ячейке памяти). Когда обслуживание энкодера вызывало прерывание по overflow, делала инкремент или декремент этой ячейке. Т.е. никакого умножения и Ксения(104 знак., 28.05.2019 23:48)
- А как понять, делать инкремент INC или декремент DEC ? Прерывание же одно и то же? У меня около каждого значения колебания в "+" и в "-" имеют место быть. Побочный эффект увеличения разрешения датчика. - De_User(29.05.2019 00:04)
- Прерывание по overflow там совмещено с underflow. Когда оно возникнет, тогда и решите, INC это или DEC, по знаку CNT. Если он мал (меньше половины шкалы) то это был overflow. Т.е. оно у меня так: Ксения(217 знак., 29.05.2019 00:34 - 00:37)
- Спасибо! - De_User(29.05.2019 01:27)
- Прерывание по overflow там совмещено с underflow. Когда оно возникнет, тогда и решите, INC это или DEC, по знаку CNT. Если он мал (меньше половины шкалы) то это был overflow. Т.е. оно у меня так: Ксения(217 знак., 29.05.2019 00:34 - 00:37)
- А как понять, делать инкремент INC или декремент DEC ? Прерывание же одно и то же? У меня около каждого значения колебания в "+" и в "-" имеют место быть. Побочный эффект увеличения разрешения датчика. - De_User(29.05.2019 00:04)
- Я заводила под старшие разряды переменную в памяти (разряды 0-15 в регистре CNT, разряды 16-31 в ячейке памяти). Когда обслуживание энкодера вызывало прерывание по overflow, делала инкремент или декремент этой ячейке. Т.е. никакого умножения и Ксения(104 знак., 28.05.2019 23:48)
- В Хмегах аппаратное каскадирование таймеров, но будет ли это работать с энкодером - большой вопрос. Обсчитывать ПИД с частотой 100 кГц Хмега конечно не сможет, если только не писать все на ассемблере. AlexG(133 знак., 28.05.2019 12:46)
- Спасибо! В итоге AtXmega не подходит по скорости обработки, не успеет обсчитывать ПИД регулятор при частоте опроса 100 кГц. + Датчик на 20+ разрядов, а каскадировать энкодер занятие неблагодарное. Нацелился на STM32F4 - De_User(27.05.2019 20:09)