if(anx_request_voltage_in_100mv(1)>=150 &&(xEC_TypeC_PD_Charge_Path_Selecct==0 ||xEC_TypeC_PD_Charge_Path_Selecct==1)) //Voltage >=20V { //CC1 xEC_TypeC_PD_Charge_Path_Selecct=1; SET_MASK(xEC_ChargePath, BIT1); PDVBUS1_EN_N_LO(); // MTK vbus enable Low Enable GPIO69 if(xEC_PDPWR_EN_Flag<=50) { xEC_PDPWR_EN_Flag++; PDPWR_EN_LO();//GPIO7D Default Low When Charge }else{ PDPWR_EN_HI();//GPIO7D Default High When Charge } //printf("\r\nCC1 AC Detected checked\r\n"); pd_current=(unsigned int)anx_request_current_in_50ma(1); xEC_PD_Support_Current_L=pd_current &0xff; xEC_PD_Support_Current_H=pd_current >> 8; PD_Support_MAX_Current=pd_current*50; }
时间: 2023-09-04 09:07:31 浏览: 190
这段代码是一个条件语句,检查输入电压是否大于等于150,并且判断xEC_TypeC_PD_Charge_Path_Selecct的值是否为0或1。如果满足这两个条件,程序将执行一系列操作。
首先,将xEC_TypeC_PD_Charge_Path_Selecct的值设置为1,并设置xEC_ChargePath的第1位为1。然后,通过调用PDVBUS1_EN_N_LO()函数来使能MTK的VBUS引脚(GPIO69)。接下来,检查xEC_PDPWR_EN_Flag的值是否小于等于50,如果是,则将xEC_PDPWR_EN_Flag递增1,并调用PDPWR_EN_LO()函数将GPIO7D引脚设置为低电平。如果xEC_PDPWR_EN_Flag的值大于50,则调用PDPWR_EN_HI()函数将GPIO7D引脚设置为高电平。
最后,通过调用anx_request_current_in_50ma(1)函数获取PD支持的电流值,并将其分别保存在xEC_PD_Support_Current_L和xEC_PD_Support_Current_H变量中。PD_Support_MAX_Current变量存储了PD支持的最大电流值,计算方式为pd_current乘以50。
请注意,这只是代码的一部分,可能还有其他相关的代码。
相关问题
这段设备树里有几个节点 anx7625@2c { phandle = <0x412>; reset-gpios = <0x37 0x1d 0x0>; enable-gpios = <0x37 0x57 0x0>; interrupts = <0x2 0x0>; interrupt-parent = <0x3fd>; reg = <0x58>; compatible = "analogix,anx7625"; ports { #size-cells = <0x0>; #address-cells = <0x1>; port@0 { reg = <0x0>; endpoint { phandle = <0x40d>; remote-endpoint = <0x406>; }; }; }; };
这段设备树中只有一个节点,节点名称为 "anx7625@2c",该节点包含了以下属性:
- phandle
- reset-gpios
- enable-gpios
- interrupts
- interrupt-parent
- reg
- compatible
此外,该节点还包含了一个名为 "ports" 的子节点,该子节点包含一个名为 "port@0" 的子节点,因此整个设备树中共有两个节点。
# Arguments for analyses cat_anx <- c("g",rep("c",8),rep("g",7),rep("c",4),"g","c") lev_anx <- c(1,rep(2,8),rep(1,7),rep(2,4),1,2)解释下以上代码
以上代码定义了两个向量cat_anx和lev_anx,用于后续的数据分析。
cat_anx向量中包含了26个元素,其中"g"表示高水平的类别变量,"c"表示低水平的类别变量。具体来说,向量中前面的11个元素是高水平的,接下来的7个元素是低水平的,再接下来的4个元素又是高水平的,最后的4个元素是先低后高的。
lev_anx向量中包含了26个元素,其中1表示高水平的类别变量,2表示低水平的类别变量。具体来说,向量中前面的1个元素是高水平的,接下来的8个元素是低水平的,再接下来的7个元素又是高水平的,最后的4个元素是低水平的,最后的1个元素是高水平的。这个向量似乎是一个与前面的cat_anx向量相对应的变量水平向量,可能用于后续的数据分析中。
阅读全文