redefine los pines DCMI en STM32F4

0

Tengo un código de ejemplo para conectar un OV7670 a un STM32F407IGT6.

Sin embargo, estoy intentando usar un STM32F407VGT6 y en mi código de muestra, el STM32F407IGT6 no usa los pines DCMI predeterminados.

¿Cómo puedo cambiar esta definición?

enlace del código de ejemplo: enlace este código de ejemplo se encuentra en el

stm32f4_dsp_stdperiph_lib  

desde el sitio oficial de st, en el directorio

Project\STM32F4xx_StdPeriph_Examples\DCMI\DCMI_CameraExample

Este código de ejemplo es para STM32F407IGH MCU

    
pregunta xerxes

1 respuesta

1

Puede seleccionar la función alternativa de cada pin utilizando GPIOx_AFRL y GPIOx_AFRH, con la ayuda de asignación de funciones alternativas en la hoja de datos, puede ver qué pin es capaz de hacer qué función (no todas las patillas pueden usarse como pin DCMI). Tenga en cuenta que la mayoría de las funciones están disponibles en varios pines y que debe seleccionar solo un pin para cada función alternativa.

Para DCMI tienes que usar AF13.

Como se indica en el manual de referencia, solo debe seleccionar la función alternativa para los pines de datos que realmente se utilizan (D0-D7 para esta cámara).

Pero solo seleccionar la función alternativa no es suficiente. También tienes que cambiar el pin a la función alternativa utilizando GPIOx_MODER (escribiendo 0b10 en los bits correctos).

Como DCMI solo tiene entradas, la siguiente información es solo información adicional si encuentra salidas de funciones alternativas para otra cosa:

Dependiendo de la especificación del bus, también debe configurar el tipo de salida para abrir-drenar o presionar y tirar usando GPIOx_OTYPER.

Y, finalmente, se debe seleccionar la velocidad de salida, de modo que el pin pueda controlar las salidas lo suficientemente rápido con el GPIOx_OSPEEDR.

    
respondido por el Arsenal

Lea otras preguntas en las etiquetas