Например TDA7294

Форум РадиоКот • Просмотр темы - Вопрос: avr_asm interrupt в отдельный файл как?
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 25, 2024 02:22:27

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Сб ноя 03, 2018 11:43:53 
Открыл глаза

Зарегистрирован: Сб мар 26, 2016 01:01:31
Сообщений: 44
Рейтинг сообщения: 0
Доброго времени.
(avr, asm, AVR Studio)
Подскажите на примере как вынести таблицу векторов прерываний с обработчиками в отдельный файл, а подпрограммы в другой файл.
Или где об этом прочитать на русском.
Заранее спасибо.

Спойлер;tn2313a_blink
.device ATtiny2313A
.include "tn2313adef.inc"
;CPU_Clock - Ext_Osc 8MHz

.def temp = r16
.def led_6 = r17
.def delay_ms = r18

.equ _DELAY = 250

;===Interrupt=======
rjmp RESET ; Reset Handler
reti ;rjmp INT0 ; External Interrupt0 Handler
reti ;rjmp INT1 ; External Interrupt1 Handler
reti ;rjmp TIM1_CAPT ; Timer1 Capture Handler
reti ;rjmp TIM1_COMPA ; Timer1 CompareA Handler
reti ;rjmp TIM1_OVF ; Timer1 Overflow Handler
rjmp TIM0 ; Timer0 Overflow Handler
reti ;rjmp USART0_RXC ; USART0 RX Complete Handler
reti ;rjmp USART0_DRE ; USART0,UDR Empty Handler
reti ;rjmp USART0_TXC ; USART0 TX Complete Handler
reti ;rjmp ANA_COMP ; Analog Comparator Handler
reti ;rjmp PCINT0 ; PCINT0 Handler
reti ;rjmp TIMER1_COMPB ; Timer1 Compare B Handler
reti ;rjmp TIMER0_COMPA ; Timer0 Compare A Handler
reti ;rjmp TIMER0_COMPB ; Timer0 Compare B Handler
reti ;rjmp USI_START ; USI Start Handler
reti ;rjmp USI_OVERFLOW ; USI Overflow Handler
reti ;rjmp EE_READY ; EEPROM Ready Handler
reti ;rjmp WDT_OVERFLOW ; Watchdog Overflow Handler
reti ;rjmp PCINT1 ; PCINT1 Handler
reti ;rjmp PCINT2 ; PCINT2 Handler

;===
RESET:
;stack
ldi temp, RAMEND
out SPL, temp

;PortD Pin6 - OUT the external LED
ldi temp, 0b01000000
out DDRD, temp

clr temp
out PortD, temp

;TIM0 - init
clr temp
out TCCR0B, temp

ldi temp, 0x83 ;(256-125=131(0x83) interrTIM0/ms) for k=64 cpu 8MHz
out TCNT0, temp

in temp, TIFR
sbr temp, 0b00000010
out TIFR, temp

in temp, TIMSK
sbr temp, 0b00000010
out TIMSK, temp

in temp, TCCR0B
sbr temp, 0b00000011
out TCCR0B, temp

;===========
sei
ldi led_6, 0b01000000

;===========
MAIN:
in temp, PortD
eor temp, led_6
out PortD, temp

ldi delay_ms, _DELAY
rcall f_delay_ms

rjmp MAIN

;==
f_delay_ms:
cpi delay_ms, 0
brne f_delay_ms
ret

;==
TIM0:
ldi temp, 0x82 ;(255-125=130) for k=64 cpu 8MHz
out TCNT0, temp

cpi delay_ms, 0
breq no_dec
dec delay_ms
no_dec:
reti


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Сб ноя 03, 2018 15:36:44 
Собутыльник Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2694
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
.include "name.type"

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Вс ноя 04, 2018 19:55:15 
Открыл глаза

Зарегистрирован: Сб мар 26, 2016 01:01:31
Сообщений: 44
Рейтинг сообщения: 0
Спасибо.
А как избежать конфликта адресов? Ну как бы хотелось, иклюды не по всей программе распихивать, а все в кучу в самом начале. Неужели вручную через .org высчитывать?


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Пн ноя 05, 2018 08:02:21 
Вымогатель припоя

Карма: -8
Рейтинг сообщений: 49
Зарегистрирован: Вс дек 28, 2014 21:54:05
Сообщений: 615
Рейтинг сообщения: 0
Так и ставьте, компилятор расчитает адреса

_________________
Я всё-всё узнAю и стану профессором.


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Пн ноя 05, 2018 09:11:32 
Друг Кота
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 14063
Откуда: ДОНЕЦК
Рейтинг сообщения: 0
Как один из возможных вариантов смотри здесь
https://radiokot.ru/forum/viewtopic.php?f=62&t=94201
ближе к концу выведена некая формулировка "слэнга" многофайловых проектов под асемблером.
:roll:


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Пт ноя 09, 2018 22:40:47 
Открыл глаза

Зарегистрирован: Сб мар 26, 2016 01:01:31
Сообщений: 44
Рейтинг сообщения: 0
Как один из возможных вариантов смотри здесь
https://radiokot.ru/forum/viewtopic.php?f=62&t=94201
ближе к концу выведена некая формулировка "слэнга" многофайловых проектов под асемблером.
:roll:


Спасибо, но легче не стало. А простого конкретного примера случайно нету? Если это не в напряг.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос: avr_asm interrupt в отдельный файл как?
СообщениеДобавлено: Сб ноя 10, 2018 05:52:42 
Друг Кота
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 14063
Откуда: ДОНЕЦК
Рейтинг сообщения: 0
Любой из рассмотренных в вышеуказанной теме проектов, в том числе и для АВР.
Принцип построения одинаков - единственно ближе к концу темы выведено дополненеие по структуре папок проекта с распределением их содержимого.
Образец "раннего примитива" со смешанными в единой папке файлами:
Вложение:
extdi_2313.rar [33.15 KiB]
Скачиваний: 163

Сейчас несколько более распределено - отдельно основа проекта, отлдельно остальные разделы.
8)


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 51


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y