红外电子计数器
编者按红外线电子计数器是一种多功能的电子测量仪器。它利用红外线发射器发射红外线,接收器接收由物体阻挡或直射的红外线,把接受到的红外线信号转换为电脉冲,并由放大电路进行多级放大,通过计数芯片分析,计算出遮拦的次数,再由数码译码器翻译,通过动态数字显示方式显示被测物体遮挡的次数从而进行计数。
电路分析
电路框图
主要原理
1.1红外线发射电路
红外线检测部分采用一对红外发送接收管完成,当电路正常工作时,无障碍物遮挡,红外接收头有红外线照射,这时,红外接收头的电阻很小,大部分电压都加在R3上,这正是电压比较器LM324的正向输入电压,而负向输入电压由R4和R5分压得到,而R3分得的电压要大于此基准电压值,故这时电压比较器LM324输出高电平;当在红外发射接收管间有一不透光的障碍物时,,红外接收头无红外线照射,这时红外接收头的电阻很大,大部分电压都加在红外接收头上,这也是电压比较器LM324的正向输入电压,而负向输入电压也是由R4和R5分压得到,和原来电压一样,这时,R3分得的电压要小于此基准电压值,故这时电压比较器LM324输出低电平。
1.2 计数显示部分
计数显示部分由单片机AT89C51控制完成。基本原理为当红外检测部分检测到有产品经过时,红外接收电路LM567 芯片的8输出口将产生一个低电平信号,这个信号将供给单片机进行计数控制;显示部分是通8 位LCD数码显示管显示。
计数控制部分是将计数脉冲(负脉冲有效)送入单片机AT89C51两个中断入口的INT0入口,经过单片机内部对这个中断信号进行计数编程构成.AT89C51与MCS-51 指令系统完全兼容。提供以下标准功能:4K字节FLASH 闪烁存储器、128字节内部RAM、32个I/O口线、两个16位定时/计数器、一个5 向量两级中断、一个全双工串行通信口、片内振荡器及时钟电路。同时AT89C51可降至0HZ的静态逻辑操作,并支持两个软件的节电工作模式。空闲方式停止CPU 的工作,但是允许RAM、定时/计数器、串行通信口及中断系统继续工作。掉电后保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件。
1.3蜂鸣器报警电路
本设计采软件处理报警,利用有源蜂鸣器进行报警输出,采用直流供电。当所测温度超过获低于所预设的温度时,数据口相应拉高电平,报警输出。(也可采用发光二级管报警电路,如过需要报警,则只需将相应位置1,当参数判断完毕后,再看报警模型单元ALARM 的内容是否与预设一样,如不一样,则发光报警)报警电路硬件连接见下图
总体电路
程序设计
程序框图
主要程序
void main()
{ ET0=1;
IT0=1;
EX0=1;
EA=1;
beep=1;
num=10;
while(1)
{
keyClear();
keySet();
BJ();
process(count);
display();
}
}设定左边两位校对液晶初始值E=10,设定右边两 位计数液晶初始值N=0。
void process(uint i)
{ dat[0]=num/10;
dat[1]=num%10;
dat[2]=i/10;
dat[3]=i%10;
}
把4 位LCD 液晶分成两部分并赋予不同功能。
void keySet()
{if(key2==0)
{ delayms(10);
if(key2==0)
{num++;}
编辑:@陈谦
责编:@张嘉翮
审核:@葛向阳