ГА71 - Простой универсальный функциональный генератор

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Аватара пользователя
Andrey_B
Электрический кот
Сообщения: 1096
Зарегистрирован: Пт апр 09, 2010 16:06:38
Откуда: Тула

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Andrey_B »

С алиэкспрес попался интересный экземпляр чипа SI5351, у которого по диапазону были пораженные точки (11МГц, 31.5МГц и много других частот), на которых генерация хаотично срывалась на 2-50мс с периодичность 10-200Гц. Думал проблема в коде управления, но оказалось в схеме тактирования. Так и не получилось по простому ей тактирование организовать от генератора МК, пришлось поставить отдельный кварц (ножки 2 и 3).

Ну и пользуясь случаем, обновил прошивку.

В ver1.4 : -------------------------------------------------------------
1. Исправлена ошибка на стартовом экране.
2. Коррекция кода управления si5351.
Вложения
FM_GA71_v14.ZIP
(103 КБ) 581 скачивание
Аватара пользователя
Tvics
Нашел транзистор. Понюхал.
Сообщения: 175
Зарегистрирован: Вс май 20, 2018 03:47:25
Откуда: Иркутская обл.

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Tvics »

Кварц на SI5351 как я понимаю ставить на 27 мгц?
Аватара пользователя
Andrey_B
Электрический кот
Сообщения: 1096
Зарегистрирован: Пт апр 09, 2010 16:06:38
Откуда: Тула

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Andrey_B »

Tvics, нет. 25 МГц.
coba57
Первый раз сказал Мяу!
Сообщения: 29
Зарегистрирован: Ср янв 07, 2015 00:20:42
Откуда: Москва

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение coba57 »

Добрый день. Залил прошивку v1.4, поставил кварц 25мГц на Si5351, пропал пункт меню высокочастотные выходы. Кварц не заводится? С прежней схемой тактирования работало.
И еще, программатор не видит МК (ST-LINK/V2). Через USB-бутлодер заливается нормально, в чем может быть причина.
С уважением Андрей.
Аватара пользователя
Andrey_B
Электрический кот
Сообщения: 1096
Зарегистрирован: Пт апр 09, 2010 16:06:38
Откуда: Тула

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Andrey_B »

[uquote="coba57",url="/forum/viewtopic.php?p=3743957#p3743957"]Кварц не заводится?[/uquote]
Скорее всего. Нужно подобрать конденсаторы от выводов кварца на землю. Вот апнота на эту тему :
https://www.silabs.com/documents/public ... /AN551.pdf


[uquote="coba57",url="/forum/viewtopic.php?p=3743957#p3743957"]И еще, программатор не видит МК (ST-LINK/V2). Через USB-бутлодер заливается нормально, в чем может быть причина.[/uquote]
Как ни странно, это может быть связано с перепайкой кварца на SI5351. При программировании через ST-LINK задействуется нога PA14 мк, а это как раз линия SDA I2C шины, которая подходит к SI5351. Может посадили соплю на ее ногах ? Или сама SI5351 при остановленном тактовом генераторе блокирует I2C.
Еще может быть постоянно замкнут контакт энкодера S3 (линия SWDIO).
Ну или просто ошибка монтажа или КЗ/непропай цепей, используемых ST-LINK, или виновата настройка софта программатора.
coba57
Первый раз сказал Мяу!
Сообщения: 29
Зарегистрирован: Ср янв 07, 2015 00:20:42
Откуда: Москва

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение coba57 »

Добрый вечер. Спасибо за помощь. Вышла из строя Si5351, заменил все работает. Почему вышла из строя не понятно.
Программатор не подключал, уже поздно. Еще раз спасибо. Андрей.
Stan47
Мучитель микросхем
Сообщения: 491
Зарегистрирован: Ср ноя 08, 2017 19:56:39
Откуда: СПб

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Stan47 »

Вопрос из нескромных... А автор на заказ изделие делает?
Звание - сила
Аватара пользователя
Andrey_B
Электрический кот
Сообщения: 1096
Зарегистрирован: Пт апр 09, 2010 16:06:38
Откуда: Тула

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Andrey_B »

Stan47, пока нет, но планирую заказать партию печатных плат.
Stan47
Мучитель микросхем
Сообщения: 491
Зарегистрирован: Ср ноя 08, 2017 19:56:39
Откуда: СПб

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Stan47 »

Это обнадеживает... 8)
Звание - сила
skoz
Родился
Сообщения: 10
Зарегистрирован: Ср дек 07, 2016 10:03:26

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение skoz »

Вот тоже собрал генератор, спасибо автору. Работает замечательно.
Изображение Изображение
Шариков
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Вт янв 13, 2009 06:53:37

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Шариков »

Повторил, всё заработало, памятку как пользоваться пока на телефоне , прошивал через USB и с кварцем на 8мгц.
Скажем так это прибор для человека который думает, а не для того кто гоняется за шумами, и РРМ, и особо ограничен с весом оборудования для ремонта.
А подсказка, проблему с шаговым приводом вычислить элементарно.
— Позвольте, а что вы будетее делать с трупами кошек?
— На польты пойдут!
lalov
Родился
Сообщения: 18
Зарегистрирован: Вт янв 15, 2013 11:48:32
Откуда: Никополь

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение lalov »

Благодарю, все собрал без проволочек, все отлично работает. Не знаю кому как, но мне управление очень даже удобным показалось и наглядным.
1111.jpg
(212.67 КБ) 621 скачивание
122.jpg
(227.02 КБ) 553 скачивания
изображение_viber_2020-02-09_00-27-40.jpg
(224.73 КБ) 552 скачивания
Шариков
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Вт янв 13, 2009 06:53:37

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Шариков »

Маленькая доработка.
Платка зарядки, Li аккумулятор и кнопка включения, добавляют удобства в использовании.
Вложения
IMG_2672.gif
(170.94 КБ) 635 скачиваний
— Позвольте, а что вы будетее делать с трупами кошек?
— На польты пойдут!
Аватара пользователя
вадим1964
Опытный кот
Сообщения: 800
Зарегистрирован: Чт окт 08, 2015 05:03:03
Откуда: заМКАДыш

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение вадим1964 »

тоже отмечусь,поселил его на кроссплату с ВNC разъемами
мне достаточно 3-х выхолов

Изображение
электроника-наука о контактах,радиотехника-наука о "земле".
"Копаю" хорошо,лопата импортная)
Шариков
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Вт янв 13, 2009 06:53:37

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Шариков »

[uquote="вадим1964",url="/forum/viewtopic.php?p=3795454#p3795454"]тоже отмечусь,поселил его на кросс плату с ВNC разъемами
мне достаточно 3-х выходов

Весьма красивое решение.
— Позвольте, а что вы будетее делать с трупами кошек?
— На польты пойдут!
Аватара пользователя
вадим1964
Опытный кот
Сообщения: 800
Зарегистрирован: Чт окт 08, 2015 05:03:03
Откуда: заМКАДыш

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение вадим1964 »

Весьма красивое решение.[/uquote]

:beer: :beer:
электроника-наука о контактах,радиотехника-наука о "земле".
"Копаю" хорошо,лопата импортная)
Шариков
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Вт янв 13, 2009 06:53:37

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Шариков »

На завтра приготовил кусок полистирола, буду к прибору BNC разъёмы прикошачивать.

Andrey_B
Автор огромное спасибо за прибор!!!!!
— Позвольте, а что вы будетее делать с трупами кошек?
— На польты пойдут!
sslobodyan
Родился
Сообщения: 9
Зарегистрирован: Чт авг 12, 2010 00:55:38

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение sslobodyan »

Andrey_B, а поделитесь плиз исходником либо описанием быстрого цифрового синтеза? Или ткните носом где почитать.
Ну и хотелка (а вдруг сбудется?) - на отдельной страничке экрана строить АЧХ, можно даже в попугаях. Здорово поможет при настройке-постройке всяческих гитарных искажателей, а также исследованиях УЗ-излучателей. Раньше сам писал такую штуку на DSO-203, но какой-то редиске мой ослик сильно понадобился :( Большого ослика (DS1054) с собой не потаскаешь, а Ваш генератор - маленький но очень удачный приборчик. Спасибо.
Аватара пользователя
Andrey_B
Электрический кот
Сообщения: 1096
Зарегистрирован: Пт апр 09, 2010 16:06:38
Откуда: Тула

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение Andrey_B »

[uquote="sslobodyan",url="/forum/viewtopic.php?p=3803470#p3803470"]Andrey_B, а поделитесь плиз исходником либо описанием быстрого цифрового синтеза?[/uquote]
Алгоритм общеизвестный DDS, в сети легко находятся множество описаний, http://www.rotr.info/electronics/mcu/st ... le_sin.htm. Конкретная реализация от Neekeetos в прицепе. Еще стоит ознакомится с исходниками ncp1400 вот тут https://www.radiokot.ru/forum/viewtopic ... 2&t=121330. Если интересует именно реализация различных вариантов модуляции, то вот кусок кода из ГА71:
Спойлер

Код: Выделить всё

	switch(B_Komb)
	{
		case 1: // Б = А + Б
			while(Ii < Jj)
			{
				Mm = A_Table[phase_1>>22];
				dac_buf[Ii++] = (((Mm+B_Table[phase_2>>22])>>1)<<16)|Mm;
				phase_1 += freq_1;
				phase_2 += freq_2;
			}
			break;
		case 2: // Б = А * Б
			while(Ii < Jj)
			{
				Mm = A_Table[phase_1>>22];
				dac_buf[Ii++] = ((Mm*B_Table[phase_2>>22])&0xFFFF0000)|Mm;
				phase_1 += freq_1;
				phase_2 += freq_2;
			}
			break;
		case 3: // Б = А * -Б
			while(Ii < Jj)
			{
				Mm = A_Table[phase_1>>22];
				dac_buf[Ii++] = (((((int32_t)B_Table[phase_2>>22]-(B_M_VolHalf<<1))*((~Mm)&0xFFFF))+((uint32_t)B_M_VolHalf<<17))&0xFFFF0000)|Mm;
				phase_1 += freq_1;
				phase_2 += freq_2;
			}
			break;
		case 4: // Б = А ам Б
			while(Ii < Jj)
			{
				Mm = A_Table[phase_1>>22];
				dac_buf[Ii++] = (((((int32_t)B_Table[phase_2>>22]-B_M_VolHalf)*((~Mm)&0xFFFF))+((uint32_t)B_M_VolHalf<<16))&0xFFFF0000)|Mm;
				phase_1 += freq_1;
				phase_2 += freq_2;
			}
			break;
		case 5: // Б = Б ам А
			while(Ii < Jj)
			{
				Mm = A_Table[phase_1>>22];
				dac_buf[Ii++] = (((((int32_t)Mm-A_M_VolHalf)*B_Table[phase_2>>22])+((uint32_t)A_M_VolHalf<<16))&0xFFFF0000)|Mm;
				phase_1 += freq_1;
				phase_2 += freq_2;
			}
			break;
		case 6: // Б = А чм Б
			while(Ii < Jj)
			{
				Mm = A_Table[phase_1>>22];
				dac_buf[Ii++] = ((uint32_t)B_Table[phase_2>>22]<<16)|Mm;
				phase_1 += freq_1;
				phase_2 += (freq_2 +(uint32_t)(((uint64_t)(freq_2 -(freq_2>>3))*((~Mm)&0xFFFF))>>13))>>3; // (f+((7*f*(-Mm))/65536))/8
			}
			break;
		default: //  Б = Б, шум
			while(Ii < Jj)
			{
				dac_buf[Ii++] = ((uint32_t)B_Table[phase_2>>22]<<16)|A_Table[phase_1>>22];
				phase_1 += freq_1;
				phase_2 += freq_2;
			}
			break;
	}
[uquote="sslobodyan",url="/forum/viewtopic.php?p=3803470#p3803470"]Ну и хотелка (а вдруг сбудется?) - на отдельной страничке экрана строить АЧХ, можно даже в попугаях.[/uquote]
Так-то в планах есть что-то такое реализовать, но беда сейчас со временем.
Вложения
src_dds.zip
(4.3 КБ) 402 скачивания
Аватара пользователя
вадим1964
Опытный кот
Сообщения: 800
Зарегистрирован: Чт окт 08, 2015 05:03:03
Откуда: заМКАДыш

Re: ГА71 - Простой универсальный функциональный генератор

Сообщение вадим1964 »

для желающих повторить

Изображение

установлено все,кроме STM SI OY

в личку
электроника-наука о контактах,радиотехника-наука о "земле".
"Копаю" хорошо,лопата импортная)
Ответить

Вернуться в «Статьи»