单片机做有两个红外探头的计数器

来源:百度知道 编辑:UC知道 时间:2024/06/09 21:12:39
要用单片机做一个人流量计数器,需要计量进与出的人数,既进人加1,出人-1,红外装在门上面,两个门都要考虑到进出的问题,求程序和原理图

ProteUS仿真调试通过
其实,红外一体化接收头并不适合用于做这个

c_PEO_NUM EQU 30H

ORG 00H
MOV SP,#80H

_START:
MOV c_PEO_NUM,#020

_MAIN_LOOP:
MOV P2,#03H
MOV A,P2
ANL A,#03H
XRL A,#03H
JZ _MAIN_LOOP ;无踩

;红外一体化接收头:有光时输出0 无光时输出1
JNB P2.0,_INC ;外线被踩
JNB P2.1, _DEC ;内线被踩
JMP _MAIN_LOOP ;误报

_INC:
INC c_PEO_NUM
MOV P3,c_PEO_NUM
JB P2.1,$ ;等踩内线
JNB P2.1,$ ;等离开内线
JMP _MAIN_LOOP
_DEC:
DEC c_PEO_NUM
MOV P3,c_PEO_NUM
JB P2.0,$ ;等踩外线
JNB P2.0,$ ;等离开外线
JMP _MAIN_LOOP
END