在PMUCtrl.c里面增加 
void LDOCtrl_Write_Reg(MMP_UBYTE ubReg, MMP_UBYTE ubValue) 
{ 
 MMP_UBYTE Readreg; 
 MMP_USHORT ReadValue; 
 RTNA_DBG_Str(0, "LDOCtrl_Write_Reg!304\r\n"); 
#if 1 
 { 
  static MMP_I2CM_ATTR LDOI2C= { 
   MMP_I2CM_GPIO,   //i2cmID 
   0x60,    //ubSlaveAddr 
   8,      //ubRegLen 
   8,      //ubDataLen 
   0x0,     //ubDelayTime 
   MMP_FALSE,    //bDelayWaitEn 
   MMP_TRUE,    //bInputFilterEn 
   MMP_FALSE,    //b10BitModeEn 
   MMP_FALSE,    //bClkStretchEn 
   0,      //ubSlaveAddr1 
   0,      //ubDelayCycle 
   2,      //ubPadNum 
   200000 /*16KHZ*/,  //ulI2cmSpeed 
   MMP_TRUE,    //bOsProtectEn 
   MMP_GPIO18,     //sw_clk_pin 
   MMP_GPIO17,     //sw_data_pin 
   MMP_FALSE,   //bRfclModeEn  
   MMP_FALSE,   //bWfclModeEn 
   MMP_TRUE,           //bRepeatModeEn 
      0                   //ubVifPioMdlId 
  };   
  MMPF_I2cm_WriteReg(&LDOI2C, ubReg, ubValue); 
  MMPF_I2cm_ReadReg(&LDOI2C, 0x01, &ReadValue); 
  RTNA_DBG_Str(0, "MMPF_I2cm_ReadReg!335\r\n");RTNA_DBG_Long(0, Readreg); 
  RTNA_DBG_Str(0, "MMPF_I2cm_ReadReg!336\r\n");RTNA_DBG_Long(0, ReadValue); 
 } 
#else 
 RTNA_DBG_Str(0, "No PMU device!224\r\n"); 
#endif 
} 
 
其中LDO1寄存器地址为0x44; 
其中LDO1寄存器地址为0x46; 
ubValue的值的算法是  value=(Vtarget-0.7)*1000/25; 
只需要在sensor初始化之前设置其电压即可。 
 |