Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
- VeryLazyCat
- Опытный кот
- Сообщения: 832
- Зарегистрирован: Пн май 17, 2010 22:21:01
- Откуда: Madagaskar
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
oled lcd 1.3" могут быть с разными контроллерами, например с SH1106,
почитайте вот эту страничку http://badcircuits.ru/spi-chinese-oled-display.html
почитайте вот эту страничку http://badcircuits.ru/spi-chinese-oled-display.html
-
mixa232323
- Прорезались зубы
- Сообщения: 217
- Зарегистрирован: Вт окт 01, 2013 01:04:31
- Откуда: Гомель
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
WiseLord
На гитхабе что-то новое. Можно поинтересоваться что именно и на какой стадии?
На гитхабе что-то новое. Можно поинтересоваться что именно и на какой стадии?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Логи смотрите.
Вроде пока разобрался с ADC и DMA. На следующих выходных в свободное время постараюсь спектроанализатор реализовать. Уже не на 32 полосы, как ранее, а на 128.
Вроде пока разобрался с ADC и DMA. На следующих выходных в свободное время постараюсь спектроанализатор реализовать. Уже не на 32 полосы, как ранее, а на 128.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Вроде как реализовал (сигнал пока не подавал) спектронализатор на stm32, в тестовом режиме. Пока на 32 полосы, код портирован из проекта на ATmega32.
Если кому не лень, можно проверить.
Сейчас немножко стоит вопрос, как подавать звуковой сигнал на АЦП. В ATmega32 было проще - там 5В питание, при котором неплохо работают ОУ (особенно rail-2-rail). А вот с 3.3В питанием в случае STM32 - даже толком и не знаю, как лучше сделать.
Если кому не лень, можно проверить.
Сейчас немножко стоит вопрос, как подавать звуковой сигнал на АЦП. В ATmega32 было проще - там 5В питание, при котором неплохо работают ОУ (особенно rail-2-rail). А вот с 3.3В питанием в случае STM32 - даже толком и не знаю, как лучше сделать.
-
mixa232323
- Прорезались зубы
- Сообщения: 217
- Зарегистрирован: Вт окт 01, 2013 01:04:31
- Откуда: Гомель
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Сигнал усилить надо?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Вроде того. Не столько даже усилить, сколько обеспечить его в диапазоне от 0 до 3.3В, с серединой (уровень тишины) на 1.65В. Так удастся максимально полно задействовать АЦП.
- Albert_V
- Друг Кота
- Сообщения: 4119
- Зарегистрирован: Чт сен 12, 2013 00:54:12
- Откуда: ЗаМКАДье. Там, где ЦУП
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Поставьте, к примеру, MCP6002T-I/SN (цена около 20 руб.).
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Да, пожалуй. В варианте на ATmega32 ставил MCP602 (работает при питании от 2.7В), сюда тоже подошёл бы, но MCP6002 даже с 1.8В работает, так что явно будет поинтереснее.
- Albert_V
- Друг Кота
- Сообщения: 4119
- Зарегистрирован: Чт сен 12, 2013 00:54:12
- Откуда: ЗаМКАДье. Там, где ЦУП
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Вообще, было бы "красиво" поставить ещё цифровой потенциометр и регулировать усиление ОУ, автоматически выставляя уровень сигнала "под полный размах".
Но, это дороже...
Но, это дороже...
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Ну, для чего-то подобного служит настройка предусиления по входам.
Но, вообще, в некоторой мере, подобное сделать можно. На AVR АЦП используется в 8бит режиме, для скорости расчётов. Поэтому приходится обеспечивать вполне определённый размах сигнала на входе.
В STM32 же АЦП 12-битный. То есть, вполне можно было бы программно слабый сигнал (амплитудой до 0.1В) обрабатывать в пределах 8 бит, а более сильный (амплитудой до 1.6 В) масштабировать до тех же 8 бит (это вплоть до 16 раз по амплитуде). В итоге и сильный, и слабый сигналы выглядели бы более или менее одинаково на спектре.
Но все это лишь теория и требует проверки на живом сигнале.
Но, вообще, в некоторой мере, подобное сделать можно. На AVR АЦП используется в 8бит режиме, для скорости расчётов. Поэтому приходится обеспечивать вполне определённый размах сигнала на входе.
В STM32 же АЦП 12-битный. То есть, вполне можно было бы программно слабый сигнал (амплитудой до 0.1В) обрабатывать в пределах 8 бит, а более сильный (амплитудой до 1.6 В) масштабировать до тех же 8 бит (это вплоть до 16 раз по амплитуде). В итоге и сильный, и слабый сигналы выглядели бы более или менее одинаково на спектре.
Но все это лишь теория и требует проверки на живом сигнале.
-
mixa232323
- Прорезались зубы
- Сообщения: 217
- Зарегистрирован: Вт окт 01, 2013 01:04:31
- Откуда: Гомель
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
[uquote="WiseLord",url="/forum/viewtopic.php?p=3429632#p3429632"]Ну, для чего-то подобного служит настройка предусиления по входам.
Но, вообще, в некоторой мере, подобное сделать можно. На AVR АЦП используется в 8бит режиме, для скорости расчётов. Поэтому приходится обеспечивать вполне определённый размах сигнала на входе.
В STM32 же АЦП 12-битный. То есть, вполне можно было бы программно слабый сигнал (амплитудой до 0.1В) обрабатывать в пределах 8 бит, а более сильный (амплитудой до 1.6 В) масштабировать до тех же 8 бит (это вплоть до 16 раз по амплитуде). В итоге и сильный, и слабый сигналы выглядели бы более или менее одинаково на спектре.
Но все это лишь теория и требует проверки на живом сигнале.[/uquote]
Tипа без ОУ?
Но, вообще, в некоторой мере, подобное сделать можно. На AVR АЦП используется в 8бит режиме, для скорости расчётов. Поэтому приходится обеспечивать вполне определённый размах сигнала на входе.
В STM32 же АЦП 12-битный. То есть, вполне можно было бы программно слабый сигнал (амплитудой до 0.1В) обрабатывать в пределах 8 бит, а более сильный (амплитудой до 1.6 В) масштабировать до тех же 8 бит (это вплоть до 16 раз по амплитуде). В итоге и сильный, и слабый сигналы выглядели бы более или менее одинаково на спектре.
Но все это лишь теория и требует проверки на живом сигнале.[/uquote]
Tипа без ОУ?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Честно говоря, даже и не знаю. Но вот есть у меня ощущение, что ОУ может по большому счёту и не нужен. Просто оставить по входу АЦП резистивный делитель по питанию, чтобы обеспечить половину питания при отсутствии сигнала, а сам сигнал подавать через разделительный конденсатор.
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
[uquote="WiseLord",url="/forum/viewtopic.php?p=3429793#p3429793"]Честно говоря, даже и не знаю. Но вот есть у меня ощущение, что ОУ может по большому счёту и не нужен. Просто оставить по входу АЦП резистивный делитель по питанию, чтобы обеспечить половину питания при отсутствии сигнала, а сам сигнал подавать через разделительный конденсатор.[/uquote]
у меня стоит просто по одному транзистору.
а-ля однокаскадный предусилитель)
предусиление в проете стоит на 8.
т.е. однокаскадного предусиления хватает для спектра.
у меня стоит просто по одному транзистору.
а-ля однокаскадный предусилитель)
предусиление в проете стоит на 8.
т.е. однокаскадного предусиления хватает для спектра.
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
WiseLord А можно схемку на stm32 т. к. по ней легче разбираться что куда.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Нет схемы.
Пока только по исходникам (pins.h) смотреть, ну и вот файлик с планируемой разводкой.
Пока только по исходникам (pins.h) смотреть, ну и вот файлик с планируемой разводкой.
- Вложения
-
- Pins.ods.7z
- (18.47 КБ) 283 скачивания
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
[uquote="WiseLord",url="/forum/viewtopic.php?p=3430574#p3430574"]Нет схемы.
Пока только по исходникам (pins.h) смотреть, ну и вот файлик с планируемой разводкой.[/uquote]
Спасибо.
Пока только по исходникам (pins.h) смотреть, ну и вот файлик с планируемой разводкой.[/uquote]
Спасибо.
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
friends hello I am getting an error during stm32 compilation
- Вложения
-
- Adsız.png
- (109.03 КБ) 336 скачиваний
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
You shouldn't use CubeMX. The project already has working Makefile.
Anyway, this error appeared in recent versions of CubeMX.
Anyway, this error appeared in recent versions of CubeMX.
-
mixa232323
- Прорезались зубы
- Сообщения: 217
- Зарегистрирован: Вт окт 01, 2013 01:04:31
- Откуда: Гомель
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
я под виндой через make.exe + тулчайн компилю.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Ну, под это проект и делается. Вариант кроссплатформенный, гарантированно работает и позволяет использовать практически любую удобную среду разработки. Я лично QtCreator предпочитаю, там же и отладка работает при необходимости.