您好!
我在使用 IO 扩展器时测试了 MOSFET 功能:
SDL 和 SCL 范围:
‘S将 P17位("源")设置为‘1 '(3.3 VDC)用于源选择、‘0 '用于灌电流选择。
但当我们使用 MOSFET 栅极端子连接 IO 扩展器输出时、发现栅源极端子电压为0.20V
因此、我删除了栅极终端的 IO 扩展器输出连接、并将 IO 扩展器的 VCC 与栅极终端连接、栅源极端子之间的电压为3.2V。没有压降。
请分享您对此问题的评论。
此致、
Kiranjit
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我在使用 IO 扩展器时测试了 MOSFET 功能:
SDL 和 SCL 范围:
‘S将 P17位("源")设置为‘1 '(3.3 VDC)用于源选择、‘0 '用于灌电流选择。
但当我们使用 MOSFET 栅极端子连接 IO 扩展器输出时、发现栅源极端子电压为0.20V
因此、我删除了栅极终端的 IO 扩展器输出连接、并将 IO 扩展器的 VCC 与栅极终端连接、栅源极端子之间的电压为3.2V。没有压降。
请分享您对此问题的评论。
此致、
Kiranjit
尊敬的 Kiranjit:
Unknown 说:但是当我们使用 MOSFET 栅极终端连接 IO-Expander 输出时、发现门源极端子电压为0.20V
您是说您没有看到 P17输出逻辑高电平(3.3V)吗?
或者您是说在预计约为3.2V 时、输出仅显示0.2V 吗?
您是否还能够从软件角度验证如何配置器件? ->您是否在配置寄存器中将器件设置为输出,然后在输出寄存器中将器件设置为输出高电平?
你的示波器是一个有点缩小,但它似乎你正在获得通信. 在您发送器件地址时、您是否能够验证器件是否已确认?
-鲍比
尊敬的 Bobby:
感谢您的答复。
MOSFET 问题现已解决。
IO 扩展器的内部寄存器的工作存在一些差异。
如下所示、端口0寄存器用于低8位(LSB)、端口1寄存器用于高8位。
但观察到输出端口0针对高8位正常工作(与数据表中的预期值相反)。
请提供您对上述意见的评论。
另外、我想知道能否将12个 MOSFET (BSS138LT1G)与 IO 扩展器的 P17位进行连接? IO 扩展器能够驱动12个 MOSFET (BSS138LT1G)或不能驱动?
请同时告知相关信息。
谢谢。
Gaurav
如下所示、端口0寄存器用于低8位(LSB)、端口1寄存器用于高8位。
但观察到输出端口0针对高8位正常工作(与数据表中的预期值相反)。
[/报价]
输出端口1将配置引脚 P1x (例如此寄存器的位7控制 P17)的输出状态(高电平或低电平)。
此外,我想我能将12个 MOSFET (BSS138LT1G)与 IO-Expander 的 P17位接口吗? IO 扩展器能够驱动12个数量的 MOSFET (BSS138LT1G)或不能驱动?驱动 NMOS 通常只需要向栅极施加电压。 如果施加栅极电压、且源极电压产生栅源电压大于 Vth 的栅极电压、则 FET 将在线性区域导通。 并联添加多个 NFET 只会增加引脚需要驱动/克服的电容。 如果需要、您可以在 P17上并联放置12个 FET、但它们都将同时导通/关断、这意味着如果连接到 P17、则无法单独控制每个 FET。 FET 数据表中的 Vth 最大值为1.5V、栅极连接至 P17的 PFET、但没有电流负载、因此栅极电压应显示器件的 Vcc (3.3V)。 在原理图中、源极连接到 FET 的 GND、因此源极始终为 GND、当栅极驱动为高电平时使 Vgs 为3.3V。 这适用于您并联连接的所有12个 FET。 由于 P17的引脚上没有电流负载、因此您无需担心内部 PFET 上的压降或芯片中的温度升高。 通常、建议在驱动器上放置一个弱串联电阻、以确保 CMOS 输入(我们器件的 P 端口将输入和输出端连接在一起)不会因浪涌电流而损坏、尤其是电容性负载(驱动时看起来像是暂时对 GND 短路)。
-鲍比
[/quote]
尊敬的 Bobby 和 Clemens:
感谢您的答复。
不知道此类错误。 这可能是软件问题。 请显示如何写入寄存器。
输出端口1将配置引脚 P1x (例如此寄存器的位7控制 P17)的输出状态(高电平或低电平)。
>>请浏览下面的代码片段:
//aui8txBuffer[0]= 0x03;//output reg 1
aui8txBuffer[0]= 0x02;//output reg 0
//aui8txBuffer[1]= 0x00;
aui8txBuffer[2]=(((ui16DiSourceSink<< 6)和0xff);
I2CSend(DI_SLAVEADDRESS, 3, aui8txBuffer[0]、aui8txBuffer[1]、aui8txBuffer[2]);
上面的代码部分将 P1x (P16)的位6驱动为高电平。 首先、我尝试使用输出 reg1、但我看到 P6上的输出是高电平、而不是 P16位、因此我反转了输出寄存器 i、e、使用输出寄存器0来驱动 P16高电平、这种做法可行。
这是否 IC 本身内部发生冲突?
此致、
Kiranjit