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

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
KeFirCHic
Родился
Сообщения: 15
Зарегистрирован: Пт авг 14, 2009 15:55:06
Откуда: Одесса
Контактная информация:

Сообщение KeFirCHic »

Наверно эт приколы моего сонного мозга! Вчера ночью не работало. Сегодня открыл проэк работает! Хоть в чудеса не верю, но всё-таки стрёмна как-то!!!
Аватара пользователя
KeFirCHic
Родился
Сообщения: 15
Зарегистрирован: Пт авг 14, 2009 15:55:06
Откуда: Одесса
Контактная информация:

Сообщение KeFirCHic »

Делаю часы на ATTiny2313. Данные часов, минут и секунд храню в РОН (R0,R1,R2) . Записываю данные в эти регистры с помощью сложения и проверки на переполнения
mov W,r0
ldi temp, 1
add W,temp
ldi temp,60
cpse W, temp
rjmp w3
clr W
w3: mov r0,W

Изначально я расчитываю на, что в регистр R0 пуст и значение его 0х00. Но после выключения и включения питания там или последнее значение до выкл. питания, или вообще случайные числа. Как-то использовал РОН для косвенной адресации, так это вообще пипец!!! Еслив РОН было левое число, то это равносильно "пойдём туда - хрен его знает куда" ... Спасаюсь тем, что после иницилизации стека вставляю команды очищающия жизненно важных регистров и тогда всё работает ок!
Вопрос:
Как избавиться от этого явления не вставляя лишние команды очистки регистров? Лишние 3-4 команды в начале программы это конечно не так уж и много, но всё-таки! Может это как-то связанно с FUSE переключателями. (Я их не менял. Заводские настройки)
Аватара пользователя
Pooher
Мучитель микросхем
Сообщения: 491
Зарегистрирован: Вс янв 07, 2007 01:45:48
Откуда: Российская Федерация, будь она неладна...

Сообщение Pooher »

Без команд очищения не обойтись. Любой регистр МК при включении может иметь любое значение. И, кстати, вы в курсе что МК использует указанные регистры для некоторых операций?
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Сообщение GP1 »

KeFirCHic писал(а):
ldi temp, 1
add W,temp
ldi temp,60
cpse W, temp
rjmp w3
clr W
w3: mov r0,W



если использовать регистры из старшей половины R16-R31, код можно упростить

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

    inс W       ; я бы обзвал регистры sek, min, hour
    cpi W,60
    brne w3
    clr W        ; если счетчик сек 60, то обнуляем и добавляем минуту
    inc min
; и так далее

w3:


а вообще в часах лучше считать сразу в BCD, потом мороки меньше с переводом.
опять же не забывать очем говорил Pooher!
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
KeFirCHic
Родился
Сообщения: 15
Зарегистрирован: Пт авг 14, 2009 15:55:06
Откуда: Одесса
Контактная информация:

Сообщение KeFirCHic »

Я и считаю в BCD. (По тетрадам). Часы отображают время в десятиричной и шеснадцатерично системе.
Знаю только, что R0-R15 имею какие-то ограничения. И с какими-то командами не работаю. А что и как - понятия не имею. Если есть информация поделитесь.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Сообщение GP1 »

Ну тут без чтения книжек не обойтись.
Рекомендую А.В.Евстифеева "Микроконтроллеры AVR семейства ...(есть и по мегам и тину) фирмы ATmel"
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
KeFirCHic
Родился
Сообщения: 15
Зарегистрирован: Пт авг 14, 2009 15:55:06
Откуда: Одесса
Контактная информация:

Сообщение KeFirCHic »

Пасиба! Бум развиваться :roll:
Аватара пользователя
Pooher
Мучитель микросхем
Сообщения: 491
Зарегистрирован: Вс янв 07, 2007 01:45:48
Откуда: Российская Федерация, будь она неладна...

Сообщение Pooher »

Рекомендую А.В.Евстифеева "Микроконтроллеры AVR семейства ...(есть и по мегам и тину) фирмы ATmel"

С этих замечательных книг я начинал :)
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Аватара пользователя
Данилка
Грызет канифоль
Сообщения: 265
Зарегистрирован: Сб авг 01, 2009 16:10:22

Сообщение Данилка »

Пос неудачной прошивки напрямик через ЛПТ порт, ПРОГРАММА ПЕРЕСТАЛА ВИДЕТЬ КОНТРОЛЛЕР(АТТИНИ2313), что делать?? Помогите!
Аватара пользователя
Pooher
Мучитель микросхем
Сообщения: 491
Зарегистрирован: Вс янв 07, 2007 01:45:48
Откуда: Российская Федерация, будь она неладна...

Сообщение Pooher »

Вариантов много:
1. Спалил LPT.
2. Спалил МК.
3. Неправильные фьюзы.
Ну, при перврм и втором варианте всё понятно.
Третий вариант можно попробовать полечить. Тут первое, что надо сделать, это попробовать подать внешний тактирующий сигнал. Если ничего не заработает, то параллельный программатор Вам в руки.

PS: Пользуйтесь поиском, надоело одно и тоже писать! :evil:
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Аватара пользователя
Redrik Shuhart
Друг Кота
Сообщения: 3641
Зарегистрирован: Пт апр 03, 2009 22:12:58
Откуда: Из Украины, Кировоградская облась,

Сообщение Redrik Shuhart »

поставил фьюзы как на картинке.терь нечитается в пенельке(панелька без кварца) думаю надо при\цепить кварц. и исчо вопрос. нахрен надо 2 кондера за кварцом?
Мотание тороидов- вышивание по мужски.
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

выставлены под внешний кварц частотой от 3МГц до 8 МГц и также делитель частоты на 8. Ставте кварц на 4МГц , два конденсатора на землю и тогда можно прошить.
Я не Сашок!!!
Аватара пользователя
Hudgun
Электрический кот
Сообщения: 1071
Зарегистрирован: Пн май 04, 2009 16:43:07
Откуда: Набережные Челны

Сообщение Hudgun »

Redrik Shuhart писал(а):нахрен надо 2 кондера за кварцом?

так надо :))
Аватара пользователя
Redrik Shuhart
Друг Кота
Сообщения: 3641
Зарегистрирован: Пт апр 03, 2009 22:12:58
Откуда: Из Украины, Кировоградская облась,

Сообщение Redrik Shuhart »

пасибо. собираю тестовую плату програмиста.чтоб разблочить.
Мотание тороидов- вышивание по мужски.
Аватара пользователя
nictrace
Мучитель микросхем
Сообщения: 492
Зарегистрирован: Вс янв 11, 2009 09:29:08
Откуда: Ярославль
Контактная информация:

Сообщение nictrace »

Hudgun писал(а):
Redrik Shuhart писал(а):нахрен надо 2 кондера за кварцом?

так надо :))


Надо говорить - без них не запустится :)
Мои верные друзья - АМD и AVR
LM317 - атцтой, LM2576ADJ - форева! :)
Аватара пользователя
Данилка
Грызет канифоль
Сообщения: 265
Зарегистрирован: Сб авг 01, 2009 16:10:22

Сообщение Данилка »

Добрый вечер))))Собирал вот такую штуковину http://www.techmaniacs.net/repairs_lab/1694/?pg=1 Всё собрал, выставил фьюзы по этой картинки Изображение Устройство не заработало. Програмировал 5 проводами. На данный момент тинька не подаёт признаков жизни. Программапишет, мол нету ответа от контролера. Собрал СТК200/300 - ничем не помог. Пишет, что нет ответа. Помогите, что делать??
P.S: у меня ATTiny2313? а не A90S2313
Аватара пользователя
ibiza11
Поставщик валерьянки для Кота
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

проверяйте монтаж. вот цитата с того сайта
И теперь нажимаем кнопку «Write». После этого оно выдаст какую-то ошибку, типа контроллер не читается, но на это не обращаем внимания:
так что это нормально. не знаю какая там схема, но судя по фузам, контроллер запрограммирован на работу с внешним кварцем 3-8Мгц. Он у вас установлен?
Ставим плюсы: )
Аватара пользователя
Данилка
Грызет канифоль
Сообщения: 265
Зарегистрирован: Сб авг 01, 2009 16:10:22

Сообщение Данилка »

в програматоре stk200/300 стоит кварц, как я понял на 4 мгц, на нём написано 4.0BKSS9HT
Аватара пользователя
Данилка
Грызет канифоль
Сообщения: 265
Зарегистрирован: Сб авг 01, 2009 16:10:22

Сообщение Данилка »

Ещё такой вопрос - а в каком диапозоне можно подключать к 2313 кварци?? Как я понял 4-8МГц, хотя в схеме используют на 12 мгц.
Аватара пользователя
ibiza11
Поставщик валерьянки для Кота
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

проверяйте монтаж, генерацию. скорее всего там проблемы. не забываем про питание. контроллер работает до 16 МГц, если это не tiny2313V (этот до 8 МГц). почитайте даташит на микроконтроллер. если с языком проблемы, почитайте книжку "Микроконтроллеры AVR в радиолюбительской практике Белов А.В.2007"
Ставим плюсы: )
Ответить

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