新手上路
- 积分
- 33
- 金钱
- 33
- 注册时间
- 2017-3-17
- 在线时间
- 6 小时
|
本帖最后由 zyf9180 于 2017-7-12 22:49 编辑
请教ov7670摄像头的VSYNC是怎么产生的。
在“扩展实验9 摄像头实验”中,是引脚PA15电平改变了吗?在哪一行改变呢?多久变化一次呢?
//ÖD¶Ï·tÎñoˉêy
u8 ov_sta;
void EXTI15_10_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line15)==SET)
{
if(ov_sta<2)
{
if(ov_sta==0)
{
OV7670_WRST=0; //¸′λD′Ö¸Õë
OV7670_WRST=1;
OV7670_WREN=1; //ÔêDíD′èëFIFO
}else OV7670_WREN=0; //½ûÖ1D′èëFIFO
ov_sta++;
}
}
EXTI_ClearITPendingBit(EXTI_Line15); //Çå3yLINE15éÏμÄÖD¶Ï±ê־λ
}
//ía2¿ÖD¶Ï3õê¼»ˉ3ìDò
//3õê¼»ˉPA15ÎaÖD¶Ïêäèë.
void EXTI15_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
EXTI_InitTypeDef EXTI_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOA,ENABLE);//ía2¿ÖD¶Ï£¬Dèòaê1ÄüAFIOoíGPIOAê±Öó
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE); //1رÕJTAG,ê1ÄüSWD
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;//PA15
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //éèÖÃ3ééÏà-êäèë
GPIO_Init(GPIOA, &GPIO_InitStructure);//3õê¼»ˉGPIOA15
GPIO_SetBits(GPIOA,GPIO_Pin_15);
GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource15);
EXTI_InitStructure.EXTI_Line=EXTI_Line15;
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;//ϽμÑØ′¥·¢
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure); //¸ù¾YEXTI_InitStructÖDÖ¸¶¨μÄ2Îêy3õê¼»ˉíaéèEXTI¼Ä′æÆ÷
NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn; //ê1Äü°′¼üËùÔúμÄía2¿ÖD¶Ïí¨μà
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x02; //ÇàÕ¼óÅÏè¼¶2£¬
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x01; //×óóÅÏè¼¶1
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //ê1Äüía2¿ÖD¶Ïí¨μà
NVIC_Init(&NVIC_InitStructure);
}
|
|