Hi
I am currently in the process of learning to use the LPCXpresso55S69 development board in conjunction with the OV7673 camera module. However, I have found that I cannot find the corresponding pins. According to the documentation in the application note AN12868 from NXP (https://www.nxp.com/docs/en/application-note/AN12868.pdf) and the open-source code on GitHub (https://github.com/nxp-appcodehub/dm-lpc55s69-multi-face-detection), OV7673 D0~D7 need to be connected to P0.0~P0.7, but I found that the P0.0~P0.6 interfaces on the development board are very scattered, such as P0.0 at P19[6], P0.6 at P20[7], but P0.7 is not found, it seems P0.7 is connected to U20[4]/SD0_CLK.
In addition, the D0~D7 wire connections in the official documentation image seem to be continuous.
If anybody could help me make better decisions it would be highly appreciated.
Regards
Mariposa Marina
Solved! Go to Solution.
Hello @Mariposa_Marina
Thanks for your interest in NXP Semiconductors products. The LPCXpresso55s69 - evk is just a demo board, not specifically developed for this application. So the used pins are not concentrated. You can place them as you design your hardware. For this demo board, the PIO0_7 is connected to R107 - 1 as below.
BR
Alice
Hello @Mariposa_Marina
Thanks for your interest in NXP Semiconductors products. The LPCXpresso55s69 - evk is just a demo board, not specifically developed for this application. So the used pins are not concentrated. You can place them as you design your hardware. For this demo board, the PIO0_7 is connected to R107 - 1 as below.
BR
Alice
Hi, @Alice_Yang
Thank you very much for your response.
I have an additional inquiry: Is it feasible to successfully run the application on the LPCXpresso55S69-EVK demo board by altering the pin connections for the OV7670 camera module? For instance, can I modify the camera_pin_Init function within the driver, specifically the IOCON->PIO settings, to change the default pins PIO0_0 to PIO0_7 to alternative pins? I am uncertain about the viability of this approach.
void camera_pin_Init(void){
/* Connect trigger sources to camera engine */
INPUTMUX_Init(INPUTMUX);
INPUTMUX->CAMERA_ENGINE_INPUTMUX[0] = 13; // set p0_13 as VSYNC input function pin, every edge will be responded
INPUTMUX->CAMERA_ENGINE_INPUTMUX[1] = 14; // set p0_14 as HSYNC input function pin, every edge will be responded
INPUTMUX->CAMERA_ENGINE_INPUTMUX[2] = 15; // set p0_15 as pixel input function pin, every edge will be responded
/* Turnoff clock to inputmux to save power. Clock is only needed to make changes */
INPUTMUX_Deinit(INPUTMUX);
// configure camera interface pins
IOCON->PIO[0][0] = PINFUNC_CAMERA | 1<<8|1<<10|2<<4| 1<<6; //set p0_0 D0 on the camera port
IOCON->PIO[0][1] = PINFUNC_CAMERA | 1<<8|2<<4| 1<<6; //set p0_1 D1 on the camera port
IOCON->PIO[0][2] = PINFUNC_CAMERA | 1<<8|2<<4| 1<<6; //set p0_2 D2 on the camera port
IOCON->PIO[0][3] = PINFUNC_CAMERA | 1<<8|1<<6; //set p0_3 D3 on the camera port
IOCON->PIO[0][4] = PINFUNC_CAMERA | 1<<8|1<<6; //set p0_4 D4 on the camera port
IOCON->PIO[0][5] = PINFUNC_CAMERA | 1<<8|2<<4|1<<6; //set p0_5 D5 on the camera port
IOCON->PIO[0][6] = PINFUNC_CAMERA | 1<<8; //set p0_6 D6 on the camera port
IOCON->PIO[0][7] = PINFUNC_CAMERA | 1<<8; //set p0_7 D7 on the camera port
IOCON->PIO[0][18] = PINFUNC_CAMERA | 1<<8| 1<<10; //P0_18 will toggle when camera engine receive every VSYNC dege
IOCON->PIO[0][14] = PINFUNC_CAMERA | 1<<8| 1<<10; //P0_14 will toggle when camera engine receive every VSYNC dege
}
Regards
Mariposa Marina
Hello @Mariposa_Marina
Thank you for your detailed reply.
We do not recommend changing the pins. And if you just change the pins configuration like the code above, the application will not work well. So please do not change the pins. Thanks.
Best Regards,
Alice
Hi, @Alice_Yang
Thank you very much for your response.
Certainly, changing the pin configuration didn't work. I will try other methods.
Regards
Mariposa Marina