- Попалась явно контрафактная Atmega328P: не читаемая маркировка (как
будто стершаяся) и device signature от ATA6614Q - AlexG(Сегодня, 19:23, AVR)
- Кто-нить может объяснить шоцетакЭ ? Размещаю .db-константы во
флеши, если даю несколько аргументов после ".db", то вроде всё
корректно, но удобно и логично было бы декларировать побайтово. Вот
тут и получается жопа, если после директивы ".db" стоит один байт,
то к нему прицепляется второй "00", приходится размещать ряд
значений с переносом строк "\" после каждого Но и тут засада :( Adept(200 знак., 18.12.2025 00:05 - 01:11, AVR, картинка, полностью)
- Асм значит асм. Попробуйте GAS (GNU Assembler). SciFi(1 знак., 18.12.2025 11:59, ссылка)
- Флешь в AVR 16-ти разрядная же! Так что всё правильно. Проц же не
может записать только половину ячейки? :)) Если младшая половина
07, а старшая не определена, то пусть старшая будет 0, это логично
(байт 07 и слово 0007 - одинаковы) - vpv.vpv(18.12.2025 11:36)
- разобрался. Этя скажу вам - эпик фейл. Пипец просто :( Adept(830 знак., 18.12.2025 00:21 - 01:14)
- Так всегда и было в авровском асме, странно, что только наткнулся.
В сях на усмотрение компилятора. Если надо подряд - то используешь
структуру и прагму паковки. - Andreas(18.12.2025 08:53)
- Ассемблер так делал ещё в незапамятные времена. GCC (у меня
старинный WinAVR 10-го года) - сам догадывается паковать
последовательные строки в памяти. Насчёт "просто" констант - не
подскажу, не требовались они мне. - Toчкa oпopы(18.12.2025 07:56)
- Давно не брал в руки шашек. У сабжевых процов вообще возможна ли
побайтовая адресация к флешу? Он жеж вроде напрочь 16-битный? - LightElf(18.12.2025 04:42)
- да ну... есть DB, DW - всегда своя директива под разрядность. Я хз
за АВР, но мне кажется это глупостью... POV(95 знак., 18.12.2025 00:24)
- Вопросы выравнивания были всегда, начиная с i8086. - vpv.vpv(18.12.2025 11:39)
- это мешает много где. Если размещаешь, к примеру, таблицу функций,
ну скажем состоящую из кусков, и если в каком-то куске - нечётное
количество точек, то получишь в этом месте "0". Очень неприятный
эффект :( или вот как у меня в данном примере: Adept(547 знак., 18.12.2025 00:55)
- да, так и есть, .DB, .DW, .DQ (подозреваю, что в настройках IDE или
опций компилятора где-то стоит "птичка" "выравнивать флеш-константы
по чётным адресам"... Но да, глупость какая-то. Обнаружил
соверщенно случайно на отладке в симуляторе :( - Adept(18.12.2025 00:25)
- __attribute__((packed)) в объявлении переменной или ее типа, не
помогает? - Nikolay_Po(18.12.2025 00:24)
- Проблема: измеряю напряжение с АЦП - контроллер Mega8535. Использую 2 канала (пока). По 1-му каналу считывается ок, по 2-му - ощущение, что 1-й канал влияет на 2-й, потому что при изменении напряжения на 1-м канале напряжение на 2-м такое же минус OlegALL(8226 знак., 17.02.2014 23:44 - 19.02.2014 08:53, AVR, полностью)
- Господа, что можно прикупить чтобы через USB шить атмеги, но
обязательно с прогой от AvReal? Ибо куча написано батников для всей
продукции, сейчас надо перейти с самопального программатора на
что-то что можно без проблем купить на Озоне. Батники переделывать
лень и неохота наделать ошибки которые потом возвращать с
какого-нибудь Сахалина... - Ralex(01.12.2025 19:15, AVR, полностью)
- Мы на производстве, при массовом тиражировании, используем клон AVR
ISP-II от Olimex, работает везде и со всем, на что фантазии хватит.
Командная строка (STK500, AtBackEnd), GUI всякие - студии,
CodeVision, ну и AvReal, разумеется. Очень практичная и надёжная
вешь! Запитывает сам схему по +5В (платы не нужно запитывать от
БП). Рекомендую! vpv.vpv(89 знак., 02.12.2025 08:56, ссылка)
- Типа такого, наверное? reZident(2 знак., 01.12.2025 20:18, ссылка, картинка)
- Дык FTDI. Конкретнее FT2232C. Не помню, довел ли Александр до
завершения свою идею заюзать более распространенную FT232R, но "С"
у меня уже много лет исправно трудится... - Гyдвин(01.12.2025 19:49 - 20:00)
- Работа m4809 (AVR0) под отладчиком при пониженном питании (мож кому
пригодится) Adept(2104 знак., 13.11.2025 22:26, AVR, полностью, +1)
- Субботнее. Надо для лаборатории сделать простой девайс с
бистабильным реле, управляемым по rs232. Токи минимальные, но
требования - чтобы проц спал между командами, не создавал наводку.
Питание батарейное. Думаю сделать на arduino nano. Ток выхода 40мА
Реле управляется 20мА 5в, 1 обмотка . Вроде должно работать без
драйвера на MOSFET, это прикольно. После команды CPU отправляется в
power down с отключением кварца. Пробуждение - от GPIO
подсоединенного к ноге Rx. Должно Mty1(163 знак., 09.11.2025 00:43 - 01:37, AVR, полностью)
- вопрос пиководам - эт шо, в пиках таймеры такие уёбищные, что
мелкочип в новых мегах их засунул (timer type B). Недавно
разбирался с ними, охренел от убогости, а именно Adept(3153 знак., 20.10.2025 03:22, AVR, полностью)
- Коллеги напомните пожалуйста. Мега16. Включен внутренний опорник
2.56 в кажись. Ножку меги AREF нужно подключать к внешнему
конденсатору? Balda(75 знак., 03.10.2025 09:40, AVR, полностью)
- Без конденсатора шуметь будет. Если это не критично, например
фильтруешь/усредняешь показания АЦП, или точность нужна плюс минус
лапоть, то можно и не надо. - Codavr(10.10.2025 19:39)
- Желательно. - Cкpипaч(06.10.2025 09:07)
- Ставили 0,01 мкф. - carlosh(06.10.2025 08:44)
- Зависит от "шумности" схемы. По сути, нога AREF подключена напрямую
к внутреннему компаратору. По этой ноге мультиметром можно
замерить, например, внутренюю опору 1,1В в Меге48РА. Когда-то
ставили внешние кондёры 0,1 мкФ, после (лет 5-7 назад) перестали,
АЦП и так прекрасно работает. - vpv.vpv(06.10.2025 08:29)
- Там достаточно несколько нФ. Но ставить надо обязательно.
Нормальная работа без этого конденсатора возможна, и зависит от
партии МК, температуры и фазы луны. - il-2(03.10.2025 12:14)
- Ставили максимальный керамический Np0 - De_user(03.10.2025 11:30)
- The internal voltage reference may thus be decoupled by an external
capacitor at the AREF pin to improve noise immunity megajohn(1 знак., 03.10.2025 09:59, картинка)
- Появилось странное но неутолимое желание принудить обработчик
прерывания не сохранять и не восстанавливать регистры. С обычными
функциями __task (или как раньше __C_task) решает эту задачу, а вот
вкупе с __interrupt дает ошибку. Предложите как утолить мое желание
средствами IAR AVR. - Codavr(30.05.2025 09:10, AVR, полностью)
- У AVR-GCC была возможность глобально зарезервировать регистр(ы)
проца, тогда компилятор перестает этот регистр использовать и,
соответственно, не сохраняет-восстанавливает его. Может такое
применить? - LightElf(02.06.2025 16:21)
- Зачем? Если нужно уменьшить время в прерывании, то нужно меньше
кода в нём. Ведь сохраняются не все регистры, а только те, которые
используются в прерывании. Ещё такое может понадобиться для
переключения стека в многопоточной системе. Тогда на асме надо
обработчик делать. - Ale3000(30.05.2025 12:30)
- Если в прерывание вставить вызов другой функции, самой простейшей,
то компилятор уже НЕ видит, какие регистры используются, и пихает в стек вобще всё.
Поэтому я уже много лет использую __raw - vpv.vpv(02.06.2025 07:30)
- Вот как это выглядит в листинге. В регисторовой паре R15:R14 лежит
текущий указатель на нужную функцию. Функция "портит"только пару
регистров. Её вызов происходит мгновено (команда MOVW - 1 такт). А
вот преамбулы и послеамбулы прерывания из-за косвенного вызова
длятся невыносимо долго и бестолково. vpv.vpv(1 знак., 02.06.2025 07:42, картинка)
- Так тут у вас функция вызывается по указателю. Конечно, компилятор
не может знать, куда в данный момент указывает указатель. Если
функцию вызывать напрямую, то компилятор не будет сохранять
неиспользуемые регистры. - Ale3000(02.06.2025 09:09)
- А вот примерно то же самое, но с "__raw" и зарезервированными
регистрами под т.н. "аппаратный стек" :)) Прерывание отрабатывает в разы быстрее: vpv.vpv(1 знак., 02.06.2025 07:54, картинка)
- ХЗ, конешно, но само понятие прерывания подразумевает, что нужно
быстро вычитать куда-то или, наоборот, записать и поднять флаг, что
было такое. И всё. Когда в прерывании надо сохранять кучу
регистров, это чота в консерватории надо менять. - mse homjak(02.06.2025 10:55)
- Когда начинаешь решать реальные задачи, с ужасом осознаёшь, что мир
прерываний оказывается черевычайно велик и разнообразен. :-)))) - vpv.vpv(02.06.2025 13:25)
- Если важно выполнить действия по прерыванию, например, выполнить
расчёт параметров реального времени и это приоритетно, то почему бы
не делать это в прерывании? Я даже куски кода из main() выношу в
программные прерывания, чтобы поднять приоритет над фоном. Бывает,
из прерывания периферии, вызываю программное прерывание ниже
приоритетом, чтобы дать возможность для прерываний другой
приоритетной периферии, но, при этом обработать данные до возврата
в main(). - Nikolay_Po(02.06.2025 11:02)
- "Быстро", "куча" - это пустой звук, если нет цифр. А цифры бывают
оч. разные, такшта консерватория ещё поработает... - SciFi(02.06.2025 10:59)
- У меня с одного древнего проекта не пошедшего в серию осталась
прорва tiny15. Вот я их периодически расходую на всякую мелочевку.
А у нее стек аппаратный на 3 байта. Вот и чудю. Почти все уже
срасходовал. - Codavr(30.05.2025 12:54)
- Не удивительно, __task и __interrupt не совместимы, ибо требуют от
функции разного поведения: не сохранять и в то же время сохранять
регистры. А если так: ЫЫyкпy(121 знак., 30.05.2025 10:07)
- Делаешь вызов своей функции в ассемблере. Вот кусок кода из моего
старого проекта: il-2(344 знак., 30.05.2025 09:28)
- Взываю к силам коллективного разума - принесли плату с МК
ATMega-20AI со странными симптомами: МК работает на внутреннем
RC-генераторе до момента установки Fuse-битов, потом на выходе MISO
нули, причем SCK и MOSI от программатора просаживаются с 5 до 2
вольт. Питание 5 вольт, кварц 14.7456 Mhz функционирует и
дублируется на выходе CKOUT. - NeedHelp(04.06.2025 18:19,
, AVR, полностью)
- Опять говнокод не выходит. Дапамажице просраться! Toчкa oпopы(341 знак., 09.04.2025 23:11 - 10.04.2025 10:13, AVR, ссылка, полностью)
- Хоба!.. Проблема имеет более, чем одно решение. Нашёл у себя такую
непонятку, датированную 2022 годом. Toчкa oпopы(334 знак., 11.04.2025 12:32, ссылка)
- P.P.S. Пост вылез вверх из-за редактирования потери приложенного
файла. Оказывается, там ещё во время оно было что-то забаговано,
см. приложенный "шот" с Телесисек. Желающие - могут покопать
скрипты линкера. Сейчас мне не досуг в этом птичьем языке
разбираться. Попробую сборку от klen. Если не попустит - поставлю
все переменные глобальными. Toчкa oпopы(79 знак., 11.04.2025 00:14, ссылка, ссылка)
- Локальные переменные это стек, а указатель стека устанавливает
стартап, его смотреть и править откуда он берет его? - Andreas(10.04.2025 10:54)
- Не обижайтесь, если что. Попробуйте Arduino IDE в качестве среды с
AVR-GCC 12 или даже 14, какой там найдётся? Мне очень понравилось.
Писал свой код bare metal. Очень хорошо работает оптимизация -O3
-flto (нужно только ручками в конфигурационном файле самой IDE
прописать). Отладка, правда, не работает (я не выяснял даже, есть
ли?). Nikolay_Po(296 знак., 10.04.2025 09:44)
- Настроить параметры памяти ИДЕ mse homjak(1 знак., 10.04.2025 00:02, картинка)
- Всем привет! В среде AtmelStudio7 и CodeVisionAVR в настройках
проекта есть установка тактовой частоты МК. А в IAR где установить
этот параметр? - Fomich(03.04.2025 09:04, AVR, полностью)
- может кому пригодится, - синхронизация CMP/OVF таймеров RTC. Пока
тут искал и исправлял собственные баги, наткнулся на ожидаемое, и
неприятное поведение RTC, впрочем, вероятно свойственно и другим
таймерам, когда хочется использовать ресурсы таймера по максимуму,
в частности Adept(5820 знак., 12.03.2025 00:53 - 01:01, AVR, полностью)
- Нафига прерывание по переполнению, если можно вести счетчик и
каждый 10-й вызов выполнять дополнительные действия? - Vit(12.03.2025 08:25)
- Зачем счётчик? В прерывании будильника "А" (OCR1A или что там, в
4809) к нему прибавляется 1 мс, а в прерывании будильника "В" 10
мс. Таймер молотит без останова, с переходом FFFF -> 0000.
Будильники тоже. Арифметика вся беззнаковая, естессно, "только
вперёд". И всё. - vpv.vpv(12.03.2025 10:55)
- Любопытствую, зачем иметь в системе несколько разных часов? Вот
Эдди в прошлый раз тоже возмущался, что ему не хватает
стотыщмильенов таймеров. По-моему регулярные нечастные вызовы
вполне укладываются в КА более частых. Пришла очередь, проверили по
единым часам свой заданный timestamp - неа, еще пауза не прошла,
пропускаем - и bigloop или чего там у вас дальше движется. Главное,
чтобы часы тикали не реже, чем минимально необходимый квант времени
и переполнение их reZident(51 знак., 12.03.2025 11:13)
- Не часов, а несколько будильников иногда очень полезно. Всё от
задач зависит. У меня будильники формируют временные ворота для
приёма сигнала. Таймер молотит на основной частоте (20МГц), дискрет
50нс, счёт на доли микросекунд. Поэтому, всё максимально заведено
на аппарат. Бонус аппаратной реализации (в отличии от програмного
опороса) - отсутствие джиттера, чОткие времянки. - vpv.vpv(12.03.2025 13:50)
- обычно хватает "мягкого риалтайма" - один счетчик тикает без
остановки, а интервалы рассчитываются вычитанием беззнаковых.
"удлинить счетчик" - задача тривиальная. - Vit(12.03.2025 11:30)
- так легче и надёжнее всего разделяются два круга приоритетных
очередей задач. В быстром таймере - реалтайм драйверы, требующие
максимального внимания, в медленном, тоже реалтайм, но
второстепенные. Обычно у меня в 10mS живут драйвер какого-нить
дисплея, клавиатуры, индикаторов, всякие службы вайфаев с
блюпуппами с обработкой таймаутов и событий, звук и прочее такое. В
первом круге приоритетов - Adept(279 знак., 12.03.2025 11:19)
- Именно. Без лишних сущностей, как завещал великий Оккам. - SciFi(12.03.2025 11:14)
- чтобы не перегружать хэндлер. Во втором прерывании - второй круг
задач (обычно всякие второстепенные драйвера дисплеев, клавиатуры,
звук, шины и прочее такое - Adept(12.03.2025 10:54)
- Поддержу усыхающую ветку :) Недавно (вот сейчас прям) сдохла ,
похоже, 32-я мега из-за несогласованности 5-вольтового SPI и
3-вольтовой FRAM. Ситуёвина такова Adept(1906 знак., 07.02.2025 02:23 - 08.02.2025 16:43, AVR, полностью)
- ух сколько понаписали .... а если поставить вопрос ребром,
разработка для себя, или за деньги ?? если второе... трем ветку,
ставим преобразователь уровней, идем в поисках новых граблей!!! - Aleksey_75(08.02.2025 22:09)
- Выглядит так, будто стартовая конфигурация (фьюзы) читается
ненадёжно. Может, просто программатор дохлый или питание -
микросхема просто не прошивается должным образом. - Nikolay_Po(08.02.2025 09:44)
- не, сдохло чего-то в AVR-е. Заменил МК, доработал цепи
согласования, всё пошло (FRAM осталась живой) - Adept(08.02.2025 15:07)
- А может иголки по питанию, 12 В на ножке бывает, жытаг сам по себе
включился и так умер, сопля припоя или дорожка с трещиной. Кароч
для макета необходимо чтобы процессор был в панельке и менялся
одним движением на новый, а не вот это всё. - Boвa(08.02.2025 10:54)
- житаг не люблю из-за множества проводов и большого коннектора на
плате. (UART - "нашефсе" для отладки, когда на платке есть FTDI :))
ну и несмотря на ассемблер и 96% заполненность флеши меги32,
программа у меня очень структурирована и читается крайне легко, так
что львиная доля отладки просто в голове :) Adept(544 знак., 08.02.2025 15:34)
- житаг не люблю из-за множества проводов и большого коннектора на
плате. (UART - "нашефсе" для отладки, когда на платке есть FTDI
:)) бред какойты, если есть житаг в железе и в камне как вместо этой
красоты пользовать уарт????? Не понимаю. - enc(08.02.2025 21:49)
- лехко, когда всё работает как надо, и отлаживать нуна мелкие
недочёты :) Но в любом случае аппаратный отладчик хорошая штук, но
житаг - слишком геморрно (у меня все ноги проца заняты, вот если б
по PDI, как в иксмеге было б , или хотя б dWire, как в меге88. А
тут.... сколько проектов на 16-й и 32 сделано и всё без
отладчика,.... хотя иногда да, не хватало. - Adept(09.02.2025 02:06)
- Если отменить Си, то и жытаг уже не так интересен. Так вижу. - SciFi(08.02.2025 21:51)
- и что, никто не угробил МК неправильным согласованием хоть раз в
жизни?? :) у меня вот реально впервые такой фейл, несмотря на
десятка два-три проектов, ну и ни разу не видел, чтобы из-за
перегрузки IO линии проц издыхал полностью (программа заливается,
но не работает) :) - Adept(07.02.2025 16:32)
- Если cs у fram при программировании мк был активным и
ограничивающего в SO не было, пин порта у мк и того. Где вы меги
без a находите? - jlm(07.02.2025 14:29)
- В противостоянии AVR и FRAM ставлю на AVR :-) - SciFi(07.02.2025 14:38)
- "..Где вы меги без a находите?" вот энто вот что? - Adept(07.02.2025 14:38)
- Перевели бы все на 3.3 с а, или что то на 5В в схеме есть? - jlm(07.02.2025 14:50)
- У AVR нет что ли ограничения по частоте в зависимости от величины
питания? При напряжении 3,3В она поди на половинной (8МГц?) от
максимума частоте работать может. - reZident(07.02.2025 15:02)
- Да, там полно 5V логики, в т.ч. и силовые регистры, у которых
питание строго 5V Adept(1 знак., 07.02.2025 14:54, картинка)
- как это развидеть!!! у меня кровь из глаз пошла - Aleksey_75(07.02.2025 22:35)
- Как вы в такой палитре цветов работать можете? О.о Красный с
пурпурным на черном фоне это же ядреный взрыв для глаз и для мозга! - reZident(07.02.2025 15:07)
- цвета "доскового" пикада. Отлично всё видится, и глаза, в общем не
устают. Цветовая схема вмеру контрастная и достаточно эргономичная. - Adept(07.02.2025 15:11)
- Пурпурный на черном "терпеть ненавижу" со времен ЭЛТ-мониторов, у
которых из-за не сведения лучей в углах красный с синим в пурпурных
линиях разъезжались :-/ - reZident(07.02.2025 15:15)
- у меня мониторы были хорошие видать :) но да, пурпурных выбор "не
очень" тоже не люблю этот цвет, но там им атрибуты/номиналы
компонентов нарисованы, на удивление - не раздражает. - Adept(07.02.2025 15:16)
- Ну, не знаю. У меня в схематике вот такая расцветка. reZident(1 знак., 07.02.2025 15:21, картинка)
- У меня такая. Бapбoc(1 знак., 07.02.2025 15:37, картинка)
- Это шедевр изображён! - я, когда вижу подобную схемотехнику, то
притворяюсь красноухой водяной черепахой живущей 60 лет в
аквариуме. Умиляет номинал R38, R39 даже не из из ряда Е96 штоле?
Налицо косяк библиотеки - все резисторы 0.25 Вт, т.е не привязаны к
футпринтам последующей трассировки. Но и вообще изобилие ключей в
абсолютно непрозрачной перепутанной зависимостями структуре. Что
делает представленная схематика? А по палитре - точки соединений
должны быть черными. bnb62(2 знак., 08.02.2025 06:28)
- У вас фон светло-серый, а не черный. Красный (и тем более
пурпурный) не так дико смотрится на этом фоне. - reZident(07.02.2025 15:42)
- кстати светло-серый фон - плохое решение. Хорошо видны только
насыщенные цвета, да и то не все. Мож это только у меня так, но
подсознательно хочется взять "бумагу побелее" :)) - Adept(07.02.2025 15:50)
- На вкус и цвет известно, что. Мою палитру в PCB один хороший
человек обозвал шизофренической. Бapбoc(1 знак., 07.02.2025 16:05, картинка)
- а по мне так комфортно вполне. У меня обычно (на тёмном фоне)
контур платы - синий, топология TOP/BOTTOM темно-зелёный и
тёмно-красный, внутренние слои - оранжевый, тёмно-сине-зелёный,
тёмно пурпурный, тёмно жёлтый или темно-розовый, механические
чертежи - тёмно-серый, комментарии - бирюзовый и т.п. Adept(1 знак., 07.02.2025 16:20, картинка)
- Не. Это скорее палитра дальтоника, который синий не видит. - reZident(07.02.2025 16:06)
- да, стандартная схема пикада на тёмном фоне - высококонтрастная,
поэтому любые насыщенные цвета там смотрятся
дико ярко, но мне кажется тут проблема в большой яркости монитора. Я
делаю яркость/контрастность, чтобы картинка на мониторе
соответстствовала бумажному отпечатку по восприятию Поэтому тёмные
и контрастные схемы совсем не напрягают, как и светлые тоже, но
тёмные как-то приятнее :) - Adept(07.02.2025 15:46)
- синий цвет херово воспринимается (мож это только моя особенность
зрения, но по мне, так шины, например жёлтым - сильно лучше) Опять
же имена цепей лучше другим цветом, а не как контуры компонентов.
Ну и исторически, мне расцветка пикада, близкая к стандартной,
комфортнее всего (занудствую :)) Adept(75 знак., 07.02.2025 15:30, картинка)
- Последовательная загрузка сильно упростила бы разводку и
конструктив и диагностика шины проще. Или что-то прям
быстродействующее? - jlm(07.02.2025 15:00)
- Для ТС на заметку. Двунаправленные трансляторы логических уровней
со склада Промэлектроники. reZident(2 знак., 07.02.2025 14:00, ссылка, картинка)
- Изголодались... заклевали :) - Ralex(07.02.2025 13:55)
- Повосхематичность продолжает зохавывать форум. Даже фрагмент нельзя
выложить? - Toчкa oпopы(07.02.2025 10:53)
- Пипец какойты, резюками согласовывать уровни ? При программировании у авра порты в
третьем состоянии, в это время что с CS FRAM? Правильно, притянут к
земле резюком. И накуя ISP? у меги JTAG имеется для
отладки/программирования. - enc(07.02.2025 07:52)
- а что такого плохого в том, что уровни согласованы делителями?? по
току АВР вытягивает лехко. Да и можно сопротивления запросто
увеличить в 2-3 раза. Не вижу больших проблем. А схемка вота
(как-то подумалось, что словесного описания достаточно для
понимания :)) Adept(420 знак., 07.02.2025 12:47 - 12:52, картинка)
- 3,3В откуда берутся? Насколько сильно запаздывают от 5В? При
включении (когда 5В уже есть, а 3,3В еще нет) входные токи SCK, CS,
SI могут достигать 50мА, что не исключает вероятности
"защелкивания" FRAM по входному току любого из этих пинов. Так что
100 Ом резисторы должны быть увеличены до, как минимум, 510 Ом. - reZident(07.02.2025 13:56)
- Eщё раз, при программировании по ISP CS FRAM через R314 постоянно
притянут к земле следовательно на выводе SO постоянно присутствует
логический уровень 0 или 1 - хез. Поэтому D6 у тебя отгорел, проц
слабее оказался)). R305 и R314 нужно увеличить на порядок а между
CS и 3,3в повесть резюк ~10к. А лучше человеческую схему
согласования уровней применить на тех же полевиках. Если бы ты проц
шил по житагу, то при всей корявости твоей схемы проц остался бы
жив. enc(1 знак., 07.02.2025 13:15, картинка)
- Зубовный скрежет, вот что. Достаточно поставить последовательный
резистор порядка 1..10 кОм, принимая во внимание известное
заваливание фронта на комбинации RпослCвх. Ток через резистор и вход пойдёт в цепь 3,3 В, поэтому проверить,
что он не поднимет 3,3 В выше, чем надо. - SciFi(07.02.2025 12:53)
- ээээ... а зачем притягивать CS резюком к земле ??? CS пулапить
надо, а вот пулапа то похоже и нет, третье состояние МК для CS
FRAMa активное состояние и тут все понеслось ... - Aleksey_75(07.02.2025 08:01)
- да, пулапа нет, этот момент тоже пропустил (хотя не впервой, -
всегда делаю так, что при отсутствии МК линии типа CS с неактивными
уровнями, а тут пропустил как-то в спешке :( в такой схеме
согласования уровней, надо было через шоттку его на линимю +3,3V
завести с внешней подтяжкой ноги МК к +5, и резистор на ногу МК
взять что-то вроде 1К кстати, Вопрос во фронтах (не будет ли
завалов на 8МГц SPI и не подпрыгнет ли питание 3,3V выше нормы
3,6?? - Adept(07.02.2025 13:35)
- Что-то мне совсем страшно становится, особенно после взгляда на
"исправленную" схему, которая быстро улетела в мусорку... - SciFi(07.02.2025 13:39)
- в мусорку улетела "неправильно исправленная", нарисованная
с бодуна спросоня, ессно с ошибками :)) Склоняюсь к тому, что линию /CS
придётся таки согласовывать посложнее, а на сигнальных достаточно
резисторных делителей. Кстасти, открываю конкурс "максимально красивая/рабочая бюджетная схема"
- согласования 5V AVR и 3V SPI_FRAM :)) Делитесь сакральными знаниями кто во что горазд :)) - Adept(07.02.2025 13:50 - 15:20)
- Мой вариант в номинации "самая
неправильная бюджетная схема" :)) Adept(1 знак., 07.02.2025 14:10 - 14:23, картинка)
- Сделал так, всё заработало,но подтяжку CS поставил 6k8 (другого
выводного не нашлось под рукой), пришлось правда съехать на SPI 4-
МГц для надёжности, хоть и на 8-ми всё работало :) итого: Adept(787 знак., 08.02.2025 16:39)
- а что за fram?? там spi точно не толерантен к 5В? - Aleksey_75(07.02.2025 22:35)
- а что "благородные Доны" думают про совсем "дешманский" вариант
просто ограничить ток последовательными резисторами 1К и
понадеяться на встроенные шоттки (непонятно конечно как подпрыгнет
3В питание при этом от схемотехники LDO зависит, и как он вообще
себя поведёт. Но токи там единицы миллиампер в наихудшем случае,
всего будут). А вообще я бы так не стал делать конечно :( Adept(63 знак., 07.02.2025 18:39)
- дык всё? больше никто ничего не нарисует?? :) Набрасывайте
варианты, господа :) я пока побежал в офис, надо ещё МК с FRAM
поменять и напаять на платку доп.резисторы согласования линии SO - Adept(07.02.2025 16:43)
- Вроде норм. И я бы убрал R316, просто перемычка. Этот резистор -
тянущиеся из глубины веков предрассудки. То же и C34. Если C33 -
керамика, то C34 тут ничего нового не добавляет. - SciFi(07.02.2025 14:16)
- Сначала переходите на Си, потом обсудим ваше предложение :-) - SciFi(07.02.2025 13:53)
- На ноги, куда подаются сигналы на FRAM повесил делители
100+200ом (можно и побольше было, но вроде по токовой нагрузке на
ноги АВР, Adept - enc(07.02.2025 08:09)
- как то странно все! SO выход с FRAM без активного CS должен стать
входом в третьем состоянии... Похоже в консерватории еще что-то не
так ) - Aleksey_75(07.02.2025 07:28)
- +1 - enc(07.02.2025 07:52)
- Вообще не понятно кто на ком стоял? Ты жалуешься, что пожег
5-вольтовый МК 3-вольтовой периферией? Может все-таки - наоборот?
:-) - il-2(07.02.2025 05:14)
- Согласовывать нужно, иначе защёлкнется паразитный тиристор и всё! De_user(1 знак., 07.02.2025 02:33 - 02:45, ссылка)
- А не найдется ли у кого в запасниках исходников от аппликейшн ноты
AVR998 (AVR998.zip)? Microchip.com молчит как рыба об лед. На
торрентах нашел, но только ревизию A, а последняя - C. AlexG(77 знак., 05.10.2024 13:04, AVR, полностью)
- Тутачки. Сейф с атмеловыми аппнотами. Codavr(1 знак., 07.10.2024 10:36, ссылка)
- Где то валяется родной диск от атмела даже несколько от отладчиков
айс2, айс3 Balda(47 знак., 07.10.2024 10:29)
- А можно поподробнее, что за меги и что за контафакт, как
проявляется? У нас мелкие Atmega48PA, попадаются партии с
Альцгеймером в ЕЕПРОМе. Спустя 2-4 дня после записи информация
пропадает. Очень неприятно. - vpv.vpv(07.10.2024 10:18)
- прям вот привезённые с "европ", или поставленные китайцами??
(никогда такого не встречал) - Adept(08.10.2024 21:57)
- У меня нет полной информации. Это разработки, которые давно уже
производятся практически без моего участия. Дефектные Хмеги не
прошиваются или прошиваются только один раз и не работают после
этого или контрольная сумма флэши не сходится. - AlexG(07.10.2024 12:50)
- Пропадает или портится? Для работы с АВР, ещо с лохматых пор,
считается правилом хорошэго тона, после обращения к ЕЕПРОМ,
парковать ЕЕАР в "0", например и эту ячейку не пользовать. - mse homjak(07.10.2024 10:25)
- Ну-у-у, мы же не пионЭры с ближайшего радиокружка. :)))) В ЕЕПРОМ с
адресов 0х10 заносятся калибровочные значения, при настройке
изделия на стенде. Всё работает. У заказчика через неделю - НЕ
работает. Присылают блок обратно - в ЕЕПРОМе мусор или пусто.
Другие Атмеги48PA (десятки тысяч) с этими же платами и прошивками
работают годами нормально, ЕЕПРОМ не слетает. - vpv.vpv(07.10.2024 11:15)
- Вы не: "Всё работает" и "Десятки тысяч", а прямо скажите, паркуете
указатель EEPROM или нет? - Nikolay_Po(08.10.2024 21:22)
- Нет. Всеми "парковками" занимается компилятор IAR AVR. Я
единственное, указывааю ему адрес НЕ с нулевой ячейки, например: vpv.vpv(118 знак., 09.10.2024 14:45)
- во немного не в тему топика, но опосредованы касается :) как-то в
стародавние времена, налетел Adept(1497 знак., 08.10.2024 23:07)
- Порченый EEPROM это не баг, а закономерный результат медленно
меняющегося питания при отсутствующем BOD. У меня, наоборот,
троирование информации в EEPROM пошло с Хмег, потому что были
редкие непредсказуемые сбои. - AlexG(09.10.2024 06:30)
- У меня данные в EEPROM в двух экземплярах с контрольной суммой
хранятся, а записи - нумеруются, износ - выравнивается. Даже если
байт надо писать - пишу с номером записи и контрольной суммой. И
пишу в ячейки (блоки) по очереди, чтобы износ распределялся по всей
EEPROM, а не приходился только на один блок. Так и ресурс кратно
вырастает (если запись многократно меньше объема EEPROM), и защита
от отказа питания во время записи получается. - Nikolay_Po(08.10.2024 23:23)
- У нас Епром пишется 1 раз при начальной калибровке. Поэтому никаких
износов, или повторных записей при снижении питания, или ещё чего -
нет. У потребителя, в "поле", епром только читается и всё. - vpv.vpv(09.10.2024 14:50)
- блочная запись имеет свои существенные минусы (во первых - сильно
медленнее, чем "побайтовая мажлоритарка", во вторых. в случае сбоя
понятно, что сбойный блок, но неясно какой байт и приходится
обновлять весь блок из "резервной копии", я продумывал
всякие/разные сценарии и понял для себя, что "мажоритарные
процедуры" - самое то. А выравнивание ресурса Adept(1498 знак., 09.10.2024 00:13)
- Коллега мажоритарной логикой делал. А у меня во всю память
помещается всего порядка десятка блоков, они относительно большие.
Для номер блока, поэтому, хватает одного байта. И два байта CRC-32. Nikolay_Po(88 знак., 09.10.2024 09:05)
- ХЗ, конешно, но я, чота, последнее время предпочитаю поставить
внешний ЕЕПРОМ. Там и ресурс на порядки больше, и защита можэт быть
надёжнее сделана. И цена вопроса - шапка сухарей. - mse homjak(09.10.2024 10:30)
- Ресурса внутреннего ЕЕПРОМа в 100к записей - не хватает? "Ну
низнаю.." :)) Тогда уж внешний FRAM ставить, там гарантировано
10^14 записей/чтений. Хватит на несколько человеческих цивилизаций. - vpv.vpv(10.10.2024 07:25)
- Ресурса, боле-мене, хватает. Тут другое: у современных АВРов,
походу, в основном, левое происхождение. В одной партии приходят
микросхемы с разной установкой фуз. Шозах? Потому, надёжность
ЕЕПРОМ, под вопросом. А внешняя, стоит копейки, при отменном
качестве. Где-то давал сцылочку на ютуп-ролик чувака, который
провёл простенький ресурсный тест. Так китайцы, практически все,
кратно превысили объявленный ресурс. Но самые красаучеги, СТМ, да. - mse homjak(10.10.2024 09:28)
- Ну, для журнала у меня вообще NOR-FLASH стоит, на 128Мбит. А вот
настройки должны быть защищены от внешних чтения и модификации,
поэтому только встроенная в МК EEPROM подошла. - Nikolay_Po(09.10.2024 11:01)
- А запасы то авр старые или только что купленные? Может перегреваете
при монтаже? Атмеги 88а, PA уж лет 15 ставим вроде ок, никогда не
заморачивался на 0 или 10 адресе, правда на асм пишу, источник дцдц
24-05, тайм фузы старта все по максимум. - Balda(07.10.2024 11:53)
- Держи. enc(1 знак., 05.10.2024 20:05, ссылка)
- Такой есть. Судя по дате архива (20080410) - относится к rev. B.
Если у Гудвина не то - сообщи. Toчкa oпopы(262 знак., 05.10.2024 14:34)
- ClassB Гyдвин(1 знак., 05.10.2024 13:14, ссылка)