历史上的今天
返回首页

历史上的今天

今天是:2024年10月15日(星期二)

正在发生

2021年10月15日 | 基于51单片机的红外计数器-1602显示

2021-10-15 来源:eefocus

一.硬件方案

本设计的主要原理为:红外发射管发射红外线,红外接收管接收红外线,并且接收管当有红外线照射的时候,电阻比较小,当无线外线照射的时候电阻比较大,这样就可以通过一个电压比较器和一个基准电压进行对比,当有光照的时候,红外接收管电阻比较小,那么和其串联的电压分压就会增大,所以电压比较器将会输出一高电平;当无光照射的时候,红外接收管的电阻比较大,这样电压比较器就会输出一个低电平。这个便是外部计数电平信号,这个电平信号送入AT89C51单片机进行计数控制,在经过扩展、显示驱动完成最后的显示过程。


硬件主要由:STC89C52单片机最小系统、LCD1602显示屏显示、红外避障传感器、按键、蜂鸣器及电源组成;

在这里插入图片描述

二.设计功能

(1)按键从左边第一个起,设置键、加键/清零键、减键。单独一个控制为复位按键。

(2)控制芯片使用51单片机,显示设备采用1602液晶;

(3)采用两个红外光电传感器,分别对进入和出去的人进行检测;

(4)计数范围是0-9999;

(5)通过统计进入和出去的人数,算出当前的总人数并进行显示;

(6)可通过按键设置人数上限报警值;

(7)一旦总人数大于或等于设置的人数上限值时,进行声光报警;

(8)可通过复位按键,清零计数;


三.设计原理图

(1)原理图主要采用AD软件进行设计,如图:

在这里插入图片描述

四.软件设计

(1)程序流程图

(2)主程序源码(节选)


/******************主程序**********************/    

void main()

{

beep = 0;     //开机蜂鸣器叫一声

delay_1ms(100);

P0 = P1 = P2 = P3 = 0xff;   //初始化IO口

time_init();

init_1602(); //lcd1602初始化

while(1)

{

key();    //按键扫描函数

if(key_can < 10)

{

key_with();    //按键执行函数

}

hw_jin_dis(); //红外计数

hw_chu_dis(); //红外计数

if(menu_1 == 0) //扫描显示倒计时数

{  

if(flag_500ms == 1)

{

flag_500ms = 0;

if(num >= set_num)

beep = ~beep;    //报警

else 

{

beep = 1;

}

}

}

}

}


/*************定时器0中断服务程序***************/

void time0_int() interrupt 1

{

static uint value;

TH0 = 0xd8;

TL0 = 0xf0;     // 10ms

value ++;

if(value >= 50)

{

value = 0;

flag_500ms = ~flag_500ms;

}


}

推荐阅读

史海拾趣

Arduino公司的发展小趣事

随着Arduino电路板的成功推出,Arduino平台在2005年发布了第一款主板——Arduino NG。这款主板采用了Atmel公司的AVR单片机作为核心处理器,并结合了简单易用的开发环境。这一创新使得普通人也能够轻松地进行单片机编程和硬件开发,大大降低了电子制作的门槛。Arduino NG的发布标志着Arduino平台开始受到开发者和爱好者的广泛关注。

EMC [ELAN Microelectronics Corp]公司的发展小趣事

作为一家有社会责任感的企业,义隆电子一直积极履行社会责任,致力于可持续发展。公司注重环境保护和资源节约,采用环保材料和节能技术生产产品。同时,公司还积极参与公益事业和社会活动,回馈社会。这种注重社会责任和可持续发展的企业文化使得义隆电子在行业内树立了良好的形象。

以上五个故事简要概述了义隆电子股份有限公司(Elan Microelectronics Corp.)在不同发展阶段的关键事件和成就。这些故事展示了义隆电子在技术创新、市场拓展、人才培养和社会责任等方面的努力和成就。

千志电子(CCO)公司的发展小趣事

为了进一步拓展业务版图,千志电子开始进军国际市场。2006年,千志电子在香港设立了千志电子(香港)有限公司,将其作为国际服务据点重心之一。这一举措使千志电子能够更好地了解国际市场需求和趋势,加强与国外客户的联系和合作。同时,千志电子还积极参加国际展览和论坛,展示其优质产品和先进技术,提高了品牌知名度和国际影响力。

德崧电子(D-SWITCH)公司的发展小趣事

作为一家有社会责任感的企业,德崧电子始终关注环保和可持续发展。公司在生产过程中积极采用环保材料和工艺,减少对环境的影响。同时,公司还积极参与公益事业,为社会做出贡献。例如,在疫情期间,德崧电子捐赠了一批医疗设备和物资给当地的医疗机构,为抗击疫情做出了积极贡献。这种勇于担当社会责任的精神不仅赢得了社会的赞誉,也为公司树立了良好的企业形象。

CDIL[Continental Device India Pvt. Ltd.]公司的发展小趣事

自1964年起,CDIL便踏上了半导体制造的先驱之路。当时,电子产业正处于蓬勃发展的初期,CDIL凭借对技术的敏锐洞察和不懈追求,迅速成为印度乃至全球半导体制造领域的佼佼者。其硅芯片和器件的制造质量和技术水平均达到了世界级标准,为印度电子产业的发展奠定了坚实基础。

ECLIPTEK公司的发展小趣事

ECLIPTEK公司自创立之初就专注于高精度电子元件的研发与生产。面对激烈的市场竞争,公司不断投入研发资源,推出了一系列具有创新性的产品,如高精度时间同步模块和低功耗传感器。这些产品凭借其卓越的性能和可靠性,迅速在市场上赢得了良好的口碑,使ECLIPTEK成为电子元件行业的佼佼者。

问答坊 | AI 解惑

测振仪的技术原理及测振仪的技术问题

测振仪的技术原理及测振仪的技术问题 测振仪的技术原理, 测振仪的技术问题:     现在的测振仪一般都采用压电式的,结构形式大致有二种:① 压缩式;② 剪切式,其原理是利用石英晶体和人工极化陶瓷(PZT)的压电效应设计而成。当石 ...…

查看全部问答>

算法求助:自动进样器

我们项目要做个自动进样器,由电机驱动运动,要求速度为300mm/s,速度挺快的,所以启动和停止时必须匀加速,在驱动里通过产生高低脉冲使电机运转。 nCounts为脉冲个数,nTmpDelay为延时数               &nbs ...…

查看全部问答>

100分,请大家来给我启蒙,会唱歌的玩具娃娃

大家好,有人问到如何实现会唱歌的玩具娃娃,就和市面上的玩具娃娃一样,按一下,会唱首歌,再按一下会笑,再按会说话什么的,因为本人从来不涉及硬件设计知识,所以没办法回答朋友的问题,现在请大家告诉我下这个玩具娃娃是怎么个设计实现原理,谢 ...…

查看全部问答>

DIRECTSHOW preview时候改变图片显示的大小

我用DIRECTSHOW 想在 preview时候改变图片显示的大小? 哪位大吓知道?…

查看全部问答>

wince rtc开机

各路高手,请问WINCE通过RTC闹钟来实现定时开机要怎么做呀?原理是什么呀?注意不是通过RTC来唤醒系统哦,是开机!…

查看全部问答>

VxWorks6.3 版本定时器设置问题

我们所使用的Vxworks版本是6.3的, 我想使用 timer_create, timer_connect等API进行设置定时器, 我们进行了设置, 步骤也是跟VxWorks文档介绍的一样, 先调用timer_create, 然后再timer_connect进行处理程序的关联, 最后再调用timer_settime函数进行设 ...…

查看全部问答>

求助:我需要液体点滴的优秀作品

本帖最后由 paulhyde 于 2014-9-15 09:00 编辑 最近都在找资料,都没有找到关于液体点滴的优秀作品,哪位大侠有,请发我一份!谢谢!  …

查看全部问答>

再提供一个小作品:EK-STM3210E大容量仿真学习套件上市啦!

仿真器 - 内嵌ST-LINK II仿真器,支持STM32F10x标准系列和扩展总线系列Cortex-M3 MCU - USB2.0全速,USB供电 - 支持评估系统或用户目标系统仿真 - 下载速度大于5K/秒 - 通过跳线 ...…

查看全部问答>

STM8S103串口问题,两天了都

用的芯片是STM8S103F3.使用串口1,内部时钟,查询发送,中断或者查询接收疑问:STM8的管教复用是不是,你配置了串口,那么相应的两个管脚IO就自动成为RXD和TXD?现在的把收发两个管脚直接短路,程序里面一直在发送,用万用表测试电压为1.8V左右,估 ...…

查看全部问答>

Beaglebone DIY继续 让板子的继电器动起来和输入(字符驱动)。

relaydrv.c驱动: relaytest.c应用程序: Makefile: 测试时自己设置一下,用到如下命令: mknod /dev/relaytest c 251 0 insmod relaydrv.ko ./relaytest rmmod relaydrv 有几个没响。不知道是否电路原因,到时再查。 串口显示: ...…

查看全部问答>