久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2120|回復: 0
打印 上一主題 下一主題
收起左側

stm32f4 HCSR04的中斷輸入程序,低電平也會進入

[復制鏈接]
跳轉到指定樓層
樓主
ID:343923 發表于 2018-10-13 23:20 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
有哪位大佬知道這里錯在哪里嗎?我這個設置是高電平進入中斷!但是低電平也會進入
  1. #include "stm32f4xx.h"
  2. #include "sys.h"
  3. #include "ULT.h"
  4. #include "systick.h"
  5. #include <stdio.h>
  6. float UltrasonicWave_Distance;
  7. void Ultrasonic_init(void)
  8. {
  9.   GPIO_InitTypeDef GPIO_InitStructure;
  10.   EXTI_InitTypeDef  EXTI_InitStruct;

  11.   RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE, ENABLE);

  12. /* 配置PG6為輸出模式,讓這根引腳具有輸出高低電平的功能 */
  13.   GPIO_InitStructure.GPIO_Pin   = GPIO_Pin_5;    //第5號引腳
  14.   GPIO_InitStructure.GPIO_Mode  = GPIO_Mode_OUT;   //輸出模式
  15.   GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;   //推挽輸出,增強驅動能力,引腳的輸出電流更大
  16.   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;  //引腳的速度最大為100MHz
  17.   GPIO_InitStructure.GPIO_PuPd  =  GPIO_PuPd_UP;   //使用內部上拉電阻
  18.   GPIO_Init(GPIOE, &GPIO_InitStructure);
  19.   GPIO_InitStructure.GPIO_Pin   = GPIO_Pin_6;    //第6號引腳
  20.   GPIO_InitStructure.GPIO_Mode  = GPIO_Mode_IN;   //輸入
  21.    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;  //引腳的速度最大為100MHz
  22.   GPIO_InitStructure.GPIO_PuPd  =  GPIO_PuPd_UP;   //使用內部上拉電阻
  23.   GPIO_Init(GPIOE, &GPIO_InitStructure);


  24.   RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);
  25.   SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOE, EXTI_PinSource6);
  26.   
  27.   EXTI_InitStruct.EXTI_Line     = EXTI_Line6;//設置EXTI6
  28.   EXTI_InitStruct.EXTI_LineCmd  = ENABLE; //開放EXTI6的中斷請求(不能屏蔽EXTI0的中斷請求)
  29.   EXTI_InitStruct.EXTI_Mode     = EXTI_Mode_Interrupt;//是中斷而不是事件
  30.   EXTI_InitStruct.EXTI_Trigger  = EXTI_Trigger_Rising;//確定EXTI0觸發中斷的方式為下降沿
  31.   EXTI_Init(&EXTI_InitStruct);

  32.    PEout(5) = 0;

  33. }
  34. void EXTI9_5_IRQHandler(void)
  35. {
  36.    uint32_t t=0;
  37.     delay_nus(10);
  38.   if(EXTI_GetITStatus(EXTI_Line6))
  39.   {
  40.     while(PEout(6) != 0)                  //等待低電平
  41.       {
  42.       t++;
  43.      delay_nus(8);
  44.     }  
  45.      t = t/2;
  46.     UltrasonicWave_Distance = t*3;          //計算距離&&UltrasonicWave_Distance<150   
  47.     printf("temp=%d\r\n",t);
  48.     EXTI_ClearITPendingBit(EXTI_Line6);  //清除EXTI6線路掛起位
  49.   }
  50. }
  51. void UltrasonicWave_StartMeasure(void)
  52. {
  53.   PEout(5) = 1;     //送>10US的高電平RIG_PORT,TRIG_PIN這兩個在define中有?
  54.   delay_nus(20);                        //延時20US
  55.   PEout(5) = 0;
  56. }

復制代碼


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 97视频在线观看免费 | 高清一区二区视频 | 中文字幕不卡一区 | 91精品国产综合久久久久久 | 亚洲国产成人精品久久久国产成人一区 | 久久一区二区三区电影 | 毛片在线免费 | 日韩成人 | 超碰97在线免费 | 国产精品一区二区无线 | 91精品国产综合久久久久 | 久久综合九九 | 欧美日韩不卡 | 在线啊v| 中国三级黄色录像 | 亚洲成人中文字幕 | 夜夜爽99久久国产综合精品女不卡 | 精品一区二区观看 | 在线视频亚洲 | 视频一二三区 | h视频在线免费观看 | 色婷婷精品国产一区二区三区 | 精品国产一区二区三区久久 | 天堂网中文字幕在线观看 | 人成精品 | 欧美日韩在线视频一区 | 精品国产女人 | 色综合区| 黄色成人在线观看 | 99热视| 精品欧美一区免费观看α√ | 欧美婷婷 | www.干| 噜久寡妇噜噜久久寡妇 | 黄色一级大片在线观看 | 综合二区 | 性色的免费视频 | 免费在线观看黄色av | 国产精品久久久久一区二区三区 | 日韩成人av在线 | 日韩精品一区二区久久 |