Например TDA7294

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





Текущее время: Вс июл 20, 2025 16:25:56

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


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



Начать новую тему Ответить на тему  [ Сообщений: 106 ]    , , 3, , ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Чт мар 02, 2017 13:50:09 
Вымогатель припоя
Аватар пользователя

Карма: 12
Рейтинг сообщений: 95
Зарегистрирован: Вс сен 08, 2013 21:36:22
Сообщений: 699
Откуда: 27.200 Мгц
Рейтинг сообщения: -1
Доброго времени суток, многоувожаемые КОТы. Прикупил я плату dds генератора ad9833 , есть arduino uno. И как я не бился с ентой arduino немогу собрать код (скетч) каму как нравиться. Есть готовые для nano, но почемуто даже при установке в программе nano, а не uno, программа ардуинская выдаёт ашибку. Как быть подскажите пожалуста, а то я что то не вьеду никак, а генератор для приёмника на 7.2мгц надо.

_________________
Пока сам себя не пнёшь с места не сдвинешься


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Сб мар 04, 2017 08:29:30 
Вымогатель припоя
Аватар пользователя

Карма: 12
Рейтинг сообщений: 95
Зарегистрирован: Вс сен 08, 2013 21:36:22
Сообщений: 699
Откуда: 27.200 Мгц
Рейтинг сообщения: 0
Вот код который непроходит проверку в ардуиновской проге, может кто знает что не так?


Вложения:
скетч_.txt [3.69 KiB]
Скачиваний: 584

_________________
Пока сам себя не пнёшь с места не сдвинешься
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн мар 13, 2017 09:49:25 
Родился

Зарегистрирован: Пн мар 13, 2017 09:39:10
Сообщений: 1
Рейтинг сообщения: 0
Всем здравствуйте! Есть проблема с микросхемой AD9833. Программирую ее с помощью STM32F030K6t6. Проверьте пожалуйста код, может найдете какие то ошибки. А то уже месяц как не могу ее пустить. Спасибо!

Код отправки по SPI:
SPI_Config();
AD9833_reset();
delay(400);




GPIO_ResetBits(GPIOA,GPIO_Pin_3);
delay(800);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET){}
SPI_I2S_SendData(0x21);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
SPI_I2S_SendData(0x00);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
GPIO_SetBits(GPIOA,GPIO_Pin_3);


GPIO_ResetBits(GPIOA,GPIO_Pin_3);
delay(800);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET){}
SPI_I2S_SendData(0x4f);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
SPI_I2S_SendData(0x34);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
GPIO_SetBits(GPIOA,GPIO_Pin_3);






GPIO_ResetBits(GPIOA,GPIO_Pin_3);
delay(800);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET){}
SPI_I2S_SendData(0x40);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
SPI_I2S_SendData(0x00);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
GPIO_SetBits(GPIOA,GPIO_Pin_3);






GPIO_ResetBits(GPIOA,GPIO_Pin_3);
delay(800);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET){}
SPI_I2S_SendData(0xc0);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
SPI_I2S_SendData(0x00);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
GPIO_SetBits(GPIOA,GPIO_Pin_3);







GPIO_ResetBits(GPIOA,GPIO_Pin_3);
delay(800);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET){}
SPI_I2S_SendData(0x20);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
SPI_I2S_SendData(0x00);

while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_BSY) == SET);
GPIO_SetBits(GPIOA,GPIO_Pin_3);



while(1)
{
}

Инициализация SPI:

static void SPI_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
SPI_InitTypeDef SPI_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 ;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA, &GPIO_InitStructure);


GPIO_PinAFConfig(GPIOB, GPIO_Pin_3, GPIO_AF_0);
GPIO_PinAFConfig(GPIOB, GPIO_Pin_5, GPIO_AF_0);

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_Level_3;


/* SPI SCK pin configuration */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
GPIO_Init(GPIOB, &GPIO_InitStructure);


/* SPI MOSi pin configuration */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
GPIO_Init(GPIOB, &GPIO_InitStructure);



