- Помню, у некоторых МК ATmega было некорректное первое считывание АЦП после смены канала. Есть ли такая же проблема у ATmega128? - AU08(04.09.2012 08:52 - 08:57, AVR, полностью)
- В ATmega'х есть взаимовлияние каналов при переключении, если напряжения на входах мультиплексора АЦП отличаются не сильно оно практически незаметно. В тех случаях когда из АЦП надо выжать все что можно и нельзя первый результат преобразования по AlexG(19 знак., 05.09.2012 06:51)
- Просто после смены канала в обычном single-ended режиме? Нет, иначе не получится измерение каруселькой нескольких каналов, когда один канал закончил преобразование, запускается другой канал и считывается то, что в оконченном преобразовании. Это Юра(303 знак., 04.09.2012 21:57,
)
- Это называется коммутационная помеха, даже в АЦП на рассыпухе после переключения канала необходима пауза. - mura(04.09.2012 12:47)
- У всех с дифференциальными каналами - первое измерение после смены канала надо отбрасывать. - Точка опоры из дому(04.09.2012 10:25,
)
- Можно ли добиться от внутреннего WatchDog резета и восстановления работы Atmega? Внутренний Watchdog включен atmega2561 работает с ExtRam, замыкаю ноги на памяти, atmega зависает, но watchdog ee не резетит, оживляет ее только внешний резет? - Andrey256(29.08.2012 15:07,
, AVR, полностью)
- В итоге получилась завязка на стартовое нуление ОЗУ, только в 256 меге, в 128 такого не проявляется #ifdef __IOM128_H unsigned char *ptr = (unsigned char*) 0x1100;#else unsigned char *ptr = (unsigned char*) 0x2200;#endif while(ptr - Andrey256(03.09.2012 10:26,
)
- Как гипотеза - WDT не включился. Попробовать поставить фуз WDTON - Юра(29.08.2012 22:44,
)
- Проверил тот же софт на 128 меге, WDT срабатывает. - Andrey256(29.08.2012 17:16,
)
- Значит, она сбрасывает собаку в том цикле, в котором зависает. maik-vs(265 знак., 29.08.2012 15:52)
- Питание не просаживается? Попадалась с мегами лажа в несколько ином виде - из-за замыкания на плате при 1 на одном из выходов подсаживалось питание, мега затыкалась, но не сбрасывалась. Так 1 на выходе и держала. ПС. Ватчдоги и тдт итп все как 1111111(19 знак., 29.08.2012 15:35)
- Напомнило об анекдоте про таракана, который слышит ногами. :) - mazur(29.08.2012 15:11)
- Хреново работает i2c в меге16 whale(454 знак., 03.09.2012 00:38 - 00:49, AVR, полностью)reZident
- Я написал программу, в ней в симуляторе все работает, когда я нажимаю мышкой бит RXC, я ухожу в прерывание по приему бита и все хорошо. Но на деле , я посылаю с компа байты, которые просматривается осцилографом на RXD, но МК не входит в Fedorov1983(192 знак., 21.08.2012 19:35,
, AVR, полностью)
- AVR studiо умерла ?? Adept(1637 знак., 16.07.2012 01:08, AVR, полностью)MBedder
- не вижу смысла качать сотни МБ непонятной хрени. Разве что ради отладки. Я аппаратными отладчиками не пользуюсь, сижу на стандартном Eclipse и ARM/AVR/x86-GCC, SDCC, Android. Одна среда для разработки на всех платформах - вот где руль... - zeleny(16.07.2012 13:19)
- всем спасибо за обсуждение, уже скачал 6-ю, завтра буду пробовать. - Adept(16.07.2012 01:46)
- Реплика: Ксения(981 знак., 16.07.2012 01:33)
- AS6/Atmel Studio - это просто пиздец, а AS5 - пиздец в квадрате - MBedder(16.07.2012 01:21)
- >>объединяющий, как я понял все МК от атмеля, начиная с AVR8 и кончая ARM-ами. Apтём(767 знак., 16.07.2012 01:21)
- Есть какие нюансы применения МК с буквой A? - mazur(17.08.2012 14:59, AVR, полностью)
- Лень ставить старый компилер. IAR C/C++ Compiler for AVR 6.10.1 (6.10.1.50424) на #pragma memory не ругается, а в мануале не нахожу. #pragma dataseg не оно же? - Vit(14.08.2012 14:11, AVR, полностью)
- Развейте сомнения, пожалуйста. Если значение FF в ячейке EEPROM обнулить побитно за 8 записей, то как это скажется на ресурсе? Будет ли это однократным циклом износа или будет эквивалентно восьми перезаписям? - 580BM80(01.08.2012 16:16, AVR, полностью)
- Доброго времени суток! roman183(207 знак., 30.07.2012 02:11, AVR, полностью)
- Как такая реализация работы с EEPROM? mazur(759 знак., 25.07.2012 21:55 - 22:00, AVR, полностью)
- почему бы просто не писать по кругу без всяких счетчиков ? по достижению конца EEPROM делать полное стирание и возвращаться к началу. так и делаю на AVR/STM32, проблем нет... - zeleny(26.07.2012 16:33)
- Кстати да, рекомендую google://jffs - fk0(26.07.2012 00:18)
- Обычно забывают, что питание, например, может пропасть в любой момент времени. Или ещё чего. В итоге недозапишется, запишется ерунда, сотрётся но не перезапишется (а стирается отнюдь не байтами часто, а цельными страницами -- подробности или в fk0(54 знак., 26.07.2012 00:16)
- +1 - Vit(26.07.2012 00:17)
- При журналировании нельзя ориентироваться на какой-то "нерабочий" код. Либо нужно ввести признак первого включения, который храниться где-то в другом месте, не в EEPROM и при первом включении инициализировать журнал начальной записью. Либо при rezident(225 знак., 25.07.2012 23:12)
- А какая цель у этого алгоритма? - Apтём(25.07.2012 22:15 - 22:18)
- переход по адресу MegaJohn(153 знак., 06.07.2012 19:18, AVR, полностью)
- каждые 20мс нужно выполнить длительную блокирующую процедуру длительностью 10мс по передаче данных. Хочу сделать красиво: в прерывании таймера переназначить стек и выполнить вытеснение основного цикла main на эту процедуру с восстановлением main. MegaJohn(134 знак., 12.07.2012 13:09, AVR, полностью)
- нафига передачу делать блокирующей? Это бред полный. Сделай буфер в памяти, складывай туда данные, и передавай по DMA если оно есть, или по прерываниям UART - koyodza(12.07.2012 18:15)
- Да всё правильно чел говорит. KISS - Keep It Simple, Stupid! - =AlexD=(12.07.2012 13:30 - 14:44, ссылка)
- Никаких, Вы уже вытеснили main прерыванием и сохранили его контекст. Если с детерминированностью выполнения остальных функций и прерываний у Вас все в порядке - вызывайте функцию прямо в обработчике. - Хитрый Китаец(12.07.2012 13:48)
- Если там big loop, то проще допустить, что он может оборачиваться за 100мс, например. А всё требующее быстрой реакции в прерывания (от таймера в т.ч.) Если не устраивает, то делать функцию не блокирующей, методом автоматного программирования... - fk0(12.07.2012 13:19)
- При наличии "длительной блокирующей функции" плюсов нет вообще, ни в одной из реализаций. - Vladimir Ljaschko(12.07.2012 13:14)
- ATmega16U4. В практически готовом проекте понизил питание до 3.3В и контроллер не работает. Где копать? - BNSaxap(06.07.2012 15:33, AVR, полностью)
- Прошу помочь с PDI. Есть ATxmega256A3 и эмулятор JTAGICE mkII. Так вот через JTAG все работает, пробую через PDI (пробовал и в IAR и в AVR Studio) - не работает. Прога уже отлажена, просто решил сократить количество выводов. Fuse: 0=FFh, 1=F6h, pav256(175 знак., 03.07.2012 17:39, AVR, полностью)
- Народ посоветуйте букварей по программированию для WinAVR. Желательно с последними изменениями синтаксиса. Решился таки. - efort(07.06.2012 15:37,
, AVR, полностью)
- Попутный вопрос, если позволите. Потребовался бесплатный компилятор С для AVR. Как понимаю, выбор один - WinAVR. Но я не понял одного - какая же версия предпочтительнее? Вот эта - sourceforge.net/projects/winavr/files/ или же avr toolchain от alex68(125 знак., 11.06.2012 17:58)
- Дык, в комплекте идёт. После установки: WinAVR/Doc. Файл avr-libc-user-manual.pdf. Там почти всё. - Юрий_СВ(07.06.2012 22:45 - 08.06.2012 04:05)
- Керниган и Ритчи... Роб Пайк "Практика программирования"... Изучать именно WinAVR -- дурь. - fk0(07.06.2012 19:07)
- Мне в сжатом виде(ликбез) быстро стартануть применительно к AVR: Порты, биты обозначаем так-то, прерывания вызываем эдак, структуры и юнионы обозначаем ... и т.д. В CVAVR-e наталкивался на отличия от других компиляторов. Для WinAVR всё как-то efort(260 знак., 08.06.2012 09:04,
)
- Здесь всё сосредоточено в одном месте. Все ответы хороши, выбирай на вкус. - KLIM83(08.06.2012 14:01, ссылка)
- Причём здесь WinAVR? Порты и биты -- в даташите. Вообще достаточно в *.h заглянуть и пару примеров проектов посмотреть. Вообще никто не заставляет использовать эти _BV(), можно писать как в даташите. Документация к avr-libc есть на сайте и fk0(416 знак., 08.06.2012 10:56)
- Цитата из Вас :"Типичный случай каши в голове. "Отличия от компиляторов" -- каким они боком к AVR?"Каша, извините у Вас. Когда в книжке по С видишь как определяются структуры и юнионы и делаешь по писанному применительно к AVR в efort(339 знак., 08.06.2012 11:31,
)
- как-как... читать AVR-Libc manual и его NEWs, Шпак тут при чем ? - zeleny(11.06.2012 18:33, ссылка, ссылка)
- Я и говорю, каша в голове. Ни SIGNAL, ни ISR() к языку программирования C не имеет никакого отношения. Там вообще про прерывания ничего не известно. Если очень неймётся, то можно плюнуть на ISR(), написать свой пролог-эпилог обработчика на асме, fk0(1032 знак., 08.06.2012 11:55)
- Нет уж, пожалуйста про юнионы и структуры поподробнее! - Vladimir Ljaschko(08.06.2012 11:49)
- И вообще неплохо бы знать для начала, что WinAVR вообще не существует, это на самом деле GCC. - fk0(08.06.2012 10:57)
- Ты сперва попробуй вдуматься... - Гудвин(07.06.2012 19:22)
- Все в %WinAVR folder%\doc и там --> - MBedder(07.06.2012 16:10, ссылка)