|
光電傳感器實(shí)驗(yàn)例程。!
希望各位大神指導(dǎo)
單片機(jī)源程序如下:
- #include "stm32f10x.h"
- #include "led.h"
- #include "delay.h"
- #include "exti.h"
- #include "nvic.h"
- void EXTI2_IRQnHandler(void);//函數(shù)聲明
- int main(void)//主函數(shù)
- {
- delay_init(); //延時(shí)函數(shù)初始化
- LED_Inint();//LED0初始化
- EXTIX_Init();//外部中斷線的初始化
- NVIC_Config();//中斷初始化
- EXTI2_IRQnHandler();//中斷服務(wù)函數(shù)
- while(1);
- }
- void LED0_On(void)
- {
- GPIO_ResetBits(GPIOB,GPIO_Pin_5); //LED0亮,給PB5低電平
- }
-
- void LED0_off(void)
- {
- GPIO_SetBits(GPIOB,GPIO_Pin_5);//LED0不亮,給PB5高電平
- }
- unsigned char LED0_IsOn(void)
- {
- return !GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_2);//檢測PB2是否變成了低電平
- }
-
- void EXTI2_IRQnHandler(void)//外部中斷2服務(wù)函數(shù)
- {
- unsigned char temp=LED0_IsOn();
- if(EXTI_GetITStatus(EXTI_Line2)!=RESET)//指定EXTI線的觸發(fā)請求發(fā)生
- {
- if(temp)
- LED0_off();
- else
- LED0_On();
- EXTI_ClearITPendingBit(EXTI_Line2);//清除指定的EXTI線中斷請求位
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
光電傳感器實(shí)驗(yàn)例程.7z
(179.15 KB, 下載次數(shù): 52)
2019-5-15 21:04 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|