/* SPI configuration ----------*/
SPI_I2S_DeInit(SPI1);


SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
SPI_InitStructure.SPI_Direction = SPI_Direction_1Line_Tx;
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;
SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;
SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;
SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_64;
SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;
SPI_NSSInternalSoftwareConfig(SPI1, SPI_NSSInternalSoft_Reset);






SPI_Init(SPI1, &SPI_InitStructure);
SPI_Cmd(SPI1, ENABLE);



}

Подпрограмма отправки данных:

void SPI_I2S_SendData(uint16_t Data)
{
SPI1->DR = (uint16_t)Data;
}

Кто может, скиньте ее обвязку, может там ошибка. Спасибо большое!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Чт май 11, 2017 20:44:57 
Родился

Зарегистрирован: Чт май 17, 2012 21:12:33
Сообщений: 6
Рейтинг сообщения: 0
Всем привет. Хочу собрать на AD9833 и atmega функциональный генератор с возможностью цифровой/программной регулировки амплитуды выходного сигнала. В обсуждаемом устройстве это все реализовано, единственно, мне не нужно два отдельных выхода, а хотелось бы один выход на котором в зависимости режима выводились синус/треугольник/меандр. Так же чтобы границы амплитуды меандра были от 0 до 2в.

Не подскажите можно ли это реализовать на основе представленной схемы, и какие модификации нужно внести?


Вернуться наверх
 
Выбираем индустриальные и медицинские источники питания MEAN WELL в открытом исполнении

Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пт июн 09, 2017 19:58:14 
Опытный кот
Аватар пользователя

Карма: 31
Рейтинг сообщений: 150
Зарегистрирован: Пн ноя 02, 2009 18:00:05
Сообщений: 793
Откуда: Украина Николаев
Рейтинг сообщения: 0
Цитата:
в режимах sine, triangle и square d строка частоты отображается в виде X.XXX. Hz, т.е. нет последних 3 цифр. Откатился на предыдущую версию, там всё нормально.
Цитата:
В режиме OUT D не отображаются десятые и сотые напряжения на выходе, на их месте стоит буква V (вер.22), в версии 2.0 все нормально, но нет PWM
Таки да, есть такая ошибка, спасибо dm73, он настоял в проверке кода. Исправления внизу.


Вложения:
Комментарий к файлу: исправленная версия AD9833_v22
мой проект DDS генератор на AD9833_22.zip [42.04 KiB]
Скачиваний: 1012
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Ср июн 14, 2017 18:34:53 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Добрый день.
На последней прошивке вообще ничего не работает (экран не светится, на ножках процессора тишина)


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Сб июн 17, 2017 23:14:57 
Первый раз сказал Мяу!

Зарегистрирован: Ср фев 29, 2012 08:11:07
Сообщений: 23
Откуда: Minsk
Рейтинг сообщения: 0
А на других прошивках работало? Я прошил 2 прибора последней прошивкой - все работает


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Вс июн 18, 2017 06:52:40 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
На старой прошивка работает.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн июн 26, 2017 12:50:21 
Родился

Зарегистрирован: Вс май 08, 2016 16:39:47
Сообщений: 1
Откуда: Днепр, Украина
Рейтинг сообщения: 0
[quote]Таки да, есть такая ошибка, спасибо dm73, он настоял в проверке кода. Исправления внизу.

В последней прошивке в режиме PWM теперь присутствуют все знаки частоты, но выше 10 кГц все равно выставить не получается.

Добавлено after 1 hour 44 minutes 55 seconds:
И еще можно ввести регулировку контрастности дисплея, а то при значении 70 малый угол обзора получается (для себя подобрал 60 - идеально). Спасибо!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн июн 26, 2017 21:11:28 
Опытный кот
Аватар пользователя

