Страница 2 из 2

Добавлено: Вс фев 25, 2007 08:45:28
sinobi
такая ссылка получилась потому,что я её из телепорта брал.спасибо за отзывы разобрался,почему ошибка закралась,я компилятором то другим пользовался,а includeоставлял старый :)

Добавлено: Вс фев 25, 2007 10:18:14
Abakt
Когда сам разобрался это лучший вариант.

Добавлено: Пн июн 18, 2007 05:00:42
Teh-nick
В обучалке для подключения кварца к at90s2313 используются 2 конденсатора на 22. объясните 22 мкф или 22 пкф? Для подключения attiny2313 емкость конденсаторов токая же? зависит ли их емкость от частоты кварца?

Добавлено: Пн июн 18, 2007 08:13:52
ARV
Teh-nick писал(а):В обучалке для подключения кварца к at90s2313 используются 2 конденсатора на 22. объясните 22 мкф или 22 пкф? Для подключения attiny2313 емкость конденсаторов токая же? зависит ли их емкость от частоты кварца?
Внимательно ищите по форуму про обозначение емкости конденсаторов на схемах! Естественно, речь о пикрофарадах!
Емкость этих конденсатров может зависить как от частоты применяемого резонатора, так и от от его типа (кварцевый или керамический). Вся информация на этот счет приведена в фирменной документации на МК.
Для повторения схем-программ обучалки во-первых, надо сохранить емкость этих конденсаторов и частоту кварца независимо от типа МК(т.к. обо всем уже подумали авторы обучалки), а во-вторых, надо помнить, что AT90S2313 и ATTiny2313 не являются 100% совместимыми, а значит, программы от первого могут не заработать на втором - об этом много информации на форуме, ищите.

Добавлено: Вт июн 19, 2007 11:29:07
Teh-nick
Собрал программатор ABB по схеме из обучалки и схему "бегущий огонеёк" (http://radiokot.ru/start/mcu_fpga/avr/05/), только в место AT90S2313 использовал ATtiny2313, и кварц с кондёрами не впаявал. Воткнул программатор в комп, "бегущий огонёк" в программатор, на "бегущий огонёк подал питание +5В от компа, написал и запустил батник с таким содержанием:
avreal32.exe +attiny2313
pause=null

В ответ появилось окно с надписью:
Command:
+attiny2313
Can't resync
Reset pin released

По идее на контроллер должен был придти сигнал сброса, а он в ответ выдать информацию о себе, но сброса не было (смотрел осцилографом). Напруга на контроллер поступает, диод питания светится, другой диод (который идёт на 14 ногу не светится).
Подскажите как определить работоспособность ABB, и назначение второго диода?

Добавлено: Вт июн 19, 2007 13:23:12
Aheir
Teh-nick, внимательно читаем ответы ARV. Он уже писал, что ATTiny2313 не является полностью совместимым с AT90S2313, так что осторожнее.
А что такое "аппоунт tyni2313" и как на него "в прошивке указать" я вообще не представляю... :wink: :)

Добавлено: Вт июн 19, 2007 13:40:54
Teh-nick
Сравнивал даташиты, в общем назначение выводов совподает, по этому посчитал, что эл схемы будут одинаковы.
Я имел в виду appnotes, и первую строчку исходника. Вместо
.include "d:\avr\avrasm\appnotes\2313def.inc" надо написать
.include "d:\avr\avrasm\appnotes\tn2313def.inc"

А вообще не плохо было бы обучалку отредактировать на ATtiny2313, а то AT90S2313 ни где не достать уже, а для новичка слишком проблемотично разбираться как переделать схему с одной на другую :cry:

Добавлено: Ср июн 20, 2007 12:31:04
Teh-nick
Решил создать HEX для TINY2313:
.include "D:\AVR\appnotes\tn2313def.inc"
.def Temp=R16
.cseg
.org 0
ldi Temp, 0b11111111 ;присвоение константы
out DDRB,Temp ;вывод
;выводим число 11010010 на светодиоды
ldi Temp,0b00000000 ;присвоение константы
out PortB,Temp ;вывод на индикацию
Компилирую tavrasm.122
Он в ответ ругается:
:41:Warning:Unknown device 'ATtiny2313'
:41:'.device ATtiny2313'
:123:Error:Expected ID=expression
:123:'.equ Z
:383:Error:Expected ID=expession
:383:'.equ OR=3; for compatibility purppose
Это значит что tavrasm не компилирует для TINY2313?
Если да, то чем можно компилировать, если нет, прошу указать где ошибка в программе.

Добавлено: Ср июн 20, 2007 12:52:10
ARV
просто закомментируй строки 123 (.equ Z) и 383 (.equ OR=3) в файле tn2313def.inc (для обучалки это не повредит).

Добавлено: Ср июн 20, 2007 13:43:57
Teh-nick
ARV спасибо, помогло. правда остались строчки:

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

:41:Warning:Unknown device 'ATtiny2313' 
:41:'.device ATtiny2313'
Но HEX создался.

Добавлено: Ср июн 20, 2007 13:59:13
Teh-nick
Для создателей обучалки!
Если будет редакция для TINY2313 укжите последовательность действий:
1. Когда цепляем новую микруху, цепляем провод с 8 вывода прогромматора на XTAL 1 вывод МК
2. Переводим МК на внешний кварц -fCKSEL=F
3. Отцепляем провод от XTAL1
Не позволяйте другим новичкам наступать на мои грабли!

Добавлено: Ср июн 20, 2007 15:15:24
ARV
Teh-nick писал(а):ARV спасибо, помогло. правда остались строчки:

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

:41:Warning:Unknown device 'ATtiny2313' 
:41:'.device ATtiny2313'
Но HEX создался.
Тут или компилятору в обед сто лет, что не знает он о существовании такого МК, или одно из двух. Короче, на это предупреждение (не ошибку!) можно наплевать или строчку 41 (.device ATtiny2313) тоже закомментировать.

Добавлено: Чт июн 21, 2007 11:41:59
Teh-nick
Сделал прогу:
Закомпилировал AVRStudio4 (не ругался)
Получился HEX:
Прошил AVRealом (тоже написал что всё OK):

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

Device connected, Tiny2313 detected
Chip not locked
Device erased
Device connected, Tiny2313 detected
Fuses (идёт список фузов)
Programming CODE memory
done
Reset pin released
Adapter disibled
Но диоды не моргают. :evil:
Между XTAL1 и XTAL2 висит кварц на 10Мгц и кондёры на 22 пкФ (по схеме из даташита).
На XTAL1 Висит переменка 1-0,5 В если правильно посчитал - 10 МГц
На XTAL2 висит постоянных 0,5 В .
Фуз на кварц выставил CKSEL=F
Вопрос: Чего ему еще надо? :shock:

Добавлено: Чт июн 21, 2007 11:47:33
Внeштатный сотрудник
а зачем ты рабочие строки закомментировал?

Добавлено: Чт июн 21, 2007 12:11:16
Teh-nick
Решил ускорить выполнение проги. Думал может слишком медленно работает.
Тут мысль появилась:
Я Tiny подцепил к программатору по схеме из обучалки: там от 1 вывода BB идёт провод на 19 ногу микрухи - SCK (смутно представляю его назначение). На тини нет SCK, зато на 19 ноге есть UCSK, решил, что один хрен и туда подцепил 1 вывод от BB.
Теперь уже не уверен, что цеплять надо было так.
--------------------------------------------------------
Всё заработало, после того как активировал дополнительные фузы:

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

 -fCKSEL=F,SUT=0,CKDIV=1

Добавлено: Чт июн 28, 2007 13:18:24
Teh-nick
Написал прогу для Tiny2313
Но есть одна проблема
В проге есть момент, где надо сложить 16-бит число с переменной.
Есть команда ADIV она складывает 16-бит число с константой. А нужно что бы складывалось с переменной, точнее с содержимым регистра (в моей проге KOF).
Если кто знает такую команду, напишите её и пример её использования.

Добавлено: Вт сен 18, 2007 20:44:01
Gorec
Ребята, извинити если что, если я не в тему . Я студент ФизТеха, 4 курс, очень заинтересовала тема по программированию микроконтролеров, спасибо авторам статей на этом сайте. Я изучал два курса язык С++, кое чё там понимаю, Хочу взяться всерьез за программирование микроконтролеров AVR, и хочу Вас спросить по поводу на каком языке писать программу прошивки, я конечно понимаю что на С++, или на Assembler. Но хотелось бы услышать, стоит ли браться за Assembler или нет. Если есть программисты, то помогите начинающему котенку.
С уважением! Заранее благодарен.

Пользователь Gorec забанен на неделю за создание тем, не соответствующих разделам по тематике, и ненормативную лексику в адрес модератора. Aheir

Добавлено: Вт сен 18, 2007 20:52:37
Мышонок
Gorec писал(а):хочу Вас спросить по поводу на каком языке писать программу прошивки, я конечно понимаю что на С++, или на Assembler. Но хотелось бы услышать, стоит ли браться за Assembler или нет.
Про это уже сто раз говорилось: какая отвёртка лучше: обычная или крестовая? Если крестовая, то какой №? :) А может лучше "звёздочка"? :)
Какой автомобиль лучше: грузовик или легковая? Если грузовик, то какой: трейлер, самосвал, цистерна? :)

Так же и с языками: выбирается исходя из необходимости решения данной задачи. Главное начать, а языки - дело наживное. Зная основы языков, легко перейти с одного на другой. Си в этом плане более универсальный, ассемблер привязан к конкретному МК или их семейству. Опять же, МК выбирается исходя из решаемой задачи.

Дерзайте! :) Главное не уподобиться Буриданову Ослу - который никак не мог решить какую же охапку сена съесть первой и помер с голоду. Нормальный осёл сначала бы съел одну, а потом другую! :))

Добавлено: Пн янв 11, 2010 10:27:31
dalneboy
всем привет :)) недавно наткнулся на этот сайт всё нравится .Главное обучалка очень понятно написана за что огромное спасибо автору :)) .Использовал attiny2313 всё работает моргает .Скачал с сайта atmel avrstudio программатор uniprof с сайта Николаева,его проще собрать начинающему и всё. отладчик AVR studio ругается на код иногда ,игнорируем ,компилим ,шьём всё. Ещё раз огромное спс автору :)) :))
кстати кварц не подключал от внутреннего работает.