Перейти к содержанию

Pin_Change в Algorithm Builder


AlexEst

Рекомендуемые сообщения

47 минут назад, AlexEst сказал:

У меня своя программа заработала

Что уже АВ нормально прошивает МК? В чём была причина проблем?

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Спасибо за нормальную АВ у меня всё таки была покоцанная - меньше вашей на несколько сот КВ. Заменил на вашу и пропал этот глюк " Chip is inaccessible "

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Я имел ввиду нормально заработала программа в микроконтроллере. Но вчера я её загружал немецкой программой и немецким адаптером. А сегодня гружу российским адаптером  и АВ вашим

Теперь очередной глюк: несмотря на то, что даю разрешение на прерывание только на PCINT0 реагирует и на другие входа PCINTх , причём как то странно: если второй энкодер находится в одной комбинации выходов, то реагирует и на первый, на который и должен реагировать, а при определённой конфигурации второго энкодера на первый энкодер перестаёт реагировать. А мне нужно чтобы реагировал только на разрешённые входа.

Вообще ни у кого не мог найти программу с PCINTх может именно из-за того что такие глюки?

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Опять я тупанул: не соединил минус 5 Вольт питания энкодеров с минус питания контроллеров и из-за этого наверное глюк был. Соединил минуса, а теперь другой глюк: не реагирует вообще на вход РВ.0 ни на прерывания ни просто как на дискретный вход. Менял микросхему не помогло. Просто "бег с препятствиями"...

 

Ссылка на комментарий
Поделиться на другие сайты

Внимательность одно из самых важных составляющих в нашем деле. Да и дни сейчас не располагают производить бурную деятельность. От того и препятствий дополнительных много. Подождите до понедельника, тогда всё пойдёт своим чередом. :)

Ссылка на комментарий
Поделиться на другие сайты

блин..."не всему надо верить что люди говорят"... послушался рекомендации отключить аналоговые входа для уменьшения потребления тока а вместо этого отключился вход РВ.0 убрал отключение аналогового входа и заработал  РВ.0

Да мне как говорят "ещё вчера" надо было сделать проект, а тут постоянно что то вылезает...
 

Ссылка на комментарий
Поделиться на другие сайты

Что значит "отключить аналоговые входа для уменьшения тока потребления"?

Вам бы схемку своего "детища" показать, для начала.

Ссылка на комментарий
Поделиться на другие сайты

16 минут назад, AlexEst сказал:

а вместо этого отключился вход РВ.0

Как может входа аналогового компаратора повлиять на цифровой вход? Опять придумываете невообразимое... :D Если даже отключить входа АС, то цифровой вход РВ0 продолжает работать как и работал. ;)

Изменено пользователем Просто зашёл
Ссылка на комментарий
Поделиться на другие сайты

С выключением аналоговых входов уже в прошлом. Надj теперь сделать 2 битный счётчик импульсов чтобы работал нормально. Порт А не считает нормально наверное действительно его не стоит использовать. Перейду на Порт D

Ссылка на комментарий
Поделиться на другие сайты

Порт А у Тини2313 - это только выводы XTAL. Вы варите кашу из топора? Сами хоть что-нибудь можете предложить? Мне очень сомнительно, что Вам удастся запустить несколько энкодеров на безликом прерывании по смене уровня, т.к. это прерывание будет вызываться по каждому событию на всех, задействованных для этого, линиях. Как Вы видите фильтрацию событий? Алгоритм свой выложите!

Ссылка на комментарий
Поделиться на другие сайты

6 минут назад, Геннадий сказал:

Порт А у Тини2313 - это только выводы XTAL.

Не только, ведь это ещё и полноценные цифровые входа/выхода. :)

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

55 минут назад, AlexEst сказал:

Порт А не считает нормально наверное действительно его не стоит использовать.

Порт А работает как и все остальные порты данного МК. Просто Вы не до конца видимо понимаете как им управлять.

2 минуты назад, AlexEst сказал:

Похоже маска на прерывания по изменению входов порта В не работает.

Видимо Вам всё же придётся вначале поизучать  данный МК.  :unknw:

4 минуты назад, AlexEst сказал:

Несмотря на то, что я даю разрешение только на вход 0 реагирует на любой вход

Чудес не бывает. :)

Ссылка на комментарий
Поделиться на другие сайты

Я задаю А0 и А1 как выхода и записываю в порт А регистр=счётчик который считает импульсы с энкодера, но видимо когда в бите А3 появляется 0 происходит сброс так как это и вход сброса тоже, хоть я и не конфигурирую А3 как выход но через  PORTА.3  проходит видимо

Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, AlexEst сказал:

Я задаю А0 и А1 как выхода ... который считает импульсы с энкодера

