|
這是我最近寫(xiě)的利用32外部中斷和霍爾傳感器寫(xiě)的電機(jī)測(cè)速源程序,程序運(yùn)行錯(cuò)誤 求幫助
- #include "exti.h"
- #include "stm32f10x.h"
- #include "delay.h"
- #include "led.h"
- #include "sys.h"
- u16 k1 = 0;
- u8 k2 = 0;
- void EXTIX_Init(void)
- {
- GPIO_InitTypeDef GPIO_InitStructure;
- EXTI_InitTypeDef EXTI_InitStructure;
- NVIC_InitTypeDef NVIC_InitStructure;
-
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //初始化IO口
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_1;
- GPIO_Init(GPIOF,&GPIO_InitStructure);
-
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOF, ENABLE); //開(kāi)啟IO口復(fù)用時(shí)鐘
-
- GPIO_EXTILineConfig(GPIO_PortSourceGPIOF,GPIO_PinSource2); // GPIOB2 映射到 中斷線(xiàn)2
- GPIO_EXTILineConfig(GPIO_PortSourceGPIOF,GPIO_PinSource1); // GPIOB1 映射到 中斷線(xiàn)1
-
- EXTI_InitStructure.EXTI_Line = EXTI_Line2; //中斷線(xiàn)2
- EXTI_InitStructure.EXTI_LineCmd = ENABLE; //外部中斷使能
- EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; //模式中斷
- EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; //下降沿
- EXTI_Init(&EXTI_InitStructure); //設(shè)定參數(shù)初始化 外部中斷
-
- EXTI_InitStructure.EXTI_Line = EXTI_Line1; //中斷線(xiàn)1
- EXTI_InitStructure.EXTI_LineCmd = ENABLE; //外部中斷使能
- EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; //模式中斷
- EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; //下降沿
- EXTI_Init(&EXTI_InitStructure); //設(shè)定參數(shù)初始化 外部中斷
-
-
- NVIC_InitStructure.NVIC_IRQChannel = EXTI2_IRQn; //通道 外部中斷2
- NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能
- NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2; //搶占優(yōu)先級(jí)
- NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; //響應(yīng)優(yōu)先級(jí)
- NVIC_Init(&NVIC_InitStructure);
-
- NVIC_InitStructure.NVIC_IRQChannel = EXTI1_IRQn; //通道 外部中斷1
- NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能
- NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2; //搶占優(yōu)先級(jí)
- NVIC_InitStructure.NVIC_IRQChannelSubPriority = 2; //響應(yīng)優(yōu)先級(jí)
- NVIC_Init(&NVIC_InitStructure);
-
- }
- void EXTI2_IRQHandler(void) //外部中斷服務(wù)函數(shù)
- {
- // k2++;
- // if(k2 >= 13)
- // {
- // k2 = 0;
- k1++;
- // }
-
-
- EXTI_ClearITPendingBit(EXTI_Line2); //清除中斷標(biāo)志位
- }
- void EXTI1_IRQHandler(void) //外部中斷服務(wù)函數(shù)
- {
- k1 = 0;
-
- EXTI_ClearITPendingBit(EXTI_Line1); //清除中斷標(biāo)志位
- }
復(fù)制代碼 全部資料51hei下載地址:(管理提醒:多人回帖說(shuō)代碼有問(wèn)題,大家不要下載)
外部中斷(電機(jī)測(cè)速).7z
(182.49 KB, 下載次數(shù): 125)
2019-7-19 17:10 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|