Круто! А не смотрели с какой частоты синтезирования начинаются искажения? Я уже тему SoftDDS порядком подзабыл, но какова вероятность, используя вашу методику, получить синус или меандр на небольшом участке от 500кгц с шагом 0.25гц?
А не смотрели с какой частоты синтезирования начинаются искажения? какова вероятность, используя вашу методику, получить синус или меандр на небольшом участке от 500кгц с шагом 0.25гц?
Шаг скорее всего потянет, но слишком велика частота. Только 5 точек успеет отрисоваться на период, на синус это не будет похоже. Прямоугольник с диким джиттером наверно можно, если выводить не в АЦП, а на ногу порта. Но алгоритм в корне менять надо. Лучше взять аппаратный dds-синтезатор для такой задачи.
Круто! А не смотрели с какой частоты синтезирования начинаются искажения? Я уже тему SoftDDS порядком подзабыл, но какова вероятность, используя вашу методику, получить синус или меандр на небольшом участке от 500кгц с шагом 0.25гц?
Он хорош, но избыточен. AD9833 достаточно для опорного генератора PLL синтезатора частот. Но, например, древний и хорошо изученный LM7001 может не только в штатные 7.2 мгц опорного но и в 500 кгц и выше.
_________________ (Аль Котоне,кот ещё тот,Cattus Sapiens) Усы и хвост - мои документы. Кот - авторитет! Скажет "Мяу!" - не поспоришь. (скажи мне "мяу" и я скажу кто ты)
Я их через SWD шью. Программатор из Arduino-Nano. Прошивка на github где то есть и инструкция на ютубчике Жаль что отладки по SWD там нет. Нужно фирменный флашер/дебаггер покупать. Вроде на тао-бао 100 юаней стоит
Заголовок сообщения: Re: LGT8F328P (китайский AVR) или WAVGAT в Arduino/
Добавлено: Пн июл 17, 2023 20:27:12
Друг Кота
Карма: 22
Рейтинг сообщений: 94
Зарегистрирован: Чт мар 26, 2009 04:35:04 Сообщений: 3096 Откуда: Москва
Рейтинг сообщения:0
Просто есть такая же ардуиноподобная плата с тем же холтеком на борту и есть по-отдельности. И у холтековской есть штатный выход DTR - не надо жать на ресет, шьётся из ИДЕ, как ардуинка. Только надо загрузить в ИДЕ файло по ссылке, чтобы оно распознавалось.
_________________ (Аль Котоне,кот ещё тот,Cattus Sapiens) Усы и хвост - мои документы. Кот - авторитет! Скажет "Мяу!" - не поспоришь. (скажи мне "мяу" и я скажу кто ты)
Столкнулся для себя с непонятным моментом при прошивке LGT8F328P. Может кто сможет пояснить в чем причина. PS. Будет много пердварительной информации.
Для начала исходные данные: 1) Плата Nano c LGT8F328P; 2) Arduino IDE v 1.8.19, далее по тексту просто ИДЕ. Установлен пакет LGT8fx Boards v2.0.7 (https://github.com/dbuezas/lgt8fx); 3) AVRDUDESS 2.20 (avrdude v 8.1),далее по тексту просто "дудка". По настройкам программатора выбирался как avrisp, так и stk500 v1, работают одинаково. MCU - LGT8F328P. 4) Исходник - Blink из стандартных примеров. 5) Программатор LarduinoISP (https://github.com/LGTMCU/LarduinoISP/tree/master)
Настройки в ИДЕ такие:
При выборе в ИДЕ Скетч/Загрузка и дальнейшей прошивке встроенный светодиод начинает мигать с периодом 2 секунды, работа прошивки адекватная.
Далее попробовал прошить из ИДЕ через внешний программатор. При выборе в качестве программатора AVR ISP программа вывалила ошибку о невозможности открыть COM порт программатора. Попробовал вторым доступным программатором LGTSWD mkII as ISP, тут, предсказуемо, ошибка связи по USB. Не понимаю! Скетч/Загрузка через тот же программатор AVR ISP происходит, а при выборе Скетч/Загрузить через программатор не может достучаться до COM порта.
Следующим этапом тестирования выполнил Скетч/экспорт бинарного файла. При этом получил два файла с прошивкой. с бутлоадером и без. Эти файлы нужны для прошивки их через "дудку". Для начала загрузил "дудкой" прошивку без бутлоадера. Работа прошивки ничем не изменилась. Светодиод все также мигает с периодом 2 секунды. Бутлоадера нет, естественно через ИДЕ уже не прошить.
Заливаю теперь через "дудку" второй файл с бутлоадером. И вот тут и начинается непонятное, из-за чего я так долго всё это рассписывал. Светодиод начал выдавать 3 коротки вспышки, с периодом каждой вспышки в 120 мс и длиной паузы между пачками вспышек в 2 секунды. Такое ощущение, что с бутлоадером прошивка работает либо не на своей частоте, либо сам бутлоадер ей мешает. Тут я не соображу, как разобраться точно. Если теперь прошить через ИДЕ, то светодиод опять замигает с периодом 2 секунды и бутлоадер прекрасно отработает.
Отсюда собственно два вопроса у меня. 1. Почему ИДЕ не может прошить через Скетч/Загрузка через программатор, при этом Скетч/Загрузка работает? 2. Как может ИДЕ компилировать бинарный файл с бутлоадером, отличающийся от того, который прошивается стандартно через Зугрузку?
Я не знаю, надо ли прикладывать бинарные файлы? Мне кажется, если кто-то сможет повторить по моим шагам весь процесс, то я хотя бы выясню, виновата ли в происходящем ИДЕ, или я что-то не так делаю. PS2. Пробовал шить из-под "дудки" не как LGT8F328P, а как ATmega328P, прошивка точно также выдаёт три коротких вспышки. PS3. Также пробовал компилировать и шить с параметрами тактирования от внутреннего генератора 32 МГц с делителем на 2. Поведение платы такое же.
Вообще то вкладка Скетч -> загрузка аналогична кнопке загрузки на панели IDE - идет обычная загрузка через Rx/Tx линии под управлением имеющегося в МК бутлоадера ("стандартное" подключение платки ардуинки). А вот Скетч -> загрузить через программатор выполняет загрузку при условии что к ПК сначала подключен программатор а уже к тому программатору через ISP целевая платка присоединена. Причем прошивка таким образом стирает бутлоадер ардуинки. При таком же подключении ( к ПК сначала подключен программатор а уже к тому программатору через ISP целевая платка присоединена) может использоваться и инструменты -> записать загрузчик эта операция восстанавливает бутлоадер и загружает комплект фуз (фузы касаются АВРок, но не LGT) Да и сами платки LGT идут при продаже с "проблесковым" блинком. а не с простой "мигалкой" - видимо для различия от АВРок. Похоже Вы спутали простую загрузку скотча по Rx/Tx при помощи бутлоадера и работу с платкой ардуинки через программатор (SWD для LGT или ISP для АВР). Как возможный вариант - ошибка при изготовлении программатора из ардуинки - после заливки скотча не выполнена предварительная операция по аппаратному отключению активации бутлоадера на платке программатора.
Вот как ни старайся написать подробно, всегда ответят, что не так делаю . Все, что Вы написали я прекрасно знаю. Так вот, что касается этих плат LGT8F328P, то я все прошивал через программатор и порт ISP этой самой платы LGT8F328. Вот Вам и первый вопрос! Почему загрузка скетча в ИДЕ идет через внешний программатор и разъем ISP платы LGT8F328, а команда загрузки через внешний программатор не работает? Загадка? А вот Вам и вторая загадка. Я же шил один и тот же пример Blink! Так почему при прошивке через ИДЕ этот блинк себя ведет как ему полагается по коду, а при прошивке бинарного файла через "дудку" получается тот самый "проблесковый маяк"???
PS. Не ищите подвоха в моём тексте и не копайте в том направлении, что я ничего не соображаю. Я реально не понимаю, как один и тот же код из ИДЕ, но прошитый в камень разными путями и ведет себя по-разному!
У меня в качестве программатора использовался ардуино-нано с прошивкой LarduinoISP. У прошивки именно для LGT платки в качестве программатора есть дополнительная особенность по размеру буфера связи - вспоминать надо (да и перепроверять)... Касательно разного поведения после прошивок из IDE и "сторонней софт-оболочки" - скорее всего, как мне кажется, из под IDE загрузка не прошла, а вот из под "сторонней софтинки" наверняка выполнилась. Дело в том, что при использовании ардуинки (что на АВР ках, что на LGT) в качестве программатора нужно для платки, используемой как программатор, отключить возможность запуска ее бутлоадера. Если такой операции не выполнить, то получим не программатор, а не слишком понятную зверушку - вместо транзита кода программы(и соответствующей обработки как программатором) в целевую платку наш программатор по факту сам его слопает. А в целевой платке так и останется то, что в ней и раньше было (прошивка не пройдет). Это не о "поиске подвоха" , а о реальном варианте... Да еще и весьма смутнопроверяемом (подопытную платку лишний раз дергать не слишком охота, а LGT нанку переделывать в программатор для LGT жаба удавила)... Могу вариант своей макетки(база ардуино-нано), да использованной софтинки предложить (если интерес проанализировать различия будет) ...
У меня в качестве программатора использовался ардуино-нано с прошивкой LarduinoISP
У меня точно такой же вариант программатора.
BOB51 писал(а):
как мне кажется, из под IDE загрузка не прошла
Крестится надо. Я же написал, что прошивка идет и в ИДЕ, и через дудку. И схему подключения LGT8 к программатору я не менял. Я как подключил программатор к компьютеру, так его и не отключал. Менял только софт, чем шил.
BOB51 писал(а):
вместо транзита кода программы
В этом случае я бы получил не программатор, а плату ардуино нано с кодом BLINK внутри. Только опять мимо! Программатор исправно транслирует код в LGT8! Просто он априори не может себя перепрошить. В ATmega8, в программаторе, зашит свой загрузчик, а в менеджере плат ИДЕ выбрана плата LGT8! И загрузчик у нее свой.
BOB51 писал(а):
LGT нанку переделывать в программатор для LGT жаба удавила)
Да ничего переделывать не надо! Программатор у меня сделан из ардуино нано с ATmega328P на борту и прошивкой LarduinoISP.
PS. Я вижу Ваше желание помочь разобраться, но Вы по-прежнему ищите подвох в том, что я не разбираюсь в вопросе и где-то накосячил. Не спорю, может и есть косяк где-то, раз поведение прошивки разное! Но в вопросе я все же разбираюсь. Просто повторите опыт, который я подробно расписал в первом сообщении. Только не вносите в него ничего своего. А то до китайской Пасхи будем разбираться.
Три вспышки - вероятно это не функция вашей программы прошивки, а функция загрузчика - он ждет загрузки данных, их нет, потом самосбрасывается (предположение) и так далее в цикле.
Для теста загрузите, напр. программу, которая ничего не делает. Есть блинк 3 раза или нет? (вероятно да). Переставьте пин для блинк на другой пин. Есть блинк 3 раза или нет? (или просто ничего не происходит).
Есть или неточность настройки, загрузки, либо старый загрузчик, либо что-то еще. Сделайте тестовый сброс с кнопки при заливке, поэкспериментируйте.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения