Специальные цены   новые товары
Закрытая тема
Страница 1 из 2 1 2 ПоследняяПоследняя
Показано с 1 по 40 из 56

Сканер диапазона 2,4ГГц из готовых модулей

Тема раздела Самодельная электроника, компьютерные программы в категории Общие вопросы; На выходных закончил отладку макета сканера спектра в диапазоне 2,4ГГц на основе микросхемы CC2500 от Texas Instruments. Макет состоит из ...

  1. #1

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38

    Сканер диапазона 2,4ГГц из готовых модулей

    На выходных закончил отладку макета сканера спектра в диапазоне 2,4ГГц на основе микросхемы CC2500 от Texas Instruments.



    Макет состоит из готовых модулей (названия нажимабельные):

    1. Arduino Nano - переделан на питание 3.3V
    2. Модуль трансивера CC2500 (идет в комплекте с антенной)
    3. Цветной дисплей 1.8" SPI 128*160
    Внимание: мой экземпляр дисплея на чипе ST7735, прошивка под него. Точно такие же визуально дисплеи могут быть на чипе Samsung S6D02A1, в этом случае замените библиотеку дисплея (ссылка в коде).

    Модуль трансивера содержит внутри отдельную микросхему малошумящего усилителя. Желающие сэкономить могут заказать полностью совместимый функциональный аналог очень крошечного размера и веса. Оно работает !!! Разумеется, чувствительность ниже.

    Сканер работает в диапазоне 2400.009949 - 2483.128540 с промежутком 405.456543 кГц; итого получается 206 каналов, с 0 по 205. Разрешения дисплея не хватает на все каналы, поэтому отображаются с 0 по 159-й. Заказан дисплей SPI 2.2" 320*240, с ним хватит места на всё.

    Знаю-знаю, дисплеи на SPI весьма тормозные. Зато занимают мало выводов проца, и куплены с прицелом на другие проекты. Делать финальную печатную плату и корпус пока не планирую, т.к. мне самому сканер не особо нужен. Я летаю там, где помех нет. Отдаю проект в народ, может кому пригодится.

    Прошивка собрана из готовых библиотек дисплея плюс прилеплен переделанный код для работы с CC2500. Режим немножко нестандартный и не спрашивайте меня, почему конфигурация именно такая. Я убил часа три на игру с регистрами настройки фильтра PLL и цепи АРУ, ориентируясь на наиболее качественное отображение спектра. Фишка в том, что слишком быстрая и чуткая АРУ "убивает" выбросы спектра, смазывая картинку.

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

    В приложении исходный код и графические библиотеки. Библиотеки надо поместить в папку библиотек вашей Arduino IDE.

    Включил Turnigy 9xr:


    А это периодически включается нечто на 2-3 минуты (подозреваю китайский телефон у соседей):


    Схема подключений (#xx - номера выводов ардуино):
    Дисплей SPI 128*160
    1. RST (#7)
    2. CS (#9)
    3. D/C (#8)
    4. MOSI (#11)
    5. CLK (#13)
    6. VCC +3.3V
    7. BL +3.3V
    8. GND

    Модуль приемника 2,4+LNA
    1. VCC +3.3V
    2. MOSI (#11)
    3. SCLK (#13)
    4. MISO (#12)
    5. GDO2
    6. GND
    7. GDO
    8. CS (#10)
    9. PA_EN = 0
    10. LNA_EN = 1 (+3.3)


    Модуль приемника 2,4 маленький
    1. GND
    2. VCC +3.3V
    3. MOSI (#11)
    4. SCLK (#13)
    5. MISO (#12)
    6. GDO2
    7. GDO0
    8. CSN (#10)
    Вложения

  2.  
  3. #2

    Регистрация
    26.07.2009
    Адрес
    Тольятти
    Возраст
    49
    Сообщений
    1,153
    Записей в дневнике
    2
    Есть предложение добавить две кнопки или переменный резистор и перемещать вертикальную линию с указанием частоты. т.е. хочется посмотреть на какой частоте "выброс" - двигаем линию по экрану и читаем в уголке частоту)

  4. #3

    Регистрация
    12.02.2011
    Адрес
    Москва
    Возраст
    49
    Сообщений
    790
    И нанка-то мелкая. Вот вогнать это всё в пачку жвачки и батарейку приладить.

  5. #4

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Цитата Сообщение от Edward_tlt Посмотреть сообщение
    Есть предложение добавить две кнопки или переменный резистор и перемещать вертикальную линию с указанием частоты. т.е. хочется посмотреть на какой частоте "выброс" - двигаем линию по экрану и читаем в уголке частоту)
    Это несложно сделать. Вот, получите



    Маркер перемещается движком переменного резистора.
    Резистор одним концом на землю, другим концом на питание +3,3В меги. Ползунок на аналоговый вход А7.

    Еще раз особо напоминаю: мой arduino nano переделан на питание 3,3в. поэтому все модули соединены напрямую. Если ваш ардуин питается от 5в, позаботьтесь о согласовании логических уровней, иначе велик риск спалить дисплей и трансивер. Читаем здесь или здесь (мега328 стабильно работает на 16МГц от 3,3в в 99% случаев).

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

    Цитата Сообщение от Dinotron Посмотреть сообщение
    И нанка-то мелкая. Вот вогнать это всё в пачку жвачки и батарейку приладить.
    Есть такая мысль, как вариант, разместить на маленькой платке проц Mega328, слот карточки MicroSD и тот китайский микроприемник за 160руб
    Это хозяйство весить будет считанные граммы и стоить меньше 500р. Можно будет поднимать его в воздух, вести лог помех, а дома на компе читать карточку и визуализировать. Если к этой платке приделать разъем, можно будет подтыкать съемный дисплей для анализа обстановки на земле.
    Вложения

  6.  
  7. #5

    Регистрация
    12.02.2011
    Адрес
    Москва
    Возраст
    49
    Сообщений
    790
    Прелесть какая. Ну добавьте липу на питание и чуятель на А0. Действительно можно ЛУТом шилд склепать к вашему экранчику.

  8. #6

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Подключил к сканеру слот SD карты для ведения лога.
    Данные записываются по ходу развертки диапазона, один цикл - одна строка.

    Но пока не придумал, что с этими данными делать дальше. В сыром виде их слишком много, чтобы строить по ним, например, графики в экселе.

    Надо делать какую-то статобработку. В приложении архив с двумя файликами, один для куска диапазона в 160 точек, второй на полный диапазон, 205 точек.
    Желающие могут поиграть с данными

  9. #7

    Регистрация
    22.03.2004
    Адрес
    Кемерово
    Возраст
    43
    Сообщений
    3,079
    Записей в дневнике
    18
    подкину вам идейку, пример реализации железяки

    а это софт для похожей

  10.  
  11. #8

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Про юбиквити слыхали)) у всех этих сканеров происхождение от Low Cost Spectrum Analyzer ©2005 Scott Armitage. Просто юбиквити это коммерческая реализация общеизвестной штуки, и не самая дешевая.
    Весь смысл моей затеи в том, чтобы не делать самому радиочастотную часть, а соединить между собой два-три готовых недорогих китайских модуля. Хотя для запуска в воздух все же хочу в итоге сделать автономную платку со слотом microSD.
    Чего я хочу от этой штуковины - чтобы на земле засунуть карточку в комп и посмотреть, была ли на самом деле во время полета мощная помеха, или собака в другом месте порылась. То есть, простой спектроскоп. И чтобы вообще понимать, каков помеховый фон в районе полетов. Мне это пофиг, я летаю в колхозных полях за городом. Но многим этот наколенный приборчик может оказаться полезным. Даже дома интересно посмотреть, что в эфире творится.

    Вы мне лучше подскажите, на диапазон 5,8ГГц есть аналогичные дешевые модули, чтобы можно было аналогично CC25** прописывать в него любую частоту диапазона с заданным шагом и считывать RSSI? Я пока особо не вникал, но вообще-то диапазон 5,8 тоже интересно смотреть. Навскидку мне только боскамовские видеоресиверы попались.

  12. #9

    Регистрация
    22.03.2004
    Адрес
    Кемерово
    Возраст
    43
    Сообщений
    3,079
    Записей в дневнике
    18
    видеоприемник вот как самый простой вариант и подойдет.

  13. #10

    Регистрация
    22.03.2004
    Адрес
    Кемерово
    Возраст
    43
    Сообщений
    3,079
    Записей в дневнике
    18
    чтобы на земле засунуть карточку в комп и посмотреть, была ли на самом деле во время полета мощная помеха, или собака в другом месте порылась
    мнэээ. а сканирование всего диапазона у вас сколько времени занимает? вот встала помеха, задавила половину диапазона. но встала на 200 мс, а у вас сканирование 400 мс и вы ее не увидите.

  14. #11

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    в летающем логгере мы дисплей не прорисовываем. минимальное время установки канала у CC2500 при предкалибровке составляет 180мкс. Для полного диапазона с 206 каналами получаем проход диапазона за 37мс. можно задаться целью оптимизации кода, компилировать не на Arduino IDE... но давайте ставить инженерную задачу сообразно реальной потребности.

    От помехи длительностью 200мс что вообще случится с квадриком? в реале от такой одиночной помехи квадрик максимум вздрогнет, и то вряд ли. А серийную помеху сканер отловит. Интерес представляют помехи такой продолжительности, которая загоняет приемник в глубокий файлсейв с потерей управления от пульта. Например попадание в створ луча колхозного "радиоудлинителя интернета" в коттеджном поселке. Либо такие помехи, при которых провалы в управлении за счет коротких "заморозок" каналов будут визуально и неоднократно заметны.

  15. #12

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Наконец получил вот такой дисплей TFT SPI 240*320 и переделал под него скетч. Теперь входят не только все 206 каналов, но и остается дофига места под всякие прочие данные, несмотря на то, что дисплей небольшой:



    Новый скетч и библиотека дисплея на чипе ILI9341 в архиве.
    На подсветку подавать +3,3V напрямую или +5V через балластный резистор.
    Вложения

  16. #13

    Регистрация
    05.05.2014
    Адрес
    Москва, Митино
    Возраст
    42
    Сообщений
    1,841
    Цитата Сообщение от Rover Посмотреть сообщение
    Подключил к сканеру слот SD карты для ведения лога.
    Данные записываются по ходу развертки диапазона, один цикл - одна строка.
    Привет. Спасибо за проект. Собрал, работает.
    Подскажите как подключить SD карту? Видимо колодку SDcard надо задействовать?
    Спасибо.
    Миниатюры Миниатюры Нажмите на изображение для увеличения
Название: image.jpg‎
Просмотров: 74
Размер:	95.4 Кб
ID:	1122200   Нажмите на изображение для увеличения
Название: image.jpg‎
Просмотров: 128
Размер:	80.5 Кб
ID:	1122201  

  17. #14

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Да, совершенно верно. Но есть пара аппаратных нюансов.

    1. Для подключения дисплея требуется согласование логических уровней, например, включением последовательно в сигнальные линии резисторов номиналом около 2,2 кОм. А в сигнальные линии карты эти резисторы уже включены, они есть на плате. Это надо иметь в виду. Иными словами, выводы колодки SDcard, оснащенные резисторами, заводим на выводы пятивольтовой ардуинки напрямую, а выводы дисплея через резисторы. В случае использования трехвольтового мода ардуины вопрос согласования уровней не актуален.

    2. Я напрасно убил целый вечер, когда выяснилось, что при вставленной в слот карте зависает процедура работы с модулем приемника CC2500. То есть отдельно карта пишется, читается и тд. Приемник отдельно тоже работает, а вместе - ну никак! Оказалось, конфликт состоял в том, что будучи выбранным по сигналу CS, СС2500 должен отпустить линию MISO в низкий уровень, показывая, что он готов принять команду. Соответственно, программа сканера в строке

    Код:
    while (digitalRead(MISO) == HIGH) {};
    ждет готовности приемника, чтобы передать команду. Но SD карточка очень жестко вытягивает линию MISO вверх, даже если не выбрана по CS. Соответственно, программа зависает навечно в ожидании низкого уровня MISO.

    Я проверил две карты Qumo 4Gb и 8Gb, обе себя вели одинаково. То есть вывод приемника просто не мог перетянуть вывод карты вниз вниз. Вообще-то, необходимость дернуть линию вниз, показывая готовность к приему команды - это нестандартная опция для SPI, особенность работы CC2500. Поэтому формально винить SD карты нельзя.

    Резистор на землю не помог. Пришлось в разрыв линии MISO, идущей к слоту карты, включить диод катодом к выходу карты. Диод желательно использовать с минимальным прямым падением напряжения, но это не критично. С диодом всё сразу заработало.

    Здесь можно забрать архив, в котором на тестовом уровне прописана работа с карточкой. Там назначен вывод CS для карты, проверяется наличие карты в слоте, создается файл лога и в него построчно пишутся текущие данные.

  18. #15

    Регистрация
    05.05.2014
    Адрес
    Москва, Митино
    Возраст
    42
    Сообщений
    1,841
    Спасибо. Аппаратно доделаю.
    Вы какой программой логи визуализируете?
    В идеале хочу так, как на картинке (визуально), т.е. весь диапазон от 2400 до 2483 МГц идет вдоль временнОй оси.

    ПыС: у меня "тормозной" 1.8" SPI 128*160. Визуализация на ЖК-экране не так важна, как ведение логов на SD.
    ПыПыС: сам ни разу не программер и не электронщик, но Ваши пояснения понятны.



  19. #16

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Я пробовал визуализировать логи стандартными средствами построения диаграмм Excel, но при таком объеме данных рендеринг трехмерного представления идет ОЧЕНЬ долго, час-полтора, иногда обваливается Excel.
    Надо использовать специализированные программы, но пока нет времени в это вникать. Если кто-нибудь посоветует, буду благодарен

  20. #17

    Регистрация
    12.01.2011
    Адрес
    Россия, г.Хабаровск
    Возраст
    42
    Сообщений
    169
    Записей в дневнике
    1
    [2Rover]

    Простите за немного общий вопрос..

    Я работал с СС1100, там регистры - один в один с СС2500. Но я так и не понял - как узнать уровень принимаемого сигнала. Там имеется регистр RSSI. Я его читаю, вывожу через СОМ-порт на экран... Ну.. и там, как мне показалось, очень много сильных флуктуаций (при неизменной частоте трансивера).
    Вопрос такой: вы выводите на дисплей уровень принимаемого сигнала в условных единицах. А как вы его считываете ? Там три регистра настройки частоты. Передвинули частоту (инкрементировали FREQ0...FREQ2), запустили перекалибровку... А дальше что ? Перешли в RX и надо считать RSSI ?


    Я почему пытаюсь это узнать.. У меня была задача -ри помощи этого регистра RSSI настроить пару трансиверов как можно точнее путём программной подстройки частоты одного из трансиверов (типа кварцы одинаковые, да вот не не одинаковые...). Ну я и написал софт для чтения этого RSSI. Я когда удалял-подносил модули друг к другу (были настроены на минимум мощности), я не смог понять по какому закону менялся этот RSSI. Хотя модуль успешно принимал 7-и байтный пакет данных. И как-то я подумал, что или эфир сильно загашен на 433, либо у меня лыжи не едут. В итоге, я настроил всё, но только путём выяснения того, как и на какой граничной частоте, связь вообще пропадает. И с тех пор я немного в недоумении.
    Буду очень рад, если кто-то меня в это сфере разтормозит...
    Заранее спасибо.

  21. #18

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Да, вы совершенно правильно понимаете последовательность действий. С той лишь разницей, что для ускорения сканирования в самом начале программы один раз запускается предкалибровка по заданному набору частот, полученные калибровочные константы сохраняются в массив. Далее, задаем частоту, записываем в нужный регистр калибровочную константу из массива соответственно номеру частоты, делаем паузу несколько микросекунд согласно даташиту на установление синтезатора и читаем регистр RSSI.

    Но вот со значением в этом регистре не всё так просто, если спецификация CC1100 полностью совпадает с CC2500 в этой части. Для СС2500 значение необходимо обработать по определенному закону и нормализовать!!! Прочитайте соответствующий раздел даташита для CC2500 и сравните, так же для CC1100 или нет. Ну и разрядность переменной для считывания сырого значения RSSI должна быть правильной. У меня была какая-то нестыковка то ли со знаками, то ли с разрядностью и на выходе творилась чертовщина. Когда сделал всё строго по даташиту, стало нормально.

    И еще, когда я пытался поработать с СС1020, то чуть умом не тронулся. Оказывается, у этой серии какой-то странный конструктивный косяк, требующий каких-то плясок с бубном при инициализации, информация в сети противоречивая и путаная. Какие-то шаманы владеют сакральными знаниями, но толком не делятся. Короче, так и не заработало, надоело время зря терять.

  22. #19

    Регистрация
    12.01.2011
    Адрес
    Россия, г.Хабаровск
    Возраст
    42
    Сообщений
    169
    Записей в дневнике
    1
    Спасибо. Пошел читать про алгоритм обработки RSSI...

  23. #20

    Регистрация
    30.08.2004
    Адрес
    Бугульма, Татарстан
    Возраст
    70
    Сообщений
    263
    Цитата Сообщение от Rover Посмотреть сообщение
    Я пробовал визуализировать логи стандартными средствами построения диаграмм Excel, но при таком объеме данных рендеринг трехмерного представления идет ОЧЕНЬ долго, час-полтора, иногда обваливается Excel.
    Надо использовать специализированные программы, но пока нет времени в это вникать. Если кто-нибудь посоветует, буду благодарен
    Можно использовать такую прогу:

    P.S. Таблица соединений, из первого поста не соответствует скетчу из #12. Насколько помнится там не соответствует CS для дисплея и reset дисплея нужно соединить с RST Arduino. В принципе, из скетча это видно, но можно потратить время на выяснение этого...
    Миниатюры Миниатюры Нажмите на изображение для увеличения
Название: CSV_160.png‎
Просмотров: 129
Размер:	83.0 Кб
ID:	1131676  
    Вложения

  24. #21

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Да, последующий скетч может не соответствовать таблице из первого поста, как-то выпустил это из вида. Линию сброса дисплея можно подключать как на отдельный порт ардуино, тогда дисплей будет сбрасываться программно при старте прошивки, так и на RST Arduino. Библиотека дисплея позволяет это выбирать.

  25. #22

    Регистрация
    04.02.2008
    Адрес
    Москва, Строгино
    Возраст
    52
    Сообщений
    1,852
    Интересный проект. Я сейчас ковыряюсь с трансивером А7105 и хочу попробовать соорудить нечто подобное. В связи с этим имею вопрос: а что-таки ловится из эфира и с чем сравнивается для получения RSSI? Или по-другому: что есть тот полезный сигнал, с которым сравнивается входной шум?

  26. #23

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Никакой особый "полезный сигнал" там не подразумевается. Меряется тупо уровень несущей на входе приемника. Точнее даже, внутри микросхемы фактически измеряется степень изменения напряжения в цепи АРУ, выделяется дифференциальным усилителем, оцифровывается и записывается в регистр RSSI. Некоторые микросхемы меряют только уровень несущей полезного сигнала и только на канале, на котором установлена связь по заданному протоколу. Разумеется, для наших целей это не подходит. Нам ведь надо и помеху измерить, причем на любой частоте. А микросхема C2500 при определенном сочетании настроек меряет всё, что попало на вход приемника, включая шум и сосредоточенные помехи. Поскольку измерение уровня сигнала завязано на цепь АРУ, результат прогона по спектру сильно зависит от настройки скорости срабатывания АРУ. Иначе цифровой фильтр в цепи АРУ сильно "сглаживает" входной шум, скрывая возможные спорадические выбросы помех.

    Всё сказанное относится именно к микросхеме C2500, про другие ничего сказать не могу...

  27. #24

    Регистрация
    04.02.2008
    Адрес
    Москва, Строгино
    Возраст
    52
    Сообщений
    1,852
    Большое спасибо за разъяснения. Жаль, но в моём случае (А7105) измерение RSSI происходит только по детектированию приёма полезного сигнала и само значение RSSI записывается в регистр только после окончания RX-State. Иными словами: читать RSSI можно, но, пока нет приёма сигнала, регистр не обновляется.
    Вообще, информация по А7105 крайне скудная и неудобоваримая, не смотря на то, что чип этот довольно популярен.

    Покопался в даташите и обнаружил, что был неправ. Есть режим измерения RSSI без приёма полезного сигнала. Китайцы обозвали его: Auto RSSI measurement for Background Power. А режим, который я описывал выше называется Auto RSSI measurement for TX Power.

    Auto RSSI measurement for Background Power:
    1. Set wanted FRXLO. Установка частоты гетеродина.
    2. Set RSS= 1 (1Eh), FSARS= 1 (1Eh, 4MHz ADC clock). Биты конфигурации
    3. Enable ARSSI= 1 (01h). Бит разрешения автоматического измерения RSSI
    4. Send RX Strobe command. Переключение в состояние приёмника
    5. MCU delays min. 140us.
    6. Read digital RSSI value from ADC [7:0] (1Dh) to get background power.
    7. Send other Strobe command to let A7105 exit RX mode.
    Думаю, что теперь я смогу сделать анализатор.
    P.S. Вы выложили проект для Меги, но я с Атмелами не дружу и хотел попросить, если возможно, выложите библиотеки для дисплеев отдельно.
    Последний раз редактировалось MPetrovich; 03.11.2015 в 16:02.

  28. #25

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Цитата Сообщение от MPetrovich Посмотреть сообщение
    выложите библиотеки для дисплеев отдельно.
    На всякий случай хочу уточнить, для дисплеев на каких дисплейных чипах? Те, которые упомянуты в исходнике прошивки?

  29. #26

    Регистрация
    04.02.2008
    Адрес
    Москва, Строгино
    Возраст
    52
    Сообщений
    1,852
    Цитата Сообщение от Rover Посмотреть сообщение
    Те, которые упомянуты в исходнике прошивки?
    Да, библиотеки для тех дисплеев, которые Вы использовали в данном проекте.
    Последний раз редактировалось MPetrovich; 03.11.2015 в 17:07.

  30. #27

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Михаил, все необходимые исходники библиотек дисплеев уже выложены в архивах, прикрепленных к сообщениям #1 и #12.
    Папки называются
    Adafruit_GFX - это графическое ядро, его надо устанавливать обязательно, для любого графического дисплея

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

  31. #28

    Регистрация
    16.07.2014
    Адрес
    Москва
    Возраст
    47
    Сообщений
    3
    А какие ещё трансиверы можно использовать для спектроскопа на 2,4 ггц? RFM73 можно?

  32. #29

    Регистрация
    20.06.2005
    Адрес
    Красноярск
    Возраст
    52
    Сообщений
    1,495
    Записей в дневнике
    38
    Ключевое условие упомянуто в сообщениях #23 и #24. Трансивер должен иметь возможность измерять RSSI не только для уже действующего канала связи между двумя устройствами, а без установления связи с кем-либо (standalone or standby RSSI) просто по входу приемника и желательно на произвольной (или условно произвольной) частоте из своего рабочего диапазона. Нужно читать даташит конкретной микросхемы и смотреть, может она это или нет.

  33. #30

    Регистрация
    11.01.2011
    Адрес
    Ярославль
    Возраст
    32
    Сообщений
    1,637
    Цитата Сообщение от Атипичный Анчоус Посмотреть сообщение
    А какие ещё трансиверы можно использовать для спектроскопа на 2,4 ггц? RFM73 можно?
    Возможно, NRF24L01+
    Но сканер NRF24L01+ выглядит блекло на фоне данной темы.
    http://forum.amperka.ru/threads/nrf2...05/#post-25295


  34. #31

    Регистрация
    04.02.2008
    Адрес
    Москва, Строгино
    Возраст
    52
    Сообщений
    1,852
    Ковырялся периодически во время отсутствия на форуме со своим вариантом спектроанализатора на А7105. Сначала воодушевился вариантом сделать монитор на дисплейчике от Nokia 3310(5510), разломал несколько библиотек под свои нужды, но в конце концов понял, что экран очень маленький и спектр можно будет увидеть только приблизительно. Покупать какой-либо другой дисплей покрупнее не захотелось и я решил написать приложение под Windows, которое будет отрисовывать пришедшие с приёмника А7105 по USART значения RSSI.
    Ну, на стороне приёмника программа примитивнейшая: инициализация, ожидание команды на сканирование(ждём прихода символа 'S' по USART), цикл сканирования(переключается канал, пауза для установки частоты гетеродина, чтение значения из регистра RSSI, передача значения RSSI по USART), при выходе из цикла обнуляем номер канала.
    С отрисовкой я провошкался довольно долго, но всё таки победил. Оказалось, что есть проблема в скорости приёма компом информации по USART. Опытным путём добился максимальной скорости 40 байт/сек и то при смене приоритета для приложения в диспетчере задач на "реального времени". Это грустно. Но запуская сканирование несколько раз подряд спектр увидеть можно.
    Если кому интересно поиграться, выложу приложение. Однако, в нём есть ряд ограничений, которые надо учитывать при использовании.

  35. #32

    Регистрация
    30.08.2004
    Адрес
    Бугульма, Татарстан
    Возраст
    70
    Сообщений
    263
    Поиграться интересно.
    Цитата Сообщение от MPetrovich Посмотреть сообщение
    Оказалось, что есть проблема в скорости приёма компом информации по USART. Опытным путём добился максимальной скорости 40 байт/сек и то при смене приоритета...
    Здесь я чего-то не врубился. 115200 бит/сек = 10 кбайт/сек, 19200 = 2 килобайта/сек. Проблема может возникнуть разве что при передаче байтов по одному, да и то наверное только при использовании очень плохого переходника USB ->COM. Суть проблемы непонятна.

  36. #33
    Забанен
    Регистрация
    25.04.2003
    Адрес
    Бузулук
    Возраст
    55
    Сообщений
    15,343
    Записей в дневнике
    10
    Странно.
    У меня отрисовка 2 каналов(10 бит разрешение) при 200 точках около 1 секунды.
    Скорость не максимальная, 57600, без всякой оптимизации.
    Последний раз редактировалось Панкратов Сергей; 20.11.2015 в 20:30.

  37. #34

    Регистрация
    04.02.2008
    Адрес
    Москва, Строгино
    Возраст
    52
    Сообщений
    1,852
    Цитата Сообщение от Панкратов Сергей Посмотреть сообщение
    Странно.
    У меня отрисовка 2 каналов(10 бит разрешение) при 200 точках около 1 секунды.
    Скорость не максимальная, 57600, без всякой оптимизации.
    Я, честно говоря, уже не в первый раз натыкаюсь на невозможность обмена данными с компом на нормальной скорости. Одиночные байты пролетают без проблем(пробовал скорости до 2МБит.сек), но стоит запустить пакеты данных - тут же возникают тормоза или вовсе виснет комп. Причём я пробовал по крайней мере два варианта переходников: один на USB/USART на FS-ке, другой - BlueTooth модуль. К компам тоже подключал разным(по меньшей мере 3 варианта), но результат тот же.
    Консультировался на Cyberforum.ru, там мне всяко-разно советовали, но существенного улучшения добиться так и не удалось.
    Может проблема в алгоритме отрисовки? Я пытаюсь каждый канал отрисовывать в реальном времени(по приходу каждого значения RSSI с приёмника). Может нужно засовывать весь спектр в буфер, а потом отрисовывать из буфера? Или метод какой-то другой на форме использовать?

  38. #35
    Забанен
    Регистрация
    25.04.2003
    Адрес
    Бузулук
    Возраст
    55
    Сообщений
    15,343
    Записей в дневнике
    10
    Я рисую в реальном времени.

  39. #36

    Регистрация
    30.08.2004
    Адрес
    Бугульма, Татарстан
    Возраст
    70
    Сообщений
    263
    Оптимально - передавать по строкам. Между строками желательно маркеры (конец строки). Строка принимается в буфер порта, быстро считывается в память, и начинает отрисовываться, в это время в буфере порта накапливается следующая строка. Отрисовка должна происходить быстрее чем период между строками - иначе буфер будет переполняться. Com порт работает автономно и процессор не грузит.

  40. #37

    Регистрация
    04.02.2008
    Адрес
    Москва, Строгино
    Возраст
    52
    Сообщений
    1,852
    Цитата Сообщение от Buranov_P Посмотреть сообщение
    Оптимально - передавать по строкам.
    А какие параметры строки(длина, кол-во стоп-битов)?
    Цитата Сообщение от Buranov_P Посмотреть сообщение
    Строка принимается в буфер порта, быстро считывается в память, и начинает отрисовываться
    Если я правильно понял, отрисовка спектра будет производится кусками размером определяемом кол-вом символов в строке?
    P.S. Вы WinFormApplicatin используете?

  41. #38

    Регистрация
    30.08.2004
    Адрес
    Бугульма, Татарстан
    Возраст
    70
    Сообщений
    263
    To MPetrovich.
    Длина строки определяется сканером. В этой теме 160 или 204 байта, плюс маркер.
    В качестве маркера можно, например, использовать 0x00 а сигналы каналов сделать в диапазоне 1 - 255. Можно использовать комбинацию байт, но в данном случае не стоит.
    Отрисовка построчно. Алгоритм например такой: Проверяется число байт в буфере COM порта. Если больше длины строки - считываем до маркера (включительно) и рисуем строку. Если количество байт в буфере меньше длины строки - ожидаем, когда накопится. Далее все это в цикле. (На самом деле не все так просто. В этом алгоритме нет времени на опрос событий формы (окна), поэтому все заткнется. Скорее всего придется использовать таймер. (Или переходить к многопоточности ). Главное - отрисовка должна быть быстрее, чем период прихода строк.
    P.S. Вы WinFormApplicatin используете?
    Не понял вопроса. Я обычно использую VB2008 (а если удается - то и VB6). Другие языки для меня "не родные" (хотя случается...). При выборе типа проекта выбираю WinFormApplication. Или здесь о другом?
    P.S. Что понимается под "отрисовка строки" ? IMHO достаточно наглядно представление в виде "водопада" (термин из радиолюбительской практики. SDR приемники).

  42. #39

    Регистрация
    22.03.2004
    Адрес
    Кемерово
    Возраст
    43
    Сообщений
    3,079
    Записей в дневнике
    18
    не 2.4 правда....

  43. #40

    Регистрация
    26.07.2009
    Адрес
    Тольятти
    Возраст
    49
    Сообщений
    1,153
    Записей в дневнике
    2
    Сергей, поделитесь более подробной информацией об этом проекте?

Закрытая тема

Похожие темы

  1. FrSky 2.4GHz FHSS, новый игрок на рынке 2.4ГГц
    от Felar Furlong в разделе Аппаратура радиоуправления
    Ответов: 4665
    Последнее сообщение: 22.11.2019, 17:36
  2. Продам Новую аппаратуру - 4 штуки (2,4ГГц, 27МГЦ, WiFi)
    от Slavius.ru в разделе Барахолка. Аппаратура
    Ответов: 4
    Последнее сообщение: 19.08.2015, 21:33
  3. Куплю прошиватор для RF модуля Orange DSM 2,4ГГц
    от Meesha в разделе Барахолка. Аппаратура
    Ответов: 2
    Последнее сообщение: 10.11.2014, 18:13
  4. Куплю Передающий модуль 2,4ГГц GFSK PPM AV-TM002 и ему подобные Turnigy RF9X-V2 module
    от scgorodok в разделе Барахолка. Аппаратура
    Ответов: 0
    Последнее сообщение: 27.09.2014, 14:13
  5. Переход на аппаратуру 2,4гГц...
    от teacher в разделе Танки
    Ответов: 6
    Последнее сообщение: 30.05.2014, 12:41

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения