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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2123|回復: 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 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 三级在线免费观看 | 久久久人成影片一区二区三区 | 美女天天操 | 在线免费观看黄视频 | 日韩区| 九九九久久国产免费 | 国产三区四区 | 国产色片在线 | 欧美激情一区二区三级高清视频 | 欧美综合国产精品久久丁香 | aa级毛片毛片免费观看久 | 欧美一级片在线看 | 欧美性成人 | 日本精品久久久一区二区三区 | 91精品国产高清久久久久久久久 | 日本偷偷操| 久草青青 | 黄色av网站在线观看 | 一级欧美一级日韩片 | 高清人人天天夜夜曰狠狠狠狠 | 午夜激情一区 | www.亚洲| 久久精品一级 | 日韩国产欧美在线观看 | 二区高清| 日本成人片在线观看 | 91国内精精品久久久久久婷婷 | 亚洲欧洲成人 | 夜夜爽99久久国产综合精品女不卡 | 超碰在线播 | av一级在线观看 | 国产精品一级 | 久久人人网 | 激情一区二区三区 | 亚洲aⅴ一区二区 | 中文字幕不卡一区 | 国产在线观 | 中文在线一区二区 | 视频一区二区在线观看 | 日本高清不卡视频 | 成人精品毛片国产亚洲av十九禁 |