TPS23882 PoE控制器技术文档

需积分: 9 1 下载量 154 浏览量 更新于2024-07-15 收藏 2.81MB PDF 举报
"TPS23882是德州仪器(TI)推出的一款针对3类2线对以太网供电(PoE)应用的 IEEE 802.3bt PoE 电源供应设备(PSE)控制器。这款控制器设计用于实现高效、精确的PoE系统管理,具备SRAM和内置200mΩ电流感应电阻器,支持多种功率分配选项。" TPS23882是一款高度集成的PoE控制器,适用于需要为网络设备供电的场合,如IP电话、无线接入点和网络摄像头等。它符合IEEE 802.3bt标准,该标准扩展了PoE的能力,允许向设备提供更高的功率,最高可达90瓦(W)。TPS23882控制器可以管理多达8个独立的PoE端口,每个端口都可以根据需要配置不同的功率输出。 该控制器的一大特点是其内置的SRAM,允许用户通过编程设置特定的功率限制,以确保输出精度在±3%之内。此外,它还包括200mΩ的RSENSE电阻,用于精确测量通过电源线传输的电流,从而监控和控制PoE端口的功率消耗。 TPS23882支持传统的PD(功率设备)电容测量功能,这有助于识别连接的PD设备的类型和分类,确保安全和有效的功率传输。对于2线对端口,它提供了灵活性,可以选择4W、7W、15.4W或30W的功率分配,以适应不同功率需求的设备。 在硬件布局方面,如文档所示,每个PoE端口都由SEN、GAT和DRAIN引脚组成,这些引脚分别对应于检测、开关控制和电源输出。连接到RJ45接口的电路图展示了如何配置电容和电阻以优化PoE性能。此外,还有I2C总线接口,用于与外部微控制器通信,如需要进一步配置或监测系统状态时。I2C总线上有SCL、INT、SDAO和SDAI引脚,以及可选的10nF电容,用于稳定通信。 TI的TPS23882还支持RAUTO功能,这可能是指自动检测和配置PoE端口的能力。这减少了对外部MCU的需求,简化了系统设计。同时,该控制器与TI的FirmPSE系统固件兼容,提供了即插即用的便利性。 总体而言,TPS23882是一款强大的PoE控制器,提供了高精度的功率管理和灵活的配置选项,适用于各种PoE应用。设计人员在开发PoE系统时,可以通过这款控制器实现高效、安全的电源分配,并且可以利用TI提供的技术文档、工具软件和社区支持进行设计优化。

解释这段代码逻辑 void TPS929120_CorrespondDriverIndexFrmtypeSts(uint8 u8_bus_id_in,uint8 u8_frmtype) { uint8 u8_ValidDrvNum = 0; uint8 u8_RepeatRnblDrvNum = 0; u8_RepeatRnblDrvNum = un_BusShareRam[u8_bus_id_in].st_Tps929120.u8_RepeatRnblMatrixDriverNumber; u8_ValidDrvNum = un_BusShareRam[u8_bus_id_in].st_Tps929120.u8_ValidMatrixDriverNumber; if(un_BusShareRam[u8_bus_id_in].st_Tps929120.st_DrvRnblSts.u8_Refresh_Driver_index == 0) { if( (u8_ValidDrvNum - un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount < u8_RepeatRnblDrvNum) && \ (u8_ValidDrvNum - un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount > 0) ) { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltFrmtypeCount = 0; un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_SendCpltDrvCounter = 0; if(u8_frmtype == TPS929120_PWMFRMMODE) { if(g_u8_Tps92912xFixedOperationAddressflg == 1) { if(TPS929120_FIXEDCHIPNUM == 2) { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = u8_RepeatRnblDrvNum; } else if(TPS929120_FIXEDCHIPNUM == 1) { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = TPS929120_FIXEDCHIPNUM + \ (u8_ValidDrvNum - un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount); } } else { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = \ (u8_ValidDrvNum - un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount) ; } } else { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = \ (u8_ValidDrvNum - un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount) ; } } else if(0 == (u8_ValidDrvNum - un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount)) { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltFrmtypeCount = 0; un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_SendCpltDrvCounter = 0; un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltDrvCount = 0; if(u8_ValidDrvNum >= u8_RepeatRnblDrvNum) { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = u8_RepeatRnblDrvNum; } else { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = u8_ValidDrvNum; } } else { un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_CpltFrmtypeCount = 0; un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_SendCpltDrvCounter = 0; un_BusShareRam[u8_bus_id_in].st_Tps929120.st_FrmtypeSts[u8_frmtype].u8_FrmPackDrvNumPerRnbl = u8_RepeatRnblDrvNum; } un_BusShareRam[u8_bus_id_in].st_Tps929120.st_DrvRnblSts.u8_Refresh_Driver_index = 1; } else { /NO CODE/ } }

2023-04-19 上传