Например TDA7294

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





Текущее время: Пт сен 27, 2024 21:37:39

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


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



Начать новую тему Ответить на тему  [ Сообщений: 121 ]    , , 3, , , ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пт апр 19, 2024 09:41:13 
Модератор
Аватар пользователя

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

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


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

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
Starichok51, с плавающей точкой регулировка вернулась к первоначальному состоянию: регулировка появляется с среднего положения подстроечника. Вчера не обратил внимания- с обоими вариантами появились две точки где происходит "срыв" колебаний, частота резко увеличивается, как будто в резонанс входит. Чуток увеличиваю, частота нормализуется до следующей точки. Первая примерно на трети, вторая две трети. Это с экспонентой. С гиперболой (первый вариант) срыв один, примерно на 3/4.


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

Карма: 153
Рейтинг сообщений: 2832
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18209
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
мне не понятно такое поведение, не вижу причин таких провалов в вычислении переменной descr1.
и уже тем более мне не понятна эта "мертвая зона" до среднего положения.
с гиперболой целочисленные вычисления, и причины срыва вообще не должно быть.
сейчас у меня нет возможности проверить формулы в отладчике - я в гостях у дочки. вернусь домой в понедельник, проверю расчеты в Студии.
я на Си для МК не программирую, поэтому не знаю всех деталей программирования на Си.
если как на компе, то нужно приведение типов делать.
по аналогии с компом следовало бы записать
descr1 = (uint16_t)(120 * exp(freq / 341.0))
чтобы плавающую точку привести к целому числу.
попробуй этот вариант приведения типов чисел.

Добавлено after 1 hour 33 minutes 49 seconds:
и для вычислений синуса тоже следовало бы делать приведение типов данных:
t=(uint8_t)(sin(1.57/descr1*i)*Amp);
и так для всех формул вычисления кусочков синуса.

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


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

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

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

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
descr1 = (uint16_t)(120 * exp(freq / 341.0)) Так-же только с середины начинается заметная регулировка. Срывов нет. Примерно на 3/4 максимальная частота, дальше завал и опять увеличение до максимальной частоты.


Вернуться наверх
 
Материалы вебинара «Пленочные конденсаторы Hongfa для источников питания и силовой электроники»

Опубликованы материалы вебинара, посвященного пленочным конденсаторам компании Hongfa, на котором была представлена текущая линейка и модельный ряд продукции этого направления, включая новые, недавно вышедшие серии. На вебинаре были приведены актуальные примеры применения пленочных конденсаторов Hongfa в источниках питания, зарядных станциях для электротранспорта, преобразователях частоты, фотоэлектрических преобразователях и ветрогенераторах.

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

Карма: 153
Рейтинг сообщений: 2832
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18209
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
чертовщина... ничего пока не понимаю...
на следующей неделе сам буду разбираться с этими вычислениями в Студии.
еще один момент.
переменную t нужно было объявлять uint8_t, а не uint16_t, так как ШИМ однобайтовый.
тут может быть сбой не в вычислении descr1, а в том, что двухбайтовое число обрезается до однобайтового в функциях PWM1(uint8_t val) и PWM2(uint8_t val).
и при этом обрезании в регистры таймера попадает не то, что нужно.
хотя, значение t не должно превышать 255, и это обрезание не должно повлиять на работу ШИМ. а вдруг...

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


Вернуться наверх
 
Помехоподавляющие пленочные конденсаторы Hongfa для бытовых и промышленных сетей

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пт апр 19, 2024 15:50:24 
Электрический кот

Карма: 14
Рейтинг сообщений: 103
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 1020
Рейтинг сообщения: 0
я на Си для МК не программирую, поэтому не знаю всех деталей программирования на Си.
если как на компе, то нужно приведение типов делать.
по аналогии с компом следовало бы записать
descr1 = (uint16_t)(120 * exp(freq / 341.0))
чтобы плавающую точку привести к целому числу.
попробуй этот вариант приведения типов чисел.

Чёйта. Приведение не требуется, т.к. автоматом приводится к типу результата.
Правила для всех одни - хоть для ПК, хоть для 8 бит МК. Не так ли?


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

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

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пт апр 19, 2024 16:24:18 
Электрический кот

