Цитата(proxi @ Jan 28 2010, 19:08)

там не положенно, сколько выставите 1,5,10.15.30 МГц столько и будет, только в слипе будет RC 32 в сшатдауне и этого нет... я бы рекомендовал процессору свой генератор, хотя бы RC внутренний...а потом перехват на внешний у некоторых МК вроде можно?
так код покажите, так нагляднее будет...
Регистр 0х0А Microcontroller Output Clock - по умолчанию загружен как xx000110 - т.е. выбрана частота 1 мГц. Потом да можно выбрать любую другую. Или это не так? Хотя когда я все таки достучался до передатчика регистр 0х0А был настроен на 1 мГц.
Register 62h. Crystal Oscillator/Power-on-Reset Control - 3 старших бита считываются как 000 т.е. проц в спячке.
Register 02h. Device Status 2 младших бита 00. IDLE состояние.
Кусок инициализации:
write_reg(0x75, 0x53); //Frequency Band Select register
write_reg(0x76, 0x4B); //write 0xBB to the Nominal Carrier Frequency1 register
write_reg(0x77, 0x00); //write 0x80 to the Nominal Carrier Frequency0 register
//Configure the receive packet handler
//Disable header bytes; set variable packet length (the length of the payload is defined by the
//received packet length field of the packet); set the synch word to two bytes long
write_reg(0x33, 0x02 ); //write 0x02 to the Header Control2 register
//Disable the receive header filters
write_reg(0x32, 0x00 ); //write 0x00 to the Header Control1 register
//Set the sync word pattern to 0x2DD4
write_reg(0x36, 0x2D); //write 0x2D to the Sync Word 3 register
write_reg(0x37, 0xD4); //write 0xD4 to the Sync Word 2 register
//Enable the receive packet handler and CRC-16 (IBM) check
// write_reg(0x30, 0x85); //write 0x0D to the Data Access Control register
write_reg(0x30, 0x8D); //write 0x0D to the Data Access Control register
//объединение команд на прием и на передачу!!!!! в регистре 0x30
//Enable FIFO mode and GFSK modulation
write_reg(0x71, 0x63); //write 0x63 to the Modulation Mode Control 2 register
//set preamble detection threshold to 20bits
write_reg(0x35, 0x28); //write 0x30 to the Preamble Detection Control register
//set the GPIO's according the testcard type
#ifdef DIVR_MODE
write_reg(0x0C, 0x17); //write 0x12 to the GPIO1 Configuration(set the TX state)
write_reg(0x0B, 0x18); //write 0x12 to the GPIO0 Configuration(set the TX state)
write_reg(0x08, 0x80); //write 0x12 to the GPIO1 Configuration(set the TX state)
#else
// write_reg(0x0C, 0x12); //write 0x12 to the GPIO1 Configuration(set the TX state)
write_reg(0x0B, 0x12); //write 0x12 to the GPIO1 Configuration(set the TX state)
#endif
// write_reg(0x0D, 0x15); //write 0x15 to the GPIO2 Configuration(set the RX state)
//set the non-default Si4432 registers
//set the VCO and PLL
write_reg(0x5A, 0x7F); //write 0x7F to the VCO Current Trimming register
// write_reg(0x58, 0x80); //write 0xD7 to the ChargepumpCurrentTrimmingOverride register
write_reg(0x59, 0x40); //write 0x40 to the Divider Current Trimming register
//set the AGC
write_reg(0x6A, 0x0B); //write 0x0B to the AGC Override 2 register
//set ADC reference voltage to 0.9V
write_reg(0x68, 0x04); //write 0x04 to the Deltasigma ADC Tuning 2 register
write_reg(0x1F, 0x03); //write 0x03 to the Clock Recovery Gearshift Override register
write_reg(0x7E, 0x36);//граница очереди фифо на прием - 54 байта для прерывания
write_reg(0x34, 0x014); //write 0x09 to the Preamble Length register
//девиация на прием!!!!!!!!
// write_reg(0x72, 0x1F); //write 0x1F to the Frequency Deviation register
//Только для скорости выше 20к
// write_reg(0x70, 0x00);//write 0x01 to the Operating Function Control 1 register
/*enable receiver chain*/
write_reg(0x07, 0x05);//write 0x05 to the Operating Function Control 1 register
//Enable two interrupts:
// a) one which shows that a valid packet received: 'ipkval'
//

second shows if the packet received with incorrect CRC: 'icrcerror'
// с) фифо буфер почти полон
write_reg(0x05, 0x13); //write 0x03 to the Interrupt Enable 1 register
write_reg(0x06, 0x00); //write 0x00 to the Interrupt Enable 2 register
//read interrupt status registers to release all pending interrupts
ItStatus1 = read_reg(0x03);//read the Interrupt Status1 register
ItStatus2 = read_reg(0x04);//read the Interrupt Status2 register
Но при старте при отсутствии клоков проц до конфигурации si4432 просто не доходит.
Чтобы прочитать регистры clk на проц кинул с другой рабочей платы.