Обсуждаем приемники, передатчики, радиомикрофоны, жучки, генераторы, ВЧ-усилители, антенны и прочее радиохозяйство
Ответить

SI4060 rev.C

Вс авг 16, 2020 22:46:19

Всем привет!

С помощью WDS создал конфигурацию. Получилось вот что:
Код:
#define RADIO_CONFIGURATION_DATA_ARRAY { \
        SI446X_PATCH_CMDS, \
        0x07, RF_POWER_UP, \
        0x08, RF_GPIO_PIN_CFG, \
        0x06, RF_GLOBAL_XO_TUNE_2, \
        0x05, RF_GLOBAL_CONFIG_1, \
        0x05, RF_INT_CTL_ENABLE_1, \
        0x08, RF_FRR_CTL_A_MODE_4, \
        0x07, RF_PREAMBLE_TX_LENGTH_3, \
        0x09, RF_PREAMBLE_CONFIG_5, \
        0x0A, RF_SYNC_CONFIG_6, \
        0x0C, RF_PKT_CRC_CONFIG_8, \
        0x05, RF_PKT_TX_THRESHOLD_1, \
        0x10, RF_PKT_FIELD_1_LENGTH_12_8_12, \
        0x0C, RF_PKT_FIELD_4_LENGTH_12_8_8, \
        0x10, RF_MODEM_MOD_TYPE_12, \
        0x05, RF_MODEM_FREQ_DEV_0_1, \
        0x10, RF_MODEM_TX_RAMP_DELAY_12, \
        0x10, RF_MODEM_BCR_NCO_OFFSET_2_12, \
        0x07, RF_MODEM_AFC_LIMITER_1_3, \
        0x05, RF_MODEM_AGC_CONTROL_1, \
        0x10, RF_MODEM_AGC_WINDOW_SIZE_12, \
        0x07, RF_MODEM_RAW_CONTROL_3, \
        0x06, RF_MODEM_RAW_SEARCH2_2, \
        0x05, RF_MODEM_SPIKE_DET_1, \
        0x08, RF_PA_MODE_4, \
        0x0B, RF_SYNTH_PFDCP_CPFF_7, \
        0x0B, RF_FREQ_CONTROL_INTE_7, \
        0x00 \
 }

Здесь всё понятно: первое число - это количество байт, которое необходимо отправить за одну SPI посылку. Далее ждём высокого уровня на CTS и отправляем следующую посылку. Наткнулись на 0х00 - выходим.
Возникает два вопроса: можно ли отправить команду RF_GPIO_PIN_CFG до RF_POWER_UP? Я как-то с ходу не нашёл в даташитах и апнотах порядок посылки команд при инициализации. Просто у меня пин CTS перенесён с пина по умолчанию на пин nirq. Думаю поступить так: отправить команду на смену пина, ждать высокого уровня на новом пине CTS и дальше засылать эту портянку.
Второй вопрос.
В самом начале видим SI446X_PATCH_CMDS. Оно разворачивается в такую кухню
Код:
#define SI446X_PATCH_CMDS                   \
0x08,0x04,0x21,0x71,0x4B,0x00,0x00,0xDC,0x95, \
0x08,0x05,0xA6,0x22,0x21,0xF0,0x41,0x5B,0x26, \
0x08,0xE2,0x2F,0x1C,0xBB,0x0A,0xA8,0x94,0x28, \
0x08,0x05,0x87,0x67,0xE2,0x58,0x1A,0x07,0x5B, \
0x08,0xE1,0xD0,0x72,0xD8,0x8A,0xB8,0x5B,0x7D, \
0x08,0x05,0x11,0xEC,0x9E,0x28,0x23,0x1B,0x6D, \
0x08,0xE2,0x4F,0x8A,0xB2,0xA9,0x29,0x14,0x13, \
0x08,0x05,0xD1,0x2E,0x71,0x6A,0x51,0x4C,0x2C, \
0x08,0xE5,0x80,0x27,0x42,0xA4,0x69,0xB0,0x7F, \
0x08,0x05,0xAA,0x81,0x2A,0xBD,0x45,0xE8,0xA8, \
0x08,0xEA,0xE4,0xF0,0x24,0xC9,0x9F,0xCC,0x3C, \
0x08,0x05,0x08,0xF5,0x05,0x04,0x27,0x62,0x98, \
0x08,0xEA,0x6B,0x62,0x84,0xA1,0xF9,0x4A,0xE2, \
0x08,0x05,0xE9,0x77,0x05,0x4F,0x84,0xEE,0x35, \
0x08,0xE2,0x43,0xC3,0x8D,0xFB,0xAD,0x54,0x25, \
0x08,0x05,0x14,0x06,0x5E,0x39,0x36,0x2F,0x45, \
0x08,0xEA,0x0C,0x1C,0x74,0xD0,0x11,0xFC,0x32, \
0x08,0x05,0xDA,0x38,0xBA,0x0E,0x3C,0xE7,0x8B, \
0x08,0xEA,0xB0,0x09,0xE6,0xFF,0x94,0xBB,0xA9, \
0x08,0x05,0xD7,0x11,0x29,0xFE,0xDC,0x71,0xD5, \
0x08,0xEA,0x7F,0x83,0xA7,0x60,0x90,0x62,0x18, \
0x08,0x05,0x84,0x7F,0x6A,0xD1,0x91,0xC6,0x52, \
0x08,0xEA,0x2A,0xD8,0x7B,0x8E,0x4A,0x9F,0x91, \
0x08,0x05,0xBD,0xAA,0x9D,0x16,0x18,0x06,0x15, \
0x08,0xE2,0x55,0xAD,0x2D,0x0A,0x14,0x1F,0x5D, \
0x08,0x05,0xD3,0xE0,0x7C,0x39,0xCF,0x01,0xF0, \
0x08,0xEF,0x3A,0x91,0x72,0x6A,0x03,0xBB,0x96, \
0x08,0xE7,0x83,0x6D,0xA4,0x92,0xFC,0x13,0xA7, \
0x08,0xEF,0xF8,0xFD,0xCF,0x62,0x07,0x6F,0x1E, \
0x08,0xE7,0x4C,0xEA,0x4A,0x75,0x4F,0xD6,0xCF, \
0x08,0xE2,0xF6,0x11,0xE4,0x26,0x0D,0x4D,0xC6, \
0x08,0x05,0xFB,0xBF,0xE8,0x07,0x89,0xC3,0x51, \
0x08,0xEF,0x82,0x27,0x04,0x3F,0x96,0xA8,0x58, \
0x08,0xE7,0x41,0x29,0x3C,0x75,0x2A,0x03,0x1C, \
0x08,0xEF,0xAF,0x59,0x98,0x36,0xAA,0x0F,0x06, \
0x08,0xE6,0xF6,0x93,0x41,0x2D,0xEC,0x0E,0x99, \
0x08,0x05,0x29,0x19,0x90,0xE5,0xAA,0x36,0x40, \
0x08,0xE7,0xFB,0x68,0x10,0x7D,0x77,0x5D,0xC0, \
0x08,0xE7,0xCB,0xB4,0xDD,0xCE,0x90,0x54,0xBE, \
0x08,0xE7,0x72,0x8A,0xD6,0x02,0xF4,0xDD,0xCC, \
0x08,0xE7,0x6A,0x21,0x0B,0x02,0x86,0xEC,0x15, \
0x08,0xE7,0x7B,0x7C,0x3D,0x6B,0x81,0x03,0xD0, \
0x08,0xEF,0x7D,0x61,0x36,0x94,0x7C,0xA0,0xDF, \
0x08,0xEF,0xCC,0x85,0x3B,0xDA,0xE0,0x5C,0x1C, \
0x08,0xE7,0xE3,0x75,0xBB,0x39,0x22,0x4B,0xA8, \
0x08,0xEF,0xF9,0xCE,0xE0,0x5E,0xEB,0x1D,0xCB, \
0x08,0xE7,0xBD,0xE2,0x70,0xD5,0xAB,0x4E,0x3F, \
0x08,0xE7,0xB7,0x8D,0x20,0x68,0x6B,0x09,0x52, \
0x08,0xEF,0xA1,0x1B,0x90,0xCD,0x98,0x00,0x63, \
0x08,0xEF,0x54,0x67,0x5D,0x9C,0x11,0xFC,0x45, \
0x08,0xE7,0xD4,0x9B,0xC8,0x97,0xBE,0x8A,0x07, \
0x08,0xEF,0x52,0x8D,0x90,0x63,0x73,0xD5,0x2A, \
0x08,0xEF,0x03,0xBC,0x6E,0x1C,0x76,0xBE,0x4A, \
0x08,0xE7,0xC2,0xED,0x67,0xBA,0x5E,0x66,0x21, \
0x08,0xEF,0xE7,0x3F,0x87,0xBE,0xE0,0x7A,0x6D, \
0x08,0xE7,0xC9,0x70,0x93,0x1D,0x64,0xF5,0x6C, \
0x08,0xEF,0xF5,0x28,0x08,0x34,0xB3,0xB6,0x2C, \
0x08,0xEF,0x3A,0x0A,0xEC,0x0F,0xDB,0x56,0xCA, \
0x08,0xEF,0x39,0xA0,0x6E,0xED,0x79,0xD0,0x24, \
0x08,0xE7,0x6C,0x0B,0xAF,0xA9,0x4E,0x40,0xB5, \
0x08,0xE9,0xB9,0xAF,0xBF,0x25,0x50,0xD1,0x37, \
0x08,0x05,0x9E,0xDB,0xDE,0x3F,0x94,0xE9,0x6B, \
0x08,0xEC,0xC5,0x05,0xAA,0x57,0xDC,0x8A,0x5E, \
0x08,0x05,0x70,0xDA,0x84,0x84,0xDD,0xCA,0x90

и ломает всю картину мироздания. Команда 0х08 в API не описана. Необходимо ли ждать CTS после отправки каждой строчки или можно стрелять, как из пулемета?
Ответить