Страница 1 из 2
ATtiny2313 : UART передача данных
Добавлено: Пт авг 03, 2007 16:04:07
asd
Возникла задача - передать сигнал последовательно.Почитал в даташите UART - кое что понятно, некоторое -нет, а надо всё

.
Может кто, в этом хорошо разбирается покажет на простом примере(программы) в asm, как настоить UART на передачу, назначить в РОН любое число и передать на вывод (TXD) PD0, где будет подключен светодиод, через который всё
это можно будет спокойно увидет

Добавлено: Пн авг 06, 2007 03:51:35
Томатный
Может кто, в этом хорошо разбирается покажет на простом примере(программы) в asm, как настоить UART на передачу
если вы посмотрите на готовый код врятли сможете понять как он работает.
а надо всё
Скачайте вот эту книжечку, почитайте и будет вам всё:
http://all-ebooks.com/index.php?m=book&id=3471 9 Мб [DJVU]
там описываются все нужные регистры(и их биты), так что не прийдётся в даташит заглядывать(тем более в отличии от него в книге на всё русском)
в книге примеры на Asm и на С.
где будет подключен светодиод, через который всё
это можно будет спокойно увидет
врятли вы что-то интересное увидите.
если вас это так интересует - в этой книге описуется формат кадра(посылки).
Re: UART передача данных Attiny2313,???
Добавлено: Пн авг 06, 2007 13:23:54
tych
asd писал(а):Возникла задача - передать сигнал последовательно.
Задача 5 моего курса - линк в профиле.
Re: UART передача данных Attiny2313,???
Добавлено: Пн авг 06, 2007 16:58:24
Lestat
asd писал(а):Возникла задача - передать сигнал последовательно.Почитал в даташите UART - кое что понятно, некоторое -нет, а надо всё

.
Может кто, в этом хорошо разбирается покажет на простом примере(программы) в asm, как настоить UART на передачу, назначить в РОН любое число и передать на вывод (TXD) PD0, где будет подключен светодиод, через который всё
это можно будет спокойно увидет

простой пример есть в даташыт
вот функцыи для передачи, приему, и настройки
Код: Выделить всё
transmiter:
sbis UCSRA,UDRE
rjmp transmiter
out UDR,temp
ret
Receive: sbis UCSRA,RXC
rjmp Receive
in r16, UDR
ret
init: ;инициализация:)
ldi temp1,0 ; сюда
ldi temp,47 ; и сюда грузиш значения с таблицы которая есть в даташыт, ето настройка скорости УСАРТА в зависимости от рабочей частоты МК
out UBRRH,temp1
out UBRRL,temp
ldi temp, (1<<RXEN)|(1<<TXEN)
out UCSRB,temp
ldi temp,(1<<USBS)|(3<<UCSZ0)
out UCSRC,temp
ret
Re: UART передача данных Attiny2313,???
Добавлено: Пн авг 06, 2007 17:02:48
Lestat
asd писал(а): где будет подключен светодиод, через который всё
это можно будет спокойно увидет

биты будеш считать?:)
подключи к сом порту через мах232, запусти терминал и посмотреш что тебе МК присылает, и ему можеш чтото отправить:)
Добавлено: Пн авг 06, 2007 21:10:22
Aheir
Опять же, можно симулятор использовать: VMLAB или Proteus (хотя на него что-то много жалоб в последнее время.)
UART в Attiny2313
Добавлено: Пн авг 27, 2007 17:47:38
MoDerN
В железе сделал связь с компом (UART+Attiny2313)
Посылал перевертыш (55) приходило 3А, зависимость есть но какаято
странная, как бут то нет синхронизации, хотя сделано от кварца,
настройки AVR, ПК одни и теже (9600), Проверял осциллографом, тоже самое.
Избавился просто, поставил 8535. НО ПРОБЛЕМА осталась.
Кто делал в железе поделитесь.
PS
Подозреваю фьюзы какимто образом прогить надо.
Добавлено: Пн авг 27, 2007 17:57:37
tych
Проверьте частоту на которой работает МК и настройки UART - пример в задаче 5 под

ниже.
Добавлено: Ср авг 29, 2007 21:05:04
Georg
Что интересно в CVAVRре Tyni2313 UART настраиваетс легко и работает, но на ASM UART я так и не смог запустить, хотя делал инициализацию по датшит. если прога небольшая то пиши на С в CVAVR
Добавлено: Ср авг 29, 2007 21:28:34
tych
Georg писал(а):Что интересно в CVAVRре Tyni2313 UART настраиваетс легко и работает, но на ASM UART я так и не смог запустить, хотя делал инициализацию по датшит.
Дак посмотри АСМ листинг в CVAVR и сделай настройку так же.
Добавлено: Чт авг 30, 2007 06:23:34
Georg
Смотрел ASM листинг и делал настройку по этому листингу UART не работает. Умом понимаю что всё просто даже в отладчике AVRst... проходит всё хорошо на деле нет. На Си загоняю либо число либо несколько символов смотрю на компе терминальной программой плучаю то что зашил, делаю тоже на ASM всегда получаю какуюто абра кадабру.
Добавлено: Чт авг 30, 2007 08:45:56
tych
Мистика !
Добавлено: Чт авг 30, 2007 16:25:53
Georg
Я конечно понимаю, что чудес не бывает, если не трудно напишите пример для Tyni2313 конфигурацию UART и передачу какого нибуть символа, а я попробую это зашить в контроллер и посмотрю в чём я не прав. Зарание благодарю.
Добавлено: Чт авг 30, 2007 16:43:39
tych
Я ж АПОЛОГЕТ СИ !!! и мастера кода CVAVR.
На АСМе ARV любит изъяснятся и еще куча спецов - надеюсь они напишут.
Пока посмотри в ДШ - там обычно примеры есть и на АСМ и на Си - должно быть рабочие.
Добавлено: Чт авг 30, 2007 18:17:22
Georg
Читал твою обучалку очень толковая, хочу на АСМе т.к. код меньше, а на счет ДАТА то конфигурирувал из него чёто не въеду, какаято мелоч но не как, буду искать мож кто спотыкался как я.
Добавлено: Чт авг 30, 2007 18:35:19
tych
Посмотри в "студии" при симуляции чего в регистрах не хватает для работы USART и выясни почему. У ВСЕХ то работает.
Добавлено: Чт авг 30, 2007 18:51:30
Алексей П
tych писал(а):Я ж АПОЛОГЕТ СИ !!! и мастера кода CVAVR.
Ну, уже и титул себе присвоили.
Справка: Апология - чрезмерное восхваление чего-нибудь
Добавлено: Чт авг 30, 2007 18:52:20
tych
Я Си и восхваляю. Часто мне говорят что черезмерно.
Добавлено: Чт авг 30, 2007 18:53:47
tych
Georg писал(а):Читал твою обучалку очень толковая, хочу на АСМе т.к. код меньше .
Возможно в местной обучалке на АСМе сделано - посмотри.
Добавлено: Чт авг 30, 2007 18:57:22
moLCHec
Просто слёзы наворачиваются когда вижу такое слепое использование Мастеров кода и пр. Сколько работал с USART проблемы были единожды когда кварц взял не той частоты(не дробной), для уменьшения помех ещё на землю резюком на 10кОм подтягивал. Там настраивать то нечего, на калькуляторе скорость посчитал и вся любовь. Ну и прерывание разрешил если нада.
А на каком языке писать в данном случае то совсем фиолетово, хоть на Иврит for AVR