標題: STM32光電傳感器實驗例程 [打印本頁]

作者: ajinajin    時間: 2019-5-15 09:48
標題: STM32光電傳感器實驗例程
光電傳感器實驗例程。!


希望各位大神指導(dǎo)

單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include "led.h"
  3. #include "delay.h"
  4. #include "exti.h"
  5. #include "nvic.h"

  6. void EXTI2_IRQnHandler(void);//函數(shù)聲明

  7. int main(void)//主函數(shù)
  8. {
  9.         delay_init();            //延時函數(shù)初始化
  10.         LED_Inint();//LED0初始化
  11.         EXTIX_Init();//外部中斷線的初始化
  12.   NVIC_Config();//中斷初始化
  13.   EXTI2_IRQnHandler();//中斷服務(wù)函數(shù)       
  14.         while(1);
  15. }

  16. void LED0_On(void)
  17.   {
  18.         GPIO_ResetBits(GPIOB,GPIO_Pin_5); //LED0亮,給PB5低電平
  19.   }
  20.          
  21. void LED0_off(void)
  22.         {
  23.                 GPIO_SetBits(GPIOB,GPIO_Pin_5);//LED0不亮,給PB5高電平
  24.         }

  25. unsigned char LED0_IsOn(void)
  26.         {
  27.                 return !GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_2);//檢測PB2是否變成了低電平
  28.         }
  29.                
  30. void EXTI2_IRQnHandler(void)//外部中斷2服務(wù)函數(shù)
  31. {   
  32.    unsigned char temp=LED0_IsOn();
  33.         if(EXTI_GetITStatus(EXTI_Line2)!=RESET)//指定EXTI線的觸發(fā)請求發(fā)生
  34.         {
  35.           if(temp)
  36.                         LED0_off();
  37.                 else
  38.                         LED0_On();
  39.                 EXTI_ClearITPendingBit(EXTI_Line2);//清除指定的EXTI線中斷請求位
  40. }
  41. }
復(fù)制代碼

所有資料51hei提供下載:
光電傳感器實驗例程.7z (179.15 KB, 下載次數(shù): 52)



作者: admin    時間: 2019-5-15 21:04
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
作者: hhhhjjjj    時間: 2020-7-19 17:57
Cannot read project file 'D:\huiyv-NO.3\51ou??i3_1au?'??D?-eu?éay3i\光電傳感器
作者: hhhhjjjj    時間: 2020-7-19 17:57
實驗例程\USER\Template.uvprojx'!




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1