加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

低电平触发电路及其程序积累

(2018-09-03 15:36:58)
标签:

c语言

stm32

低电平触发电路及其程序积累

                                                                                                                                                     ---Timeandspace7

---20180903 YSU

1.       目的:利用下降沿触发外部中断

隐患:浮空可能导致高电平触发->故中断的触发,应使用低电平

      同样的,即便是低电平触发(下降沿触发)也有可能是扰动导致的误操作

解决办法:在获取得到下降沿的时候,应该进行“消抖”操作,延时10ms确保低电平有效(即确保不是干扰电流)

代码流程:下降沿触发,消抖10ms(确定可靠接地),再次判断是否为低电平

代码示例:

 void EXTI0_IRQHandler(void)
{
 
 if(EXTI_GetITStatus(EXTI_Line0) == SET) //此处,是EXTI_Line0被置1,而不是引脚PB0低电平
 {
  //消抖
  Delay_1ms(10);   //延时10ms
  if( GPIO_ReadInputDataBit(GPIOB,  GPIO_Pin_0)  == RESET )  //判断PB0是否为低电平
  {
     FlagSystemStart = RESET;
     FlagSystemStop = SET;
     LED0_OFF;
  }
  
  EXTI_ClearITPendingBit(EXTI_Line0);

 }
}

 

2.关于硬件的连接线问题,应该想代码函数一样,只提供一个简单的接口供用户使用,而不允许用户看到、更改内部。

0

阅读 收藏 喜欢 打印举报/Report
前一篇:FatFs使用小结
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有