Страница 2 из 5

Re: atmega328pb

Добавлено: Пт апр 12, 2019 18:13:13
protoder
При отладке будьте осторожней с Lock битами - в документации это есть, но как-то очень не заметно. При их установке (любых) не возможна работа по протоколу DWI. В частности, вы не сможете перейти в режим SPI. Я, пока разобрался, несколько чипов залочил.

Re: atmega328pb

Добавлено: Сб апр 13, 2019 01:48:10
bafomet911
Спасибо за предупреждение:)

Re: atmega328pb

Добавлено: Пн май 24, 2021 01:10:22
DrLithium
Размещу тут проблемку и решение, а то на неадекватных форумах не получается...

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

Поведение:
Касание пальцами выводит из зависания...

Нашёл:
При последовательном касании выводов металлической спицей, на PE3 зависание пропадает.
Подтяжка пинов PE0-3, сконфигурированных на вход, решила проблему! Статистически, 100% выведение из зависания происходит по касанию пина.

Прерывания ни как не настраивались специально, были только настроены порты, прописан стэк и отключен компаратор:
"ldi Temp,0b10000000
out ACSR,Temp ; выключаем компаратор"

SEI в коде вообще отсутствует.

Вероятнее всего Z-состояние входов (т.к. обвязки ещё нет) не влияет на поведение. Есть огромная доля вероятности, что виной тому узлы QTouch, т.к. в модели МК с индексом просто "P" подобного не встречалось.

Re: atmega328pb

Добавлено: Пн май 24, 2021 11:42:17
parovoZZ
Все неиспользуемые выводы необходимо переводить на ВЫХОД. Создание проблемы и её героическое решение.

Re: atmega328pb

Добавлено: Пн май 24, 2021 21:53:43
DrLithium
[uquote="parovoZZ",url="/forum/viewtopic.php?p=4036631#p4036631"]Все неиспользуемые выводы необходимо переводить на ВЫХОД. Создание проблемы и её героическое решение.[/uquote]
Начинается... Чушь от не внимательности.
Читаем ешё раз и внимательно выше:
bafomet911 писал(а):Платка не вставлена в устройство, т.е. есть минимальная обвязка, большая часть ног портов висит в воздухе.
Т.е в аппарате куда вставляется плата всё разведено и подключено. В колодке для прошивки замечено аномальное поведение. О чём и доложено!

Re: atmega328pb

Добавлено: Ср май 26, 2021 11:03:35
alex_
DrLithium, а у вас пин RST в воздухе не висит случайно?

Re: atmega328pb

Добавлено: Ср май 26, 2021 12:57:18
DrLithium
На колодке (которая дополнительно надевалась на плату) распаян резистор с конденсатором по классике. Т.ч . точно нет.

З.Ы. Можно ещё заметить, что подтяжка внутреннем резюком сыграла плохую шутку - повлияла на стабильность внешней цепочки, и по этому логический ноль не появляется. Пришлось снимать подтяжку внутреннюю и оставлять только внешнюю цепь.

Видимо некоторые "умники" (чуть выше), не в курсе того, что на всех форумах рекомендуют отказываться от внутренней подтяжки, в угоду внешней.

У меня тут выбор не стоит, плату вкраиваю в промышленный аппарат. И тут всё не просто... 3-и сутки голова пухнет над проектом.

Re: atmega328pb

Добавлено: Ср май 26, 2021 22:39:39
alex_
Странные у вас чудеса творятся, я таких на своей 328 не разу не замечал, есть ещё 2 мысли:
* от чего тактируетесь, кварц или внутрянка?
* стабильность питания, или может чего с провода питания прилетает.
Если есть проблема значит, что то её вызывает, надо искать причину.

Re: atmega328pb

Добавлено: Ср май 26, 2021 22:53:59
parovoZZ
на всех форумах рекомендуют отказываться от внутренней подтяжки
а как от неё отказаться умники с форумов знают?
Есть огромная доля вероятности, что виной тому узлы QTouch
Есть тиньки с такой фигнёй (0-ой и 1ой серии). Описанных проблем нет.

Re: atmega328pb

Добавлено: Чт май 27, 2021 08:53:51
alex_
parovoZZ писал(а):
на всех форумах рекомендуют отказываться от внутренней подтяжки
а как от неё отказаться умники с форумов знают?
Элементарно, ставь внешнюю :tea:

Re: atmega328pb

Добавлено: Чт май 27, 2021 09:31:06
parovoZZ
Внешняя подтяжка не ведёт от отказа от внутренней.

Re: atmega328pb

Добавлено: Чт май 27, 2021 09:50:27
alex_
В смысле, нафига включать внутреннюю если уже есть внешняя :facepalm:

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:01:26
parovoZZ
нафига включать внутреннюю
Можно страницу даташита, где сказано про такое действие.

А если вывод ресета обычный GPIO - тогда что куда подтягивать?

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:33:07
alex_
Можно страницу даташита, где сказано про такое действие.
А если логически подумать, нафига делать одно и тоже дважды причём одновременно?
А если вывод ресета обычный GPIO - тогда что куда подтягивать?
Если он сконфигурирован как GPIO то от ресета он уже отключен, далее настраиваем так как нам нужно, ведь для чего то его отключили от ресета?

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:40:10
ARV
умники, советующие отказ от внутренней подтяжки, делают частность правилом, а это не корректно. внешняя подтяжка вполне может приводить к утечкам в режимах сна контроллера, в то время как внутреннюю можно отключить на это время. ну в малогабаритных изделиях каждый внешний компонент проблема. и так далее. в очень большом количестве устройств вполне можно обойтись без внешних подтяжек. так что к советам умников слишком трепетно относиться не стоит.

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:41:40
DrLithium
[uquote="parovoZZ",url="/forum/viewtopic.php?p=4037977#p4037977"]
на всех форумах рекомендуют отказываться от внутренней подтяжки
а как от неё отказаться умники с форумов знают?
Есть огромная доля вероятности, что виной тому узлы QTouch
Есть тиньки с такой фигнёй (0-ой и 1ой серии). Описанных проблем нет.[/uquote]

М.б. ключевое слово "внутренняя" наведёт тех умников на верную мыслю. Я глупый, я просто знаю, останые пусть догадываются или погуглят. )

М.б. и есть такие тиньки... Но в данном случае наверное надо было записать видос, со 100% излечением из зависона по касанию? Или поспорить, что 10/10... или не, 100/100 отработает! Я бы на палец поспорил, против вашей феррари. ) Просто времени жаль и так проблем хватает...

З.Ы. В студии проект работает шикарно, в железе не желает... Скажу сразу, пишу на ассемблере. Прерывания не пашут знаете ли... Сначала думал, что накосячил, поправил что нашёл, но не работает. Далее подумал PCINT не пашет, попробовал INT0 - аналогично. Подумал что таблица прерываний окривела - нет. В таблице меток в конце которой общий reti на случай срабатывания "левого" прерывания, обычно комментируются нужные прерывания, а метки с обработкой кидают после инициализации. Дак светодиод в списке по своим прерыванием (PCINT2:, если его не закомментить) загорается от PD7, а в копии (PCINT2:, если первую метку закомментить) под инициализацией - нет! Т.е. вектор перехода попадает на место! Чудеса! Разберусь что это было, дам знать...

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:51:57
alex_
ARV, уважаемый, поясни суть мысли: чем плоха внешняя подтяжка без включения внутренней, если у меня не используется режим сна и питаюсь я от сети.

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:55:32
ARV
я не говорил, что какой-то из вариантов плох, я обращал внимание всех на тот факт, что выбор надо делать в каждом случае осознанно и по обстоятельствам. скажем, допускать перегрузку пина МК - плохо всегда, и не стоит это закладывать. а подтяжка может быть иной раз хороша внешняя, а иной раз - внутренняя. тут однозначности нет и быть не может.

только и всего.

Re: atmega328pb

Добавлено: Чт май 27, 2021 10:58:57
alex_
Тут просто товарищ parovoZZ, если я его правильно понял, утверждает, что нужно использовать 2 типа подтяжки разом.

Re: atmega328pb

Добавлено: Чт май 27, 2021 11:02:38
ARV
я всегда очень скептически отношусь к утверждениям, плохо коррелирующими с теорией. "нужно" и "можно" - две большие разницы: первая не допускает отступления, вторая - допускает.

так вот, я бы сказал, что при наличии внешней подтяжки менее 10К наличие или отсутствие внутренней вообще никак не влияет ни на что. а случаев внешней подтяжки порядка сотен килоом мне неизвестно... но при такой подтяжке внутренняя может существенно влиять на поведение схемы.