Криво прошивается attiny13a

Обсуждаем контроллеры компании Atmel.
Ответить
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Сб дек 17, 2016 21:14:01

Сообщение godrik123 »

Привет, написал простенькую программу плавного старта низковольтного освещения. Программа при соответствующих корректировках работает на attiny2313.
Но тини13 не могу нормально прошить, процесс заливки идет нормально, на верификации спотыкается. Читаю записанное, а там программа записана вся, но с пробелами в виде пустых ячеек flash. Вот как это выглядит

Требуемый флеш:
Изображение

После ошибки верификации, читаю флеш, а там:
Изображение


Фьюзы сейчас low 0x71 high 0xff , но пробовал в различных комбинациях на различных частотах, не помогает. Отдельно фьюзы пишутся без проблем. EEPROM кстати тоже
Программатор другие девайсы перепрошивает без проблем.
Программатор usbasp пробовал в режиме пониженной скорости, при Vtarget 3.3v - без изменений.
И самое интересное, если считать искалеченную прошивку в том виде, как она записалась, сохранить ее, стереть чип и залить сохраненную, то все происходит так как нужно!
Пробовал на двух разных чипах, один куплен на месте, другой с али.
Либо я не знаю чего-то о работе с данным чипом, либо мне не повезло и я получил в руки два бракованных чипа (правда еще есть 9 штук с али, но думаю их можно не првоерять.)
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

Прошиваете в схеме? Моси, мисо, сцк не гадятся схемой?
Docendo discimus
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Сообщение korob »

godrik123 писал(а):И самое интересное, если считать искалеченную прошивку в том виде, как она записалась, сохранить ее, стереть чип и залить сохраненную, то все происходит так как нужно!
Значит получается что что-то не так с исходным hex-ом. :roll:
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18678
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

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

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Сб дек 17, 2016 21:14:01

Сообщение godrik123 »

В схеме, но в ярости уже обрезал все линии, так что она автономна, только штырьковый разъем и 220мкф по питанию. Даже пробовал садить вручную на землю reset во время программирования.

