AlexEst Опубликовано 13 апреля, 2023 Поделиться Опубликовано 13 апреля, 2023 Прошу помощи с Algorithm Builder. Я новичёк в этом. Надо обрабатывать прерывания по изменению входов PCINT0...5 В Algorithm Builder есть прерывание только Pin_Change без привязки к входам. Попытки ввести номер порта дают ошибку "Unknown interrupt name" есть у кого опыт работы с этими прерываниями? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
nml Опубликовано 13 апреля, 2023 Поделиться Опубликовано 13 апреля, 2023 А оно и не привязано к конкретному пину. Одно на все. А выбор пина в регистре маски. PCMSK кажется. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Реле, вентиляторы, корпуса, разъемы, а так же любые электронные компоненты в нашем каталоге! Бесплатная доставка + 15% кэшбэк + скидки!Перейти на сайт ТМ Электроникс Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
AlexEst Опубликовано 13 апреля, 2023 Автор Поделиться Опубликовано 13 апреля, 2023 Спасибо. Видел этот регистр, но думал что он для маскировки неиспользуемых прерываний как следует из названия. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Просто зашёл Опубликовано 13 апреля, 2023 Поделиться Опубликовано 13 апреля, 2023 4 часа назад, AlexEst сказал: Видел этот регистр, но думал что он для маскировки неиспользуемых прерываний Данная маска как раз для выбора выводов по изменению уровня на которых будет выполнятся прерывание. А уже в прерывании проверяете состояние вывода и делаете необходимое действие. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке. Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
AlexEst Опубликовано 13 апреля, 2023 Автор Поделиться Опубликовано 13 апреля, 2023 То есть получается что можно использовать только один вход для прерывания по изменению, а все остальные надо замаскировать? Мне то надо отслеживать прерывания по изменению на 3 входах. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Литиевые батарейки и аккумуляторы от мирового лидера EVE в КомпэлКомпания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Просто зашёл Опубликовано 13 апреля, 2023 Поделиться Опубликовано 13 апреля, 2023 (изменено) 2 часа назад, AlexEst сказал: То есть получается что можно использовать только один вход для прерывания по изменению Я не писал, что только один. Можно выбрать хоть все которые доступны для выбора в данной маске (в зависимости от МК) и прерывание будет вызываться по любому выводу на котором лог уровень изменился. А чтобы знать по какому выводу было произведено прерывание, то необходимо будет проверять в прерывании состояние данных выводов. Изменено 13 апреля, 2023 пользователем Просто зашёл 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 Даю ATtiny2313 разрешения в PCMSK на один вход, PCIE и глобальному прерыванию, но никакой реакции на изменение состояния входа не происходит. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Геннадий Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 GIMSK не забыли? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 (изменено) 2 часа назад, AlexEst сказал: но никакой реакции на изменение состояния входа не происходит. Предоставьте свой исходник и тогда будет видно, что Вы делаете не так. Так как при правильной настройке данная задача проста как гвоздь. Или посмотрите рабочий вариант:Test.zip Вывод РВ5 подтянут внутренним резистором, а на выводе РD6 подключите светодиод. Если РВ5 замкнуть на GND, то светодиод загорится, а при разомкнутом состоянии, светодиод погашен. Изменено 14 апреля, 2023 пользователем Просто зашёл 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 в GIMSK установил PCIE в "1" , I-bit in SREG установил в "1" , PCINT0 в Pin Change Mask Register PCMSKтоже установил в "1" В программе сделал моргалку вы выход PD.0 чтобы видеть что контроллер работает и чтобы не просто так программа ждала прерывание, как пишут " что то делаем" 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 17 минут назад, AlexEst сказал: В программе сделал моргалку вы выход PD.0 чтобы видеть что контроллер работает и чтобы не просто так программа ждала прерывание, как пишут " что то делаем" Из данного предложения я совершенно ничего не понял. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 (изменено) я имел ввиду что не просто гонять по кругу NOP а хоть с пользой могралка Изменено 14 апреля, 2023 пользователем AlexEst 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 (изменено) Где Ваш исходник? Чтобы посмотреть параметры настройщика. И ещё не маловажно: АВ регистры R16 и R17 использует для расчётов (как аккумулятор) и если Вы их используете в прерывании, то необходимо задействовать стек (как в моём примере). А если Вы будете использовать данные регистры для хранения значений, то Ваши значения будут периодически теряться. На первых порах не используйте регистры R16 и R17 в своих программах пока не поймёте как всё работает. Изменено 14 апреля, 2023 пользователем Просто зашёл 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 Algorithm Builder ещё начал глючить. Не даёт записывать программу, пишет Chip is inaccessible 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 (изменено) 14 минут назад, AlexEst сказал: Chip is inaccessible Он Вам пишет, что МК недоступен. Вам вначале нужно понять как и что нужно настраивать для работы. Есть нюанс который Вы должны запомнить: перед запуском АВ, Вы должны вначале подключить программатор и когда ОС его увидела только тогда запускать АВ. И на первый порах почаще заглядывать в Опции -> Опции среды -> Порт (перед отправкой программы на МК), где проверяете правильно ли выставлен порт и все ли галки установлены (их две и они все должны быть установлены). Изменено 14 апреля, 2023 пользователем Просто зашёл 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 Это я знаю, у меня два российских адаптера USB -> SPI видимо что то с ними, потому что то пишет, то не пишет. Вчера с одним перестал писать второй писал, а сегодня второй писал, а теперь оба не пишут. И комп перезагружаю и сначала подключаю программатор, а потом запускаю АВ, галочки стоят, торможения все пробовал. Ничего не помогает. Просто проклятие какое то. Понял в чём ошибки были, но не загрузить исправленную прогу. Попрбую состыковать немецкий адаптер. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 17 минут назад, AlexEst сказал: Ничего не помогает. Возможно плохой контакт в шлейфе от программатора, или в разъёме на макетной плате. Если контакты хорошие то проблем с АБ не возникает. Советую для АВ использовать этот программатор – очень надёжно работает (проверял лично). Для АВ Кстати он выполнен по схеме из самой АВ. А можно использовать вот такой: То же работает хорошо Свой исходник так и не покажешь? Без некоторых деталей долго можно воду в ступе толочь. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 И ещё забываю сказать, что использовать у тини2313 порта РА в таком варианте как у Вас не есть хорошо, так как РА2 это вывод RESET. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 Я подозреваю что бесплатный АВ записывает какое то количество программ в ЧИП, а потом блокирует его, потому что у меня уже много таких inaccessible набралось. Беру другой ЧИП, записываю в него какое то количество программ, а потом опять inaccessible. Видимо какой то бит устанавливает что по SPI не работает. Я понял в чём была у меня ошибка, убрал, а записать в ЧИП не могу. Сделаю шлейф для немецкого адаптера и буду им записывать hex код. Pavel counters.alp А в PORTA я не использую PA.3 = Reset 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 А у вас бесплатный АВ или купленный? Я заметил как АВ выдаёт какую то ошибку вроде не то считывает с какого то адреса так и ЧИП inaccessible становится. Я проверил оба адаптера на другом компьютере и тоже inaccessible Я и использую SPA0008 - USB программатор для AVR-контроллеров 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 14 апреля, 2023 Автор Поделиться Опубликовано 14 апреля, 2023 Подключил немецкий адаптер и с немецкой программой всё заработало: записывает и считывает. АВ с немецким адаптером тоже не работает. В общем дело не в ЧИПах, а в АВ, то ли вирус его покоцал, то ли что... Ну да ладно, буду программу делать на АВ, а записывать с немецкой. Вопрос теперь в другом: в 211 страничном описании есть ссылка на "Interrupt Vector" : When a logic change on any PCINT7..0 pin triggers an interrupt request, PCIF becomes set (one). If the I-bit in SREG and the PCIE bit in GIMSK are set (one), the MCU will jump to the corresponding Interrupt Vector. The flag is cleared when the interrupt routine is executed. В списке регистров нет "Interrupt Vector" тогда где его искать? Или это подразумевается Pin Change Interrupt ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
nikolaew Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 1 час назад, AlexEst сказал: А у вас бесплатный АВ или купленный? AB с некоторой версии (5.41? навскидку не вспомню) - официально бесплатный. И она кажется и последняя. Автор понял, что с Си не поборешься. (и я тоже, хотя AB покупал. Реально наверное единственный софт, что покупал....) Как ты не выделывайся... все равно придешь к Си. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 3 часа назад, AlexEst сказал: Я подозреваю что бесплатный АВ записывает какое то количество программ в ЧИП, а потом блокирует его Автор АВ – Громов. С 2010 года она совершенно бесплатная и не поддерживается автором. Ничего она не блокирует, народ многие годы на ней пишет программы и ничего не у кого не заблокировало до недавнего времени. Версия у Вас какая? Последняя 5.44. Вот можете скачать данную версию: AB если у Вас другая. Что касается исходника – исходник АВ это все файлы и папки проекта… пусковой файл с расширением .alp это то же самое, что Ваш скрин без файлов конфигурации настроек. Вы Смотрели мой исходник в архиве? Вот так и Вы должны были заархивировать свой проект и выложить архив. Иначе я не смогу Вам помочь. Что касается прошивки МК. Чтобы не наступить на грабли с фьюзами до понимания как всё происходит, сделайте так: 1 Подключите МК к программатору. 2 Считайте с него фьюзы и нажмите кнопку «Применить». Заводская установка у тини2313 должна быть такой: 3 Установите на вкладке частоту 1 МГц, вот так: При прошивке МК, уберите лишние галки, если они установлены - оставьте так: Имейте ввиду, что не вся периферия позволяет прошивать МК не отключая её от выводов: SCL; MOSI; MISO. Подожду Полный архив Вашего проекта. Забыл сказать про компилятор. Сделайте так: 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Просто зашёл Опубликовано 14 апреля, 2023 Поделиться Опубликовано 14 апреля, 2023 39 минут назад, AlexEst сказал: Или это подразумевается Pin Change Да, это и есть тот вектор прерывания, который вызывается при изменении уровней выбранных входов. Вы вообще мой пример смотрели? Пробовали его залить в МК и посмотреть как работает? 3 часа назад, AlexEst сказал: А в PORTA я не использую PA.3 = Reset Это Вы так думаете, а по факту когда записываете в прерывании значение регистра r17 в порт РА то полагаю происходит сброс МК. Так что лучше так не делать. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AlexEst Опубликовано 15 апреля, 2023 Автор Поделиться Опубликовано 15 апреля, 2023 Ваш пример смотрел, но использовал от него только про стек. У меня своя программа заработала и я собрал кабели чтобы проверить на своей макетной плате работу с энкодерами. Сейчас буду отлаживать программу. У меня задача складывать сигналы от одного энкодера с одним из двух других. Не типичная задача. Обработка сигнала одного энкодера у меня уже работает по прерывания одного входа. Теперь задача сделать программу чтобы работала от двух энкодеров. Порт А тогда не буду использовать. Хватит порта В. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.