Вопросы чЯйника

Раздел начинающих пользователей
Правила форума
В песочнице можно спрашивать когда незнаешь где спросить.
В песочнице нелзя посылать в гугл
В песочнице можно задавать любой вопрос, но на него могут и неответить.
Песочница для тех, кто начинает свои вопросы с защиты чайников от пинков.
В песочницу будут перетаскиваться вопросы неполучившие ответа.
Песочница - попытка навести порядок.
На песочницу большие надежды.

Re: Вопросы чЯйника

Сообщение Enigm (Enigm) » 19 май 2021, 16:43

Так все что есть в ADCON1 матриксы не реализовали, кроме переключения на внешнее опорное,вот и не пользуют.
Возможно включив внешнее опорное и тогда появится ADCON1 :)
Аватар пользователя
Ник: Enigm
Имя: Enigm
(Сочи)
Гуру
Гуру
Информация о пользователе

Re: Вопросы чЯйника

Сообщение Barmaley_GMN (Barmaley_GMN) » 20 май 2021, 06:31

Enigm писал(а):Так все что есть в ADCON1 матриксы не реализовали, кроме переключения на внешнее опорное,вот и не пользуют.
Возможно включив внешнее опорное и тогда появится ADCON1 :)

Не очень понял.
Опорное там и так включается. И в этом плане оно вроде работает, т.к. при включенном VREF+ результат замеров не изменяется (ноги в воздухе висят).
При VDD - меряет. Хоть и не безупречно.
Странно, что процедура напрочь не работает при штатном макросе запроса напряжения. Хотя вроде не отличается от предложенной тов. Mim.
TRIGSEL для какой цели?
Вот сейчас думается, что проблема в том, что матриксы не задействовали регистр ADCON2 в части ACQT. И при использовании любого делителя на выходе - какая-то хрень.
Ник: Barmaley_GMN
Имя: Barmaley_GMN
(Герой!)
Специалист
Специалист
Информация о пользователе

Re: Вопросы чЯйника

Сообщение Barmaley_GMN (Barmaley_GMN) » 20 май 2021, 19:00

Практически все вопросы снимаются.
Итого:
ADC в PIC18F25K80 штатный макрос не работает по причине кривого FC_CAL_Disable_ADC ()
Параметры замеров плавают по причине неправильной установки битов ACQT0-2, программа не позволяет их устанавливать, по умолчанию они в 0.

Спасибо всем, кто помогал (Mim, Enigm).

З.Ы. А существует где-нить сборник/хранилище файлов с исправлением косяков матриксов?
У меня есть три файла для FCforPIC v5 с исправлениями
Ник: Barmaley_GMN
Имя: Barmaley_GMN
(Герой!)
Специалист
Специалист
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение mim (mim) » 21 май 2021, 06:53

Не понятен результат. Чего в итоге добился и каким образом???
Вопрос возникает потому, что итог не выдерживает ни какой критики... Ну, и налицо проглядывает непонимание некоторых процессов... как ты с этим живешь? :lol:
1. FC_CAL_Disable_ADC () ни каким боком не влияет на работу одного канала (в данном случае и с переключением каналов). Хоть как бы он "криво" не был написан. Обнуление регистров конфигурации не обязательное действие, и все зависит от того как и с какими параметрами будут переключаться каналы. И это только тогда когда мы мультиплексируем работу АЦП.
2. Параметр TACQT присутствует и у АЦП контроллера 2580. И он также не задействован и равен нулю. Если сравнить параметры АЦП в этом плане между собой, то различий, влияющих в этом плане нет. Причем емкость CHOLD у 2580 почти в 5 раз больше, что должно говорить что для 2580 время на заряд должно быть больше... По твоим утверждениям - с 2580 все работает... как?
3. TACQT определяет время на которое конденсатор CHOLD будет удержан (дольше заряд) до отключения от порта... Это нужно в определенных режимах работы при авто преобразовании с использованием регистров специального назначения...
Конечно, заряд конденсатора будет стабильней, но и то время которое есть в программе вполне отвечает требованиям.
В таком режиме конденсатор подключен всегда к порту АЦП и отключается только на момент преобразования.

Таким образом напрашивается вывод - не там собака порылась...
I Am Legend
Аватар пользователя
Ник: mim
Имя: mim
(Из Лесу, вестимо...)
Легенда
Легенда
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение Barmaley_GMN (Barmaley_GMN) » 21 май 2021, 08:40

mim писал(а):Не понятен результат. Чего в итоге добился и каким образом???
Вопрос возникает потому, что итог не выдерживает ни какой критики... Ну, и налицо проглядывает непонимание некоторых процессов... как ты с этим живешь? :lol:
1. FC_CAL_Disable_ADC () ни каким боком не влияет на работу одного канала (в данном случае и с переключением каналов). Хоть как бы он "криво" не был написан. Обнуление регистров конфигурации не обязательное действие, и все зависит от того как и с какими параметрами будут переключаться каналы. И это только тогда когда мы мультиплексируем работу АЦП.
2. Параметр TACQT присутствует и у АЦП контроллера 2580. И он также не задействован и равен нулю. Если сравнить параметры АЦП в этом плане между собой, то различий, влияющих в этом плане нет. Причем емкость CHOLD у 2580 почти в 5 раз больше, что должно говорить что для 2580 время на заряд должно быть больше... По твоим утверждениям - с 2580 все работает... как?
3. TACQT определяет время на которое конденсатор CHOLD будет удержан (дольше заряд) до отключения от порта... Это нужно в определенных режимах работы при авто преобразовании с использованием регистров специального назначения...
Конечно, заряд конденсатора будет стабильней, но и то время которое есть в программе вполне отвечает требованиям.
В таком режиме конденсатор подключен всегда к порту АЦП и отключается только на момент преобразования.

Таким образом напрашивается вывод - не там собака порылась...

Не исключено, но по факту в железе:
1. Штатный макрос GetInt или GetVoltage делает замер только 1 раз, потом выводимые данные не меняются, вне зависимости от входных. Аналогичная картина в связке макросов ROW (SetChannel-GetInt-Disable). Как только убираю Disable - начинает выдавать данные согласно измерений.
2. В теории не силён (но уверен, что "перезарядить" конденсатор невозможно, а вот "недозарядить" - легко, что ИМХО и происходит), на практике: при TACQT = 0 и FRC до (примерно) 3В измерения идут более-менее точно, выше начинает занижать с наростающей тенденцией. При TACQT = 0 и делителях - вообще беда, результаты измерений практически рандомны. При TACQT = 10, отлично меряет как с FRC так и с делителем частоты /16 (остальные не проверял).
3. см.п.2
Как-то так.
Если есть иные предположения - могу проверить в железе и предоставить результат.
Ник: Barmaley_GMN
Имя: Barmaley_GMN
(Герой!)
Специалист
Специалист
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение Barmaley_GMN (Barmaley_GMN) » 24 май 2021, 22:01

ADC.rar

010 02 00 05 FF 00 00 00 FF 02 00 07
А если включить паузу, то так
010 02 00 05 FF 00 00 00 FF 02 00 05
У вас нет доступа для просмотра вложений в этом сообщении.
Ник: Barmaley_GMN
Имя: Barmaley_GMN
(Герой!)
Специалист
Специалист
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение igorka (Игорь) » 18 июл 2021, 11:48

Поделитесь пожалуйста ссылкой на тему, где приведён пример ПИД-регулятора, представленном в целочисленном виде.
Спасибо!
Ник: igorka
Имя: Игорь
(Горловка)
Практикант
Практикант
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение victor1964 (victor1964) » 18 июл 2021, 12:32

Вот пример. В какой теме брал не помню.
У вас нет доступа для просмотра вложений в этом сообщении.
Ник: victor1964
Имя: victor1964
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение Alexandr_ (Александр) » 23 авг 2021, 15:37

Всем привет!
Я совсем новичок во FC, не пинайте сильно. :) А вопрос и просьба о помощи такого плана, можно ли внутренними средствами Attiny13, т.е. определенным набором команд, вставленных в программу микроконтроллера, считать в ту же eeprom, и там записать в любую ячейку, настройки регистра osccal, ну и другие регистры конфигурации тиньки, если конечно возможно такое. Перелопатил кучу форумов, и всякой литературы, не смог найти ответ на мой вопрос, вот и обращаюсь к специалистам, подскажите по возможности.
Ник: Alexandr_
Имя: Александр
(Измаил)
Новичок
Новичок
Информация о пользователе
Вернуться наверх

Re: Вопросы чЯйника

Сообщение Yushik (Андрей) » 23 авг 2021, 20:20

Добрый вечер почти все регистры в МК AVR доступны на чтение и запись. Регистр OSCAL 8-ми битный и доступен на чтение, считываете его СИ вставкой в переменную Byte, а дальше с этой переменной можно делать что угодно в том числе стандартным компонентом ФК EEPROM занести в ячейку.
Аватар пользователя
Ник: Yushik
Имя: Андрей
(Симферополь)
Гуру
Гуру
Информация о пользователе
Вернуться наверх

Пред.След.

Вернуться в ПЕСОЧНИЦА

Кто сейчас на форуме

Пользователь просматривает форум: нет зарегистрированных пользователей

cron