24.11.2012, 10:57
|
#531
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от tempora
|
Потому, что UT1WPR написал, что проблема снята (насколько я помню, он воспользовался Eclips'ом).
|
В Эклипсе возникла та же проблема - недостаток разрядности в плавучке.
После долгих раздумий и консультаций была принята рекомендация сменить платформу. В наличии имелся в энных количествах PIC24, на нем все решается в несколько строчек и несколько десятков микросекунд.
Для раскрытия "телодвижений":
Исходно компьютерная программа (переписке и изменению не подлежит) направляет в девайс 9-ти символьное значение частоты (в кодах ASCII).
Девайс должен вычислить FTW (Frequency Tuning Word) для DDS AD9851 (32 бита) базируясь на значении его тактовой частоты (которая также может быть скорректирована получением ее значения от управляющей программы). Это не все условия, там достаточно много нюансов, нет смысла из все перечислять. Но одно очевидно, арифметика 8-битового МК слабовата для этих вычислений.
Главная программа на РС написана неким немцем, логику действия которого я до сиз пор не пойму. В отношении протокола и прочего. Обратите внимание - имеются с одной стороны линии связи мощнейший РС и с другой стороны управляющий МК, основные задачи которого это ногодрыгание. Так немцы возложили вычисления на МК, а для РС оставили анализ и графики. Причем протокол связи абсолютно самодурный, в одном сеансе он один, в другом иной, в третьем вообще "без протокола". Прослеживается написание всей системы двумя людьми порознь, потом потуги слить все вместе и добится универсальности и возможности развития. Да Бог с ними.
В данной системе один из вариантов применения - сканирующий анализатор спектра. А при его реализации важны минимальные задержки межту точками сканирования. Если даже вычисление займет несколбко мсек, то при скане по 3000 точек это будет уже на анализатор а медленная рисовалка. Кратковременные изменения спектра будут просто потеряны.
Да и совет моего давнего гуру был правильным: каждой задаче своя платформа. Не никаких сомнений, что эти вычисления можно реализовать и на данном восьмибитовике. Но то уже будет решение ради решения. "Из любви к искусству", но без возможности применения, увы. Смена МК была очевидна. Мне было все равно STM32 или PIC24. Решающую роль сыграло наличие последнего под рукой.
Сразу приношу извинения за отнятое у вас время на чтение этого опуса.
Собственно сама задача читсо любительская и никакого отношения к добыче куска хлеба не имеет.
Еще раз извините за многословие.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
24.11.2012, 12:54
|
#532
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от ut1wpr
|
компьютерная программа (переписке и изменению не подлежит) направляет в девайс 9-ти символьное значение частоты
|
А я было подумал, что речь об 137к, а выходит - нет?
Интересно, а разве таблично там никак не обойтись? Ведь диапазон д.б. значительно уже тех 9 знаков..?
__________________
There's always more than one way to skin a cat.
|
|
|
|
24.11.2012, 16:58
|
#533
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от tempora
|
Интересно, а разве таблично там никак не обойтись? Ведь диапазон д.б. значительно уже тех 9 знаков..?
|
Не совсем понял, какую таблицу и как применять? И диапазон ЧЕГО?
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
24.11.2012, 18:15
|
#534
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: FAQ по STM8
Частоты, разумеется, или "9-ти символьное значение" всё же не частоты, а чего-то другого?
__________________
There's always more than one way to skin a cat.
|
|
|
|
24.11.2012, 21:57
|
#535
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от tempora
|
Частоты, разумеется, или "9-ти символьное значение" всё же не частоты, а чего-то другого?
|
Диапазон установки частоты от 100 КГц до 60 МГц.
Частота приходит по линии связи в виде стринга "028250145".
Далее перевожу в бинарный вид. А в куда там таблицу? Какая будет ее размерность? Не понимаю.
Вычисления ведутся исходя из базовой формулы
Fout = ( FTW * CLK ) / 2^32
Fout в Герцах ( 35'240'128 )
CLK в Герцах ( 180'000'000 )
Необходимо вычислить FTW с результатом в виде 02 EF 14 3D.
Затем эти 32 бита загружаются в DDS.
Есть еще одна трудность. Коррекция опорной частоты приходит от РС в таком виде, что ее кроме преобразования в бинарный вид, потом нужно делить на 2^32. Это сделано для DDS с увеличенной разрядностью FTW (высокочастотные).
Честное слово, так и не смог понять, где здесь и какие можно применить таблицы?
Мои извинения за "тупость".
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
24.11.2012, 22:40
|
#536
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: FAQ по STM8
Виктор, вы любите непростые задачи. Можно было поставить промежуточных софт, который эмулировал бы работу контроллера, пересчитывал частоты, отправлял в целевой МК и никаких проблем с математикой.
|
|
|
|
24.11.2012, 22:50
|
#537
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от Easyrider83
|
Виктор, вы любите непростые задачи. Можно было поставить промежуточных софт, который эмулировал бы работу контроллера, пересчитывал частоты, отправлял в целевой МК и никаких проблем с математикой.
|
Нифигассе!
Чтобы работать с длинной арифметикой ставить промежуточный контроллер? Мда. Типа STM32 ИЛИ dsPIC? Ты, наверное подшутил надо мной.. ![Обижен](images/smilies/icon_beee.gif)
А зачем тогда целевой? Ногами и промежуточный успеет продергать.
Да ладно, проехали. Я эту тему для себя прикрыл. Работает и ладно...
Тут немного другая проблемка вылезла, но скорее от нехватки времени. Пока не получилось с наскоку эмулировать EEPROM на PIC24. Криво подвесилась аппликуха от мелкочипа. Все время чего-то там не находит или жалуется на кривые дефайны. Будет время, разберусь. Это уже не в этой ветке.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
24.11.2012, 22:53
|
#538
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от ut1wpr
|
Какая будет ее размерность?
|
Вы не сообщили деталей, поэтому я предположил, что диапазон намного уже самой частоты, например - 28 - 29,7 МГц, или - 24,89 - 25,14 МГц. А тогда м.б. бы подумать о кусочно линейной аппроксимации.
________________________________________
++
Сообщение от ut1wpr
|
Чтобы работать с длинной арифметикой ставить промежуточный контроллер?
|
Зачем контроллер? Можно было бы поискать промежуточный софт на том же писе, на котором та немецкая прога...
__________________
There's always more than one way to skin a cat.
Последний раз редактировалось tempora; 24.11.2012 в 22:55.
|
|
|
Сказали "Спасибо" tempora
|
|
|
24.11.2012, 22:55
|
#539
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от ut1wpr
|
Нифигассе!
Чтобы работать с длинной арифметикой ставить промежуточный контроллер? Мда. Типа STM32 ИЛИ dsPIC? Ты, наверное подшутил надо мной..
|
Вы не поняли. Устанавливаете эмулированный ком порт на РС и работаете с ним, как с реальным. Вся обработка будет средствами РС.
|
|
|
Сказали "Спасибо" Easyrider83
|
|
|
25.11.2012, 01:26
|
#540
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от Easyrider83
|
Вы не поняли. Устанавливаете эмулированный ком порт на РС и работаете с ним, как с реальным. Вся обработка будет средствами РС.
|
Мысль неплохая. Два виртуальных шнурка типа com0com. Посередке мой софт. Пораскину остатком умишка, как оно в деталях получится... Спасибо обоим. Обязательно подумаю.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:53.
|
|