elemmire 0 2 апреля, 2015 Опубликовано 2 апреля, 2015 (изменено) · Жалоба Осваиваю CC430 на примере двух плат TE-CC430F51-433 (CC430F5137) В основу взял готовый проект-пример от Техаса "Fixed_LT_FIFO" (что может быть проще? Всё и так разжёвано...) Заменил настройки периферии. Заменил настройки RF_SETTINGS согласно SmartRF. На передачу, вроде как, всё работает. Анализатор спектра показывает нужный всплеск мощности на нужной частоте. Мощность регулируется (пробовал 0 дБм и 10 дБм). Вместо антенны пока использую две проволоки под 433 МГц по 17 см. Хотя на столе, должно, наверное, и так работать (как по опыту, кто делал?). А вот на приём срабатывать не хочет. Через дебаг мониторю регистры...ничего. Полагаю, что всё таки не докрутил настройки RF1A... Вроде как GDO0 должен срабатывать на приём? Причём согласно дебагу не срабатывает даже до проверки CRC\LQI. Подскажите, пожалуйста, если не настройки RF (ниже скинул) то где хотя бы смотреть. // Packet length mode = Variable packet length mode. Packet length configured by the first byte after sync word // Packet length = 255 // Manchester enable = false // Sync word qualifier mode = 30/32 sync word bits detected // Whitening = false // Modulation format = 2-FSK // RX filter BW = 58.035714 // Data rate = 1.19948 // Data format = Normal mode // Preamble count = 4 // PA ramping = false // Carrier frequency = 432.999817 // Deviation = 5.157471 // CRC autoflush = false // CRC enable = true // Channel number = 0 // Channel spacing = 199.951172 // Modulated = true // Address config = No address check // Base frequency = 432.999817 // TX power = 0 // Device address = 0 // Rf settings for CC430 RF_SETTINGS rfSettings = { 0x06, // FSCTRL1 Frequency synthesizer control. 0x00, // FSCTRL0 Frequency synthesizer control. 0x10, // FREQ2 Frequency control word, high byte. 0xA7, // FREQ1 Frequency control word, middle byte. 0x62, // FREQ0 Frequency control word, low byte. 0xF5, // MDMCFG4 Modem configuration. 0x83, // MDMCFG3 Modem configuration. 0x03, // MDMCFG2 Modem configuration. 0x22, // MDMCFG1 Modem configuration. 0xF8, // MDMCFG0 Modem configuration. 0x00, // CHANNR Channel number. 0x15, // DEVIATN Modem deviation setting (when FSK modulation is enabled). 0x56, // FREND1 Front end RX configuration. 0x10, // FREND0 Front end TX configuration. 0x10, // MCSM0 Main Radio Control State Machine configuration. 0x16, // FOCCFG Frequency Offset Compensation Configuration. 0x6C, // BSCFG Bit synchronization Configuration. 0x43, // AGCCTRL2 AGC control. 0x40, // AGCCTRL1 AGC control. 0x91, // AGCCTRL0 AGC control. 0xE9, // FSCAL3 Frequency synthesizer calibration. 0x2A, // FSCAL2 Frequency synthesizer calibration. 0x00, // FSCAL1 Frequency synthesizer calibration. 0x1F, // FSCAL0 Frequency synthesizer calibration. 0x59, // FSTEST Frequency synthesizer calibration. 0x81, // TEST2 Various test settings. 0x35, // TEST1 Various test settings. 0x09, // TEST0 Various test settings. 0x47, // FIFOTHR RXFIFO and TXFIFO thresholds. 0x29, // IOCFG2 GDO2 output pin configuration. 0x06, // IOCFG0 GDO0 output pin configuration. Refer to SmartRF® Studio User Manual for detailed pseudo register explanation. 0x04, // PKTCTRL1 Packet automation control. 0x05, // PKTCTRL0 Packet automation control. 4 0x00, // ADDR Device address. 0x05, // PKTLEN Packet length. 0xFB // WORCTRL Wake On Radio Control <- добавил сам, но пробовал и с ним и без него }; Изменено 2 апреля, 2015 пользователем _EL Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mcheb 0 2 апреля, 2015 Опубликовано 2 апреля, 2015 · Жалоба Осваиваю CC430 на примере двух плат TE-CC430F51-433 (CC430F5137) Хотя на столе, должно, наверное, и так работать (как по опыту, кто делал?). На столе - перебор по мощности. Что Вы хотите увидеть? Сигнал,линк или ещё чего? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
elemmire 0 3 апреля, 2015 Опубликовано 3 апреля, 2015 (изменено) · Жалоба Что Вы хотите увидеть? Сигнал,линк или ещё чего? Для начала просто линк. Передать пакет (как в примере, например 0xAA, 0xBB, 0xCC, 0xDD, 0xEE ), получить его. После проверки, что это нужный пакет, а не мусор из эфира. дерунть какой-нибудь джипио. Т.к. вроде всё остальное из примера должно работать, допускаю, что где недонастроил rfSettings. Может полосу фильтрации "RX filter BW" надо менять или ещё...пока экспериментально меняю. На столе - перебор по мощности Уменьшил до -12 дБм, разносил от нуля до двух метров. Наверное, этого более чем достаточно. Изменено 3 апреля, 2015 пользователем _EL Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
elemmire 0 6 апреля, 2015 Опубликовано 6 апреля, 2015 (изменено) · Жалоба Сумел запустить связь. Проблем было несколько. 1. Изменил мощность. Устойчивая связь в пределах метра-трёх на -6 дБм. 2. Увеличил полосу RX до 162 кГц. По умолчанию 58 кГц. Не знаю с чем связано. Нестабильность частоты? Скрепка вместо нормальной антенны? После этого работала связь, но принимало ерунду (пакеты рвало только так). А именно длина принимаемого пакета (RxBufferLength ) читалась как 0x00 (из RF1ADOUTB)...как не крути. 3. Подправил параметры пакета, а именно его длину\размера RX\TX буфера. Обратился к примеру "Variable_LT_FIFO" и сотворил некий микс. В итоге что передаю, то и принимаю. Ура! Можно дальше усложнять... З.Ы. Усложнил схему с применением усилителя ADL5602\ADL5545 и двумя СВЧ ключами. Но уже, не на Терре, понятное дело. Сам развёл. Отдельной темой может отпишусь о получившийся дальности других результатах такого эксперимента. Изменено 6 апреля, 2015 пользователем _EL Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться