换了有源蜂鸣器后,蜂鸣器问题也解决了,但是用ESP8266的GPIO中断计数有问题,发现触发不了中断。
原来的图大坑,有因为原来的图是给5V单片机设计的,esp8266是3.3的,改了一下,通过电阻分压得到3.3V的下降沿脉冲
用示波器接在INT上都可以测出脉冲了,非常窄的脉冲信号
代码里面用中断来计数
pinMode(D4, INPUT); digitalWrite(D4, HIGH); attachInterrupt(D4, tube_impulse, FALLING); //define external interrupts void ICACHE_RAM_ATTR tube_impulse(){ //subprocedure for capturing events from Geiger Kit counts++; Serial.print("count add one\n"); }
但是发现没有触发中断。怀疑是脉冲过于狭窄检测不出?
发现国外也有人遇到同样的问题:
XXXXXXXXXXXXXXXXXXXXXXX/XXXXXXXXXXXXp?f=6&t=17028&start=4
坑!
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |