Обсуждаем контроллеры компании Atmel.
Ответить

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Сб мар 14, 2015 15:24:21

Если USBASP то все проще некуда. Сам пользуюсь им (правда самодельным) уже лет 5. За это время не было ни одной проблемы (шью очень много, ежедневно). Вообще программаторов куча (и по работе в том числе), но этот самый любимый. :) Вот SinaProg >ссылка<, удобнейший гуй для дудки (пользовался и на XP-32 несколько лет, и на 7-64 уже больше года работает без проблем). Драйвера для USBasp лежат для кучи, Вам они не нужны (впрочем, может и пригодятся когда).

1. устанавливаем LVRTE2010min.exe
2. извлекаем из архива SinaProg
3. Запускаем SinaProg.exe

Собственно, на этом все. Выбираем из списка программаторов USBasp, убеждаемся что по "Search" микроконтроллер видится и переходим во фьюзы ("Advanced"). Там по кнопкам "C" выпадающие списки фьюзов по группам.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Сб мар 14, 2015 16:35:50

edm2007 писал(а):Если USBASP то все проще некуда.
1. устанавливаем LVRTE2010min.exe
2. извлекаем из архива SinaProg
3. Запускаем SinaProg.exe

Установил. Включил . По кнопке "Search" нашелся микроконтроллер:
СпойлерИзображение

Перешел к фьюзам. Считывает уже вшитые нормально:
СпойлерИзображение

А вот при попытке записать эти вылетела ошибка:
СпойлерИзображение
Изображение

Причем, если зашивать в high не FF, а те которые уже в микроконтроллере (DF), то все отлично происходит, в чем причина, не понятно:
СпойлерИзображение
Изображение

При прошивке вылетает ошибка
Код:
avrdude: warning: cannot set sck period. please check for usbasp firmware update.

Но она нисколько не мешает прошивке

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Сб мар 14, 2015 16:42:47

John Locke писал(а):Причем, если зашивать в high не FF, а те которые уже в микроконтроллере (DF), то все отлично происходит, в чем причина, не понятно:


М-м-м, а зачем FF зашивать? :solder: Еще раз повторюсь, зашить по SPI значение FF нельзя (и слава Богу). По умолчанию все биты High Fuse выставлены в 1, кроме SPIEN. Именно он позволяет шиться по шине SPI (MISO, MOSI, SCK). Это как отпилить руку этой же рукой. Вы прошиваетесь по SPI, и пытаетесь этот SPI отключить. :)) Потому и будет только 11011111 = 0xDF.

Изображение

//----------

Значит так, что действительно важно для фьюзов из статьи:

1. Источник тактового сигнала. Выставлены CKSEL и SUT = 0100 10. Это внутренний генератор 8 MHz 14CK+65 ms. Это дефолтные настройки МК с завода, в списке Low Fuse сины обозначены дефолтом (Int RC...).

2. Делитель тактовой частоты на 8 (CKDIV8) должен быть отключен. Для этого там же в LF галка должна быть снята.

3. Не важное. Слежение за напряжением питания отключено. Это 111 в High Fuse.

Остальное если не трогалось совершенно не важно.

//----------

P.S. Если МК новый и ни разу не щупаный, то достаточно снять CKDIV8 (он с завода включен). Более ничего делать не нужно.
Вложения
attiny2313.png
(87.41 KiB) Скачиваний: 3126
Последний раз редактировалось edm2007 Сб мар 14, 2015 18:09:41, всего редактировалось 1 раз.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Сб мар 14, 2015 17:58:36

edm2007 писал(а):P.S. Если МК новый и ни разу не щупаный, то достаточно снять CKDIV8 (он с завода включен). Более ничего делать не нужно.

Я так понимаю, можно оставить фьюзы, как на скриншоте? Уж извините за мое незнание в этом деле. Пока только учусь
Изображение

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Сб мар 14, 2015 18:08:35

John Locke писал(а):Я так понимаю, можно оставить фьюзы, как на скриншоте?


Сейчас МК настроен на тактирование от внутреннего генератора 8MHz. Это соответствует фьюзам в статье (если их немного пропустить через фильтр здравого смысла :)) ).

John Locke писал(а):Уж извините за мое незнание в этом деле. Пока только учусь


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

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Вс апр 05, 2015 22:27:32

