智能灯控系统 - 毕业设计(6)

2019-04-21 19:49

初始化赋值及部分特殊功能寄存器SFR的复位初始化,单片机复位后,程序计数器PC指向程序存储器的入口地址0000单元,程序状态字寄存器PSW清零,片内存储器选择工区工作寄存器,用户标志位F0为0状态,堆栈指针SP指向07H,其它定时器、中断允许寄存器IE、累加器ACC等皆为00H。 4.1.2定时中断处理

定时中断是利用单片机内部的定时器定时时间到或计数值已满引起的中断,内部定时器的计数器可以对内部时钟或从外部引线TO和TI输入的外部脉冲进行计数。计数器的溢出信号作为中断请求信号,去置位定时器溢出标志位,向单片机的CPU申请中断。

定时中断为周期性中断,每隔一定的时间会中断一次。本系统中设定的定时中断主要用来构造多任务操作系统,在系统响应中断后,无需对断点实施现场保护,可直接进行多任务时间的划分工作,使相应的操作任务进入就绪状态,即该中断可以启动有关的任务就绪。该定时中断处理程序框图如图4-I-2所示。

N 下一步 定时中断到? Y 开始 多任务启动时间划分 图 4-1-2 定时中断处理程序框图

本系统还采用了外部中断,此外部中断主要用来判断是否有遥控器信号,若有,就采集下来并加以处理;若无,则返回到主循环。 4.1.3多任务操作系统的构建

多任务操作是将用户应用程序分成多个任务,在操作系统的管理下,以某种准则调度并分配任务由处理器去执行。多任务运行实现一般是靠CPU运行实时内核,对多任务进行分配和调度,使CPU不停地执行这些任务中的某一个任务,以至能最大限度地提高CPU的利用率,加快运行速度,各任务(程序)不被耽误运行。

25

本系统多任务的执行是对定时中断中设置的实时标志进行检测,通过标志位的状态决定各任务的调用。任务的执行在微观上是分时顺序进行的,但在宏观上可以认为是同时执行的。因此,各任务在实时系统中的就会处于四种状态中的某

运行 等待 就绪 图 4-1-3 休眠 种状态之下,这四种状态如图4-1-3所示。

当某个任务获得CPU的执行权时,CPU执行该任务,此时任务处于运行状态。等待状态是指任务的执行需要等待某一事件发生,则由运行状态退出,进入等待状态。就绪状态是任务满足所有启动条件后所进入的状态。休眠状态是任务己执行完的状态。

4.2数据采集模块

本控制系统中的数据采集对象为环境光信号及人体存在信号,在程序设计中对这两个数据的采集放置在多任务模块中实施定时采集。 4.2.1存在传感器的优缺点

人体存在传感器有优点,也有缺点。优点便是本身不发任何类型的辐射,器件功耗很小,隐蔽性好,价格低廉。而缺点是容易受各种热源、光源干扰;由于红外穿透力差,因此人体的红外辐射容易被遮挡,不易被探头接收;易受射频辐射的干扰;环境温度和人体温度接近时,探测和灵敏度明显下降,有时还会造成短时失灵。试验检测也证明了这点,只要人体存在却有巧秒左右没有活动,人体传感器则认为没有人体存在。为避免这种现象的出现,本系统软件程序中设计为有人体存在状态后间隔2分钟或更长的时间来对人体存在参数信号的采集。 4.2.2数据采集软件设计的实现

26

本系统考虑到环境光足够亮时,无论有否人体存在都不应开灯;而环境光不够亮时,有人体存在才开灯,无人体存在不开灯。本系统逻辑定义为环境光亮时为二进制的“0”(符合光采集电路输出信号状态),暗时为“1”,人体存在为“1”,人体不存在为“0”,开灯为“1”,关灯为“0”,那么环境光与人体存在可以有以下的逻辑关系表表示,如表4. 2. 2所示: 表4. 2. 2

环境光参数 0 0 1 1 人体存在参数 1 0 1 0 教室灯状态 0 0 1 0 上表数据表明可将环境光参数与人体存在参数相与门操作,又由于继电器是低平驱动,所以要将采集处理后的信号进行非操作,才可以驱动继电器工作,即可得到教室灯的状态,其软件程序为:

;-------------------------------------------------------------- Function: BodySensor and Iight to light port356

DoSensLight:Mov c, port33 ;Signal of Sensor

Anl c, port37

Cpl c ;have person and no light Mov port35, c ;on relay 1 Mov port36, c ;on relay 2 Jnc SensOut ;no person to out

Haveperson:mov SensDelayBuf, #5 ;delay 5 minute SensOut: Ret

4.2.3人体存在传感器的抗干扰措施

人体存在传感器易受外界影响,于是要在使用时特别注意抗干扰性能。 1.防小动物干扰

探测器安装在推荐地使用高度,对探测范围内地面上的小动物,不产生信号。 2.抗电磁干扰

27

探测器的抗电磁波干扰性能符合GB10408中4. 6. 1要求,一般手机电磁干扰不会引起误报。 3.抗灯光干扰

探测器正常灵敏度范围内,受3米外H4卤素灯透过玻璃照射,不产生信号。 4.2.4人体存在传感器的安装要求

人体存在传感器??的安装要求:人体存在传感器只能安装在室内,其误报率

2与安装的位置和方式有极大的关系,正确的安装应满足下列条件:

1.人体存在传感器应离地面2.0-2.2米。

2.人体存在传感器远离空调,冰箱,火炉等空气温度变化敏感的地方。 3.人体存在传感器探测范围内不得隔屏、家具、大型盆景或其他隔离物。 4.人体存在传感器不要直对窗口,否则窗外的热气流扰动和人员走动会引起误报,有条件的最好把窗帘拉上。人体存在传感器也不要安装在有强气流活动的地方。人体存在传感器对人体的敏感程度还和人的运动方向关系很大。人体存在传感器对于径向移动反应最不敏感,而对于横切方向(即与半径垂直的方向)移动则最为敏感.在现场选择合适的安装位置是避免红外探头误报、求得最佳检测灵敏度极为重要的一环。

4.3时钟模块

在系统启动自检初始化时,首先会对时钟芯片DS1302的运行状态进行判断,当检测到DS1302处于启动状态时才对其进行初始化启动时钟??。实时时钟芯片

7DS1302的初始化及其读写程序设计的关键是要遵循其时序要求。 4.3.1数据输入输出

在对DS1302进行的各种操作之前,必须先对其初始化,即需要把复位输入RST端置为高电平,如果RST输入为低电平,那么所有的数据传送中止,且I/0引脚变为高阻抗状态。在数据读/写完后,RST端应置成低电平,以防止外部干扰对DS1302内部时钟的影响。

同时,为了防止复位输入端受到外部的干扰,要求上电时,在主电源引脚 Vcc2>2. 5V之前,RST必须为逻辑0。无论是读操作还是写操作,都必须在开头

28

的8个时钟周期把提供地址和命令信息的8位数据装入到DS1302的移位寄存器。地址/命令子节用于指明40个寄存器中的哪个进行何种操作。数据在SCLK的上升沿串行输入,在开始的8个时钟周期把命令字装入移位寄存器之后,若跟随的是写命令字节,则在下8个SCLK周期的上升沿输入数据字节,若跟随在读命令字节的8个SCLK周期之后,在下8个SCLK周期的下降沿输出数据字节。 4.3.2时钟内部寄存器的使用

DS1302有控制寄存器和年、月、日、周、时、分、秒等工作寄存器组成。本系统中只用到工作寄存器中的时分秒及控制寄存器,所应用的各寄存器地址(命令)及数据寄存器分配情况如表4. 3. 2所示:

表4. 3. 2内部寄存器

寄存器名 命令字 写操作 SEC MIN 读操作 CH 0 10SEC 10MIN 10 12/24 0 A/P WP TCS 0 0 0 0 0 0 0 RS HR SEC MIN 取值范围 7 6 5 4 3 2 1 0 各位内容 80H 81H 00~59 82H 83H 00~59 01~02 HR 84H 85H 或 00~23 CONTROL 8EH 8FH CHARGER 90H 91H CLOCK BURST 说明:

BEH BFH TCS TCS TCS DS DS RS (1)上表中,时钟寄存器内的数据是以BCD码的形式存在的。其中秒寄存器的位7 定义为时钟暂停位,当此位设置为逻辑1时,时钟振荡器停止,DS1302进入低功耗的备份状态;当把此位置为0时,时钟将启动。

(2)小时寄存器的位7定义为12或24小时方式选择位。当为低电平时,选择24小时方式,本系统在设计中采用的就为24小时方式。

29


智能灯控系统 - 毕业设计(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:甘肃省静宁县土壤污染防治示范项目可行性研究报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: