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

Чт дек 20, 2007 14:17:07

Всем привет! Снова проблема.
Вот исходник:
;***********************************
; Автор: ***
; Дата: ***
; Версия: 1.0
; Имя файла: LEDon
; Для AVR 2313
; Тактовая частота: 4МГЦ
;***********************************




.nolist
.include "tn2313def.inc"
.list

.def temp =r16
rjmp Init
Init:
ser temp ;Устанавливаем бит 0 на выход
out DDRB,temp
ldi temp,0b11111110 ;Устанавливаем все выводы порта D как входы
out DDRD,temp

ldi temp,0b00000001 ;Устанавливаем подтядку бита 0 порта D
out PortD,temp
rjmp Start
Start:
in temp,PinD ;Проверяем нажатие кнопки
out PortB,temp
rjmp Start

А вот что он мне пишет:
C:\000\BC\BC.asm(14): error: Cannot find include file: at2313.inc

Assembly failed, 1 errors, 0 warnings

Причом тут at2313.inc когда ему нужен tn2313def.inc?

Чт дек 20, 2007 21:17:39

Так как я на асемблере не очень, могу предположить, что в файле tn2313def.inc есть ссылка на файл tn2313.inc , при этом идёт обращение, а файла нет. ну хотя это только предположение. :) Открой сам файл tn2313def.inc и посмотри что там делается.

Пт дек 21, 2007 09:18:21

Chip115 писал(а):вот что он мне пишет:
C:\000\BC\BC.asm(14): error: Cannot find include file: at2313.inc


переводчик он-лайн http://www.translate.ru

Пт дек 21, 2007 10:21:57

tych писал(а):
Chip115 писал(а):вот что он мне пишет:
C:\000\BC\BC.asm(14): error: Cannot find include file: at2313.inc


переводчик он-лайн http://www.translate.ru


Причом тут at2313.inc?
Обычно же используется tn2313def.inc
Переводчик к сожалению не знает ответа :)

Пт дек 21, 2007 11:56:32

Chip115 писал(а):Переводчик к сожалению не знает ответа :)


И даже это "Cannot find include file"
не переводит ?

Пт дек 21, 2007 12:30:21

"Немогу найти файл ... ." - это и без переводчика понятно.
А нах.... там нужен at2313.inc!?
Всегда же работал с tn2313def.inc
Если он там каким то образом нужен, то где его найти?

Пт дек 21, 2007 14:21:43

А в Windows поиск не работает ?

Пт дек 21, 2007 17:35:56

Все. Разобрался. Всем спасибо :)

Пт дек 21, 2007 19:34:47

Chip115 писал(а):Все. Разобрался. Всем спасибо :)

А в чём проблема была? :) просто интересно!

Вс дек 23, 2007 14:40:24

Krik99 писал(а):
Chip115 писал(а):Все. Разобрался. Всем спасибо :)

А в чём проблема была? :) просто интересно!

Ну ооочень тупая ситуация. Просто изночально проект был создан для 90S1200. Прогу я переписал для 2313, а в самом AVR Studio изменить тип контроллера забыл. :oops:
Ну уж простите новечка за то что потревожил :)

А щас новая проблема.

Немного переделал прогу.
В симуляторе все работает как надо. но в контроллере работает не правильно.
Смысл в том чтобы при нажатии на кнопку 1 (PD0)агорался на индикаторе 0, при отпускании- индикатор тух. При нажатии на кн 2 (PD1) на индикаторе загоралась бы 1-при отпускании кн 2 индикатор должен тухнуть.
При прошитой микре при ненажатых кнопках горит 0. При нажатии на кн1 (PD0) загорается 1. при отпускании-горит 0. На кн 2 (PD1) вообще нет реакции. Что сделать? Индикатор с общим катодом.
В симуляторе то работает.
Вложения
002v2.asm
Исходник
(982 байт) Скачиваний: 1067

Вс дек 30, 2007 14:53:47

Не ужели мне ни кто не поможет? :(

Сб фев 16, 2008 16:33:19

Chip115 писал(а):Не ужели мне ни кто не поможет? :(

Первое что бросается в глаза это отсутствие векторов прерываний. Но не в этом дело.

Я понял так: Ты кнопкой замыкаешь вход на землю.
Chip115 писал(а): sbic PinD,0 ;Проверяем нажатие кнопки 1
rjmp Loop_3

Команда sbic расшифровывается как Skip if Bit in I/O Register Cleared
Перевожу: ПРОПУСТИТЬ если бит порта ввода вывода очищен.
То есть когда ты замкнул кнопкой вход на землю
команда rjmp Loop_3 будет ПРОПУШЕНА

Ср фев 27, 2008 19:12:53

Всем громкое Мяу! :)) Я чайник, и срочно нуждаюсь в ответах на глупые вопросы. В наличии имеется учебный стенд фирмы open system (если кто с таким сталкивался). В базовой комплектации он идет с контроллером МК51, но так же рассчитан на AVR ATmega8515. Платой программатора стенд не комплектуется. Пришлось самому спаять программатор совместимый с STK200/300 (схему взял в книге А. В. Белова "проектируем устройства на AVR"). НО при настройке AVR studio, во первых при настройке портов не предлагает параллельный порт, только СОМ, объясните почему. Пробовал программировать при помощи PONY PROG, он говорит, что девайс не найден. Не понятно какой девайс - плата программатора или плата моего стенда. Прогу для доступа к портам минуя запреты винды. ОЧЕНЬ ПРОШУ, НАУЧИТЕ ДУРАКА!!!!!!!!!!

Ср фев 27, 2008 19:37:34

Ravenholm писал(а):ОЧЕНЬ ПРОШУ, НАУЧИТЕ ДУРАКА!!!!!!!!!!


Вот почитайте - как и что делать по шагам.

Ravenholm писал(а):AVR studio, во первых при настройке портов не предлагает параллельный порт, только СОМ, объясните почему.


Потому что есть CVAVR который весит 2 Мб и ВСЁ ! делает и LPT предлагает поюзать.

Можно просто как програматор использовать а можно совместно с AVR studio.

Пт фев 29, 2008 18:02:18

AVR studio работает только с COM и USB, STK200/300 если собран и подключен правильно должен работать. Его поддерживают CVAVR, ICC for AVR, poni prog, avreal и еще может какие но я не знаю больше

Пн мар 03, 2008 15:40:36

Дон Амброзио писал(а):Как в AVR Studio для программы на ассемблере указать "корень" для include-файлов?
Т.е. я хочу сделать условную компиляцию, которая, НАПРИМЕР, в одном случае к относительному пути includ-файла "ffff\ggg\ttt.inc" добавит "корень" "с:\zzz\yyy" и в результате полный путь получиться такой: "с:\zzz\yyy\ffff\ggg\ttt.inc"
А в другом случае добавит корень "с:\www\mmm" и в результате полный путь получиться такой: "с:\www\mmm\ffff\ggg\ttt.inc"
Можно ли это как-то реализовать в программе на ассемблере в AVR Studio? Или вообще как-то можно решить эту проблему?


AVR Assembler 2 имеет возможность указать список папок, в которых будут искаться include-файлы (по аналогии с PATH в Windows). в тексте программы на ассемблере указываются относительные пути в директивах .include, а в настройках проекта - "корневой" путь

в программе пишем
Код:
.include "123\my_include.inc"

в настройках указали "c:\TEMP"в итоге подключается файл "c:\TEMP\123\my_include.inc"

в настройках указали "c:\Windows\TEMP"
в итоге подключается файл "c:\Windows\TEMP\123\my_include.inc"

Пн мар 03, 2008 22:47:56

То ли я туплю толи AvrStudio... но вроде я всё прально делаю...
Код:
ldi tmp, 1<<COM0A0
out TCCR0A, tmp
ldi tmp, 0x0F
out OCR0A, tmp
ldi tmp, (1<<CS00)|(1<<CS02)
out TCCR0B, tmp

AvrStudio говорит что не знает регистров TCCR0A OCR0A и бита COM0A0. Вскрытие 2313def.inc показало что по таймеру Timer0 вообще очень мало чего описано... скиньте плиз свой 2313def.inc ктонить

Пн мар 03, 2008 23:06:27

скорее всего дело в том, что для МК ATtiny2313 ты используешь файл 2313def.inc, что неверно. надо использовать tn2313def.inc

Ср мар 05, 2008 23:46:11

Тэк-с народ... просьба такова - написать прогу которая заведёт таймер T1 в ATTiny2313 так чтобы он работал в режиме Fast PWM 8bit. Мне впринципе важно посмотреть как выглядят настройки для такой ситуации. Т.е. в отладчике вы должны увидеть как таймер досчитает до 0xFF и сбросится. Прога должна быть на Асме. И проверенная в AvrStudio. У кого получится - тому буду благодарен)

Пт мар 07, 2008 00:37:23

moLCHec писал(а):AVR studio работает только с COM и USB, STK200/300 если собран и подключен правильно должен работать.

насколько я смотрел в AVR studio,там есть только возможность прошивки через STK500.неужели,я что то упустил.Потому что пишу все сдезь же, а шъю через STK300 в CodeVision,а немного неудобно переходить из одной проги в другую.
Ответить