[uquote="korob",url="/forum/viewtopic.php?p=3465539#p3465539"]
godrik123 писал(а):И самое интересное, если считать искалеченную прошивку в том виде, как она записалась, сохранить ее, стереть чип и залить сохраненную, то все происходит так как нужно!
Значит получается что что-то не так с исходным hex-ом. :roll:[/uquote]
Этот hex с парой измененных команд работает в 2313. Я пробовал этот же hex заливать в другой контроллер, работает или нет, не знаю, но записывается же!
В бракованную тн13 даже пара nop`ов не заливаются. FLASH какой-то пятнистый получился.
Может ее нужно прошивать на сверхнизкой скорости? Но имеющийся у меня програматор не позволяет это сделать. Разве что собирать 5 проводков.

Добавлено after 1 minute 50 seconds:
[uquote="ARV",url="/forum/viewtopic.php?p=3465548#p3465548"]после стирания чипа не то же самое считывается, что в "сохраненной"?[/uquote]
Нет, чип послушно стирается. Так же успешно пишется, верифится и стирается eeprom.
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18678
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

после того, как чип послушно стерся, в нем на самом деле одни FF-ки прописаны? вы это проверяли?
я это имел ввиду.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Сб дек 17, 2016 21:14:01

Сообщение godrik123 »

Да, после стирания кривой прошивки и последующего чтения - весь flash - 0xFF

Вот только что внаглую, без изменений залил hex в аттини2313, все удачно пишется, верифится, читается. Мне кажется hex не может рушить процесс записи, хоть абрукадабру загоняй, записаться должен.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18678
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

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

Мой уютный бложик... заходите!
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Сообщение korob »

godrik123 писал(а):Мне кажется hex не может рушить процесс записи, хоть абрукадабру загоняй, записаться должен.
Ещё как может, если адресация в hex-е не совпадает с адресным пространством МК.:wink: Но обычно в таких случаях прошивальщики матерятся. :dont_know:
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Сб дек 17, 2016 21:14:01

Сообщение godrik123 »

[uquote="ARV",url="/forum/viewtopic.php?p=3465574#p3465574"]у вас может быть просто битая flash. попробуйте прошить при питании 6В. хотя даже если получится, я бы не советовал такие МК применять вообще.[/uquote]
Хорошо, попробую, но попозже.

Добавлено after 55 seconds:
[uquote="korob",url="/forum/viewtopic.php?p=3465579#p3465579"]
godrik123 писал(а):Мне кажется hex не может рушить процесс записи, хоть абрукадабру загоняй, записаться должен.
Ещё как может, если адресация в hex-е не совпадает с адресным пространством МК.:wink: Но обычно в таких случаях прошивальщики матерятся. :dont_know:[/uquote]
Та меня бы ещё avrstudio послал бы, не дал бы скомпилировать.
Друг Кота
Аватара пользователя
Сообщения: 15600
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

АВР студия при компиляции укажет размер файла... а матюкнется только, если был подключен файл описания ресурсов (*.inc) соответствующего МК... И то - Х/З не пробовал такие "казуизвраты"...
Насчет остального... К примеру таймера могут быть разные, карта векторов прерываний и прочие "мелочи".
:roll:
afz
Опытный кот
Аватара пользователя
Сообщения: 744
Зарегистрирован: Сб дек 22, 2012 08:17:42
Откуда: Караганда, Казахстан

Сообщение afz »

Да, скорее всего, битая эта тинька. Тут недавно этот вопрос уже поднимался, у нашего коллеги svetl1928 мелкая серия, так он тоже жаловался, что среди 13А очень много брака. Вот здесь.
Кто мешает тебе выдумать порох непромокаемый? (К. Прутков, мысль № 133)
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Сб дек 17, 2016 21:14:01

Сообщение godrik123 »

При повышении Vtrgt до 6.5в ничего так же не изменилось. Все 10 с Китая и 2 с местного магазина имеют одинаковую партию. Сэкономил, чё. Надо было брать в проверенном годами инетмагазине. Что бы убедиться, что я не сошел с ума, послезавтра выпаяю с рабочего девайса тн13 и испытаю ее.

А вообще, я так понимаю, это не подделки? Их же нельзя подделать, архитектура контроллеров не лежит в открытом доступе? Я так понимаю, это брак оригинальных контроллеров, который нелегально выкидывают на али?
Да и контроллеры уже 2 года должны маркироваться Микрочипом, а на них до сих пор atmel1802
Встал на лапы
Сообщения: 96
Зарегистрирован: Ср сен 20, 2017 22:49:53

Сообщение Nijka »

[uquote="godrik123",url="/forum/viewtopic.php?p=3465551#p3465551"]она автономна, только ... 220мкф по питанию[/uquote] Уберите 220 мкФ.
Друг Кота
Аватара пользователя
Сообщения: 15600
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Насчет подделок...
Вряд-ли. А вот насчет программаторов...
На практике я использую или поньку или avrdudeshell c STK200 или в последнее время собственной версией СИ-прога
my_siprog.zip
(707.3 КБ) 234 скачивания
(заведен на COM порт материнки!).
Возможно в алгоритмах оболочки нюансы... - попробуйте те "бракованные" на другом софте и железе прошить для эксперимента - хуже им уже не будет в любом случае.
:dont_know:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2406
Зарегистрирован: Ср фев 23, 2011 12:12:31

Сообщение AndTer »

Если не официальная поставка, а например с али или какого нибудь мелкого магазинчика(а там скорее всего с али), то велика вероятность что у вас просто брак.
Поставьте на её место заведомо рабочую, если прошьётся нормально, сразу будет понятно.
Глупый не задает вопросы. Глупый и так все знает.
Друг Кота
Аватара пользователя
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Сообщение korob »

А я всё же ставлю на корявый hex, так как, судя по картинкам, имеет место сдвиг адресов :roll: :tea: :dont_know:
godrik123, выкладывайте свой hex, будем смотреть. :solder: Или попробуйте прошить этот hex (проверено лично). :roll:
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Сб дек 17, 2016 21:14:01

Сообщение godrik123 »

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

Код: Выделить всё

.include "tn13def.inc"
.def temp=R16
.def temp1=R17

init:				
clr r16
clr r17
clr r18
clr r19
clr r20
clr r21
clr r22
clr r23
clr r24
clr r25
clr r26
clr r27
clr r28
clr r29
clr r30
clr r31

ldi temp, RAMEND										; инииализация стека
out SPL, temp

ldi temp, 0b11111111									; потр В на выход
out ddrb, temp
    	
ldi temp, (1<<COM0A1)|(0<<COM0A0)|(1<<wgm00)|(1<<wgm01)	; режим быстрого ШИМ
out TCCR0A, temp
ldi temp, (1<<cs00)										; счетчик без предделителя
out tccr0b, temp


ldi temp1, 0											; начальное значение ШИМ
out OCR0A, temp1		
		
main:
cpi temp1, 255											; сравниваем значение ШИМ с максимальным
breq endprog											; если да, то заканчиваем увеличение ШИМ	
inc temp1												; иначе увеличиваем значение ШИМ на 1
out OCR0A, temp1					
rcall delay												; задержка
rjmp main												; замыкаем цикл

endprog:												; конец программы
ldi temp, 0											; выключаем ШИМ
out TCCR0A, temp
out tccr0b, temp
ldi temp, 0b0001									; устанавливаем на выходе ШИМ постоянную 1
out portb, temp
rjmp endprog



delay:												; задержка 18ms
ldi r19, 197
ldi r20, 234
loop:
dec r19
brne loop
dec r20
brne loop
ret
Добавлено after 8 minutes 49 seconds:
Извините, перезалил hex, там порт не тот выставлен был.
Вложения
softstarttn13.hex
(288 байт) 531 скачивание
Друг Кота
Аватара пользователя
Сообщения: 6643
Зарегистрирован: Чт авг 09, 2012 01:09:39
Откуда: Ливны

Сообщение korob »

godrik123 писал(а): Кстати ваша прога залилась с такими же пятнами.
Чтож, тогда моя ставка не сыграла. :( В таком случае, если есть возможность, заполните буфер прошивальщика "00", прошейте МК, и считайте. Проверьте на нескольких МК, и если результат повторяется, то скорее всего имеются проблемы с алгоритмом программирования конкретного МК. :dont_know:
Большой опыт, порой, не даёт находить/видеть нам простые и очевидные решения. :(
Всегда с уважением, Александр.
Встал на лапы
Сообщения: 96
Зарегистрирован: Ср сен 20, 2017 22:49:53

Сообщение Nijka »

А убрать конденсатор 220 мкФ не помогло?
Ответить

Вернуться в «AVR»