主题中讨论的其他部件:PCF8574
工具/软件:Starterware
您好 ,iam与I/O扩展器PCF8574配合使用,工作正常,但需要进行更改才能与pCF 8575配合使用,但此设备没有响应,所有引脚端口都保持高, 我读 了端口,一直都响应0xFF,然后写了端口什么都不做,如果 更改了,则中断引脚,并将引脚设置为静音,我尝试使用100Mhz和400MHz,看不到任何变化。
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.
工具/软件:Starterware
您好 ,iam与I/O扩展器PCF8574配合使用,工作正常,但需要进行更改才能与pCF 8575配合使用,但此设备没有响应,所有引脚端口都保持高, 我读 了端口,一直都响应0xFF,然后写了端口什么都不做,如果 更改了,则中断引脚,并将引脚设置为静音,我尝试使用100Mhz和400MHz,看不到任何变化。
您好,Francis,
感谢您的回复,我尝试使用下一个示意图。
使用此配置,PCF8574响应和工作正常,但pCF 8575响应始终保持 在高位。
设备的地址为:
#define PCF_8575 0x38
#define PCF_8574 0x39
端口的配置为:
SysCtlPeripheralEnable(sysctl_Periph_GPIOE);
SysCtlPeripheralEnable(sysctl_Periph_I2C2);
SysCtlPeripheralReset(sysctl_Periph_I2C2);
GPIOPinConfigure(GPIO_PE4_I2C2SCL);
GPIOPinConfigure(GPIO_PE5_I2C2SDA );
GPIOPinTypeI2CSCL (GPIO _PORT_BASE,GPIO _PIN_4);
GPIOPinTypeI2C (GPIO _PORT_BASE,GPIO PIN_5);
HWREG (I2C2_BASE + I2C_O_MCR)= I2C_MCR_MFE;
I2CMasterInitExpClk (I2C2_base,SysClockGatet(),FALSE);
读取pCF 8575中数据的功能 为:
Int PCF_8575_Portin (void){
Int Dato;
Int dato2;
I2CMasterSlaveAddrSet (I2C2_base,PCF_8575,TRUE);
I2CMasterControl(I2C2_base, I2C_MASTER_CMD_STUSTREG_Receive_start );
while (I2CMasterBusy (I2C2_BASE))
{
}
Dato=I2CMasterDataSet(I2C2_base);
I2CMasterControl (I2C2_BASE,I2C_MASTER_CMD_STUSTREG_Receive_FINISH);
while (I2CMasterBusy (I2C2_BASE))
{
}
data2=I2CMasterDataSet(I2C2_base);
返回日期2;
}
pcf 8575中数据的写入功能 是:
void PCF_8575_PortOut (int data){
I2CMasterSlaveAddrSet(I2C2_base, PCF_8575 , false);
I2CMasterDataPut(I2C2_base, 0xff);
I2CMasterControl (I2C2_BASE,I2C_MASTER_CMD_STUSTREG_SEND_START);
while (I2CMasterBusy (I2C2_base));
I2CMasterDataPut(I2C2_base, 0x00);
I2CMasterControl (I2C2_BASE,I2C_MASTER_CMD_STUSTREG_SEND_FINISH);
while (I2CMasterBusy (I2C2_base));
感谢您的帮助。