Карма: 14
Рейтинг сообщений: 103
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 1020
Рейтинг сообщения: 0
Starichok51, компилятор какой?


Последний раз редактировалось OKF Пт апр 19, 2024 16:34:56, всего редактировалось 1 раз.

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

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
у меня Atmel Studio 7

Добавлено after 57 seconds:
варнингов не выдал


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пт апр 19, 2024 18:14:06 
Вымогатель припоя

Карма: 6
Рейтинг сообщений: 180
Зарегистрирован: Ср янв 06, 2010 10:01:46
Сообщений: 567
Рейтинг сообщения: 0
Varlakotam писал(а):
варнингов не выдал
это для меня очень странно, должен по идее ругацца на несовпадение типов. Для передачи в функцию грузим в стек двухбайтовое число, а в самой функции извлекаем однобайтовое, так как для ее параметра указан тип uint8_t. Я уже про это писал. Можно попробовать t определить как uint8_t, может проканает :)
Может, настройками компилятора задушили предупреждения? Я со студией очень мало работал, не знаю, где это посмотреть :dont_know:


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

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
metan, То что вы пишете для меня странные колдунские заклинания. Единственное понял про компилятор- нет я его не настраивал, ничего не трогал. Всё по умолчанию


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пт апр 19, 2024 18:27:06 
Вымогатель припоя

Карма: 6
Рейтинг сообщений: 180
Зарегистрирован: Ср янв 06, 2010 10:01:46
Сообщений: 567
Рейтинг сообщения: 0
Varlakotam писал(а):
странные колдунские заклинания
извиняюсь :)
можно попробовать вот эту строчку
Код:
   uint16_t descr1, descr2, Amp, t;


заменить на
Код:
   uint16_t descr1, descr2, Amp;
   uint8_t t;

этим самым мы скажем, что число однобайтовое, и передавать нужно именно такой тип. Может, что изменится. Но это не точно :)


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

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

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Пт апр 19, 2024 19:59:43 
Электрический кот

Карма: 14
Рейтинг сообщений: 103
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 1020
Рейтинг сообщения: 0
правила разные, так как я уже много программ написал для ПК. там без приведения типов данных сразу выскакивают предупреждение (warning).

Вложение:
Скриншот 19-04-2024 195544.jpg [50.74 KiB]
Скачиваний: 28


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

Карма: 153
Рейтинг сообщений: 2832
Зарегистрирован: Сб авг 14, 2010 15:05:51
Сообщений: 18209
Откуда: г. Озерск, Челябинская обл.
Рейтинг сообщения: 0
Медали: 1
Лучший человек Форума 2017 (1)
OKF, что это было?)
у меня для компа в С++ нет таких объявлений типов, как у тебя.
у меня для беззнаковых есть byte (8 бит), word (16 бит), uint (32 бит).

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


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

Карма: 14
Рейтинг сообщений: 103
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 1020
Рейтинг сообщения: 0
Это было то, где должны были быть предупреждения. По твоему.
Потому и спрашивал, какой компилятор.


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

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

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Atmega8 регулировка частоты и амплитуды
СообщениеДобавлено: Сб апр 20, 2024 06:09:29 
Электрический кот

Карма: 14
Рейтинг сообщений: 103
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 1020
Рейтинг сообщения: 0
Я пытаюсь показать что правила С/С++ одни для всех. А варнинги - это предупреждения для тебя, не ошибся ли ты и включаются/выключаются в опциях компилятора. Потому и спрашивал чем ты компилируешь на ПК.
правила разные, так как я уже много программ написал для ПК. там без приведения типов данных сразу выскакивают предупреждение (warning).
для МК, может, это приведение делается автоматически, но я об этом не знаю.


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

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

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


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

Зарегистрирован: Сб фев 02, 2019 17:15:10
Сообщений: 52
Рейтинг сообщения: 0
Есть скетч на pro Mini Atmega168. Может он что подскажет? И второй вопрос: можно ли мою программу (которая на Atmega8) переделать на Atmega168?


Вложения:
final.rar [3.52 KiB]
Скачиваний: 32
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 121 ]    , , 3, , , ,  

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


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

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


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

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


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