- 1.
status = CyU3PSpiInit ();
if (status != CY_U3P_SUCCESS)
{
CyU3PDebugPrint(4, "CyU3PSpiInit Err = 0x%x\r\n",status);//0x44:CY_U3P_ERROR_NOT_CONFIGURED
return status;
}
需要把 io_cfg.useSpi 设为true。
/* Configure the IO matrix for the device.*/
io_cfg.isDQ32Bit = CyFalse;
io_cfg.useUart = CyTrue;
io_cfg.useI2C = CyTrue;
io_cfg.useI2S = CyFalse;
io_cfg.useSpi = CyTrue;//ly_add CyFalse->CyTrue
io_cfg.lppMode = CY_U3P_IO_MATRIX_LPP_DEFAULT;
- CyU3PDebugPrint 串口输出调试信息 需要放在 esUVCUvcApplnDebugInit(); 后,此函数是初始化uart的。
- 初始化IO口需要先初始化时钟:
status = CyU3PGpioInit (&clkCfg, NULL);
再:
CyU3PDeviceGpioOverride();
最后:
CyU3PGpioSetSimpleConfig();
Cypress 有个GPIO demo : cyfxgpioapp.
如果CyU3PGpioSetSimpleConfig返回 0x44:CY_U3P_ERROR_NOT_CONFIGURED ,则说明IO口没有配置。
io_cfg.gpioSimpleEn[1] = 1<<(58-32) | 1<<(59-32);