Страница 1 из 2
ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 12:52:13
ufofly
подскажите какой include прописывать для ATtiny 2313a-pu в ассемблере в атмелСтудио?
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 13:10:53
Engineer_Keen
не знаю как в атмелстудии, но в AVR студии был "tn2313def.inc" (от букв маркировки после 2313 не зависит)
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 14:16:23
kobzar
в атмел студии пишите просто
#include <avr/io.h>
и когда создаете проект там уже ета строка есть !
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 14:21:36
Dr. Alex
Это для Си, а для АСМ так и будет "tn2313def.inc"
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 15:49:49
BOB51
В avrstudio 4.19 есть специальный файлик tn2313Adef.inc в каталоге AVR Tools -> AvrAssembler2 -> Appnotes. Так же и для остальных "Ашек".

Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 17:37:56
ufofly
BOB51 писал(а):В avrstudio 4.19 есть специальный файлик tn2313Adef.inc в каталоге AVR Tools -> AvrAssembler2 -> Appnotes. Так же и для остальных "Ашек".

дык вот именно что "ашка" не хочет работать
ATtiny 2313
меняю на ATtiny 2313а и вуаля... беда
что где и почему??? помогите, объясните пожалуйста!
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 17:50:12
BCluster
картинка мелкая не видно на что ругается...
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 18:19:51
ufofly

должно отктрыться
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 18:23:40
zero648
Похоже на подключение нескольких инклудов или повторное переопределение имен.
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 18:32:01
ufofly
zero648 писал(а):Похоже на подключение нескольких инклудов
как так то? я поменял только тиньку, код остался прежним
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 18:45:18
BOB51
Буду вечерком на домашнем ПК - скину заголовок под проект для ATtiny2313A под AVRstudio4.19 для ассемблера.

Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 18:45:45
kobzar
как на счет показать весь код а не кусочки?
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 23:13:59
ufofly
kobzar писал(а):как на счет показать весь код а не кусочки?
так я только начал. нету еще кода. кажется и не будет... раз такое дело
Re: ATtiny 2313a-pu
Добавлено: Вт мар 11, 2014 23:15:18
ufofly
BOB51 писал(а):Буду вечерком на домашнем ПК - скину заголовок под проект для ATtiny2313A под AVRstudio4.19 для ассемблера.

Спасибо. походу надо удалять ту. и ставить "Вашу" версию...
Re: ATtiny 2313a-pu
Добавлено: Ср мар 12, 2014 00:55:31
BCluster
в картинке я вижу просто 2313 без А...
Проверил, действительно странно работает...
UPD: Хотя такой пример вполне себе работает
.include <tn2313Adef.inc>
ldi R16,5
ldi R17,7
and R16,R17
out PORTB,R16
nop
если использовать хидер без А, то такие же ошибки как у вас...
При создании проекта, если выбрать тини без А, и подключить хидер с А будет та же самая ботва
Re: ATtiny 2313a-pu
Добавлено: Ср мар 12, 2014 15:18:30
BOB51
Вот как образец - один из проектов с подставленным tn2313Adef.inc и перекомпилирован на данной установке - покопайтесь в настройках - мож чего проясниться (АВРстудио4.19).

Re: ATtiny 2313a-pu
Добавлено: Ср мар 12, 2014 15:50:41
Engineer_Keen
Можно забить и оставить inc файл без буквы "A". Там разница в паре новых прерываний (по портам A и D) и новых регистрах энергосбережения. Если они нужны можно тупо в код их определения воткнуть прямо из inc файла для "A"...
Вот вся разница:
Спойлер
Код: Выделить всё
; ***** I/O REGISTER DEFINITIONS *****************************************
.equ BODCR = 0x07
.equ PRR = 0x06
.equ PCMSK2 = 0x05
.equ PCMSK1 = 0x04
; ***** BIT DEFINITIONS **************************************************
; PCMSK2 - Pin Change Interrupt Mask Register 2
.equ PCINT11 = 0 ; Pin Change Interrupt Mask 11
.equ PCINT12 = 1 ; Pin Change Interrupt Mask 12
.equ PCINT13 = 2 ; Pin Change Interrupt Mask 13
.equ PCINT14 = 3 ; Pin Change Interrupt Mask 14
.equ PCINT15 = 4 ; Pin Change Interrupt Mask 15
.equ PCINT16 = 5 ; Pin Change Interrupt Mask 16
.equ PCINT17 = 6 ; Pin Change Interrupt Mask 17
; PCMSK1 - Pin Change Interrupt Mask Register 1
.equ PCINT8 = 0 ; Pin Change Interrupt Mask 8
.equ PCINT9 = 1 ; Pin Change Interrupt Mask 9
.equ PCINT10 = 2 ; Pin Change Interrupt Mask 10
; PRR - Power reduction register
.equ PRUSART = 0 ;
.equ PRUSI = 1 ;
.equ PRTIM0 = 2 ;
.equ PRTIM1 = 3 ;
; BODCR - BOD control register
.equ BPDSE = 0 ;
.equ BPDS = 1 ;
; ***** INTERRUPT VECTORS ************************************************
.equ PCIAaddr = 0x0013 ; Pin Change Interrupt Request A
.equ PCIDaddr = 0x0014 ; Pin Change Interrupt Request D
.equ INT_VECTORS_SIZE = 21 ; size in words
Re: ATtiny 2313a-pu
Добавлено: Ср мар 12, 2014 17:11:04
BOB51
Похоже "гвоздик" в правописании...
Это откуда взято:
.include <tn2313Adef.inc> ?
Ведь в стандартном описании требуется
.include "tn2313Adef.inc"
следить за синтаксисом надобно!
(а у ассемблера весьма много вариаций в зависимости от производителя компилятора)

Re: ATtiny 2313a-pu
Добавлено: Ср мар 12, 2014 21:10:05
ИС-пытатель
Если я не ошибаюсь, то при создании проекта, вы выбираете устройство. И студия сама добавляет нужные инклуды к нему (они не отображаются в вашем коде, но они включены). И ничего лишнего добавлять не надо. пишите свой код. Если же вы что-то добавляете - у вас получается переопределение имен. так как получается, что вы дважды воткнули один и тот же инклуд.
Если вы не выбирали устройство при создании, то идете по пути Project>>Properties>>Device. и выбираете здесь. Удачи!
Re: ATtiny 2313a-pu
Добавлено: Ср мар 12, 2014 21:26:55
BCluster
и с <> и с "" работает. Дело видимо в том, что при создании проекта не то устройство выбрали. А подключать файлики надо. Я тоже думал что в этом дело, но после проверки вышло что не так
