IPB

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V  < 1 2 3 4 >  
Ответить в данную темуНачать новую тему
> кто программирует на младших PICах?, нужна помощь, платная...
Burner
сообщение 23.8.2010, 2:10
Сообщение #41


Активный участник
***

Группа: шизо
Сообщений: 1464
Регистрация: 17.1.2010
Из: Винница
Пользователь №: 84



Ортодокс, а Вы уверены, что корень из суммы квадратов мгновенных отсчетов - это то, что Вам нужно?
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 23.8.2010, 2:20
Сообщение #42


тот самый
Иконка группы

Группа: Мод
Сообщений: 13629
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Цитата(orthodox @ 22.8.2010, 20:09) *
Идеально было бы 25-30 Квыборок...Эквивалентно частоте ШИМ на выходе...

В общем, на 8МГц, а не на 4-х - это у нас 100 команд. Не успеет.
Нужно немного преобразовать таблицы, вернее, выражение их породившее.
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 23.8.2010, 2:45
Сообщение #43


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(Burner @ 23.8.2010, 3:10) *
Ортодокс, а Вы уверены, что корень из суммы квадратов мгновенных отсчетов - это то, что Вам нужно?


Мне- да.
Вам тоже, но Вы пока еще не приложили это к своим задачам.

Цитата(_pasha @ 23.8.2010, 3:20) *
В общем, на 8МГц, а не на 4-х - это у нас 100 команд. Не успеет.
Нужно немного преобразовать таблицы, вернее, выражение их породившее.

Не думаю, что именно этот метод можно еще куда-то преобразовать.
Есть другой, я писал выше. Но пока речь именно об этом.
Успеет или нет - поглядим.
В крайнем случае, будет работать на более низкой частоте, чем ШИМ.

Цитата(Wise @ 23.8.2010, 1:17) *
Вот, если вам такая эмоциональная подсказка поможет.. russian_ru.gif

Ну, как сказать.
Я мыслю так же, но приятно что Вы тоже так рассуждаете.
конечно, это поддержка и помощь.
Мигание светодиодами на самом деле виртуальное стремление,
примерно как яишенка с ветчинкой у митьков.
Помогает собраться. Едва ли соберусь когда, потому что вот это вот решать надо.
Ну разве ребенок соберется, от как раз рядом ходит, как кошка на сметану.
наконец-то заинтересовался хоть чем-то в электронике...
То есть, по мелочи-то он паяет , но тут ему интереснее будет..

Цитата(GuruKiller @ 23.8.2010, 0:52) *
У него аппаратное умножение есть? сколько тактов?
Еси нет, то не бейтесь об стену. Только 30 тыс 16-битных умножений займут в районе 3-4 мипса.

У меня их будет меньше. Большая часть - восьмибитные.
результат 16-битный, а сами данные- восьмибитные.
Возведение в квадрат, кроме того, табличное будет.
Я так думаю. Корень извлекать - сложнее чуток, там 3 или даже 4 деления.
16 битное на 8 битное.
Но, кажется, они делаются как и умножения, примерно так же, да?
Если нет - то могу извлекать корень и при помощи одних умножений, такого же количества.
8 бит * на 8 бит - это быстрее?
Перейти в начало страницы
 
+Цитировать сообщение
Burner
сообщение 23.8.2010, 4:19
Сообщение #44


Активный участник
***

Группа: шизо
Сообщений: 1464
Регистрация: 17.1.2010
Из: Винница
Пользователь №: 84



Цитата(Прохожий @ 23.8.2010, 23:31) *
Правильно. Это когда трохи и для сэбе.
А когда человек деньги собрался зарабатывать, то могут и обобрать ненароком...

Значит, LPC111 сдирают? Именно когда их программировали в указанных средах? Почему и как? У них хреновая защита? Мне интересно. Я уже на Электрониксе вроде замечал упоминание об сдирании АРМ.
Перейти в начало страницы
 
+Цитировать сообщение
Harbinger
сообщение 23.8.2010, 4:38
Сообщение #45


посіпака Хунти
Иконка группы

Группа: Мод
Сообщений: 20016
Регистрация: 21.11.2009
Из: Vinnitsa
Пользователь №: 11



Цитата(orthodox @ 22.8.2010, 23:04) *
Там его нету, но АЦП - 8 битный, коммутатор 4 входа. Он опечатался.

Не опечатался. smile.gif У LPC917 ЦАП имеется, приходилось использовать. Попутно нашёл хомут в коде, генерируемом для этого случая кодеархитектом.
Цитата
initdac:
orl P0M1, #00010000b
anl P0M2, #11101111b
mov AD1DAT3, #0 ;init dac1 value to zero
orl ADMODB, #08h ;#04h ;enable dac1 output
orl ADCON1, #04h ;enable adc1 (also enables dac1)
ret

После чего в AD1DAT3 просто впихиваем 8-битное число, и на 14-й лапе появляется пропорциональное ему напряжение (опора там равна VDD, хоть в мануале это явно не указано).
Прикину, успеет ли умножать/делить... на 18 МГц - 9 000 000 МЦ в секунду, mul ab занимает 4 цикла, деление тоже - вроде как должен успеть.
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 23.8.2010, 12:12
Сообщение #46


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(Harbinger @ 23.8.2010, 5:38) *
Не опечатался. smile.gif У LPC917 ЦАП имеется, приходилось использовать. Попутно нашёл хомут в коде, генерируемом для этого случая кодеархитектом.

После чего в AD1DAT3 просто впихиваем 8-битное число, и на 14-й лапе появляется пропорциональное ему напряжение (опора там равна VDD, хоть в мануале это явно не указано).
Прикину, успеет ли умножать/делить... на 18 МГц - 9 000 000 МЦ в секунду, mul ab занимает 4 цикла, деление тоже - вроде как должен успеть.


Очень интересно...
А может там еще и пара разрядов АЦП где-то спрятана?
А почему нету ЦАП в документации?
Перейти в начало страницы
 
+Цитировать сообщение
Harbinger
сообщение 23.8.2010, 12:40
Сообщение #47


посіпака Хунти
Иконка группы

Группа: Мод
Сообщений: 20016
Регистрация: 21.11.2009
Из: Vinnitsa
Пользователь №: 11



В UM_917 есть. Описание начинается на 31 странице.
АЦП, увы, 8-битный. Если бы не эта фигня с BOD, может, можно и на нём рискнуть... стоит 10 грн., если покупать несколько десятков. В крупном опте - меньше доллара.
Там появилась новая версия (9171), сейчас ДШ гляну... хз, что там с BOD. Ерраты нет (на 917 это было именно в еррате).
Нашёл еррату, внизу страницы спряталась. Беду с BOD якобы исправили! bomb.gif
Прикрепленные файлы
Прикрепленный файл  UM_917.pdf ( 3,01 мегабайт ) Кол-во скачиваний: 2
 
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 23.8.2010, 16:19
Сообщение #48


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(Harbinger @ 23.8.2010, 13:40) *
В UM_917 есть. Описание начинается на 31 странице.
АЦП, увы, 8-битный. Если бы не эта фигня с BOD, может, можно и на нём рискнуть... стоит 10 грн., если покупать несколько десятков. В крупном опте - меньше доллара.
Там появилась новая версия (9171), сейчас ДШ гляну... хз, что там с BOD. Ерраты нет (на 917 это было именно в еррате).
Нашёл еррату, внизу страницы спряталась. Беду с BOD якобы исправили! bomb.gif

Таки да.
Есть такой выход.
Логичная организация, раз уж все равно ацп на цапе строится...
Может иногда и сгодится...
Перейти в начало страницы
 
+Цитировать сообщение
Прохожий
сообщение 23.8.2010, 22:17
Сообщение #49


сундук
***

Группа: Пользователи
Сообщений: 4043
Регистрация: 21.11.2009
Из: Ростов-на Дону
Пользователь №: 15



Цитата(Burner @ 23.8.2010, 6:19) *
Значит, LPC111 сдирают? Именно когда их программировали в указанных средах? Почему и как? У них хреновая защита? Мне интересно. Я уже на Электрониксе вроде замечал упоминание об сдирании АРМ.

ПМСМ, драть софт без исходников - дело гиблое.
Поэтому я с удивлением прочел про криптование бутлодыря.
Это как-бы раз.
Во-вторых.
Когда я это писал, я имел в виду, что для ARM-ов нормальных бесплатных IDE нет.
А за пользование не лицензионным IAR-ом или KEIL-ом могут надрать (_!_).

Перейти в начало страницы
 
+Цитировать сообщение
Прохожий
сообщение 23.8.2010, 23:04
Сообщение #50


сундук
***

Группа: Пользователи
Сообщений: 4043
Регистрация: 21.11.2009
Из: Ростов-на Дону
Пользователь №: 15



Цитата(Огурцов @ 24.8.2010, 0:40) *
А зачем нужны исходники, если есть рабочаяя прошивка ? Паяй платы, прошивай и продавай. А вот шифрованную - хрен продашь. Ибо дешифровать ее может только бутлодырь в уже прошитом чипе, в уже спаянном девайсе.

Или некое несменяемое ядро...
Без которого, все, что загружено бутлодырем значения не имеет.
Перейти в начало страницы
 
+Цитировать сообщение
Прохожий
сообщение 23.8.2010, 23:22
Сообщение #51


сундук
***

Группа: Пользователи
Сообщений: 4043
Регистрация: 21.11.2009
Из: Ростов-на Дону
Пользователь №: 15



Цитата(Огурцов @ 24.8.2010, 1:15) *
Лучше не путаться в терминах - несменяемое ядро может находиться в области загрузчика и так и называться. Иначе реализовать нужную функциональность сложно. А лишний гимор нам вроде бы ни к чему.

Хорошо, понял.
Только давайте не будем говорить об этом в теме про младшие PIC-и.
И так наофтопили...
Перейти в начало страницы
 
+Цитировать сообщение
Прохожий
сообщение 24.8.2010, 18:21
Сообщение #52


сундук
***

Группа: Пользователи
Сообщений: 4043
Регистрация: 21.11.2009
Из: Ростов-на Дону
Пользователь №: 15



Цитата(Огурцов @ 24.8.2010, 1:43) *
Ну ежели младшие пики не знают про бутлодырь, тогда таки упс, не будем.

Все они знают. Но только смысла в этом нет для той модели, что выбрана для обсуждаемого проекта.
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 24.8.2010, 19:10
Сообщение #53


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата
Все они знают. Но только смысла в этом нет для той модели, что выбрана для обсуждаемого проекта.

Да, кстати.
По совету _pasha я корень квадратный попробовал убрать.
И возведения в квадрат заменил умножениями на константы.
Ну совсем без умножений - никак.
Однако, теперь можно работать в пределах байта, так как константы все меньше единицы.
И использовать табличное умножение, ибо констант всего три. Пока три, надо бы больше.
А то пульсации на выходе 1.5 % , а надо не более 0.4.

Формула длинная.
Пока остановлюсь и смакетирую в аналоговом виде все это,
после будет понятнее, что можно упростить.

Это \"фазовая матрица\" в которой складываются 16 сигналов, полученных из исходных 2 , каждый из сигналов
сдвинут с соседним на 22,5°.

CODE
Формула №3
abs(sin)+abs(cos) + 0.234668*abs((sin-cos)) + 0.126742*(abs(2.42*sin-cos)+abs(sin-2.42*cos)) © сам вывел


Синус и косинус получаем готовыми на аналоговых входах, их вычислять не нужно.

Для приведения к форме в байт влезающей, все это надо еще делить на 1.7 , то есть, округляя - сдвигать на бит.
естественно, по ходу операций а не готовый результат.



Прикрепленное изображение
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 24.8.2010, 23:02
Сообщение #54


тот самый
Иконка группы

Группа: Мод
Сообщений: 13629
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Цитата(orthodox @ 24.8.2010, 20:10) *
И возведения в квадрат заменил умножениями на константы.
Ну совсем без умножений - никак.
Однако, теперь можно работать в пределах байта, так как константы все меньше единицы.
И использовать табличное умножение, ибо констант всего три. Пока три, надо бы больше.

