Перейти к содержанию
    

Zeal0t

Участник
  • Постов

    80
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Zeal0t

  • Звание
    Частый гость
    Частый гость
  • День рождения 11.08.1970

Контакты

  • Сайт
    Array

Посетители профиля

2 002 просмотра профиля
  1. добрый день имеется передатчик, который отправляет на частоте 29 кГц или 12 кГц некоторые данные. передача идет через антенну. передача формируется как старт-бит, 8 бит данных, стоп бит. скорость передачи 75bps. биты 0/1 формируются как амплитудная модуляция (если я правильно выражаюсь): есть генерация частоты на передатчике - передача логической 1, нет генерации частоты - передача логической 0. пауза между байтами не менее 1.5 байта. на приемнике я вижу эту генерацию, вижу паузы в генерации. выборка выполняется с ацп на частоте 62.5 кГц. при окне 128 байт удалось получить определять через БПФ или алгоритм герцеля текущую рабочую частоту передатчика. так, при работе на 29кГц, на 120 отсчете БПФ видно максимальную амплитуду, что соответствует частоте 29541. близко к оригиналу, но такое получилось дробление в БПФ. далее необходимо демодулировать сигнал в цифровой вид. я предполагаю делать по 84 выборки из исходного сигнала, усреднять эти 84 выборки, собирать усреднения в массив из 10 элементов. таким образом при скорости передачи 75bps и соответственно времени передачи 1 бита ~13.33ms имеем на приемнике усреднение по 84 выборкам и сбор 10 значений усреднения за 13.44ms при частоте выборок 62.5kHz. затем как то на основании min/max значение полученных с ацп "прикручивать" к этим выборкам алгоритм разбора 0/1 и упаковку это в байт. в приблизительном варианте это даже как то работает. но закрались сомнения что это хоть и работает, но возможно есть более правильные методы разбора такого сигнала? посоветуйте что почитать, посмотреть? и еще один вопрос. как то точно или косвенно можно ли на основании данных полученных после БПФ вычислить уровень сигнала? т.е. если передатчик находится на расстоянии 1м от приемника и на расстояние 3м от приемника это значение можно было как то получить/вычислить? если что то сумбурно или не досказал - отвечу, замеряю, отрисую ) приложил 2 изображения: внешний вид сигнала как я его вижу при чтении с АЦП и результат БПФ с пиком в 120 отсчете. спасибо.
  2. я делал тупо в лоб ) не знаю насколько это верно - но это работает. на плате кидаете его в CopperPour, подключенный к той же цепи
  3. быть может режим/обмен I2C не соблюдается до конца? быть может адрес не тот используется? хотя по дампу видно что он отдал данные.. вот с таким DEFAULT ADDRESS он у меня в свое время отвечал и корректно работал // MPU6050 7-bit adress = 0x68, 8-bit adress = 0xD0; #define MPU6050_ADDRESS_AD0_LOW 0x68 #define MPU6050_ADDRESS_AD0_HIGH 0x69 #define MPU6050_ADDRESS_DEFAULT (MPU6050_ADDRESS_AD0_LOW << 1) могу кинуть свои исходники. в свое время пока не перешел на другой датчик - успешно работали. там С но только под STM32. процессоро зависимый кусок там получается при работе с I2C
  4. попробуйте ему послать несколько команд перед чтением данных с него. в частности записать нужные значения в регистры 0x6B, 0x1A,0x19,0x1B,0x1C
  5. может на основании этого госта и ГОСТ 2.721 отображать как громкоговоритель с пьезоэлектрическим воздействием? Ведь есть же в госте 2.741-68 "Громкоговоритель магнитострикционный". Символ воздействия у него как раз из ГОСТ 2.721 Например вот так:
  6. Добрый день. Дали плату на ремонт/реверс, но никак не могу определить на ней 2 элемента из установленных. Нечто в корпусе SOT23-6 с маркировкой BB7L. Стоит после антенны до операционного усилителя. Нечто в корпусе SOT23-5 с маркировкой VC3. Насколько я понял используется как задающая сигнал CLK для фильтров MAX7490. Перерыл весь интернет - не ищутся даже похожие. В аналоговых м/с не гуру - прошу помощи. Спасибо.
  7. файлы манифестов пикада удалены? на 64-бит системах и при других случаях они сильно портят работу. p.s. данный скриншот это на win7-64bit но и на соседней машине с win10-64bit все точно так же работает
  8. скорее всего от того, что настраивается как SYSCFG->EXTICR[3] значит и прерывание тоже 3-е )) p.s. угадал )
  9. вместо EXTI3_IRQHandler нужно использовать EXTI15_10_IRQHandler и там внутри разбирать от 13 линии это запрос или нет
  10. 3 фазы там скорее всего пробрасываются через его коммутацию на двигатель, а сам контроллер питается от одной из фаз и нуля. можно попробовать подать ему на заземление 0 розетки и на одну из фаз фазу розетки. внутренняя логика должна взлететь
  11. если это PCAD то может вот это поможет? там есть и jump на нужную ноду p.s. ну или в net файле искать вот такие секции и вытаскивать нужные (net "SPI1_SCK" (node "U81" "39") (node "MU2" "6") (node "MU1" "6") )
  12. TPIN_ADC_CS ::off(); TPIN_ADC_START::off(); TPIN_ADC_POWER::on (); // на основании DS АЦП нужно 16 ms на запуск после подачи питания msDelay(16); TPIN_ADC_CS::on(); TPIN_ADC_START::on(); { CMD(ADS1248_CMD_RESET); CMD(ADS1248_CMD_SDATAC); CMD_RegRead(); // читаем все регистры } TPIN_ADC_START::off(); ........... TPIN_ADC_START::on(); { CMD_RegWrite(); // пишем измененные регистры } TPIN_ADC_START::off(); из рабочего проекта правда у меня есть управление пином START CMD( x ) - посылает по SPI команду АЦП
  13. есть #pragma pack но это больше относится к данным
  14. поставить кнопку параллельно конденсатору подключенному к цепи сброса МК нельзя схематично? просто разряжать конденсатор в цепи сброса на землю и все.
  15. основная функция PB4 - RST для JTAG. если пробуете под отладчиком то его нужно или отключать если не используется и еще, возможно, перемаппировать с отладочной ноги на GP/AF ногу
×
×
  • Создать...