[mw_shl_code=c,true]void Exti0_Init(void)
{
EXTI_InitTypeDef EXTI_InitStruct;
NVIC_InitTypeDef NVIC_InitStruct;
// GPIO_InitTypeDef GPIO_InitStruct;
EXTI_DeInit();
// NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
// delay_init();
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//IO???±????????IO????????
GPIO_EXTILineConfig( GPIO_PortSourceGPIOB, GPIO_PinSource0);//????IO????????IO??????×???????????,????0
////??????????///////
EXTI_InitStruct.EXTI_Line =EXTI_Line0; //????0->  A0
EXTI_InitStruct.EXTI_Mode =EXTI_Mode_Interrupt;//????????????
EXTI_InitStruct.EXTI_Trigger =EXTI_Trigger_Rising;//????????·?
EXTI_InitStruct.EXTI_LineCmd =ENABLE ;//????
EXTI_Init (&EXTI_InitStruct);
//////????????????????///////
NVIC_InitStruct.NVIC_IRQChannel=EXTI0_IRQn;//????°??ü?????????¨??
NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority =0;//??????????2
NVIC_InitStruct.NVIC_IRQChannelSubPriority =2;//×???????2
NVIC_InitStruct.NVIC_IRQChannelCmd =ENABLE ;
NVIC_Init(&NVIC_InitStruct);
}
//主函数//
int main(void)
{
uint16_t mv;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
delay_init();
uart_init(9600);
Exti0_Init();
adc_init();
l5110_gpio_init();
L5110_BLC_H;
l5110_init();
Key_zhongduan_Init();
display_l();
l5110_Printf_string(34,0,"0 ~ 3 v");
while(1)
{
printf ("ok");
delay_ms (500);
}
}
void EXTI0_IRQHandler(void)//????????0·???????,????0??1??2??3??4??EXTI09_5_IRQHandler(void)??EXTI15_10_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line0)!=RESET )
{
delay_ms(10);
if(KEY0==1)
{
printf ("z");
}
EXTI_ClearITPendingBit(EXTI_Line0);
//????LINE0????????±ê????
}
}[/mw_shl_code]
|