мне нужен именно для просмотра пульсаций по питанию,так как "болею" сборкой приемников и часто возникают возбуды,есть DSO138 но он не удобный...а тут все можно сделать в виде щупа-включил,посмотрел...
мне нужен именно для просмотра пульсаций по питанию,так как "болею" сборкой приемников и часто возникают возбуды,есть DSO138 но он не удобный...а тут все можно сделать в виде щупа-включил,посмотрел...
У меня при отрисовке тоже нет деления на 5, в режиме лупы:
Забыл отписаться, с дисплеем 320х480 - перекопал всю библиотеку - по скорости там ничего не улучшить. Написано грамотно и все написано, чтобы работало четко и быстро. Мега2560 не подходит для этих дисплеев, если в динамике с этим дисплеем работать.
И надо прерывания отключать, когда считываешь сигнал с АЦП...
Не меняются значения на выходе. Один в 1, другой 0.
Остальные ноги на этом порту дрыгаются как надо.
Стер чип, и все равно - B4 = в еденице.
EDIT: Раскурил pdf. Разобрался. Jtag во всем виноват. Думаю, как его теперь вырубить...
EDIT2: Вырубил. Теперь камень не шьется. Блин, вспомнил, как все три атмеги, что были убил фьюзами.
EDIT3: Зажал резет на плате, потом кнопку прошить и отпустил резет - прошилось.
EDIT4: Долго экспериментировал. Вот эти две строчки все решают. И порты стали доступны и шьется нормально, без резет. А! Надо вынуть обе перемыки boot0 и boot1, иначе не работает.
Забыл отписаться, с дисплеем 320х480 - перекопал всю библиотеку - по скорости там ничего не улучшить. Написано грамотно и все написано, чтобы работало четко и быстро. Мега2560 не подходит для этих дисплеев, если в динамике с этим дисплеем работать.
И надо прерывания отключать, когда считываешь сигнал с АЦП...
Буду кнопки на прерывания садить....
Я для экрана 3.2" 480х320 заказал Arduino Due. Подключается бутербродом, скорость отрисовки вроде нормальная, тестовые скетчи гонял. Но к такому добру, вроде как надо входную часть соответствующую. Сам я не потяну, лежат AD9280, AD823, и еще куча всего из проекта GFX, жду может кто то, что нибудь придумает.
И вопрос: А реально к прикрутить энкодер вместо кнопок к версии на тфт экране?
а сложно добавить осциллоскоп только для цифрового сигнала (0/1)?
то есть не использовать ацп,а просто опрашивать как кнопку,удобнее смотреть сигнал сразу после синтезаторов частот(он до фнч цифровой,0 и 1),проверять прохождение по I2C и т д.вроде как и частоту можно повысить более 1 МГц(в ассемблере циклический опрос порта занимает 3 такта каждый опрос,допустим опрос PORTA,массив ekran(x)
IN R16, PINA
STS {ekran(0)}, R16 3такта
IN R16, PINA
STS {ekran(1)}, R16 3 такта
IN R16, PINA
STS {ekran(2)}, R16 3 такта
IN R16, PINA
..........................)
про сенсорный экран не думали?
P.S. вытравил новую плату,под L2F50126,попробую,всю схему запитаю от 3,3 в )))
а что функциональность Пультоскопа не развивается? все разговоры о дисплеях. Пу льтоскоп это фактически ИНДИКАТОР чтобы быстро локализовать и определить неисправность + плюшки для снятия информации и различные генераторы , а мы туда огромные дисплеи пытаемся прикрутить. Я немного отвлекся на другой проект " анализатор аккумуляторов" на дисплее от Siemens C55. отличный дисплей(101x65) с U8glib - рекомендую. закончу попробую оформить ветку.
а к Пкльтоскопу прикрутить - бы генератор тока 0-5мА, 4-20мА, источник образцового напряжения, логер на SD, вывод в СОМ порт. это много места не займет, а большинству в работе пригодится
собрал на L2F50,атмега328,отдельно выведен RX TX reset для перепрошивки(через коннектор ),зарядное LT4054 через USB-разъем,корпус bmd60032 http://www.k206.net/bahar/bmd%2060032%20a2.pdf
есть вопрос-есть ли команда отключения экрана?а то после отключения еще долго стоит рисунок без подсветки
lcd.PowerOff(); отключение дисплея,теперь буду дорабатывать....
Имею в своем арменале пару стоек серверных. В каждой свои монитор и свой кмв. Так исторически сложилось, что этот "гемор" решать проще стоя перед сервером. И вот мониторам лет... да первые lcd 15'', и случилсоь что их списали и дали новомодные панели 1u с клавой, kmv и экраном на борту. Сняли мы этих стариков и решили кинуть их себе камеры на входе мониторить. А то до этого один 21'' на 4 камеры, а теперь 4 15'' на 4 камеры. И тут мы поняли что нам последние 3 года мозолило... даже на чисто белой картинке выведенной на монитор красовалась надпись о том что сейчас выведен ввод kmv 1-0... тот на который по дефолту всегда скидывали сделав свое дело (мониторы ни кто ни когда не тушил) все админы. Это самые первы матрицы. Так что очень советую залить белым и потом тушить.
lcd.PowerOff(); отключение дисплея,теперь буду дорабатывать....
Имею в своем арменале пару стоек серверных. В каждой свои монитор и свой кмв. Так исторически сложилось, что этот "гемор" решать проще стоя перед сервером. И вот мониторам лет... да первые lcd 15'', и случилсоь что их списали и дали новомодные панели 1u с клавой, kmv и экраном на борту. Сняли мы этих стариков и решили кинуть их себе камеры на входе мониторить. А то до этого один 21'' на 4 камеры, а теперь 4 15'' на 4 камеры. И тут мы поняли что нам последние 3 года мозолило... даже на чисто белой картинке выведенной на монитор красовалась надпись о том что сейчас выведен ввод kmv 1-0... тот на который по дефолту всегда скидывали сделав свое дело (мониторы ни кто ни когда не тушил) все админы. Это самые первы матрицы. Так что очень советую залить белым и потом тушить.
эта команда заливает белым,по исходнику видно что сначала передается команда 0хАЕ откл дисплея и опускает CS,дисплей выключен,чтоб его снова включить надо инициализировать по новой
эта команда заливает белым,по исходнику видно что сначала передается команда 0хАЕ откл дисплея и опускает CS,дисплей выключен,чтоб его снова включить надо инициализировать по новой
Здарова, мужики, только что зарегился перекурив форум с 1 по 15 страницу от А до Я. В доказательство своего серьёзного подхода к теме выкладываю фотки моего рабочего стола ))).
Подпилил пультоскоп немного под себя (вспомнив институтские уроки по С++), за основу взял PULTOSCOPE_LCD5110_final2_DDS_Z
Всем кто спаял "всё как у автора, но не запускается": после монтажа берём в руки с пирт и щётку и начисто вычищаем плату со обеих сторон. Фотки выложил для примера, ибо чистота понятие растяжимое, но там где гуляют мегагерцы должно быть очень чисто.
Подобную анимацию просил сделать Dimax-а из соседней ветки "Генератор с регулируемой частотой на ардуино". Чтобы можно было видеть форму сигнала. Он посчитал это ненужным. А жаль.
запустил твой код (не считаю переход на "ты" на сайте по интересам признаком безкультурности, не обессудь) из PULTOSCOPE_LCD5110_final2_DDS_Z_EL83_09022017.rar
Так и не смог ни одного DDS сигнала увидеть. Смотрел напрямую, с фильтом R, RC, RCL - какие-то непонятные фигуры. Ты её для ATMega328 писал? Я её тестил на 16Mhz.
У bodriy2014 пока самая рабочая комбинация определения массива "byte sinM[32] = {1, 6,..." и вызова функции. Причём если в цикл с функцией накинуть что-либо типа выбора часторы, - это равносильно delay, которые убивают шустрость генератора.
Из этого вывод: сначала в меню буду задавать частоту, потом включать DDS-сигнал.
Buba94 , ЭТО ШЕДЕВР ! именно так он и должен выглядеть! можно надписи на кнопках под стиль телевизионного пульта переписать .
bodriy2014, мы пультоскопу памятник скоро поставим. Самое лучшее что я когда-либо собирал! хотя работаю периодически с осцилографами, но идея спаять свой вообше не приходила.
S65Display_LCD_L2F50_PowerOff_ard_1_6_11 библиотека под L2F50, S65Display_LCD_ls020_PowerOff_ard_1_6_11 библиотека под ls020 это последнии библиотеки работают с ардуино ID от 1.6.11 версии. Сейчас у меня стоит ID 1.6.13 все работает.
Я уже не помню что конкретно менял в скетчах и что добавлял, смотрите по дате какой архив самый последний. На названия PULTOSCOPE_LCD_ls020_и_т.д или PULTOSCOPE_LCD_L2F50_и_т.д не обращайте внимания, команды в библиотеках я делал одинаковые для обеих экранов что бы можно было менять экраны не изменяя скет. Разница только в инициалезации экрана в самой библиотеке, а команды в скетче все одинаковые для обеих экранов.
Запустил твой код из PULTOSCOPE_LCD5110_final2_DDS_Z_EL83_09022017.rar
Ты её для ATMega328 писал? Так и не смог ни одного DDS сигнала увидеть.
Вот честно - сигнал с DDS генератора сам не проверял, фильтры не ставил. Видел только какую то невнятку на древнем осциллографе с выхода ШИМ. Я "писал" для Атмегушки328, но я не писал, а просто переписывал с жесткой оптимизацией и переделыванием в код "как я хочу его видеть". Вэйвы отправил во флэш. Может поэтому и не работает ничего. Могу поправить по просьбам радиослушателей:)
Winstonn пишет:
Из этого вывод: сначала в меню буду задавать частоту, потом включать DDS-сигнал.
А вот тут интересно уже. У автора частота сигнала с DDS генератора жестко задана вроде как и её не поменять. Ну или как доработка?
P.S. Неспешно переписываю проект на tft 320x480 @ stm32. Времени, жалко, нету заниматься.
bodriy2014, мы пультоскопу памятник скоро поставим. Самое лучшее что я когда-либо собирал! хотя работаю периодически с осцилографами, но идея спаять свой вообше не приходила.
В Китае резко упали продажи осциллографов. Они уже знают причину. Большая часть ардуинщиков стали сами изготавливать осцилографы с кодовым названием "пультоскоп", и перестали покупать готовые приборы. Ебей и Али-экспресс обсуждают введение санкций против bodriy_го.
S65Display_LCD_L2F50_PowerOff_ard_1_6_11 библиотека под L2F50, S65Display_LCD_ls020_PowerOff_ard_1_6_11 библиотека под ls020 это последнии библиотеки работают с ардуино ID от 1.6.11 версии. Сейчас у меня стоит ID 1.6.13 все работает.
Я уже не помню что конкретно менял в скетчах и что добавлял, смотрите по дате какой архив самый последний. На названия PULTOSCOPE_LCD_ls020_и_т.д или PULTOSCOPE_LCD_L2F50_и_т.д не обращайте внимания, команды в библиотеках я делал одинаковые для обеих экранов что бы можно было менять экраны не изменяя скет. Разница только в инициалезации экрана в самой библиотеке, а команды в скетче все одинаковые для обеих экранов.
Добрый день, а данная библиотека уже под 8бит переделана или нет?
У автора частота сигнала с DDS генератора жестко задана вроде как и её не поменять. Ну или как доработка?
Принцип работы DDS у автора - loop с перебором чисел из массива +закоментированный delayMicroseconds. Без delay генератор работает на максимальной частоте МК, включая delay можно понизить частоту до 0 Hz. Сейчас подбираю формулу зависимости значения delay от частоты, Проблема в нелинейности этой зависимости.
У автора частота сигнала с DDS генератора жестко задана вроде как и её не поменять. Ну или как доработка?
Принцип работы DDS у автора - loop с перебором чисел из массива +закоментированный delayMicroseconds. Без delay генератор работает на максимальной частоте МК, включая delay можно понизить частоту до 0 Hz. Сейчас подбираю формулу зависимости значения delay от частоты, Проблема в нелинейности этой зависимости.
F = 1 / t
Где F - частота в гц
t - время в секундах
F = 1 / t
Где F - частота в гц
t - время в секундах
в этом то и комичность ситуации, что не получается так.))) Может где-то запарился и ошибся,.. вечером опять сяду за дело. Сам понимаю, должно именно по этой формуле всё работать. Но, если бы было всё так просто, автор бы эту функцию ещё в первом релизе встроил (как например с PWM). Сделаем!
так у меня все норм,даже при 30 мв шумов не видно
Дак у тебя развертка на 0.22v, как я понял. А тут я сигнал "размазываю" на весь дисплей... От Vmax до Vmin..
да,у меня при отрисовке нет деления на 5
мне нужен именно для просмотра пульсаций по питанию,так как "болею" сборкой приемников и часто возникают возбуды,есть DSO138 но он не удобный...а тут все можно сделать в виде щупа-включил,посмотрел...
да,у меня при отрисовке нет деления на 5
мне нужен именно для просмотра пульсаций по питанию,так как "болею" сборкой приемников и часто возникают возбуды,есть DSO138 но он не удобный...а тут все можно сделать в виде щупа-включил,посмотрел...
У меня при отрисовке тоже нет деления на 5, в режиме лупы:
Забыл отписаться, с дисплеем 320х480 - перекопал всю библиотеку - по скорости там ничего не улучшить. Написано грамотно и все написано, чтобы работало четко и быстро. Мега2560 не подходит для этих дисплеев, если в динамике с этим дисплеем работать.
И надо прерывания отключать, когда считываешь сигнал с АЦП...
Буду кнопки на прерывания садить....
Забыл отписаться, с дисплеем 320х480 - перекопал всю библиотеку - по скорости там ничего не улучшить.
Может такое "относитса к делу"?
http://andybrown.me.uk/2013/06/08/a-generic-16-bit-lcd-adaptor-for-the-a...
https://www.youtube.com/watch?v=TlVMz90AYHs
Привет. Господа, если кому не лень и есть под рукой экранчик. Подставьте ,плиз, размеры. Пока из Поднебесной идёт хочу корпус сделать
вот огромное спасибо !!! а я не нагуглил ни фига. спасибищще
умер мой ssd1306,греется как печка...видимо 5 в ему все-таки много,хоть и стоит AVS1117-3,3
Блин, можете подсказать, пишу в кокосе stm32.
Инициализация порта:
Забыл отписаться, с дисплеем 320х480 - перекопал всю библиотеку - по скорости там ничего не улучшить. Написано грамотно и все написано, чтобы работало четко и быстро. Мега2560 не подходит для этих дисплеев, если в динамике с этим дисплеем работать.
И надо прерывания отключать, когда считываешь сигнал с АЦП...
Буду кнопки на прерывания садить....
Я для экрана 3.2" 480х320 заказал Arduino Due. Подключается бутербродом, скорость отрисовки вроде нормальная, тестовые скетчи гонял. Но к такому добру, вроде как надо входную часть соответствующую. Сам я не потяну, лежат AD9280, AD823, и еще куча всего из проекта GFX, жду может кто то, что нибудь придумает.
И вопрос: А реально к прикрутить энкодер вместо кнопок к версии на тфт экране?
Я думаю, что можно. На прерывания его...
а сложно добавить осциллоскоп только для цифрового сигнала (0/1)?
то есть не использовать ацп,а просто опрашивать как кнопку,удобнее смотреть сигнал сразу после синтезаторов частот(он до фнч цифровой,0 и 1),проверять прохождение по I2C и т д.вроде как и частоту можно повысить более 1 МГц(в ассемблере циклический опрос порта занимает 3 такта каждый опрос,допустим опрос PORTA,массив ekran(x)
IN R16, PINA
STS {ekran(0)}, R16 3такта
IN R16, PINA
STS {ekran(1)}, R16 3 такта
IN R16, PINA
STS {ekran(2)}, R16 3 такта
IN R16, PINA
..........................)
про сенсорный экран не думали?
P.S. вытравил новую плату,под L2F50126,попробую,всю схему запитаю от 3,3 в )))
А что nokia 5510 больше что ли? Те же размеры, даже плата адаптера есть, только вот информации на него маловато, а так давно бы прикрутил
.
а что функциональность Пультоскопа не развивается? все разговоры о дисплеях. Пу льтоскоп это фактически ИНДИКАТОР чтобы быстро локализовать и определить неисправность + плюшки для снятия информации и различные генераторы , а мы туда огромные дисплеи пытаемся прикрутить. Я немного отвлекся на другой проект " анализатор аккумуляторов" на дисплее от Siemens C55. отличный дисплей(101x65) с U8glib - рекомендую. закончу попробую оформить ветку.
а к Пкльтоскопу прикрутить - бы генератор тока 0-5мА, 4-20мА, источник образцового напряжения, логер на SD, вывод в СОМ порт. это много места не займет, а большинству в работе пригодится
Вот хотел написать и передумал. Напишу:
Этот ili9481 тормознутый, или я просто не умею его готовить. Кароче, оставлю на потом.
Было и есть много идей по доработке на ssd1306. Тут на форуме подсказали ещё.
Придумал, как сделать, чтоб не мерять пять вольт тестером, а на 1.1 измерить че нибудь и потом выставить VCC.
Отвлекся на стм32, словил несколько граблей. Пультоскоп подмог сильно так, на самом деле.
Так что пока спать, завтра посмотрю.......
собрал на L2F50,атмега328,отдельно выведен RX TX reset для перепрошивки(через коннектор ),зарядное LT4054 через USB-разъем,корпус bmd60032 http://www.k206.net/bahar/bmd%2060032%20a2.pdf
есть вопрос-есть ли команда отключения экрана?а то после отключения еще долго стоит рисунок без подсветки
плата https://yadi.sk/d/jiTQMZu03EPa53
подключение кнопок-
да есть команда ее использовал VetalST в своем скетче, погляди
может резетом можно экран гасить?
вот нашел такую табличку
ну да. осталось только отправить её в дисплей. только не факт, что он погаснет сразу, т.к. жидкие кристаллы имеют некую статичноть.
может его проще стирать перед выключением подсветки, да и все. например:
fill_screen_color(0x00
);
снова перелистывал форум и нашел!!! https://yadi.sk/d/6rz6gT0osVGjn
lcd.PowerOff(); отключение дисплея,теперь буду дорабатывать....
а сенсорный дисплей сложно приделать?а то мне пришел такой https://ru.aliexpress.com/item/Free-Shipping-1lot-2pcs-UNO-R3-MEGA328P-For-Arduino-2-4-Inch-TFT-Touch-LCD-Screen/32246798992.html ,дисплей разбитый
снова перелистывал форум и нашел!!! https://yadi.sk/d/6rz6gT0osVGjn
lcd.PowerOff(); отключение дисплея,теперь буду дорабатывать....
Имею в своем арменале пару стоек серверных. В каждой свои монитор и свой кмв. Так исторически сложилось, что этот "гемор" решать проще стоя перед сервером. И вот мониторам лет... да первые lcd 15'', и случилсоь что их списали и дали новомодные панели 1u с клавой, kmv и экраном на борту. Сняли мы этих стариков и решили кинуть их себе камеры на входе мониторить. А то до этого один 21'' на 4 камеры, а теперь 4 15'' на 4 камеры. И тут мы поняли что нам последние 3 года мозолило... даже на чисто белой картинке выведенной на монитор красовалась надпись о том что сейчас выведен ввод kmv 1-0... тот на который по дефолту всегда скидывали сделав свое дело (мониторы ни кто ни когда не тушил) все админы. Это самые первы матрицы. Так что очень советую залить белым и потом тушить.
снова перелистывал форум и нашел!!! https://yadi.sk/d/6rz6gT0osVGjn
lcd.PowerOff(); отключение дисплея,теперь буду дорабатывать....
Имею в своем арменале пару стоек серверных. В каждой свои монитор и свой кмв. Так исторически сложилось, что этот "гемор" решать проще стоя перед сервером. И вот мониторам лет... да первые lcd 15'', и случилсоь что их списали и дали новомодные панели 1u с клавой, kmv и экраном на борту. Сняли мы этих стариков и решили кинуть их себе камеры на входе мониторить. А то до этого один 21'' на 4 камеры, а теперь 4 15'' на 4 камеры. И тут мы поняли что нам последние 3 года мозолило... даже на чисто белой картинке выведенной на монитор красовалась надпись о том что сейчас выведен ввод kmv 1-0... тот на который по дефолту всегда скидывали сделав свое дело (мониторы ни кто ни когда не тушил) все админы. Это самые первы матрицы. Так что очень советую залить белым и потом тушить.
эта команда заливает белым,по исходнику видно что сначала передается команда 0хАЕ откл дисплея и опускает CS,дисплей выключен,чтоб его снова включить надо инициализировать по новой
эта команда заливает белым,по исходнику видно что сначала передается команда 0хАЕ откл дисплея и опускает CS,дисплей выключен,чтоб его снова включить надо инициализировать по новой
значит 0xFF
прикрутил прием по UART
теперь осцилл о котором я писал выше-лог 0 и 1...
начал делать корпус для ослика, распечатал пока только крышку примерить, вроде неплохо
Поздравляю с "распечаткой" :)
Здарова, мужики, только что зарегился перекурив форум с 1 по 15 страницу от А до Я. В доказательство своего серьёзного подхода к теме выкладываю фотки моего рабочего стола ))).
Подпилил пультоскоп немного под себя (вспомнив институтские уроки по С++), за основу взял PULTOSCOPE_LCD5110_final2_DDS_Z
https://drive.google.com/drive/folders/0B8Cen3bTAimVYWVOOEF5SzRHUWM?usp=...
Застрял на DDS-Генераторе. Как я понял, с изменением частоты рабочих пока никто не сделал?
Всем кто спаял "всё как у автора, но не запускается": после монтажа берём в руки с пирт и щётку и начисто вычищаем плату со обеих сторон. Фотки выложил для примера, ибо чистота понятие растяжимое, но там где гуляют мегагерцы должно быть очень чисто.
Xumuk, 3d принтер покупной или самодельный?
особенно рекомендую свою анимацию PWM:
frmnog = 0;
display.drawLine(frmnog + 0, 0, frmnog + 13 * PWM / 256.0, 0, BLACK); // PWM анимация 1 пульс
display.drawLine(frmnog + 0, 14, frmnog + 13, 14, BLACK);
display.drawLine(frmnog + 0, 14, frmnog + 13 * PWM / 256.0, 14, WHITE);
display.drawLine(frmnog + 13 * PWM / 256.0, 0, frmnog + 13* PWM / 256.0, 14, BLACK);
frmnog = 14;
if (PWM > 0) {
display.drawLine(frmnog -1 , 0, frmnog -1, 14, BLACK); // PWM анимация 1 подъём
}
display.drawLine(frmnog + 0, 0, frmnog + 13 * PWM / 256.0, 0, BLACK); // PWM анимация 2 пульс
display.drawLine(frmnog + 0, 14, frmnog + 13, 14, BLACK);
display.drawLine(frmnog + 0, 14, frmnog + 13 * PWM / 256.0, 14, WHITE);
display.drawLine(frmnog + 13 * PWM / 256.0, 0, frmnog + 13* PWM / 256.0, 14, BLACK);
frmnog = 28;
if (PWM > 0) {
display.drawLine(frmnog -1 , 0, frmnog -1, 14, BLACK); // PWM анимация 2 подъём
}
display.drawLine(frmnog + 0, 0, frmnog + 13 * PWM / 256.0, 0, BLACK); // PWM анимация 3 пульс
display.drawLine(frmnog + 0, 14, frmnog + 13, 14, BLACK);
display.drawLine(frmnog + 0, 14, frmnog + 13 * PWM / 256.0, 14, WHITE);
display.drawLine(frmnog + 13 * PWM / 256.0, 0, frmnog + 13* PWM / 256.0, 14, BLACK);
if (PWM == 0) {
display.drawLine(1, 0, 28, 0, WHITE); // PWM анимация 0%
frmnog = 14;
display.drawLine(frmnog + 13 * PWM / 256.0, 0, frmnog + 13* PWM / 256.0, 14, WHITE);
frmnog = 28;
display.drawLine(frmnog + 13 * PWM / 256.0, 0, frmnog + 13* PWM / 256.0, 14, WHITE);
display.drawLine(1, 14, 28, 14, BLACK);
}
Xumuk, 3d принтер покупной или самодельный?
купил А8=)) вот недавно, теперь осваиваю)))
"особенно рекомендую свою анимацию PWM"
Подобную анимацию просил сделать Dimax-а из соседней ветки "Генератор с регулируемой частотой на ардуино". Чтобы можно было видеть форму сигнала. Он посчитал это ненужным. А жаль.
Состыковаться бы вам
Вот что вышло
вкл/выкл от родной кнопки на тини13 мало места занимает, управление клавой, зарядка и вход на родных гнездах





Вставляйте в каждый void / loop эту строчку, и делаёте перезагрузку программно, а не обесточиванием МК:
Привет, Electronik83,..
запустил твой код (не считаю переход на "ты" на сайте по интересам признаком безкультурности, не обессудь) из PULTOSCOPE_LCD5110_final2_DDS_Z_EL83_09022017.rar
Так и не смог ни одного DDS сигнала увидеть. Смотрел напрямую, с фильтом R, RC, RCL - какие-то непонятные фигуры. Ты её для ATMega328 писал? Я её тестил на 16Mhz.
У bodriy2014 пока самая рабочая комбинация определения массива "byte sinM[32] = {1, 6,..." и вызова функции. Причём если в цикл с функцией накинуть что-либо типа выбора часторы, - это равносильно delay, которые убивают шустрость генератора.
Из этого вывод: сначала в меню буду задавать частоту, потом включать DDS-сигнал.
По поводу фильтров: лоу пасс самое то!
Buba94 , ЭТО ШЕДЕВР ! именно так он и должен выглядеть! можно надписи на кнопках под стиль телевизионного пульта переписать .
bodriy2014, мы пультоскопу памятник скоро поставим. Самое лучшее что я когда-либо собирал! хотя работаю периодически с осцилографами, но идея спаять свой вообше не приходила.
После погашения экрана (ост вкл подсветка) можно выкл питание.
Привет, Electronik83,..
И тебе привет!
Запустил твой код из PULTOSCOPE_LCD5110_final2_DDS_Z_EL83_09022017.rar
Ты её для ATMega328 писал? Так и не смог ни одного DDS сигнала увидеть.
Вот честно - сигнал с DDS генератора сам не проверял, фильтры не ставил. Видел только какую то невнятку на древнем осциллографе с выхода ШИМ. Я "писал" для Атмегушки328, но я не писал, а просто переписывал с жесткой оптимизацией и переделыванием в код "как я хочу его видеть". Вэйвы отправил во флэш. Может поэтому и не работает ничего. Могу поправить по просьбам радиослушателей:)
А вот тут интересно уже. У автора частота сигнала с DDS генератора жестко задана вроде как и её не поменять. Ну или как доработка?
P.S. Неспешно переписываю проект на tft 320x480 @ stm32. Времени, жалко, нету заниматься.
.............................
bodriy2014, мы пультоскопу памятник скоро поставим. Самое лучшее что я когда-либо собирал! хотя работаю периодически с осцилографами, но идея спаять свой вообше не приходила.
После погашения экрана (ост вкл подсветка) можно выкл питание.
Добрый день, а данная библиотека уже под 8бит переделана или нет?
У автора частота сигнала с DDS генератора жестко задана вроде как и её не поменять. Ну или как доработка?
Принцип работы DDS у автора - loop с перебором чисел из массива +закоментированный delayMicroseconds. Без delay генератор работает на максимальной частоте МК, включая delay можно понизить частоту до 0 Hz. Сейчас подбираю формулу зависимости значения delay от частоты, Проблема в нелинейности этой зависимости.
У автора частота сигнала с DDS генератора жестко задана вроде как и её не поменять. Ну или как доработка?
Принцип работы DDS у автора - loop с перебором чисел из массива +закоментированный delayMicroseconds. Без delay генератор работает на максимальной частоте МК, включая delay можно понизить частоту до 0 Hz. Сейчас подбираю формулу зависимости значения delay от частоты, Проблема в нелинейности этой зависимости.
F = 1 / t
Где F - частота в гц
t - время в секундах
F = 1 / t
Где F - частота в гц
t - время в секундах
в этом то и комичность ситуации, что не получается так.))) Может где-то запарился и ошибся,.. вечером опять сяду за дело. Сам понимаю, должно именно по этой формуле всё работать. Но, если бы было всё так просто, автор бы эту функцию ещё в первом релизе встроил (как например с PWM). Сделаем!
Готово! DSS с погрешностью в 2,5% частота 600 - 0,00..001 Hz . на кварце 16Mhz. Что будет на 24Mhz завтра протестирую.
вот она зависимость :
19200 = 600 (максимальная частота на кварце 16Мгц полной функции из массива ) * 32 (количество точек функции массива ).
осталось дотестить, оформить и в корпус запиливать прибор.))