Например TDA7294

Форум РадиоКот • Просмотр темы - Ассемблер (ASM) для AVR в вопросах и ответах
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 16, 2024 20:55:39

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


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



Начать новую тему Ответить на тему  [ Сообщений: 7597 ]     ... , , , 365, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 08:54:47 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
следовательно, из кода надо отнять 10 и результат умножить на 2 - примерно то и выйдет, что надо.

Ох уж эти оптимизаторы :)
(0x8C - 10) * 2 = 260

Вычитать нужно, дальше лучше делать как я изначально показывал:
256 / (0x8C - 10) * 128 = 252
((0x8C - 10) * 252) >> 7 = 255

Вместо сдвига вправо на 7 естественно будет 16-ти битный сдвиг влево на 1 с извлечением старшего байта.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 09:36:14 
Вымогатель припоя

Карма: -8
Рейтинг сообщений: 49
Зарегистрирован: Вс дек 28, 2014 21:54:05
Сообщений: 615
Рейтинг сообщения: 0
Akl, не понял что такое 502, посчитал на бумажке( в екселе то есть), работает. Reflector, доходчиво, на бумажке тоже работает. Посмотрю, как лучше в ассемблере сделать.
Единственное, что я и сам пока не знаю, а не придётся ли это преобразование делать нелинейным. :( типа х^2. Но пока для тестов подойдёт линейное преобразование.
СПАСИБО.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 09:38:37 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1012
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 18798
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
коэффициент будет ... 1,97

502/256 = 1.96

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Измерить нннада?


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 09:40:37 
Мудрый кот

Карма: 11
Рейтинг сообщений: 114
Зарегистрирован: Пт июн 01, 2018 07:28:45
Сообщений: 1759
Рейтинг сообщения: 0
Единственное, что я и сам пока не знаю, а не придётся ли это преобразование делать нелинейным. :( типа х^2.

Тогда проще из таблицы дёргать, если есть ограничения у МК.


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 09:47:36 
Вымогатель припоя

Карма: -8
Рейтинг сообщений: 49
Зарегистрирован: Вс дек 28, 2014 21:54:05
Сообщений: 615
Рейтинг сообщения: 0
Тоже неплохо. Мега8, места во флеше свободного доуя. Протестирую и решу. Спс всем!!
:)

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


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 10:40:10 
Друг Кота
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 14053
Откуда: ДОНЕЦК
Рейтинг сообщения: 0
Наиболее эффективно будет таки при помощи табличного декодера выполнить.
:roll:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 10:41:23 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1012
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 18798
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Наиболее эффективно...
... с точки зрения быстродействия.

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Измерить нннада?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 10:45:35 
Друг Кота

Карма: 64
Рейтинг сообщений: 966
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4220
Откуда: Ижевск
Рейтинг сообщения: 0
Да, хорошее решение. Только таблицу надо предварительно составить и занести в память.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 10:47:34 
Вымогатель припоя

Карма: -8
Рейтинг сообщений: 49
Зарегистрирован: Вс дек 28, 2014 21:54:05
Сообщений: 615
Рейтинг сообщения: 0
{.. с точки зрения быстродействия}
По сути и расчёт на асме не займёт значительного времени. Да и спешить некуда. В моём случае 100 мс ничего не решают.
{таблицу надо предварительно составить и занести в память.}
Я же «на бумажке « посчитал уже, Вам спасибо.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 10:54:56 
Друг Кота
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 14053
Откуда: ДОНЕЦК
Рейтинг сообщения: 0
Gudd-Head писал(а):
...с точки зрения быстродействия.

Ну там не только быстродействие - возможность оперативного изменения диапазона и/или характеристик преобразования при коэффициенте в виде данных в любом из регистров (0-31) или константного смещения 0-63 для регистровой пары как указателя.
Единственный минус - придется Z занять.
8)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 11:01:21 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
c точки зрения быстродействия.

Умножение 8x8 вместе со сдвигом на 1 бит влево - это одна FMUL выполняемая за 2 такта, плюс еще одна LDI нужна, итого 3 такта.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 12:22:05 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1384
Рейтинг сообщения: 0
Единственный минус - придется Z занять.
8)

Ассемблер это всегда поиск компромиссов. Объем памяти, быстро действие, занимаемые регистры.
Я не вижу минуса в том, что ах, регистры Z надо занимать. Минуса как такового нет. Это ваше личное предпочтение, как вы распределяете регистры в своих программах. Ваши личные правила.
Есть задача. Есть условия. И ты определяешь, на какие компромиссы идёшь, и какие регистры использовать. Нужно чётко разделять личные предпочтения и целесообразность.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Пн апр 05, 2021 12:31:22 
Вымогатель припоя

Карма: -8
Рейтинг сообщений: 49
Зарегистрирован: Вс дек 28, 2014 21:54:05
Сообщений: 615
Рейтинг сообщения: 0
Да в конце концов с пушпопом можно любой регистр пользовать.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 08:45:23 
Грызет канифоль

Зарегистрирован: Пн окт 26, 2020 08:37:51
Сообщений: 284
Откуда: г.Волгоград
Рейтинг сообщения: 0
День добрый всем.
Компилятор Avrasm2. Столкнулся с непонятными его действиями при задании констант.
.equ N=10
.equ t1= int(666938/N-7.9207)
.equ t2= int(666938/N-7-9207/10000)

Почему-то t1 не равно t2, который дает корректный для работы устройства результат.

Второй вопрос. Как задать вещественную константу, например 34.5, чтобы потом простые формулы с её участием использовать для задания целых констант (хотелось как ниже представлено)
A=34.5????
.equ t3= int(666938/A)

Вот не нашел в разных описания avrasm2 этих моментов. Может кто сталкивался.

_________________
ФУОЗ на платформе Ардуино: viewtopic.php?p=4366626#p4366626
ВК - "ФУОЗ на микроконтроллере Atmega328P (МПСЗ)"


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 10:04:18 
Друг Кота
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1351
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 14053
Откуда: ДОНЕЦК
Рейтинг сообщения: 0
Посмотрите instruction set (хотя-бы Atmel-0856L-AVR-Instruction-Set-Manual)...
Ежли найдете команду, в которой в качестве данных подставляется ДРОБНОЕ значение - тогда можете работать с оным и под ассемблером.
8)
Не надо путать препроцессор с собственно системой команд.
Собственно система команд и АЛУ могут работать только со знаковой арифметикой.
Для обработки дробных величин (и прочего...) необходимо предварительно создать соответствующие подпрограммы и уж затем скармливать им соответствующего формата данные.
:tea:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 10:39:02 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
в avrasm2 есть
Цитата:
INT(expression) Truncates a floating point expression to integer (ie discards fractional part)
FRAC(expression) Extracts fractional part of a floating point expression (ie discards integer part).
Q7(expression) Converts a fractional floating point expression to a form suitable for the FMUL/FMULS/FMULSU instructions. (sign + 7-bit fraction)
Q15(expression) Converts a fractional floating point expression to a form suitable for the FMUL/FMULS/FMULSU instructions. (sign +15-bit fraction)


перевод
Цитата:
Следующие функции определены только в AVRASM2:
INT (выражение) Обрезает выражение с плавающей запятой до целого числа (т.е. отбрасывает дробную часть)
FRAC (выражение) Извлекает дробную часть выражения с плавающей запятой (т.е. отбрасывает целую часть).
Q7 (выражение) Преобразует дробное выражение с плавающей запятой в форму, подходящую для инструкций FMUL / FMULS / FMULSU. (знак + 7-битная дробь)
Q15 (выражение) Преобразует дробное выражение с плавающей запятой в форму, подходящую для инструкций FMUL / FMULS / FMULSU. (знак + 15-битная дробь


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 10:41:49 
Грызет канифоль

Зарегистрирован: Пн окт 26, 2020 08:37:51
Сообщений: 284
Откуда: г.Волгоград
Рейтинг сообщения: 0
Спасибо за содержательный ответ.

Я Вас не спрашивал про арифметику вещественных чисел. Вопрос был именно по avrasm2, а не к набору инструкций.
С set ничего не получалось. А по первому есть что сказать?

Архитектурой и ассемблером avr владею на серьезном уровне. Английским техническим тоже.

_________________
ФУОЗ на платформе Ардуино: viewtopic.php?p=4366626#p4366626
ВК - "ФУОЗ на микроконтроллере Atmega328P (МПСЗ)"


Вернуться наверх
 
В сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 11:32:50 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2801
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18061
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
С.Н. писал(а):
Архитектурой и ассемблером avr владею на серьезном уровне
очень плохо ты владеешь, если пытаешься подставить дробное число.
на самом деле делается так:
числа, которые должны быть дробными, представляются целыми числами с фиксированной точкой.
и для каждого такого числа программописатель знает, где в этом числе находится точка.
С.Н. писал(а):
A=34.5????
.equ t3= int(666938/A)
поэтому в данном конкретном случае нужно записать так:
.equ t3= 666938 * 10 / 345

_________________
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 11:44:32 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
А по первому есть что сказать?
Архитектурой и ассемблером avr владею на серьезном уровне. Английским техническим тоже.

ну в документации на английском ничего нет про флоат константы (там в формуле есть 7.9207),
есть Integer Constants и Strings и Character Constants. Может пропустил.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Ассемблер (ASM) для AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 11, 2021 12:12:29 
Грызет канифоль

Зарегистрирован: Пн окт 26, 2020 08:37:51
Сообщений: 284
Откуда: г.Волгоград
Рейтинг сообщения: 0
очень плохо ты владеешь, если пытаешься подставить дробное число.

Во первых, призываю Вас сохранять уважительный тон общения и обращаться на "Вы".
Во-вторых, я спросил то что спросил. Мне не надо объяснять про альтернативную форму представления, тем более что она есть в первой части вопроса, а глаза цепляются за последнюю строчку. Правда?

Я программу пишу для других, у которых познания в этом близко к нулю. Им приходиться править прошивку под себя. Так вот, они в состоянии число записать как привыкли "34.5", а не приводить к удобной форме. Пока обхожусь и без этого, но хочется упростить кое какие моменты.

Вопросы снимаю... Спрашивал личный опыт, а не вырезки документации, которые и сам читал.

Добавлено after 3 minutes 29 seconds:
А по первому есть что сказать?
Архитектурой и ассемблером avr владею на серьезном уровне. Английским техническим тоже.

ну в документации на английском ничего нет про флоат константы (там в формуле есть 7.9207),
есть Integer Constants и Strings и Character Constants. Может пропустил.


Да я тоже не нашел и мало того переперобывал разные комбинации... Видать придется мириться с этим.

_________________
ФУОЗ на платформе Ардуино: viewtopic.php?p=4366626#p4366626
ВК - "ФУОЗ на микроконтроллере Atmega328P (МПСЗ)"


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

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


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

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


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

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


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