毕业论文

打赏
当前位置: 毕业论文 > 自动化 >

51单片机的教室智能照明控制系统设计+仿真图+源代码(7)

时间:2017-01-03 10:21来源:毕业论文
表1 逻辑关系表 环境光信号 时钟信号 人体信号 教室灯状态 强 0 休息时间 0 无人 0 关 0 强 0 休息时间 0 有人 1 关 0 强 0 规定上课时间 1 无人 0 关 0 强 0 规


表1 逻辑关系表
环境光信号    时钟信号    人体信号    教室灯状态
强           0    休息时间        0    无人          0    关           0
强           0    休息时间        0    有人          1    关           0
强           0    规定上课时间    1    无人          0    关           0
强           0    规定上课时间    1    有人          1    关           0
弱           1    休息时间        0    无人          0    关           0
弱           1    休息时间        0    有人          1    关           0
弱           1    规定上课时间    1    无人          0    关           0
弱           1    规定上课时间    1    有人          1    开           1
4.3 时钟模块
  初始化系统启动自检时,首先会判断时钟芯片DS1302的运行状态,当检测到DS1302处于启动状态时才对其进行初始化启动的始终。实时时钟芯片DS1302的初始化及其读写程序设计的关键是要遵循其时序要求[12]。
4.3.1 时钟程序设计
  对DS1302进行读写的程序流程图,如图10所示:
图10 DS1302进行读写的程序流程图
 
    在对DS1302进行操作时,读出的数据为BCD码,同样在写操作时,写入的数据也必须为BCD码,这就需要在数据写入之前、读出之后进行必要的数据进制之间的转换,以便与系统其他数据在比较时相对应。本系统中,设定的时间参数一般都为二进制或十优尔进制数,故程序中要进行二进制与BCD码间的转换。
4.4 软件抗干扰的设计
(1)数据采集误差的软件对策
①采用软件滤波算法,可以滤掉大部分由输入信号干扰而引起的输出控制的错误。最常用的方法有:中值法、比较舍取法、一阶递推滤波法。具体要选取哪种方法,必须依据信号的变化规律来进行选择。至于开关量要采用多次采集的方法来去除开关抖动。
②关键的数据可采用软件冗余技术,就是给数据添加一定冗余位,以达到数据检错和纠错的目的。
(2)程序运行失控的软件对策
  ①指令冗余。对于AT89S51单片机,大部分的指令是单字节,当出错程序落在其上时,错误的程序可以自动进入正轨;当落在多字节指令上时,程序将会继续出错,所以在对程序流向起着决定性作用的指令前插入几条NOP指令,就会使被弹飞指令进入正轨。 51单片机的教室智能照明控制系统设计+仿真图+源代码(7):http://www.youerw.com/zidonghua/lunwen_1719.html
------分隔线----------------------------
推荐内容