Пока остановлюсь и смакетирую в аналоговом виде все это,
после будет понятнее, что можно упростить.

Очень жаль, что
1. Нету умножения аппаратного
2. Сцуко-Протеус 7.7 с сабжевыми камнями не работает, а то бы уже модельку покрутить можно было. Вообще-то протеус после версии 7.6 мне нравится все больше и больше...

Больше констант - можно разбивать 8*8 умножение на 4*4 - все равно будет короче сдвигового варианта.
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 25.8.2010, 0:28
Сообщение #55


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(_pasha @ 25.8.2010, 0:02) *
Больше констант - можно разбивать 8*8 умножение на 4*4 - все равно будет короче сдвигового варианта.

Гениально... сам не додумался... Теперь и килобайта флеши хватит, за глаза.
И ненамного-то оно медленнее. Но это если памяти не хватит - так там каждая таблица по 256 байт, немного.

Теперь бы мне еще кто рассказал, каким методом я это сделал по той моей формуле (№3), чьего имени метод, чтобы разобраться и
быстренько сделать как надо, а не как я делал. Подозревал Хартли, но кажется это не вполне оно.

Цитата(@Ark @ 24.8.2010, 22:54) *
Вообще, задачка не совсем простая для этого камня,
но, на мой взгляд, решаемая.

Да мы ее щас сделаем сначала простой, а после вообще на СИ напишем.

Истинно говорю вам, коллеги, пригодится еще многим из вас.

Цитата(Огурцов @ 25.8.2010, 0:26) *
А в чем прикол, юзать камень без умножителя ?

Дык, кайф - когда заранее кажется, что оно вообще не просто не влезет, а раза в три ...
А после все же утолкать и чтобы место для индикации еще осталось smile.gif
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 25.8.2010, 0:43
Сообщение #56


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(GuruKiller @ 25.8.2010, 1:35) *
Хрустю попкорном smile.gif

Сейчас, VoJak подтянется, ветку прочитает и тоже чего-то скажет.
Он цифровой фильтрацией занимался трошки, помнит много чего...

Цитата(@Ark @ 24.8.2010, 22:54) *
Добрый вечер!

Встречайте знакомого новичка.

Добро пожаловать на Шарагу!

Поправил коэффициенты в формуле №3:

CODE
формула №4
abs(sin)+abs(cos) + (1/4)*abs((sin-cos)) +(1/8)*(abs((5/2)*sin-cos)+abs(sin-(5/2)*cos))

Уважаемому VoJak респект за намек на то, что целочисленные дроби удобнее в работе...
Умножения на константу частично заменены простыми сдвигами.
Теперь можно попробовать сделать разбиение на 11.25 градусов вместо 22.5, или по 15 - тоже должно резко лучше стать.
Но вот как это сделать без нудного перехода от моделирования с подбором коэффициентов?
Может, это все же преобразование Хартли? кто-то имел с ним дело?
Смущают эти непонятные 5/2... Или , если внести 1/8 в скобки - то 5/16 (с 1/8 вроде логично)...


Литература как бы по теме:
Цитата
На рис. 17 приведены примеры преобразований Гильберта амплитудно- и частотно-модулированных сигналов, которые наглядно демонстрируют физический смысл преобразования -- идеальное детектирование сигналов.
Прочитал. Нихрена не понял. результат видел, как получили - непонятно.
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 25.8.2010, 20:49
Сообщение #57


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Вот книжку еще нарыл...
Прикрепленный файл  breisuyell_r__preobrazovanie_hartli__teorija_i_prilozhenija_.zip ( 1,87 мегабайт ) Кол-во скачиваний: 3

Тоже не понял толком физического смысла...
Вчера смоделировал новую матрицу, уже на интервал 15° , то есть на 24 отвода как бы...

В аналоговой форме это делается без проблем - всего одна RC цепочка на всю схему, не на каждый отвод. И можно получить на данной частоте целую кучу сдвинутых по фазе с равным интервалом... остальное -чисто резисторная матрица. То есть суммирования и вычитания, не более того. Что и вселяет надежу, что самый простенький PIC справится в конце концов с довольно точным преобразованием...

Но еще в формулу не переводил пока...
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 26.8.2010, 2:12
Сообщение #58


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(тау @ 26.8.2010, 1:37) *
1) делают БПФ от реальных отсчетов
2) умножать всё на 2, кроме нулевого бина , а все бины старше N\2 обнулить (формула 2.23)
    (примечание - можно и не умножать, если постоянки нету)
3) делать ОБПФ ....... неожиданно  russian_ru.gif появятся комплексные отсчёты (это свойство такое у Фурье).

Вот эти комплексные отсчеты и есть квадратуры  I Q , из которых мгновенная амплитуда (к примеру по рис 17) рассчитывается.

Смотрите картинки 


Ну , если это не по одной паре отсчетов вычислено - то не имеет смысла, надо мгновенно.
А если по одной - то все варианты моделек у меня уже есть, начну выкладывать, только причесать нужно.
И с квадраторами с корнем квадратным после, и с вышеописанным фазорасщепителем (матрицей).

Реальные результаты в изделии ничем не отличаются, по большому счету.
И это наводит на мысли. Даже более того, с фазорасщепителем вариант реагирует на замену неидеального фазовращателя на идеальный в заданном диапазоне аналогично квадратирующему... То есть когда в диапазоне всех гармоник фаза ровно на 90 повернута, то после преобразования получается чудная картинка - первая гармоника превратилась в постоянку, а все высшие на этой постоянке висят неискаженными... круто, хотя методы принципиально вроде разные...

Меня бы кто ткнул носом, как по Хартли считать , может тогда хоть соображу, что делаю.
А то результаты уже получил, платы трассирую - а что оно такое получилось, как всегда неясно.
Хотя с другой стороны - формулу для 15-градусной матрицы я и так выведу, для 22.5 градусной же вывел
и принцип даже понял примерно, коэффициенты есть уже...
А после камню не все ли равно, чья там фамилия автора преобразований...Посчитает по-любому...
Перейти в начало страницы
 
+Цитировать сообщение
Гость_MrYuran_*
сообщение 26.8.2010, 8:44
Сообщение #59





Гости






Цитата(orthodox @ 25.8.2010, 22:49) *
Тоже не понял толком физического смысла...

В ЦОС можно чудеса творить, физически нереализуемые. Так что во всём искать физический смысл не стоит.
Я вот тоже привык этот самый смысл искать и на пальцах для себя изображать, поэтому и сдал ЦОС на 3-,
хотя желающим ставили 3 автоматом без экзамена (провели прореживание smile.gif )
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 26.8.2010, 11:50
Сообщение #60


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23809
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(MrYuran @ 26.8.2010, 9:44) *
В ЦОС можно чудеса творить, физически нереализуемые. Так что во всём искать физический смысл не стоит.
Я вот тоже привык этот самый смысл искать и на пальцах для себя изображать, поэтому и сдал ЦОС на 3-,
хотя желающим ставили 3 автоматом без экзамена (провели прореживание smile.gif )

Я думаю, физический смысл всегда есть, что и привлекает...
Если формулы правильные...
Вышеприведенные мной картинки выпрямителя, например, изначально получались суммированием
ряда синусов, равномерно сдвинутых по фазе , ну и взятых по абсолютному значению.
То есть на общем графике получалась такая себе сетка, каждый синус в свой цвет.
А после сокращения формул и приведения к удобному виду, сетка получилась точно такая же, но участки ее
перекрасились - сигналы стали ломаными, переходя по ячейкам в другом порядке, но суммарная картинка та же,
если бы не красил в разные цвета - не заметил бы разницы. Ну и в конце оказалось, что все это упрощается
от сложения много одинаковых - до сложения меньшего количества разных по амплитуде сигналов.

То есть начиная с аналога, перейдя к формуле и сократив ее - можно и к аналогу вернуться опять и его тоже сократить.
Перейти в начало страницы
 
+Цитировать сообщение

4 страниц V  < 1 2 3 4 >
Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 29.3.2024, 9:49