|
|
|
|
madgrey: Но кто напишет забесплатно и поделится исходниками проги под комп? Возьметесь? Народ спасибо большое скажет! GM ведь описал формат управляющей посылки, я думал, управляющая программа уже есть. Я не гений программирования - просто любитель - поэтому шедевров интерфейса от меня ждать будет опрометчиво. Что я делал для себя: - управление через COM порт - частота генерации задается дискретно кнопками - в вЫключенном состоянии генератора цифры частоты желтые, во ВКЛюченном - зеленые - обратной связи от генератора нет - установленное значение частоты сохраняется в ini файле - размер программы примерно 30 кбайт. Картинки (сюда не могу загрузить): http://atlab.narod.ru/files/ddscontrol1.png - выключен http://atlab.narod.ru/files/ddscontrol2.png - включен Могу модифицировать программу под нужды данного проекта. |
|
|
Для меня и такую программу для компа сделать проблематично. Но уж если бы я ее делал, то добавил бы выбор типа сигнала (sin, пила... произвольная форма userа из файла) и возможность задавать границы свипа. Учитывал бы при написании, что сом порт может присутствовать на переходнике USB-COM и поэтому номер его может быть высоким, например COM17. Значит в программе должен быть выбор порта и задание его скорости. GM может скажет свое слово о возможности добавления таких фичей?
|
|
|
ATLab: GM ведь описал формат управляющей посылки, я думал, управляющая программа уже есть. Я не гений программирования - просто любитель - поэтому шедевров интерфейса от меня ждать будет опрометчиво. Все в этом мире что то могут делать лучше, что то хуже других. Я вообще не могу писать программы для больших ПК. Более того, в обозримом будущем не собираюсь этому учиться, т.к. других дел полно. В свое время делал вот такой интерфейс на виртуальный осциллограф в лабвью (показываю как пример, без привязки к типу управляемого прибора и функционалу). На панели основные узлы на панели были - индикаторы - лампочки, ручки - аналог валкодера и несколько кнопок. Идея была - максимально приближенная к действительности виртуальная панель прибора
ATLab: Что я делал для себя:... Лично меня подобный интерфейс устроил бы полностью. Только крутилка одна нужна и всё . Если в упрощенном виде подобный интерфейс сможете реализовать, а судя по всему от Вашего проекта этот может отличаться только наличием на экране аналога валкодера и чуть большим количеством кнопок и индикаторов - сформулирую "ТЗ" на прогу и ориентировочный внешний вид. smg123: Для меня и такую программу для компа сделать проблематично. Но уж если бы я ее делал, то добавил бы выбор типа сигнала (sin, пила... произвольная форма userа из файла) и возможность задавать границы свипа. Учитывал бы при написании, что сом порт может присутствовать на переходнике USB-COM и поэтому номер его может быть высоким, например COM17. Значит в программе должен быть выбор порта и задание его скорости. GM может скажет свое слово о возможности добавления таких фичей? Панель виртуального генератора будет (если ATLAB согласится ) дублировать (по функциям) реальную. Режимы генерации там будут. Высокий номер будет учтен, скорость выбирать нефиг поэтому будет фиксированной, например 9600 хватит за глаза, а то на компе это просто, а на контроллере - лишний головняк Думаю, GM согласится с этим |
|
|
1. С крутилкой напряженка - нет такого стандартного элемента интерфейса, поэтому я сделал декадные кнопки. Я поищу возможные варианты, но успешного результата не гарантирую. А нужно ли полностью дублировать "железный" интерфейс? Мне, например, проще ввести требуемое точное значение частоты и нажать кнопку "Установить". Для плавной перестройки частоты вместо крутилки можно использовать пару кнопок "+" "-" с динамическим изменением величины приращения. В этом случае все упрощается, а эффект тот же. 2. Сейчас номер порта прописывается в ini файле (текстовый файл) вручную. Там же задается скорость обмена. 3. Выбор формы сигнала не делал - у меня сигнал ее не менял, но добавить нет проблем - это просто еще одна кодовая посылка для МК.и несколько зависимых кнопок в интерфейсе. madgrey рисуйте интерфейс, только попрошу пока его сделать минимально функциональным (с учетом написанного мной выше) - рюшечки и фенечки давайте оставим на потом. И не забудьте приложить список управляющих команд. Mail - в профиле, я его добавил на несколько дней, потом снова прибью. |
|
|
В Вашем профиле кроме даты регистрации и количества сообщений ничего не видно |
|
|
Это не ко мне, это к админу Посмотрите на http://atlab.narod.ru/info.htm |
|
|
GM: Вылавливайте out portb,r13 add r11,r21 adc r12,r22 adc r30,r23 ld r13,z add r11,r21 out portb,r13 adc r12,r22 adc r30,r23 ld r13,z rjmp dds Я разобрался в коде. Оригинально, однако в нем есть элемент авантюризма . Синусоидальная палка будет сильно расползаться и я уверен, Вы точно знаете почему. Уместнее все-таки убрать вторую посылку, тогда длительность будет стабильная (но 8 тактов). С другой стороны, пожертвовав куском памяти таким способом можно цикл поместить в 6 тактов. Кстати, по поводу GM: Всё, теперь и madgreya потеряли вдобавок к Vlad_Petrу . Что ж будет, если я вам расскажу о 4 тактах на выборку? Что ли все разбегутся? Тут и так уже никакой активности никто не проявляет, тема еле теплится... А вот на счет 4 тактов при сохранения 24 битного аккума есть сильные сомнения. А в продолжение программерских страшилок скажу, что на ступеньку пилы на фиксированной частоте можно сгенерить за 2 такта, период меандра - за 4 (программно). Меньше не пробовал, но подозреваю, что архитектура атмела это не позволяет |
|
|
madgrey: Я разобрался в коде. Оригинально, однако в нем есть элемент авантюризма. Синусоидальная палка будет сильно расползаться и я уверен, Вы точно знаете почему С чего бы ей расползаться? Не будет она расползаться, наоборот, будет стоять, как у волка на морозе..хвост . madgrey: А вот на счет 4 тактов при сохранения 24 битного аккума есть сильные сомнения There is not a shadow of doubt. Не надо сомневаться, я отвечаю . И аккумулятор фазы там 32-битный, а не 24-х битный.
|
|
|
GM: С чего бы ей расползаться? Поясняю. У вас в том примере темп выдачи данных неодинаковый. Сначала 6 тактов/выборку, потом - 8, потом повторяется . На ВЧ может (и будет) возникать такая ситуация, когда в один период определенный участок сигнала формируется первой с помощи 6-ти тактовой последовательности, а другой - восьмитактовой. Особенно сильно будет это видно на верхнем пределе, где на период приходится порядка 4-х выборок. Там и так сигнал кривой, так еще и это добавится. В итоге возрастут фазовые шумы, и спектральная частота генерируемого сигнала ухудшится. И самое прискорбное, что фильтрация от этого не спасает, т.к. расползется "тонкий спектр". Вот. Если Вы действительно не сомневаетесь, честь Вам и хвала, т.к. сегодня я обновил знания по тактам в асме у атмела и знаю что в 4 такта может поместиться весьма немного . Но мне за глаза хватает и честных 8 . |
|
|
У меня там честные 7 тактов на выборку, где вы увидели 6 и 8? |
|
|
|
|