Например TDA7294

Форум РадиоКот • Просмотр темы - Atmega8 регулировка частоты и амплитуды
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Пн июн 17, 2024 15:01:25

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


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



Начать новую тему Ответить на тему  [ Сообщений: 121 ]    , , , 4, , ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 10:18:44 
Держит паяльник хвостом

Карма: 14
Рейтинг сообщений: 99
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 986
Рейтинг сообщения: 0
у меня майкрософт вижл студио, С++.

Значит предупреждения у тебя включены по дефолту.
Типы данных включаются в stdint.h.
Я специально привёл пример с разными типами.
Обрати внимание на компилятор.
Вложение:
Скриншот 20-04-2024 101139.jpg [59.16 KiB]
Скачиваний: 17


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 11:34:16 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
OKF, по твоей картинке я все равно ничего не понимаю про твой компилятор.
у меня для разных типов чисел не нужно подключать никакой заголовочный файл, ни для целых, ни для "плавающих".
а если есть в программе математические функции (возведение в степень, синус и т.п.), то для них подключается свой заголовок.
ты мне в личке давал тестовый текст, так там подключен был только stdlib.h, и никаких подключений для типов чисел там нет, и "флотский" тип там работал.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 13:22:24 
Держит паяльник хвостом

Карма: 14
Рейтинг сообщений: 99
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 986
Рейтинг сообщения: 0
Можно и не подключать. Но тогда только стандартные С++ типы.)
Вложение:
Скриншот 20-04-2024 131315.jpg [50.26 KiB]
Скачиваний: 22


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 13:53:27 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
а что для твоего компилятора является стандартными типами, если я вижу, что у тебя все равно подключен заголовок для стандартных типов?

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


Вернуться наверх
 
Важные нюансы подбора литиевых ХИТ для разработчиков

В многообразии литиевых батареек и аккумуляторов нет какого-то универсального или идеального варианта. Выбирая тот или иной вариант для питания устройства, разработчику приходится оперировать множеством параметров, используя наиболее оптимальное их сочетание для каждого приложения. Разберем параметры для различных приложений.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 15:06:47 
Держит паяльник хвостом

Карма: 14
Рейтинг сообщений: 99
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 986
Рейтинг сообщения: 0
Ну ты совсем невнимателен сегодня.) Отключен!


Вернуться наверх
 
Литиевые батарейки и аккумуляторы от мирового лидера EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. EVE является поставщиком аккумуляторных элементов круглого формата для электрических моделей автомобилей. Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 15:21:30 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
да, прозевал я "отключку".

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 22:40:32 
Держит паяльник хвостом

Карма: 14
Рейтинг сообщений: 99
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 986
Рейтинг сообщения: 0
Есть скетч на pro Mini Atmega168. Может он что подскажет? И второй вопрос: можно ли мою программу (которая на Atmega8) переделать на Atmega168?

Ну вы же знаете. что нет ничего невозможного.) Мега88/168/328 дальнейшее улучшение Мега8. Но это не значит что всё так просто.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Вс апр 21, 2024 07:27:14 
Открыл глаза

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
OKF, Для меня все эти МК непросто. А вы можете?))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Вс апр 21, 2024 09:01:38 
Держит паяльник хвостом

Карма: 14
Рейтинг сообщений: 99
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 986
Рейтинг сообщения: 0
Просто лень.) Там всё нужно переделывать. А лучше писать с нуля. Да я и брезгую в таком коде ковыряться, не в обиду автору.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пн апр 22, 2024 20:39:20 
Открыл глаза

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
Starichok51, Исправил везде "t=(uint8_t)(sin(1.57/descr1*i)*Amp)", t объявил uint8_t , ничего не изменилось.
descr1 = (uint16_t)(120 * exp(freq / 341.0)). Поэкспериментировал: 120 заменил на 190 чтобы срезать высокие частоты (столько не нужно), 341 заменил на 600, регулировка стала более плавной. Так можно делать?

Добавлено after 6 minutes 5 seconds:
И почти в самом конце регулятора, чуток не доходя до максимума, какой-то "всплеск" - частота подскакивает почти до максимума, амплитуда тоже. Как будто в резонанс входит, дальше кручу резистор- всё нормализуется и до конца всё нормально.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пн апр 22, 2024 22:46:52 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
да, так можно и даже нужно делать, чтобы управлять максимальной и минимальной частотой.
вернулся я домой из гостей и провел анализ в атмел студио 7.0.
никакого криминала в расчетах, приводящего к подобным сбоям в частоте и амплитуде я не нашел.
то есть, я совершенно не вижу причины скачка частоты и нарушения амплитуды.
поэтому я могу даже допустить появления резонанса механической системы.
но проверить каждое значение freq от 0 до 1023 - это практически не реально.
к тому же, из-за недостатка ОЗУ невозможно создать большие массивы, чтобы по массиву просмотреть все получаемые значения синуса.
посмотрел я экспоненту в массиве из 256 значений (4 варианта freq от 0 до 1023) - всё замечательно.
посмотрел для нескольких конкретных значений переменной descr1 в расчете кусочков синуса - тоже сбоев не нашел.
могу еще проверить через большие массивы в программе для компа, где ограничения размеров массивов практически нет.
если все таки есть такая причина, я думаю, что она должна проявиться и в программе на компе.

НО! нашел одно существенное упрощение в расчетах.
поскольку (1 - k) + k = 1, обе формулы расчета нарастания и спада синуса можно объединить смело. цикл получится такой:
//1 полуволна
for (uint16_t i = (descr1 * (1 - k)); i < (descr1 * (1 - k)) + descr1; i++) {
t=sin(1.5708 * i / descr1) * Amp; // считаем синус...
PWM1(t);
}
фактически это "сумма" обеих формул (нарастание + спад).
по прежнему descr1 * (1 - k) определяет начало синуса, а "длину" кусочка синуса определят величина descr1.
для второй полуволны точно эта же формула, только PWM2(t) вместо PWM1(t).

Добавлено after 3 minutes 53 seconds:
да, ещё я убедился, что в атмел студио можно не делать приведение типов данных, то есть, для t писать (uint8_t) не нужно, и для descr1 писать (uint16_t) тоже не нужно.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пн апр 22, 2024 22:51:42 
Друг Кота
Аватар пользователя

Карма: 28
Рейтинг сообщений: 1461
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 10896
Рейтинг сообщения: 0
Цитата:
for (uint16_t i = (descr1 * (1 - k)); i < (descr1 * (1 - k)) + descr1; i++) {
t=sin(1.5708 * i / descr1) * Amp; // считаем синус...
PWM1(t);
}


здесь прям просится выкинуть из синуса деление на descr1... хотя, может, мне это лишь кажется.

_________________
добавь radiokot.ru##.tablebg > tbody > tr:has(td>a[href*="?f=17"]) в адблок, сделай форум чище!
"Э-э-э-хей... растёт правосознание!"


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Вт апр 23, 2024 15:38:37 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 4
Медали: 1
Лучший человек Форума 2017 (1)
выкинуть деление на descr1 вполне можно, так как переменная цикла может быть с плавающей точкой. тогда получится так:
for (float i = 1 - k; i < 2 - k; i += 1.0 / descr1) {
t=sin(1.5708 * i) * Amp; // считаем синус...
PWM1(t);
}
но частота без операции деления при этом немного возрастет, и придется немного увеличить коэффициент в расчете экспоненты.
и еще можно добавить смело знак равенства:
for (float i = 1 - k; i <= 2 - k; i += 1.0 / descr1) {

Добавлено after 2 hours 25 minutes 22 seconds:
и еще у меня есть одно предложение.
при малых значениях freq там получается для descr1 по несколько одинаковых значений. да и вообще не нужно иметь 1024 значения частоты.
я предлагаю число ступенек частоты сократить до 64. это получается так:
int freq = ADCread(7) / 16;
а формула для descr1 получится такая:
descr1 = 190 * exp(freq / 35.0);
при этом частота будет изменяться в 6 раз.

Добавлено after 23 minutes 20 seconds:
Varlakotam, после сокращения числа ступеней частоты я ожидаю, что уйдет тот участок значений descr1, где наблюдается срыв в работе, а после этого участка восстанавливается нормальная работа.
я бы даже сократил число ступеней частоты до 16. я думаю, что этого вполне хватило бы.
тогда будут такие формулы:
int freq = ADCread(7) / 64;
descr1 = 190 * exp(freq / 8.0);
при этом частота будет изменяться в 6,5 раз.

Добавлено after 2 hours 52 minutes 50 seconds:
прозевал я тогда, когда сказал про (1 - k) + k = 1.
там относительно 1 должно быть симметрично.
for (uint16_t i =descr * (1 - k); i <= descr * (1 + k); i++) {
t = sin(1.5708 * i / descr1) * Amp;
PWM1(t);
}
или с плавающей точкой:
for (float i = 1 - k; i <= 1 + k; i += 1.0 / descr1) {
t = sin(1.5708 * i) * Amp;
PWM1(t);
}

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 09:52:52 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
Varlakotam, замени переменный резистор, который по частоте. к вычислениям претензий нет и быть не может.
там просто могут быть обрывы контакта с ползунком.

Добавлено after 1 hour 2 minutes 44 seconds:
еще поменяй местами провода на краях переменного резистора, тогда у тебя влево до упора будет минимальная частота и с поворотом частота будет расти.
и если там есть обрывы контакта, то сбой частоты должен быть в том же положении резистора.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 16:56:32 
Открыл глаза

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
Starichok51, спасибо! Резистор менял, они у меня даже не паянные, лет 40 лежали без дела. Со стороны железа всё проверено.
На выходных попробую формулы поменять.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 18:52:38 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
тогда такой срыв мне не понятен. как я уже сказал, к вычислениям (формулам) у меня претензий нет.
а как ты собираешься менять формулы?
сократить число ступенек частоты, как я предложил, ты не пробовал?

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 19:00:39 
Открыл глаза

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
Starichok51, именно это и собираюсь сделать- сократить число ступенек

Добавлено after 3 minutes 10 seconds:
поменял на for (float i = 1 - k; i <= 1 + k; i += 1.0 / descr1) {
t = sin(1.5708 * i) * Amp;
PWM1(t);колебания стали "сдвоенными"


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 19:34:54 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
что такое "сдвоенные"?

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 19:41:48 
Открыл глаза

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
Было: тык-тык-тык...)))), стало: тык-тык.., тык-тык..., тык-тык)))).

Добавлено after 3 minutes 57 seconds:
Если по аналогии с морзянкой Было т - - - , стало и .., т.е .. .. .. ..


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Ср апр 24, 2024 20:02:45 
Модератор
Аватар пользователя

Карма: 153
Рейтинг сообщений: 2819
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18146
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
ладно, подождем сокращение числа ступенек.

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


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

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


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

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


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

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


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