Они должны быть в этом случае? И будет ли виден убитый микроконтроллер программе сина прог? Разные тычки ставил в ней, а МК видно всегда, всегда читается. Фьюзы только там в нулях все. Так же не должно быть?
Фьюзы ATMega48
- Сообщения: 40
- Зарегистрирован: Чт июн 23, 2016 13:15:34
Собрал часы. Не работают дисплеи ни с ОК ни с ОА. Ни одна лампочка не горит. Будто веревкой к дереву привязал индикатор. Собираю в протеусе - все работает. В чем дело? Фьюзы? А что ещё может быть? Какие они
Они должны быть в этом случае? И будет ли виден убитый микроконтроллер программе сина прог? Разные тычки ставил в ней, а МК видно всегда, всегда читается. Фьюзы только там в нулях все. Так же не должно быть?
Они должны быть в этом случае? И будет ли виден убитый микроконтроллер программе сина прог? Разные тычки ставил в ней, а МК видно всегда, всегда читается. Фьюзы только там в нулях все. Так же не должно быть?
- Реклама
Вы их наугад, что-ли выбираете?ZIPMan111 писал(а):Не работают дисплеи ни с ОК ни с ОА
По схеме (лапы бы за такую "смехотехнику" оборвать) непонятно, какие именно индикаторы должны быть, это определяется только программой. Надо смотреть в программе, какие уровни и куда она подает, только так можно выяснить, какой требуется индикатор - с ОК или с ОА.
Судя по схеме, МК должен тактироваться от внутреннего RC генератора. По умолчанию фьюзы выставлены как раз на такой режим с делением частоты на 8, итого тактовая частота - 1МГц. Если Вы их не трогали, то тактироваться МК должен. Не видя исходника, сложно сказать, на какую частоту тактирования все рассчитано. Но и при 1 МГц скорости работы для часов хватит за глаза.ZIPMan111 писал(а):В чем дело? Фьюзы? Какие они Они должны быть в этом случае?
Какие "тычки"? Фьюзы, что-ли? Если Вы спрашиваете, какие фьюзы должны быть, значит, Вы имеете о них очень слабое представление. Как вообще можно что-то делать, не представляя результата своих действий? Такими действиями Вы вполне могли перевести МК на тактирование от того источника, которого у Вас нет.ZIPMan111 писал(а):Разные тычки ставил в ней, а МК видно всегда, всегда читается.
Если у Вас фьюзы CKSEL в нулях, то это может означать либо тактирование от внешнего источника, либо от внешнего кварца в зависимости от того, инвертирует ли фьюзы программа, которой Вы прошиваете МК. В обоих случаях МК с такими настройками в вашей схеме работать не будет, так как она рассчитана на внутренний генератор.
Да что угодно может быть, даже если фьюзы в норме.ZIPMan111 писал(а):А что ещё может быть?
Начать с того, что сама схема вызывает вопросы. Если RESET на пине PC6 запрещен, то как Вы программируете МК? Если разрешен, то каждое нажатие на кнопку S5 будет ресетить МК. На схеме вообще не понятно, как МК должен программироваться.
Где на схеме хоть один блокировочный конденсатор? Как организовано питание?
Начать нужно с проверки питания, корректно ли оно, потом разобраться с тем, что на RESET, не "нуль" ли случайно... Потом осциллографом смотреть, есть ли импульсы на выводах, управляющих индикаторами, есть ли обмен с DS1307...
Последний раз редактировалось Alkul Вт июл 26, 2016 06:21:11, всего редактировалось 2 раза.
Раз в Протеусе работает, то фьюзы в железе должны быть такими же как и в протеусе.
У Вас в схеме нет токоограничивающих резисторов индикатора. Очень даже может быть, что Вы сожгли порты. А вот в протеусе они не горят.
У Вас в схеме нет токоограничивающих резисторов индикатора. Очень даже может быть, что Вы сожгли порты. А вот в протеусе они не горят.
Кстати, да. Самое смешное, что при отсутствии резисторов там, где они нужны - на индикаторах, резисторы есть на кнопках - там, где без них свободно можно обойтись.Z_h_e писал(а):У Вас в схеме нет токоограничивающих резисторов индикатора. Очень даже может быть, что Вы сожгли порты. А вот в протеусе они не горят.
Схему, видимо, какой-то пятиклассник рисовал...
Если фьюзы в нулях, то это может означать, что все фьюзы в лог.1, если программа их инвертирует. А наличие лог.1 во всех фьюзах может означать, что на самом деле ничего с контроллера не читается, программа читает просто состояние "притянутой к питанию" шины.ZIPMan111 писал(а):а МК видно всегда, всегда читается. Фьюзы только там в нулях все. Так же не должно быть?
Последний раз редактировалось Alkul Вт июл 26, 2016 06:32:47, всего редактировалось 1 раз.
На линиях SDA и SCL(SDL????) тоже нужны. Встроенная в контроллер подтяжка великовата. Правда, не знаю что такое DS13071.Alkul писал(а):...при отсутствии резисторов там, где они нужны...
- Реклама
Возможно ее вообще нет, когда периферия I2C включена или есть? По логике вроде как не должно быть, слейв может иметь например 3в питание и 5в для него может быть не гуд.akl писал(а):Встроенная в контроллер подтяжка великовата.
Так точно! Два резистора по 4,7кОм (можно и чуть поменьше, килоома 3) каждый.akl писал(а):На линиях SDA и SCL(SDL????) тоже нужны.Alkul писал(а):...при отсутствии резисторов там, где они нужны...
Обычные часы реального времени с интерфейсом I2C.akl писал(а):Правда, не знаю что такое DS13071.
Поглядел ДШ, можно включить подтяжку. Так что I2C думаю будет работать и без внешних резисторов.
Код: Выделить всё
These pins interface the AVR TWI with the rest of the MCU system. The output drivers contain a slew-rate
limiter in order to conform to the TWI specification. The input stages contain a spike suppression unit removing
spikes shorter than 50 ns. Note that the internal pull-ups in the AVR pads can be enabled by setting the PORT
bits corresponding to the SCL and SDA pins, as explained in the I/O Port section. The internal pull-ups can in
some systems eliminate the need for external ones.- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Где-то читал, что встроенная подтяжка великовата для I2C, могут ловиться помехи. Если микросхемы рядом наверное ничего страшного, но если поставить внешние резисторы точно хуже не будет.
- Сообщения: 40
- Зарегистрирован: Чт июн 23, 2016 13:15:34
В параллельном (с выпайкой МК) - можно. В последовательном (SPI) - нет. Еще FuseDoctor может помочь.ZIPMan111 писал(а):А что, с запрещенным RESETом нельзя пролить МК в программаторе?
Никогда не надо запрещать RESET, если планируется внутрисхемное программирование, лучше более мощный МК взять.
- Сообщения: 40
- Зарегистрирован: Чт июн 23, 2016 13:15:34
В данном случае это неважно - хоть Вы и вне схемы программируете, но программатор у Вас все равно последовательный и такое программирование ничуть не отличается от ISP-программирования в схеме.ZIPMan111 писал(а):Я вне схемы программирую. Программатор собрал сам. USBTinyISP...
С запрещенным ресетом программировать последовательно нельзя.
Зачем ресет-то запретили?
- Сообщения: 40
- Зарегистрирован: Чт июн 23, 2016 13:15:34
Да я RESET наверно ещё не запретил. И схему не я рисовал. Нашёл в сети. Когда прошивал, забыл наверно фьюзы прочитать, прежде чем прошивать их. Воткнул МК в собранные часы, а они не заработали. Решил проверить фьюзы, а там во всех окошках 0х00. А какие были на новом МК - не знаю. В даташите они представлены в двоичном виде. В шестнадцатеричный пока не научился переводить...
Программатор на пяти проводках последовательный или параллельный? Такой у меня тоже есть
Программатор на пяти проводках последовательный или параллельный? Такой у меня тоже есть
В стандартном калькуляторе windows есть функция перевода между всеми системами счисления.ZIPMan111 писал(а):В даташите они представлены в двоичном виде. В шестнадцатеричный пока не научился переводить...
Хотя из 16-ричной в двоичную и наоборот элементарно в голове переводится, ничего сложного.
Ваш программатор точно корректно "видит" МК?ZIPMan111 писал(а):Решил проверить фьюзы, а там во всех окошках 0х00.
Последовательный.ZIPMan111 писал(а):Программатор на пяти проводках последовательный или параллельный?
В программаторе, с которым работаю я, есть опция, позволяющая не прошивать фьюзы при прошивке флэш и EEPROM. Очень рекомендую Вам (если у Вашего программатора есть такая возможность) поступать именно так - не трогать фьюзы при прошивке, если Вы не уверены.ZIPMan111 писал(а):Когда прошивал, забыл наверно фьюзы прочитать, прежде чем прошивать их.
- Сообщения: 40
- Зарегистрирован: Чт июн 23, 2016 13:15:34
Видит корректно вроде. При чтении и записи ошибок не выдаёт. С ним фьюзы можно не трогать. Но я их уже потрогал...
А если я отпаяю RESET в программаторе или если RESET запрещен, то должна ошибка вылезти при попытке прошить или прочитать МК?
А если я отпаяю RESET в программаторе или если RESET запрещен, то должна ошибка вылезти при попытке прошить или прочитать МК?
Прочитайте фьюзы, они должны отличаться от 0x00 и 0xFF, т.к. у M48 есть 2 фьюза RSTDISBL и SPIEN, они инверсны относительно друг-друга, в случае, если они равны, у вас либо отключен ресет, либо отключено последовательное программирование и вашим программатором невозможно причитать старший фьюз-байт как 0x00 или 0xFF. Еще вариант - прочитать сигнатуру, она тоже должна отличаться то 0x00 и 0xFF. Некоторые программаторы игнорируют такие ошибки как неконтакт или вообще невхождение контроллера в режим программирования, результатом чаще всего является ответ 0xFF на все запросы.
Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)
- Сообщения: 40
- Зарегистрирован: Чт июн 23, 2016 13:15:34