Вы бы схему нарисовали что ли?

И начать бы с "А.В. Евстифеев: Микроконтроллеры AVR..."

С уважением, Владимир

Ссылка на комментарий
Поделиться на другие сайты

Вроде элементарно как у Ватсона: А сигнал энкодера подаю на вход РВ0, В сигнал энкодера подаю на вход PD6, обрабатываю по прерыванию изменения входа РВ0 в зависимости от направления вращения энкодера инкремент или декремент регистра и записываю в порт А,  на 2 младших разрядах PA0 PA1 LED для индикации, но почему то в одну сторону моргает только PA1 а в другую оба

Pavel counters.alp

то есть в одну строну 00 10 00 10 ... в другую 11 00 11 00...

Ссылка на комментарий
Поделиться на другие сайты

Я не знаю, чем открыть Ваш файл.
Пока Вы не начнёте выкладывать схему (jpg, png) и исходный текст программы (в виде текстового файла *.asm), затруднительно надеяться на конструктивную помощь.

Описание схемы словами - это прекрасно. Но есть масса нюансов. Какие резисторы подтяжки (внешние/внутренние) ? Как дребезг обрабатываете?

С уважением, Владимир

Ссылка на комментарий
Поделиться на другие сайты

Я проверил программу вместо сигнала В энкодера =0 и =1  и тогда считает на увеличение  и на уменьшение и нет проблем с портом А. Видимо проблема в том, что прерывания PCINTx реагирует и по переднему и по заднему фронту, а сигнал В энкодера в этом случае меняется с 0 на 1 поэтому он прибавляет, а в следующем такте вычитает или наоборот.

Программирую в Algorithm Builder 5.44 резисторы подтяжки отключил, дребезга нет потому что идёт цифровой сигнал с энкодера

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, AlexEst сказал:

...хоть я и не конфигурирую А3 как выход но через  PORTА.3  проходит видимо

Где расположен PORTA.3 у ATTIny2313? Какие энкодеры применяете? Разберитесь с их работой! У Вас прерывание происходит по изменению состояния пина, а значит оно реагирует на оба фронта сигнала. Один из которых истинный, второй переходный.

Пока писАл сами разобрались.:)

Изменено пользователем Геннадий
Ссылка на комментарий
Поделиться на другие сайты

PORTA.3 у ATTIny2313  = RESET но не в нём дело.

Решил перейти на аналоговый компаратор потому что у него можно выбрать по одному фронту. Но не могу найти какое максимальное напряжение можно подавать на аналоговые входы. В 211 страничном даташит написано только что срабатывание происходит если на прямом входе напряжение больше чем на инверсном. Можно на инверсный вход подать 2,5 Вольта, а на прямой импульсы с энкодера от 0 до 5 Вольт?

 

Ссылка на комментарий
Поделиться на другие сайты

27 минут назад, AlexEst сказал:

резисторы подтяжки отключил, дребезга нет потому что идёт цифровой сигнал с энкодера

:shok: У Вас не просто энкодеры, а с цифровым выходом?

31 минуту назад, AlexEst сказал:

Программирую в Algorithm Builder 5.44

Программировать можно на ассемблере, можно на Си. Среда разработки здесь не причём.

С уважением, Владимир

Ссылка на комментарий
Поделиться на другие сайты

Да, энкодеры с цифровым выходом ВЕ178А5

С аналоговым компаратором заработало! Использовал внутренний референс и теперь считает в обе стороны нормально потому что выбрал срабатывание по одному фронту. Надеюсь аналоговый вход работает и при напряжении до 5 Вольт. В даташит указано что непряжение не должно превышать VCC+0.5V на любом входе, если бы на аналоговом компараторе было меньше то написали бы.

Ссылка на комментарий
Поделиться на другие сайты

31 минуту назад, AlexEst сказал:

PORTA.3 у ATTIny2313  = RESET но не в нём дело.

...Можно на инверсный вход подать 2,5 Вольта, а на прямой импульсы с энкодера от 0 до 5 Вольт?

RESET = PORTA.2, но не в нем дело. На аналоговый компаратор можете подавать до Uvcc спокойно.

Ссылка на комментарий
Поделиться на другие сайты

30 минут назад, AlexEst сказал:

максимальное напряжение можно подавать на аналоговые входы

Vcc

31 минуту назад, AlexEst сказал:

на инверсный вход подать 2,5 Вольта, а на прямой импульсы с энкодера от 0 до 5 Вольт?

На прямой вход можно подать 1 В от внутреннего ИОН. А на инверсный импульсы с энкодера (при условии, что у него логический "0" менее 1 В).

С уважением, Владимир

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...