图均源自网络,如有侵权请联系本人
上篇内容讲述了EXTI的理论框架部分,我们大致了解了外部中断的电路框架,知道要配置哪一部分的电路来实现中断功能,那么这篇文章就是通过电路搭建以及编写代码来控制单片机执行中断功能。
我们本篇文章主要利用外部中断来实现两个功能,第一个是对射式红外传器计次,第二个是旋转编码器计次。
我们首先来介绍一下对射式红外传感器。
一般市面上的红外传感器模块是四个引脚,VCC(电源),GND(接地),DO(开关信号输出),AO(模拟信号输出),AO引脚一般不会用到。
还有下图中的三个引脚的模块,那这里的OUT端就相当于DO端了。
对射式红外传感器由发射端,接收端,光耦三个部分组成。发射端可以发出人眼看不见的红外光,接收端可以接受发射端发射的红外光,当有物体经过光耦遮挡了接收端接受红外光,DO引脚就会输出信号1,当无遮挡物时,DO引脚就会输出0;由此,我们可以通过判断DO引脚的信号来判断是否有物体遮挡,以实现计次的功能。
我们把传感器模块VCC,GND端利用面包板,杜邦线接好后,将DO端与单片机的任一GPIO口连接好,