const uint32_t cdci6214_3G_reg[]= { 0x00460000, 0x00450000, 0x00440000, 0x00430020, 0x00420000, 0x00410F34, 0x0040000D, 0x003F0210, 0x003E4209, 0x003D1500, 0x003C0018, 0x003B106B, 0x003A0008, 0x00390A65, 0x00380405, 0x00370003, 0x00360000, 0x00358000, 0x00340008, 0x00330A65, 0x00320415, 0x0031C001, 0x00300000, 0x002F7600, 0x002E0008, 0x002D0A65, 0x002C0415, 0x002B0003, 0x002A0000, 0x00298000, 0x00280008, 0x00270A65, 0x00260405, 0x00250003, 0x00240000, 0x00238000, 0x00220050, 0x00210007, 0x00200000, 0x001F1E72, 0x001E5142, 0x001D8129, 0x001C0000, 0x001B2410, 0x001A0718, 0x00190000, 0x00180001, 0x00170000, 0x00160000, 0x00150000, 0x00140000, 0x00130000, 0x00120000, 0x001126C4, 0x0010921F, 0x000FA037, 0x000E0000, 0x000D0000, 0x000C0000, 0x000B0000, 0x000A0000, 0x00090000, 0x00080000, 0x00070000, 0x00060000, 0x00050020, 0x00040055, 0x00030000, 0x00020050, 0x00016822, 0x00001000, }; void CDCI6214_config(void) { //unlock data[0]=0xa0; data[1]=0x37; reg_data[0]=0; reg_data[1]=0xf; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); //unlock data[0]=0x40; data[1]=0x03; reg_data[0]=0; reg_data[1]=0x37; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); //unlock data[0]=0xa0; data[1]=0x37; reg_data[0]=0; reg_data[1]=0xf; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); for(i=0;i<71;i++) { union_TEMP.unsigned_int32=cdci6214_3G_reg[i]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=union_TEMP.unsigned_char8[0]; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); } union_TEMP.unsigned_int32=cdci6214_3G_reg[70-60]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=union_TEMP.unsigned_char8[0]; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); union_TEMP.unsigned_int32=cdci6214_3G_reg[70-61]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=union_TEMP.unsigned_char8[0]; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); union_TEMP.unsigned_int32=cdci6214_3G_reg[70-62]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=union_TEMP.unsigned_char8[0]; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); for(i=0;i<3;i++) { union_TEMP.unsigned_int32=cdci6214_3G_reg[70-59]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=union_TEMP.unsigned_char8[0]; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); } SYS_Delay(500); // while(GPIO_GetBit(CDCE6214_STATUS_IO,CDCE6214_STATUS)==0) { union_TEMP.unsigned_int32=cdci6214_3G_reg[70]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=0x10; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); SYS_Delay(500); union_TEMP.unsigned_int32=cdci6214_3G_reg[70]; data[0]=union_TEMP.unsigned_char8[1]; data[1]=0x0; reg_data[0]=union_TEMP.unsigned_char8[3]; reg_data[1]=union_TEMP.unsigned_char8[2]; Write_I2C(CDCI6214_ADDR,reg_data,data,2,2); SYS_Delay(500); }