Карма: 31
Рейтинг сообщений: 150
Зарегистрирован: Пн ноя 02, 2009 18:00:05
Сообщений: 793
Откуда: Украина Николаев
Рейтинг сообщения: 0
10 кГц в режиме PWM - это максимум, что можно было выжать (ну почти), не трогая основной алгоритм, ведь этот режим дописывался позже. Надо было, чтобы не возникали вопросы, всё-таки убрать незначащие нули. Контрастность и яркость дисплея регулируется из меню настройки, в которое можно войти долгим нажатием на кнопку.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пт июл 07, 2017 18:54:11 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Добрый вечер. Залил я последнюю прошивку (было русское название в пути поэтому не хотела заливаться). Захожу в меню настройки , выставляю контрастность и яркость, выхожу, выключаю питание. Включаю а все настройки пришли к начальным. Он что не запоминает уровни? Спасибо.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пт июл 07, 2017 19:59:06 
Опытный кот
Аватар пользователя

Карма: 31
Рейтинг сообщений: 150
Зарегистрирован: Пн ноя 02, 2009 18:00:05
Сообщений: 793
Откуда: Украина Николаев
Рейтинг сообщения: 1
Сохранение настроек в данной конструкции происходит по прерыванию от аналогового компаратора после выключения питания за счёт медленного разряда накопленной ёмкости входного конденсатора на входе по питанию. Поэтому С7 номиналом 1000мкФ нельзя занижать, проверьте его.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пт июл 07, 2017 21:00:08 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Ха я собрал только то что касается процессора а остальное еще не паял. Спасибо .


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн июл 10, 2017 19:21:25 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Дособирал. Прошивка последняя. Меандр есть а синуса и треугольника нет (на AD 9833 уже нет). Синус появился а вот через ключ не проходит.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Чт июл 13, 2017 17:26:33 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Соплю убрал. Все заработало. Спасибо автору.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Вс июл 16, 2017 19:22:38 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Ну и похвастаться.


Вложения:
Генератор.jpg [247.82 KiB]
Скачиваний: 1822
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн янв 08, 2018 18:33:45 
Мучитель микросхем

Зарегистрирован: Вс май 03, 2009 21:47:44
Сообщений: 416
Откуда: Минск
Рейтинг сообщения: 0
Нормально так получилось,ох морда очень знакома.
Как аппарат по работе?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн янв 08, 2018 19:31:07 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 38
Зарегистрирован: Пт ноя 26, 2010 09:59:12
Сообщений: 359
Откуда: Мариуполь Украина
Рейтинг сообщения: 0
Делал ради того чтобы он был. Пользуюсь редко. Меню немного замороченное(если редко пользоваться) Морда аля Леонид Иванович


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Сб фев 17, 2018 11:42:10 
Первый раз сказал Мяу!

Зарегистрирован: Ср ноя 27, 2013 20:56:03
Сообщений: 24
Откуда: Екатеринбург
Рейтинг сообщения: 0
Уважаемый grott.

Заинтересовал ваш проект. Хочу его собрать, но мобильную версию с питанием от аккумулятора.
В связи с этим есть к вам ,большая просьба доработать прошивку согласно приложенной схеме, если вас не затруднит и есть возможность.
Доработки:
1.Вывести на дисплей индикатор степени зарядки аккумулятора.
2.Включение длительным нажатием кнопки S1.
3.Выключение длительным нажатием кнопки S1.
4.При разрядке аккумулятора до 3.0 вольт отключать прибор и не давать его включать, пока напряжение на аккумуляторе не увеличится (защита от переразряда).
Схему питания от аккумулятора позаимствовал из проекта viewtopic.php?f=59&t=134144 V3.0


Вложения:
DDS_4.zip [27.02 KiB]
Скачиваний: 644
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: DDS генератор на AD9833
СообщениеДобавлено: Пн апр 02, 2018 08:28:07 
Нашел транзистор. Понюхал.

Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Чт дек 31, 2015 15:12:54
Сообщений: 170
Рейтинг сообщения: 0
Собрал прибор, настройка не потребовалась, заработал сразу. Спасибо автору за подробные пояснения.
Очень простое и удобное управление, но у меня получилось бяка с энкодером, плюс в лево, минус в право.
Было бы здорово иметь пунктик в меню для выбора направления под разные энкодеры.


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

Часовой пояс: 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