欢迎来到工友文库! | 帮助中心 工友共享,造福你我!
工友文库
全部分类
  • 行业文库 >
    行业文库
    行业标准 农林牧渔 能源矿业 电力热力 水利环境 材料技术 地理测绘 建筑工程 机械工程 制造加工 交通物流 网络计算 电气机电 信息通讯 汽车行业 航空航天 船舶工程 光电工程 住宿餐饮 财会金融 房地产业 城建规划 装饰装修 家电维修 电商行业 租赁商务 批发零售 居民服务 教育服务 医药卫生 体育行业 公共管理 图书管理 外语翻译 休闲旅游 文艺传媒 其他行业
  • 商业文档 >
    商业文档
    企业计划 工程管理 广告经营 财务报表 物业管理 质控管理 企业文化 绩效管理 商务礼仪 创业孵化 市场营销 经营企划 销售管理 营销创新 资本运营 招商加盟 合同协议 信息管理 励志材料 人事档案 员工关系 薪酬管理 招聘面试 其它文档
  • 办公文书 >
    办公文书
    统计图表 总结报告 演讲致辞 心得体会 述职报告 工作计划 解决方案 调研报告 事务文书 经验事迹 往来文书 规章制度 申请范文 求职简历 活动策划 会议纪要 党建材料 软件教程 其他文书
  • PPT模板库 >
    PPT模板库
    扁平风格 创意新颖 动画效果 动态模板 简约风格 静态模板 环保绿色 卡通风格 立体风格 欧洲风格 手绘风格 创意黑板 相册风格 星空风格 炫酷科技 中国风格 医疗风格 高端商务 工作常用 总结报告 毕业答辩 节日庆典 公益风格 化妆美容 婚礼策划 餐饮美食 培训课件 融资路演 商业策划 英文模板 党政机关 述职竞聘
  • 小学初中 >
    小学初中
    幼儿教育 小学语文 小学数学 小学英语 初中语文 初中数学 初中英语 初中物理 初中化学 初中地理 初中生物 初中政治 初中历史 思想品德 小学竞赛 初中竞赛 其他学科
  • 高中教育 >
    高中教育
    高中语文 高中数学 高中英语 高中物理 高中化学 高中生物 高中地理 高中政治 高中历史 高考资料 高中竞赛 其他学科
  • 高等教育 >
    高等教育
    基础课 艺术类 哲学类 体育类 水利类 测绘类 法学类 历史学 社会学 心理学 教育学 政治学 统计学 房地产 语言文化 生物科学 医药卫生 天文气象 地理科学 环境科学 系统科学 材料科学 机械仪表 图书档案 土建工程 海洋工程 轻工纺织 工程力学 能源动力 光电工程 电力技术 市政工程 财会金融 工商管理 语言文学 广播影视 公安司法 汽车汽修 交通运输 水产加工 植物生产 森林资源 动物科学 食品加工 餐饮旅游 公共事业 新闻传播学 农林业工程 城镇规划管理 水文与水资源 地矿及资源勘查 航空航天与武器 管理科学与工程 农林业经济管理 机电设备及自动化 计算机与信息科学 大学生竞赛资料
  • 执业资格考试 >
    执业资格考试
    财会类考试 建筑类考试 外贸类考试 外语类考试 医药类考试 管理类考试 公务员类考试 司法法律考试 教师资格考试 计算机类考试 公共服务类考试 其他资格证考试
  • 一线采风 >
    一线采风
    一线新闻 事迹宣传 工友作品
  • 教育视频 >
    教育视频
    幼儿教育视频 小学教育视频 初中教育视频 高中教育视频 大学教育视频 C#自学视频教程 软件视频教程 英语视频教学 其他教学视频
  • 换一换
    首页 工友文库 > 资源分类 > DOCX文档下载
     

    《“教室”人数检测器》设计报告.docx

    • 资源ID:3388       资源大小:3.79MB        全文页数:34页
    • 资源格式: DOCX        下载权限:注册会员/VIP会员    下载费用:2金币 【人民币2元】
    下载资源需要2金币 【人民币2元】
    已注册用户请登录:
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

    《“教室”人数检测器》设计报告.docx

    华南理工大学 第十二届智能控制设计大赛 初级组 “教室”人数检测器设计报告 学 院 队 名 队 长 队 员 队 员 摘要 在规模较大的学校中,课室每天进出人流量都比较大。一方面,同学们,有查看并了解当前课室人数、课室状态、以及课程时间表的需要;另一方面,课室的管理员,也需要对根据当前人数,课室状态来对课室进行管理。 为了解决上述问题,经过对比分析了不同技术的多种计数方式,本文设计与论证了基于红外线光电传感器、单片机最小系统的计数测量的基本方案,并为此设计比较完善的判定方案,有效降低误判导致人数偏差的可能。交互界面比较友好,配置有基本按键,方便同学们实时查看课室人数,以及方便管理员进行人数管理和课室状态管理。 同时,在我们的工程中添加时钟模块,以及通过蓝牙模块与电脑连接的上位机系统。借此,实现单片机与上位机的通信,能够显示教室出入人数的统计情况,方便管理员统计以及管理。我们同时设计了友好的上位机交互界面,方便管理员实时查看进出人数的统计情况,并可以对课程时间,课室状态进行管理,实现远程操控课室状态,大大提高了效率。 为了方便学生们,对课室的实时情况进行查询,我们设计了一款基于蓝牙连接的安卓app可以实时看到课室的进出情况,以及课室的人数,方便同学找到自习位置。 为了增强工程的实用性,与可靠程度,我们额外拓展了断电保护模块 我们随后设计了工程测试方案,并记录分析了测试数据,得出了测试结果。经过测试,光电计数器能够稳定的对课室人数较为准确的计数,并能能有效排除干扰,基本不会出现误判。与时钟模块配合能够稳定、精确记录人进出课室的统计情况,与上位机、app较为稳定。上位机界面简洁实用,方便查看、管理,实时查看到进出情况。 该计数系统安装方便,维护简单,工作稳定,运行可靠,对于学校、商场、会议室等人员流动很大的公共场所有很高的使用价值,方便对于人员流动的管理及配送、具有很高的使用价值和经济价值。 关键词单片机;光电传感器;智能计数器;上位机;蓝牙模块安卓app 目录 摘要2 一、设计任务5 1、设计背景及要求5 2、现存方案比较与论证5 方案一红外对射方式光电感应统计5 方案二重力感应方式6 方案三摄像头统计6 3、设计方案7 二、设计方案论证与实现8 1.光电计数器与最小系统8 1)设计思想8 2)功能实现9 光电传感器简介10 2.显示屏与按键交互11 1)显示屏(LCD12864)11 2)按键交互12 3.时钟模块及上位机通信12 1)时钟模块12 2)上位机通信(蓝牙通信)13 4.app开发15 5.其他拓展创新15 1)数据断电保护(AT24C02芯片)15 2)双门开关16 3)蓝牙模块通信17 三、系统软件设计18 1、主函数主要设计18 2、红外计数感应19 3、AT24C02模块读取21 4、蓝牙模块22 5、时钟芯片模块22 6、上位机23 四、测试24 1、对红外开关、按键、断电保存进行测试24 五、总结25 附录25 一、设计任务 1、 设计背景及要求 “教室”人数检测器 设计一个安装在公共室内场所如教室自习室,会议室入口出口处的人数检测器,能够实时检测教室的人员出入,完成对室内人数的统计,监控等功能。 1. 基本要求 1 设计检测器,检测教室人员进出检测方法不限,尽可能简单和实用; 2 设计良好的人机交互界面,实现对出入人数的统计情况显示; 3 添加按键以方便管理员对检测器做简单设置具体功能自行设计。 2. 拓展要求 1 添加时钟模块,对自习室人数作分时段检测; 2 实现与上位机的通信,能够实时显示教室出入人数的统计情况; 3 通过上位机,可以对检测器做简单设置; 4 开发手机APP,能够远程查询教室出入人数的统计情况; 5 其他创新功能。 2、 现存方案比较与论证 方案一红外对射方式光电感应统计 其主要的实现方式是对从红外感应区域经过的人体,切断或阻挡红外线使其产生电阻变化。通过两个光电开关的配合检测出教室的人数,自动识别进出状态。此方案比较容易实现,可以在人们自由进出门口时,系统自动获取数据,设备较小且安装美观。 缺点 其一,由于红外光极易受到外界因素干扰,使其统计数据产生较大误差,容易产生误判 其二,对于比较宽的门多人同时经过的时候也容易产生漏数现象; 图1.1 红外感应系统设计 方案二重力感应方式 重力感应主要是在地板上安装重力感应装置,计算当人体踩踏过去的时候,计算人数。 缺点 其一,安装相对要求较高、成本高 其二,容易受到干扰,产生误判 方案三摄像头统计 双目客流统计,使用两个相同的摄像头,类似人的双眼,两个摄像头取得的图像,经过一系列的计算,得到3D的图像。在双目客流中,最大的优势是获取了实际场中的第三维信息,就是人的高度信息,因些,只用检测高度在1米到2米之间高度图像,使用两个相同的摄像头,类似人的双眼,两个摄像头取得的图像,经过一系列的计算,得到3D的图像。由人的头部在最高位置,因些很容易就可以得到人的位置信息,而且可以排除灯光,阳光等干扰。 缺点 其一,难以实现,需要涉及机器学习,人脸识别方面 其二,成本太高,短时间内难以实现 图1.2 摄像头统计 3、 设计方案 最终,团队为了完整的完成项目,选择了红外感应的方案,并对感应计数的程序进行了改良。 二、设计方案论证与实现 1. 光电计数器与最小系统 1) 设计思想 i)设计基本思想 本文所介绍的红外对管两个光电传感器,并排架设,一前一后组成。当发射管和接收管没有人通过(遮挡)时,红外敏感三极管由于接收到红外发射而导通,输出低电平(0.1V);当发射管和接收管有人通过(遮挡)时,红外敏感三极管截止,输出高电平(1.4V)。由于单片机外部中断引脚接收到负跳变信号时产生中断请求信号,而传感器组件的输出信号为 1V 的高电平,不能直接接在单片机外部中断引脚上。 为了识别人们的进出,实际中采用了两组完全一样的信号采集电路。教室门口内外各安装一对红外对管,每对红外对管必须保持同一条直线上。考虑到学生的实际身高,以及门框的实际宽度,红外开关的高度设立在1.3米左右较为合适,安装时要求两对红外对管存在水平间距大约为10-15cm(小于人体),当人由室外进入室内时或由室外离开室内时,两组红外敏感三极管输出的脉冲信号在时问上存在一定的先后顺序,由此可识别出人们的进出,由进出人数差就是室内现有的人数。 ii)程序设计思想 对于学生进出教室,我们认为有如下情况 1没有人经过时。此时两个传感器传至单片机均保持为高电平,不产生中断信号,单片机计数维持不变。 2有人正常进出教室时。我们把人通过门分为了四个状态。人首先触发传感器1, 此时传感器2未被阻挡(如状态一)。然后由于设计我们设计的红外传感器宽度小于人体厚度(约20cm),因此同时触发两个传感器(如状态2)。人继续往前走,传感器1重新接收到红外信号,而此时传感器2仍处于被触发态(如状态3)。直到人离开后,两个传感器均未被遮挡(如状态四)。我们设想必须四个状态都实现方可视为一次成功通过。我们通过两个传感器触发,和回到初始状态的先后顺序来判断人员是进或出。进则使人数“加1“, 出则人数“减1”。 同时,若人触发了传感器,并长时间停留在状态1~3之间的任一个,之后还是最终完成了全部四个状态,我们的系统依然可以视作成功计数。 3有人非正常不进入教室。此时我们大概定义了3种不成功计数的情况。i)有人只触发了其中传感器1,然后离开了,并没有通过教室门。(如只有状态1后离开)ii)触发2个传感器之后,站在原地不动,再离开教室门。(如行进到状态2后离开)iii)人停在状态3,然后重新离开。 图2.1.2 红外计数系统人员通过示意图 2) 功能实现 i) 最小系统 图2.1.2 单片机最小系统 ii) 光电传感器 光电传感器简介 光电传感器是利用光电元件作为检测元件的传感器。它首先把被测量的变化转换成光信号的变化,然后借助光电元件进一步将光信号转换为电信号。光电传感器一般有光源,光电元件,转换电路三部分组成。光电检测法具有精度高、反应快、非接触等特点,而且可测参数多,传感器结构简单,形式灵活多样。 红外发光二极管是一种把电能转换成光能的半导体器件。它具有体积小、功耗低、寿命长、响应快、机械强度高等优点,并能和集成电路相匹配。因此,广泛的应用于计算机、仪器仪表的自动控制系统中。 光电转换部分与单片机的连接框图如下 传感器 整形驱动 计数脉冲 89C51 图2.1.3 光电开关与单片机得连接示意图 图2.1.4 红外发射模块 图2.1.5 红外线接收电路 2. 显示屏与按键交互 1) 显示屏(LCD12864) 图2.2.1 LCD12864电路图 我们主要在显示屏实现的功能有 1) 通过与时钟芯片链接,现实显示年月日,以及现实当前准确时间 2) 实时显示课室当前人数 3) 显示上下课时间,例华南理工大学北校上午、下午的上下课时间 4) 实现目前课室状态“on class”,“off class”,方便学生查看目前课室的状态。 2) 按键交互 图2.2.2 独立按键电路图 我们主要在按键实现的功能有 1) 控制显示屏的背景灯,方便日、夜间查看显示屏 2) 人员清零,方便安装初始化的时候,管理员的调试 3) 对三页显示内容的查看分别是主页、上午上下课时间、以及下午上下课时间。 3. 时钟模块及上位机通信 1) 时钟模块 i) 设计原理 美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟电路DS1302的结构、工作原理及其在实时显示时间中的应用。它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿等多种功能。主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。 脚功能及结构 在DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传输。RST输入有两种功能首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc≥2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端双向,后面有详细说明。SCLK始终是输入端。 图2.3.1 时钟芯片电路图 图2.3.2 LCD12864实物图 2) 上位机通信(蓝牙通信) 上位机是指可以直接发出操控命令的计算机,一般是PC/host computer/master computer/upper computer,屏幕上显示各种信号变化(液压,水位,温度等)。 下位机是直接控制设备获取设备状况的计算机,一般是单片机single chip microcomputer/slave computer/lower computer之类的。上位机发出的命令首先给下位机,下位机再根据此命令解释成相应时序信号直接控制相应设备。下位机不时读取设备状态数据(一般为模拟量),转换成数字信号反馈给上位机。简言之如此,实际情况千差万别,但万变不离其宗上下位机都需要编程,都有专门的开发系统。 i) 功能设计 通过蓝牙模块,上位机实现与芯片的通信。在上位机中我们主要读取了实时人数,以及可以准确记录人员进出的时间统计情况。为了方便管理员进行设置,我们设计了友好的人机交互界面,管理员可以通过界面是人数清零,课程表时间的修改,上下课状态的修改。 图2.4.12.4.2上位机程序设计设计图、上位人机界面 为了方便管理员进行设置,我们设计了友好的人机交互界面,管理员可以通过界面是人数清零,课程表时间的修改,上下课状态的修 4. app开发 主要使用Android Studio进行app开发,并使用蓝牙模块与手机蓝牙功能实现单片机与手机的数据传输。 5. 其他拓展创新 1) 数据断电保护(AT24C02芯片) 为了实现数据在断电以后不会丢失,方便管理员。我们增加了断电保护的功能。 设计原理 图2.5.1 AT24C02电路图 AT24C02是一个2K位串行CMOS E2PROM, 内部含有256个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。AT24C02有一个16字节页写缓冲器。该器件通过IIC总线接口进行操作,有一个专门的写保护的功能。检测单元 控制单元 显示 电源检测、单片机保护 掉电数据保护 电源供电电路 图2.5.2 系统断电保护设计示意图图 2) 双门开关 为了更好模拟课室的现实情况,我们特别设计前后两门的设计,同时两门不会干扰,更具有实际利用价值。 3) 蓝牙模块通信 图2.5.3 蓝牙模块实物图 蓝牙模块实现了与电脑上位机以及手机app通信。 图2.5.4 蓝牙模块实物图和功能图 三、系统软件设计 1、主函数主要设计 图3.1.1 主函数逻辑示意图 部分代码 int currenttime; P00 xff; keystate0; timer1_init; init_12864;//屏幕初始化 //红外模块初始化 //时钟芯片初始化 //记忆芯片初始化 at24c02reset;//记忆芯片读数据 dgn0; write_add0,a; delayms5; write_add1,c; hongwai_init; at24c02backup_classtime; 2、红外计数感应 图3.2.1 红外计数系统人员通过示意图 void detect2 { uchar flag; //falg0 空载 loop ifflag0 { ifqian1{flag1;goto loop;} //flag1,前灯被挡住了 ifhou1 {flag2;} //flag2,后灯被挡住了 } ifflag1 { ifhou1{flag3;goto loop;}//flag3,前灯被挡住了然后后灯被挡住了 ifqian0{flag0;} //flag0,前灯被挡住了然后前灯没被挡住 } ifflag2 { ifqian1{flag4;goto loop;} //flag4,后灯被挡住了然后前灯被挡住了 ifhou0{flag0;} //flag0,后灯被挡住了然后后灯没被挡住 } ifflag3 { ifqian0{flag5;goto loop;}//flag5,前灯被挡住了然后后灯被挡住了前灯没被挡住 ifhou1{flag1;} //flag1,回到前灯被挡住后灯没被挡住状态 } ifflag4 { ifhou0{flag6;goto loop;}//flag6,后灯被挡住了然后前灯被挡住了后灯没被挡住 ifqian1{flag2;} //flag2,回到后灯被挡住前灯没被挡住状态 } ifflag5 { ifhou0{flag0;send_onemore;num_count;at24c02backup_num_count;goto loop;}//有人进去了 ifqian1{flag3;}//回到前灯后灯都被挡住状态 } ifflag6 { ifqian0{flag0;send_oneless;num_count--;at24c02backup_num_count;goto loop;}//有人出去了 ifhou1{flag4;} //回到后灯前灯都被挡住状态 } } 3、 AT24C02模块读取 void at24c02backup_num_count;//备份时间 void at24c02backup_classtime;//上课时间从上位机改变时,备份上课时间 void at24c02reset;//断电再上电时候把芯片数据读出来 4、蓝牙模块 蓝牙模块与上位机、app通讯 void bluetooth_sendunsigned char data0;//蓝牙一字节发送 unsigned char bluetooth_receive;//蓝牙接收一字节 void sendDatafloat data0;//蓝牙接收数据 void send_onemore; //进来一个人 void send_oneless; //出去一个人 void send_num_count;//发送人数 5、时钟芯片模块 将芯片按返回时间以整形读取输出到单片机芯片上。 void Read_RTCvoid;//read RTC //读时间 void Set_RTCvoid; //set RTC //设定时间 int gettime_4; //四位整数时间两位小时两位分钟 int gettime_6; //六位整数时间两位小时两位分钟两位秒钟 void changeClassTimeuchar mclass, int mtime; extern unsigned char l_tmpdate[7]; //读出的时间,格式【秒】【分】【时】【日】【月】【周】【年】 6、上位机 图3.6.1 上位机程序设计图 四、测试 1、对红外开关、按键、断电保存进行测试 图1-4 分别为“开机”“上午课表”“清零”“关灯”按键测试 结果分析功能稳定正常。同时,AT24C02、时钟芯片功能正常。 2、对上位机进行测试 图4.2.1 上位机初始化图 附录 AT24C02 1、 void atinit; //初始化 2、 void delay; 3、 void start; 4、 void stop; 5、 void respons; 6、 void write_byteuchar date; 7、 uchar read_byte; 8、 void delay1uchar x; 9、 void write_adduchar address,uchar date; 10、 uchar read_adduchar address; 11、 12、 13、 void at24c02backup_num_count;//备份时间 14、 void at24c02backup_classtime;//上课时间从上位机改变时,备份上课时间 15、 void at24c02reset;//断电再上电时候把芯片数据读出来 16、 17、 extern int classtime2[10]; 18、 19、 extern int classtime[10]; 20、 endif 蓝牙模块 1、 ifndef BLUETOOTH_H 2、 define BLUETOOTH_H 3、 4、 include include.h 5、 6、 7、 void bluetoothInit;//蓝牙初始化 8、 void bluetooth_sendunsigned char data0;//蓝牙一字节发送 9、 unsigned char bluetooth_receive;//蓝牙接收一字节 10、 void sendDatafloat data0;//蓝牙接收数据 11、 12、 void send_onemore; //进来一个人 13、 void send_oneless; //出去一个人 14、 void send_num_count;//发送人数 时钟芯片模块 void Write_Ds1302_byteunsigned char temp; //内部调用 void Write_Ds1302 unsigned char address,unsigned char dat ; //内部调用 unsigned char Read_Ds1302 unsigned char address ; //内部调用 void Read_RTCvoid;//read RTC //读时间 void Set_RTCvoid; //set RTC //设定时间 int gettime_4; //四位整数时间两位小时两位分钟 int gettime_6; //六位整数时间两位小时两位分钟两位秒钟 void changeClassTimeuchar mclass, int mtime; extern unsigned char l_tmpdate[7]; //读出的时间,格式【秒】【分】【时】【日】【月】【周】【年】 红外模块计数程序 void detect2 79 { 80 1 uchar flag; 81 1 //falg0 空载 82 1 loop 83 1 ifflag0 84 1 { 85 2 ifqian1{flag1;goto loop;} //flag1,前灯被挡住了 86 2 ifhou1 {flag2;} //flag2, 后灯被挡住了 87 2 } 88 1 ifflag1 89 1 { 90 2 ifhou1{flag3;goto loop;} //flag3,前灯被挡住了然后后灯被挡住了 91 2 ifqian0{flag0;} //flag0,前灯被挡住了然后前灯没被挡住 92 2 } 93 1 ifflag2 94 1 { 95 2 ifqian1{flag4;goto loop;} //flag4,后灯被挡住了然后前灯被挡住了 96 2 ifhou0{flag0;} //flag0,后灯被挡住了然后后灯没被挡住 97 2 } 98 1 ifflag3 99 1 { 100 2 ifqian0{flag5;goto loop;} //flag5,前灯被挡住了然后后灯被挡住了前灯没被挡住 101 2 ifhou1{flag1;} //flag1,回到前灯被挡住后灯没被挡住状态 102 2 } 103 1 ifflag4 104 1 { 105 2 ifhou0{flag6;goto loop;} //flag6,后灯被挡住了然后前灯被挡住了后灯没被挡住 106 2 ifqian1{flag2;} //flag2,回到后灯被挡住前灯没被挡住状态 107 2 } 108 1 ifflag5 109 1 { 110 2 ifhou0{flag0;send_onemore;num_count;at24c02backup_num_count;goto loop;} //有人进去了 111 2 ifqian1{flag3;} //回到前灯后灯都被挡住状态 112 2 } 113 1 ifflag6 114 1 { 115 2 ifqian0{flag0;send_oneless;num_count--;at24c02backup_num_count;goto loop;} //有人出去了 116 2 ifhou1{flag4;} //回到后灯前灯都被挡住状态 117 2 } 红外模块 void hongwai_init; void detect2; 主程序 int keystate; int screenstate; sbit key4P00; sbit key3P01; sbit key2P02; sbit key1P03; sbit key5P04; sbit dgnP05; int num_count;//人数 int loop;//循环变量 sbit aaaP27; void timer1_init { TMOD|0 x20; TH10 xfd; TL10 xfd; TR11; SM00; SM11; REN1; EA1; ES1; } int main { int currenttime; P00 xff; keystate0; timer1_init; init_12864;//屏幕初始化 //红外模块初始化 //时钟芯片初始化 //记忆芯片初始化 at24c02reset;//记忆芯片读数据 //Set_RTC; dgn0; write_add0,a; delayms5; write_add1,c; hongwai_init; //num_count23; //at24c02backup_num_count; //at24c02backup_classtime; at24c02backup_classtime; forloop0;loop10;loop { ifclasstime[loop]10020 { classtime2[loop]classtime[loop]100; classtime2[loop]-20; } ifclasstime[loop]10020 { classtime2[loop]classtime[loop]40; } } //num_count23; screenstate1; display1; while1 { ifscreenstate1 display1; //P251; //display1; //display1; //at24c02backup_num_count; //forloop0;loop40;loop ////bluetooth_sendread_add105loop48; //bluetooth_sendnum_count1048; //send_num_count; //detect2; //ifaaa1 //bluetooth_sendo; //ifP011num_count30; //ifaaa0 //bluetooth_sendh; detect2; //send_onemore; //at24c02reset; //bluetooth_sendread_add10948; //bluetooth_sendread_add11048; //bluetooth_sendread_add11148; //bluetooth_sendread_add11248; //bluetooth_sendclasstime[1]/100048; //bluetooth_sendclasstime[1]1000/10048; //bluetooth_sendclasstime[1]100/1048; //bluetooth_sendclasstime[1]1048; ifkeystate0 { ifkey10{keystate1;dgndgn;} ifkey20{keystate1;num_count0;} ifkey30{keystate1;display1;screenstate1;} ifkey40{keystate1;display2;screenstate2;} ifkey50{keystate1;display3;screenstate3;} } ifkey11key21key31key41key51 keystate0; } return 0; } //void main //{ //int aaa1234; // //init_12864; // //atinit;delayms100; // //write_add100,1;delayms100; //write_add101,2;delayms100; //write_add102,3;delayms100; //write_add103,4;delayms100; // //jishu0; //hourread_add100; //minread_add102; //sec0; //num20; //number0; //yue0; //ri0; //write_sfm0 x8d,sec; //write_sfm0 x8b,min; //write_sfm0 x89,hour; //write_com0 x92; //fornum0;num3;num

    注意事项

    本文(《“教室”人数检测器》设计报告.docx)为本站会员(admin)主动上传,工友文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知工友文库(发送邮件至gydoc@qq.com或直接QQ联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    copyright@ 2019-2022 工友文库网站版权所有
    经营许可证编号:鲁ICP备19032292号-1


    1
    收起
    展开