Доброго времени суток. Вопрос такой, по потреблению данного контроллера. АК отключил. Детектор пониженного напряжения не используется - отключен. WDT - отключен. Перевел все неиспользуемые порты I/O на выход, подтянул их к питанию. Режим сна - Idle. Основной цикл состоит команды sleep, работает только T/C0, управляя програмными счетчиками в прерывании. Какими путями еще можно снизить потребление контроллера? Тактируется от кварца 8МГц, питание 5В.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Вс апр 05, 2015 23:54:52

Чем ниже частота, тем меньше жрет. Также чем ниже частота, тем более низким напряжением можно питать. Еще есть версия ATtiny2313V.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Пн апр 06, 2015 08:42:59

Может кому будет интересно. Контроллер ATtiny2313A-PU с кварцем 8'000кГц без предделителя в режиме SLEEP_IDLE потребляет 1,2мА, в режиме SLEEP_STANDBY 40мкА, в режиме POWER_DOWN стрелка на пределе 50мкА не отклоняется. Тестировал таким кодом.
Спойлер
Код:
.INCLUDE "tn2313def.inc"

.CSEG
   .ORG   $0000
RESET:
   RJMP   START      ; On Reset
;*************************************************
   RETI
;   SBI   PINB,0      ; Externa0 Interrupt1 Handler
   RETI         ; External Interrupt1 Handler

;*************************************************
START:
   LDI   R16,LOW(RAMEND)
   OUT   SPL,R16

   SER   R16

   OUT   PORTD,R16
   OUT   DDRD,R16
   CBI   DDRD,2

   OUT   PORTB,R16
   OUT   DDRB,R16

   SBI   ACSR,ACD   ; выключить аналоговый компаратор

   LDI   R16,1<<INT0
   OUT   GIMSK,R16
   OUT   EIFR,R16

   LDI   R20,1<<SE|1<<SM0; SLEEP_POWER_DOWN enable
;   LDI   R20,1<<SE|1<<SM1; SLEEP_STANDBY enable
;   LDI   R20,1<<SE      ; SLEEP_IDLE enable
   OUT   MCUCR,R20

   SEI
WAIT_INIT:
   SLEEP
   RJMP   WAIT_INIT
.EXIT

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Пн апр 06, 2015 09:55:50

Может кому еще будет интересно, в засекреченных даташитах есть такие штуки - таблицы:

Изображение

В этих даташитах почти все-все есть. :tea:

P.S. А так Вы молодец конечно, в живую все проверили. :solder:

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 14, 2015 10:17:48

hybroid писал(а):Чем ниже частота, тем меньше жрет.

да, но и одна и таже команда выполняется дольше. не так все однозначно.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 14, 2015 10:34:09

Такая проблема. Решил собрать плату на attiny2313. Купил мк (attiny2313-SU в корпусе SO20). Нарисовал схему, развел плату, сделал плату, запаял, подключаю программатор (USBASP китайский) и... ничего. Таргет нот ансвер (через AVRDUDE). Решил что пожек мк пока поял. Взял новый микроконтроллер. Подпаял к нему проводки (шесть ног - PWR, GND, RST, MOSI, MISO, SCK), воткнул в программатор тот же - такая же фигня. Программатор успешно при этом шьет atmega16, так что вроде рабочий. Взял вот такую плату (http://bashel.bashel.ru/icards.php?bi&n ... 8&pg=38400) и решил подключить тиньку туда. Там правда площадки под DIP корпуса, но я припаянные проводки воткнул в соотвествующие пазы для ног. Тоже не программируется. Взял еще одну тиньку (все тиньки новые, из коробки) и повторил все процедуру - не шьються хоть убей. Разумется все итерации сопровождались проверкой схем, соединений и контактов.
После чего взял тиньку в диповском корпусе (attiny2313-PU) воткнул на макетную плату, теже шесть ног воткнул в программатор USBASP и она прошилась.

Как запрограммировать то -SU? Какие там ньюансы?

Куда копать? Или все микросхемы мертвые?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 14, 2015 11:55:14

alex1126 писал(а):После чего взял тиньку в диповском корпусе (attiny2313-PU) воткнул на макетную плату, теже шесть ног воткнул в программатор USBASP и она прошилась.

Как запрограммировать то -SU? Какие там ньюансы?

Куда копать? Или все микросхемы мертвые?

Относится ли этот пример к вашему случаю, или нет- :dont_know: Я столкнулся с тем, что есть ТРИ разновидности (не считая корпусов) - тиньки 2313- это просто Tiny2313, Tiny2313V и Tiny2313A - и оказалось, что у меня программатор "НЕ шьёт" Tiny2313A, а остальные - шьёт нормально..

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 14, 2015 13:57:44

alex1126, вообще все 2313 с завода идут с настройкой тактовой на 8 MHz и включенным делителем CKDIV8. То бишь его тактовая равна 1 MHz. Для того чтобы программатор нормально работал с МК, его частота SCK не должна быть выше 1/4 от тактовой МК, в ином случае микроконтроллер либо не увидится вообще, либо будет определяться / шиться / читаться криво (это куда хуже). Для низких частот в оригинальной схеме программатора USBasp есть джампер "Low SCK", при его задействовании прекрасно видятся все МК, настроенные на низкие частоты тактирования. Шьется / читается МК дольше, но зато можно поменять фьюзы на более высокую частоту и снять джампер. Есть ли этот переключатель в китайской версии USBasp, Вам должно быть виднее. :tea:

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 14, 2015 15:44:47

АлександрЛ писал(а):
alex1126 писал(а):После чего взял тиньку в диповском корпусе (attiny2313-PU) воткнул на макетную плату, теже шесть ног воткнул в программатор USBASP и она прошилась.

Как запрограммировать то -SU? Какие там ньюансы?

Куда копать? Или все микросхемы мертвые?

Относится ли этот пример к вашему случаю, или нет- :dont_know: Я столкнулся с тем, что есть ТРИ разновидности (не считая корпусов) - тиньки 2313- это просто Tiny2313, Tiny2313V и Tiny2313A - и оказалось, что у меня программатор "НЕ шьёт" Tiny2313A, а остальные - шьёт нормально..

У меня как раз они 2313а. Причем сходил в вольтамастер, купил простых 2313 и они пробиваются. А этих 2313а у меня десяток...

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 14, 2015 15:48:00

Сто лет уже не видел старые 2313, давно применяю серию A. И шьется она USBasp-ом прекрасно, иначе и быть не может.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Пт май 15, 2015 00:53:40

edm2007 писал(а):alex1126, вообще все 2313 с завода идут с настройкой тактовой на 8 MHz и включенным делителем CKDIV8. То бишь его тактовая равна 1 MHz. Для того чтобы программатор нормально работал с МК, его частота SCK не должна быть выше 1/4 от тактовой МК, в ином случае микроконтроллер либо не увидится вообще, либо будет определяться / шиться / читаться криво (это куда хуже). Для низких частот в оригинальной схеме программатора USBasp есть джампер "Low SCK", при его задействовании прекрасно видятся все МК, настроенные на низкие частоты тактирования. Шьется / читается МК дольше, но зато можно поменять фьюзы на более высокую частоту и снять джампер. Есть ли этот переключатель в китайской версии USBasp, Вам должно быть виднее. :tea:

переключателя этого там нет. Но есть два нераспаеных джампера. Нашел схему. Там этот джампер одну из ног на землю цепляет. Прозвонил джампера, нашел в одном землю, запоял туда штекерок и замкнул его. Ничего не поменялось :(

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Пт май 15, 2015 00:55:52

edm2007 писал(а):Сто лет уже не видел старые 2313, давно применяю серию A. И шьется она USBasp-ом прекрасно, иначе и быть не может.

а каким софтом пользуетесь?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Пт май 15, 2015 03:22:36

SinaProg (гуй для дудки) если шью разово, если из AtmelStudio 6 то напрямую команда дудке после успешной сборки проекта, и создаю батник для дудки, если шьется партия. То бишь, во всех случаях используется дудка. Именно USBasp-ом пользуюсь около 5 лет, шью постоянно и много, как семейство Tiny, так и Mega (последнее время почти все "A"). За это время не было ни одной проблемы, связанной с программатором.

Вот SinaProg, на всякий случай. ИМХО, для USBasp другого и не нужно. Сначала устанавливаете LVRTF2010min.exe, затем запускаете SinaProg. Все. :solder:

//----------

P.S. Забавно, о том же самом я уже писал на этой же странице в начале. Чуть ли не слово в слово. :))

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Ср май 27, 2015 21:06:03

edm2007 писал(а):Вот SinaProg, на всякий случай. ИМХО, для USBasp другого и не нужно. Сначала устанавливаете LVRTF2010min.exe, затем запускаете SinaProg. Все. :solder:

вообще не видит программатора. :( Пробовал переписать в папку к моему usbasp (он же через него вроде работает) - тоже ничего :(

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Чт май 28, 2015 13:53:12

Так, давайте по порядку. В диспетчере устройств программатор видится (когда он подключен, естественно)?

Изображение
Ответить