基于ARM智能家居照明系统(共34页).doc

上传人:飞****2 文档编号:17305174 上传时间:2022-05-23 格式:DOC 页数:34 大小:1.15MB
返回 下载 相关 举报
基于ARM智能家居照明系统(共34页).doc_第1页
第1页 / 共34页
基于ARM智能家居照明系统(共34页).doc_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《基于ARM智能家居照明系统(共34页).doc》由会员分享,可在线阅读,更多相关《基于ARM智能家居照明系统(共34页).doc(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上目录摘 要近年来随着社会的进步发展,人们对身边的环境安全越来越关注。红外传感器在这个时候起到了很重要的作用。热释红外传感器主要用于探测红外特征辐射,可感知人体、小动物的热源,适合做热释红外物体运动探测,可以用于照明电路的设计中。本设计基于UP-Magic魔法师实训平台,采用了韩国三星公司生产的S3C2440的ARM9实验开发板。S3C2440处理器是一款基于ARM920T内核和AMNA总线的16/32位RISC嵌入式处理器,主要面向手持设备,以及高性价比、低功耗的应用。本设计介绍了一种热释红外传感器系统的设计方案,电路组成及其组装、调试。这种被动型热释电红外照明的应用

2、电路把红外线的隐蔽性很好地应用于照明系统中,从而实现了方便、快捷的功能。当有人体进入热释红外传感器的探测范围内,传感器将接收到探测到的热源,随后传感器将输出微弱信号,信号要经过放大、比较、延时等几个环节,最后使放光二极管发光,起到照明的作用。关键词:热释红外(PIR)传感器;运算放大器;ARM9;linuxAbstractWith the development of social progress in recent years, people have become increasingly concerned about the safety of their surroundings.

3、 Infrared radiation sensor plays a very important role in this time. PIR sensors are used for detecting the characteristic infrared radiation,percept the heat source of human body and small animals, the design of alarm circuit.The design is based on UP-Magic magician Flats and used the ARM9 experime

4、ntal development board of S3C2410 produced by Samsung. S3C2410 processor is a 16/32 bit RISC embedded processor which based on ARM920T core and AMNA bus, and mainly for handheld devices, and high cost, low-power applications.This design introduces a design plan of the PIR sensor system, circuit and

5、its assembling, debugging. The Application Circuit of the passive PIR alarm uses the invisibility of the infrared radiation well into the alarm system, and in order to achieve the anti-theft alarm and security purposes. When the body goes into the range of PIR sensor detection, sensors will receive

6、the detection of heat sources and then the sensor will output a weak signal. The Signal should be amplified, compared and delayed, finally light-emitting diodes emit light, played the role of police alarm.Keywords: PIR sensor; operational amplifier; ARM9; linux引 言红外线是一种光线,是太阳光线中众多不可见光线中的一种具有普通光的性质,可

7、以以光速直线传播。红外线由德国科学家霍胥尔于1800年发现,又称为红外热辐射(Infrared radiation)。红外线可分为三部分,即近红外线,波长为0.751.50m之间;中红外线,波长为1.506.0m之间;远红外线,波长为6.0l000m之间。随着科学技术的发展,红外线越来越广泛的应用于通讯、军事、航天、医疗、考古、天文、探测等科学领域,即使在日常生活和农业生产中也广泛应用到红外技术。如红外线取暖器、红外自动干手器、红外线报警器、远红外粮食烘干等。热释电红外线传感器是80年代发展起来的一种新型高灵敏度探测元件。它能以非接触形式检测出人体辐射的红外线能量的变化,并将其转换成电压信号输

8、出。将这个电压信号加以放大,便可驱动各种控制电路。本文以热释电红外线传感器RE200B为例,介绍它在照明电路中的应用。 随着时代的不断进步,“物联网”这个越来越热的话题,智能家居的研究也充分得到了发展,这也是人们未来居住环境的一个发展方向。这一研究开始于上世纪80年代的西方发达国家,这主要得溢于当时电子技术在家用电器的大量使用。只不过当时的定义是住宅电子化(HomeElectronics,HF)。随后短短的三十年间得到了极大的发展,智能家居这一概念也得到了定型。而且目前在美国、欧洲、新加坡、日本等国家已形成了一种技术标准。我们国家对于智能家居的研究起步比较晚,至今也没有一定的国家标准。但发展的

9、速度与前景却是令人可喜的,并在我国已涌现出一大批比较知名的产品,比如海尔的U-Home,清华同方的e-Home数字家园等。在电子防盗、人体探测等领域,被动式热释电红外线传感器也以其价格低廉、技术性能稳定等特点受到广大用户和专业人士的欢迎。近20年来,低成本的热释探测工艺日趋成熟,性能逐渐完善,在照明控制、入侵警、火灾报警、自动水阀、自动门开关以及其它家用电器等领域中都得到了广泛的应用,成为目前性能价格最优的红外传感器的代表,在民用领域占有极其重要的地位。这种热释电红外传感器能以非接触形式检测出人体辐射的红外线,并将其转变为电压信号,同时,它还能鉴别出运动的生物与其它非生物。热释红外传感器既可用

10、于智能家居照明装置,也可以用于自动控制、接近开关、遥测、防盗报警等领域。具有如下特点:(1)不需要用红外线或电磁波等发射源。(2)灵敏度高、控制范围大。(3)可流动安装。释电红外传感器的特点是反应速度快、灵敏度高、准确度高、测量范围广、使用方便,尤其可以进行非接触式测量使其主要应用于铁路、车辆、石油化工、食品、医药、塑料、橡胶、纺织、造纸、电力等行业的温度测量、温度检测、设备故障的诊断。国内热释传感器的市场才刚刚打开,而国内除你塞拉传感器公司生产双元热释传感器及相关的应用产品外,其他技术含量小高的产品及在家电领域的应用开发至今很少有人涉足。面对急剧增加的红外市场,国内传感器行业界应给予足够关注

11、,尽量开发出高起点的热释红外传感器。1 ARM处理器1.1 ARM处理器介绍ARM既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。目前ARM微处理器已广泛应用于工业控制、消费类电子产品、通信系统、网络系统、无线系统等各个领域。1.1.1 ARM的体系结构ARM的设计实现了非常小但高性能的结构。ARM处理器的简单使ARM的内核非常小,这样使器件的功耗也非常低。ARM是精简指令集计算机(RISC),因为它集成了非常典型的RISC结构特征:(1)一个大的、统一的寄存器文件。(2)加载存储结构,数据处理的操作只针对寄存器的内容,而不直接对存储器进行操。(3)简

12、单的寻址模式,所有加载存储的地址都只由寄存器的内容和指令域决定。(4)统一和固定长度的指令域,简化了指令的译码。此外,ARM体系结构还提供:(1)每一条数据处理指令都对算术逻辑单元(ALU)和移位器进行控制,以实现对ALU和移位器的最大利用。(2)地址自动增加和自动减少的寻址模式实现了程序循环的优化。(3)所有指令的条件执行实现了最快速的代码执行。这些在基本RISC结构上增强的特性使ARM处理器在高性能、低代码规模、低功耗和小的硅片尺寸方面取得了良好的平衡。1.1.2 ARM微处理器的应用领域到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域。(1)工业控制领域:作为32位的RISC

13、架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比,向传统的8位16位微控制器提出了挑战。(2)无线通讯领域:目前已有超过85的无线通讯设备采用了ARM技术,ARM以其高性能和低成本,在该领域的地位日益巩固。(3)网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。(4)消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。(5)成像和安全产品:现在流行

14、的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用。1.2 ARM920T体系结构1.2.1 ARM920T系统结构分析ARM920T采用5级流水线,其结构图如图1-1所示,具有分开的指令和数据存储器,5级流水线具体如下:取值从指令存储器取指令译码读取寄存器操作数执行产生ALU运算结果或产生存储器地址仿存访问数据存储器回写完成结果写寄存器(1)取指:从存储器中取出指令,并将其放在指令流水线。(2)译码:对指令进行译码。(3)执行:把一个操作数移位,产生ALU的结果。(4)仿

15、存:如果需要,则访问数据存储器;否则ALU的结果只是简单地缓冲1个时钟周期,以便所有的指令具有同样的流水线流程。(5)回写:将指令产生的结果回写到寄存器,包括任何从存储器中读取的数据。ARM920T处理器一个显著的特点是采用指令和数据分离访问的方式,即采用了指令缓存(I-Cache)和数据缓存(D-Cache)。这样可以把指令访问和数据访问单独安排l级流水线。1.2.2 ARM920T的工作状态从编程的角度看,ARM920T微处理器的工作状态一般有两种:(1)ARM状态,此时处理器执行32位的、字对齐的ARM指令;(2)Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。ARM指

16、令集和Thumb指令集均有切换处理器状态的指令,在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且,处理器的工作状态的转变并不影响处理器的工作模式和相应寄存器中的内容。但ARM微处理器在开始执行代码时,应该处于ARM状态。当操作数寄存器的状态位(位0)为1时,可以采用执行BX指令的方法,使微处理器从ARM状态切换到Thumb状态。此外,当处理器处于Thumb状态时发生异常(如IRQ、FIQ、Undef、Abort、SWI等),当异常处理返回时,自动切换回Thumb状态。当操作数寄存器的状态位为0时,执行BX指令可以使微处理器从Thumb状态切换到ARM状态。此外,在处理器进行异常

17、处理时,将PC指针放入异常模式链接寄存器中,并从异常向量地址开始执行程序,也可以使处理器切换到ARM状态。1.2.3 ARM920T体系结构的存储器格式ARM920T体系结构将存储器看做是从零她址开始的字节的线性组合。从0字节到3字节放置第1个存储的字数据,从第4个字节到第7个字节放置第2个存储的字数据。依次排列。作为32位的微处理器,ARM920T体系结构所支持的最大寻址空间为4GB。ARM920T体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。大端格式中字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,如图2-3所示。与大端存储格式相反,在小端存储格式中,低地址

18、中存放的是字数据的低字节,高地址存放的是字数据的高字节。如图2-4所示。1.2.3 ARM920T处理器模式ARM920T支持7种运行模式,分别为:(1)用户模式(usr),ARM处理器正常的程序执行状态;(2)快速中断模式(fiq),用于高速数据传输或通道处理;(3)外部中断模式(irq),用于通用的中断处理;(4)管理模式(svc),操作系统使用的保护模式;(5)数据访问终止模式(abt),当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护;(6)系统模式(sys),运行具有特权的操作系统任务:(7)未定义指令中止模式(und),当未定义的指令执行时进入该模式,可用于支持硬件协处理

19、器的软件仿真。ARM微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的。除用户模式以外,其余的6种模式称为特权模式;其中除去用户模式和系统模式以外的5种又称为异常模式,常用于处理中断或异常,以及访问受保护的系统资源等情况。2 硬件电路设计2.1 设计思路。 整个智能家居控制平台功能的实现采用模型仿真的方法来支持,即在一定的小空间内实现灯光的开闭控制。该系统功能的实现在技术上只要分以下几个部分:本系统主要由光照检测电路、热释电红外线传感器及处理电路、ARM系统及控制电路组成。工作时

20、,光照检测电路和热释电红外线传感器采集光照强弱、室人是否有人等信息送到ARM控制器,ARM根据这些信息通过控制电路对照明设备进行开关操作,从而实现照明控制,以达到节能的目的。下面是大体的流程图(图1):热释电红外传感器能以非接触形式检测出人体辐射的红外线,并将其转变为电压信号。由于热释电传感器输出的信号变化缓慢、幅值小(小于1 mV),不能直接作为照明系统的控制信号,因此传感器的输出信号必须经过一个专门的信号处理电路,使得传感器输出信号的不规则波形转变成适合于ARM处理的数字信号。根据以上要求,人体热释电检测电路组成框图如图3所示。2.2 信号处理电路本设计采用BIS0001来完成对热释电传感

21、器输出信号的处理。BIS0001是一款具有较高性能的热释电传感器信号处理集成电路。2. 3主控制操作界面的实现利用以AEM9为核心控制,并加以辅助电路硬件,根据需求进行软件编写。实现在操作界面上可通过对应的选项来设置各个与它连接的模块的参数,并对各个部分传回来的数据进行处理来进行实时监控,是人机交流的桥梁。 检测人的存在其主要原理方法是系统通过对监视空间里的红外辐射检测来确认是否有人进入,在检测到进入时,系统会根据用户设置与进出情况进行匹配,并按照匹配结果来决定是否发出照明系统。2.4UP-Magic core硬件资源本设计中采用了三星公司生产的S3C2410处理器,S3C2410是一款基于A

22、RM920T内核的1632位RISC嵌入式微处理器,主要面向手持设备,以及高性价比、低功耗的应用。ARM9实验开发板的系统框图如图所示。开发板主要硬件:(1)核心资源S3C2440 ARM CPU、32M SDRAM、64M NAND FLASH。(2)0M网卡,DM9000AE。(3)USB主口,一个USB从口。(4)RS232串口DB9接口。另有一路RS232串口和TTL串口从扩展插座上引出。(5)插座,引出所有总线信号(经过驱动芯片)和未占用资源。(6)LCD和触摸屏接口,外接专配液晶屏/触摸屏板。(7)电源、复位、JTAG、RTC等基本资源和接口,支持博创UP-LINK和J-LINK仿

23、真器。(8)设置了IO控制的LED和可产生硬中断的5位导航按键等简单调试资源。S3c2440芯片介绍:S3c2440X芯片集成了大量的功能单元,包括:1内部1.8V,存储器3.3V,外部IO 3.3V,16KB数据CACH,16KB指令CACH,MMU;2内置外部存储器控制器(SDRAM控制和芯片选择逻辑);3LCD控制器(最高4K色STN和256K彩色TFT),一个LCD专用DMA;44路带外部请求线的DMA;5三个通用异步串行端口(IrDA1.0,16-Byte Tx FIFO,and 16-Byte Rx FIFO),2通道SPI;6一个多主IIC总线,一个IIS总线控制器;7SD主接口

24、版本1.0和多媒体卡协议版本2.11兼容;82个USB HOST,一个USB DEVICE(VER1.1);94个PWM定时器和一个内部定时器;10看门狗定时器;11117个通用IO;1224个外部中断;13电源控制模式:标准、慢速、休眠、掉电;148通道10位ADC和触摸屏接口;15带日历功能的实时时钟;16芯片内置PLL;17设计用于手持设备和通用嵌入式系统;181632位RISC体系结构,使用ARM920T CPU核的强大指令集;19ARM带MMU的先进的体系结构支持WINCE、EPOC32、LINUX;20指令缓存(cache)、数据缓存、写缓冲和物理地址TAG RAM,减小了对主存储

25、器带宽和性能的响;21ARM920T CPU核支持ARM调试的体系结构;22内部先进的位控制器总线(AMBA2.0,AHB/APB)2.5 RE200B热释红外传感器2.5.1 热释红外传感器介绍热释电红外传感器和热电偶都是基于热电效应原理的热电型红外传感器。不同的是热释电红外传感器的热电系数远远高于热电偶,其内部的热电元由高热电系数的铁钛酸铅汞陶瓷以及钽酸锂、硫酸三甘铁等配合滤光镜片窗口组成,其极化随温度的变化而变化。为了抑制因自身温度变化而产生的干扰,该传感器在工艺上将两个特征一致的热电元反向串联或接成差动平衡电路方式,因而能以非接触式检测出物体放出的红外线能量变化,并将其转换为电信号输出

26、。热释电红外传感器在结构上引入场效应管的目的在于完成阻抗变换。由于热电元输出的是电荷信号,并不能直接使用,因而需要用电阻将其转换为电压形式,该电阻阻抗高达104M,故引入的N沟道结型场效应管应接成共漏形式(即源极跟随器)来完成阻抗变换。热释电红外传感器由传感探测元、干涉滤光片和场效应管匹配器三部分组成。设计时应将高热电材料制成一定厚度的薄片,并在它的两面镀上金属电极,然后加电对其进行极化,这样便制成了热释电探测元。由于加电极化的电压是有极性的,因此极化后的探测元也是有正、负极性的。常见热释红外传感器的外形外形尺寸及内部机构内部电器连接图图1是一个双探测元热释电红外传感器的内部电器示意图。使用时

27、D端接电源正极,G端接电源负极,S端为信号输出。该传感器将两个极性相反、特性一致的探测元串接在一起,目的是消除因环境和自身变化引起的干扰。它利用两个极性相反、大小相等的干扰信号在内部相互抵消的原理来使传感器得到补偿对于辐射至传感器的红外辐射,热释电传感器通过安装在传感器前面的菲涅尔透镜将其聚焦后加至两个探测元上,从而使传感器输出电压信号。制造热释电红外探测元的高热电材料是一种广谱材料,它的探测波长范围为0.220m。为了对某一波长范围的红外辐射有较高的敏感度,该传感器在窗口上加装了一块干涉滤波片。这种滤波片除了允许某些波长范围的红外辐射通过外,还能将灯光、阳光和其它红外辐射拒之门外。2.5.2

28、 RE200B工作原理RE200B是热释电红外传感器,这种传感器是由一种晶体材料做成,当这种晶体表面受到红外线照射时,会在晶体表面产生电荷。随着光线对晶体照射的改变,电荷量也会发生改变。这个改变的电信号可以通过场效应管来进行测量,基本就是这样的一个原理制作了这样的传感器。这种传感器对于不同波长的光线照射都能产生不同程度的响应,因此在传感器前会加入一个滤镜窗口,这就是为什么我们能看到的re200b的to 5 封装形式中有一个像玻璃似的小窗。当然通过这个滤镜可以限定晶体对特定波长的光线产生响应,一般在8u m 1 4u m ,这样就非常接近人体辐射的红外线波长了。re 2 0 0b 是热释电红外传

29、感器。这种传感器是由一种晶体材料做成,当这种晶体表面受到红外线照射时,会在晶体表面产生电荷。随着光线对晶体照射的改变,电荷量也会发生改变。这个改变的电信号可以通过场效应管来进行测量,基本就是这样的一个原理制作了这样的传感器。这种传感器对于不同波长的光线照射都能产生不同程度的响应,因此在传感器前会加入一个滤镜窗口,这就是为什么我们能看到的re 20 0 b的to 5 封装形式中有一个像玻璃似的小窗。当然通过这个滤镜可以限定晶体对特定波长的光线产生响应,一般在8u m 1 4u m ,这样就非常接近人体辐射的红外线波长了。4.5.3 热释电红外线传感器的优缺点优点:本身不发任何类型的辐射,器件功耗

30、很小,隐蔽性好,价格低廉。缺点:1、容易受各种热源、光源干扰。容易受射频辐射的干扰。2、被动红外穿透力差,人体的红外辐射容易被遮挡,不易被探头接收。3、环境温度和人体温度接近时,探测和灵敏度明显下降,有时造成短时失灵。热释电红外线传感器的安装要求热释电红外线传感器只能安装在室内,其误报率与安装的位置和方式有极大的关系:1、热释电红外线传感器应离地面2.0-2.2米。2、热释电红外线传感器远离空调,冰箱,火炉等空气温度变化敏感的地方。3、热释电红外线传感器探测范围内不得隔屏、家具、大型盆景或其他隔离物。4、热释电红外线传感器不要直对窗口,否则窗外的热气流扰动和人员走动会引起误报,有条件的最好把窗

31、帘拉上。2.6 放大电路设计热释红外传感器输出的微弱检测信号,要经过放大、比较、延时等几个环节才能发出照明。在本设计中运用集成放大器LM324来进行放大,以使其获得足够的增益。lm324LM324简介: LM324系列器件为价格便宜的带有真差动输入的四运算放大器。与单电源应用场合的标准运算放大器相比,它们有一些显著优点。该四放大器可以工作在低到3.0伏或者高到32伏的电源下,静态电流为MC1741的静态电流的五分之一。共模输入范围包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。每一组运算可用图1所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V

32、-”为正、负电源端,“Vo”为输出端。两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的位相反;Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。LM324的引脚排列见图2。LM324引脚图LM324的特点: 1.短路保护输出 2.真差动输入级 3.可单电源工作:3V-32V 4.低偏置电流:最大100nA 5.每封装含四个运算放大器。 6.具有内部补偿的功能。 7.共模范围扩展到负电源 8.行业标准的引脚排列 9.输入端具有静电保护功能2.7 延时电路设计为了使发光二极管能长时间发光,起到照明的作用,本系统应用TLC555CD组成单稳态延时

33、电路工作原理如下:电源通电瞬间,电路有一个稳定的过程,即电源通过电阻R向电容C充电,当Vc上升到2/3Vdd时,触发器复位,Vo为低电平,放电BJT T导通,电容C放电,电路进入稳定状态。若触发器输入端施加触发信号,触发器发生翻转,电路进入暂稳态,Vo输出高电平,且BJT T截止,此后电容C充电至Vcc=2/3Vdd时,电路又发生翻转,Vo为低电平,T导通,电容C放电,电路恢复至稳定状态。3系统软件设计软件部分的主要任务是完成对光照检测电路和对热释电传感器信号处理电路的输出信号进行处理。在光照较强时,系统继续对光照检测电路的输出状态进行检测。光照较弱时,系统对信号处理电路的输出状态Vo进行检测

34、。若室内有人时Vo为高电平,系统控制照明设备点亮并按设定的时间进行延时。在延时时间内再一次检测到有人时,则系统又按设定的时间进行延时;若在延时时间内检测到室内无人时,则系统控制照明设备熄灭并重新对信号处理电路的输出状态Vo进行检测。 基于上述分析,系统软件设计流程如图5所示。结语本次设计的智能照明控制系统,适用于学校、商场等大面积室内场所的照明控制,可以有效地对照明设备进行自动控制,达到科学管理与节能的目的。实验证明,该系统结构简单、安装方便、工作稳定、可靠性高。若在该系统中增加报警装置,也可实现自动报警功能。致谢本文的研究主要是在我的导师张明副教授的精心指导和悉心关怀下完成的,在我的学业和论

35、文的研究上其中无不倾注着导师辛勤的汗水和心血。导师的严谨治学态度、渊博的知识使我深受启迪。从尊敬的导师身上,我不仅学到了扎实宽广的专业知识,也学到了做人的道理。在此我要向我的导师致以最衷心的感谢和深深的敬意!虽然家人没有直接对我的学业有所帮助,但是他们是我心灵的温暖港湾和强力支柱,让我能够无风无雨、无忧无虑的学习成长,只愿寸草心终究报得三春晖。在多年的学习生活中,还得到了许多同学、师兄弟和师姐妹的热心关怀和帮助,无论是己经毕业的还是仍在学校里,大家始终如一。在论文的撰写和修改过程中,特别感谢身边同学的帮助。在这个集体里面我深深感受到同心协力的奋斗精神,大公无私的互助氛围,也为能有这样的同门、朋

36、友感到万分的欣慰和幸运。在此,向所有关心过我、帮助过我、指导过我的老师、家人和朋友表示由衷的感谢!衷心的感谢在百忙之中评阅论文和参加答辩的各位专家和教授!参考文献1 王波,FreeBSD使用大全M,机械工业出版社,20092 高鹏,Linux安装与配置指南M,中国铁道出版社,20083 东箭工作室编著,怎样使用Windows NT Workstation 4.0中文版M,电子工业出版社,2009,14 卫泽友等编,操作系统及应用M,电子工业出版社,20055 陈向阳,方汉编著,Linux实用大全M,科学出版社,20056 钟华. M.机械工业出版社社,20087 周德新,张向利。linux与嵌

37、入式操作系统j。桂林电子工业学院学报。2000.4(1):21-238 吴朝晖。纵横嵌入式技术j。微电脑世界。2009.4.9(1):24-329 吴海洋 魏计林 邱选兵 .一种基于ARM的人体红外测温系统j桂林电子工业学院学报2011.3.1(5)10 李云瑞.基于ARM的红外气体检测与报警系统j桂林电子工业学院学报2009.8(9)11 叶凯 杨文淑。基于ARM的32位嵌入式系统设计j桂林电子工业学院学报,2006.1.1(3)12 田泽.ARM9嵌入式开发实验与实践M.北京航空航天大学.200613 季昱,林俊超,宋飞.ARM嵌入式应用系统开发典型实例M.中国电力出版社.200514 M

38、ark G.Sobell(美),孙天泽(译).Red Hat Linux使用指南M.电子工业出版社.200415 梁如军.Red Hat Linux 9应用基础教程.机械工业出版社M.200516 孙天泽等.嵌入式设计及Linux驱动开发指南基于ARM9处理器M.电子工业出版社.2005附录1附录2附录3测试程序:#include #include #include int main(int argc, char *argv) int i; int ret; int fd; int irda_cnt; fd = open(/dev/irda, 0);/ fd = open(/dev/leds,

39、 0)是打开leds设备,但是这里的0是什麽意思啊,按照open函数的用法,这一位应该是读写权限 if (fd 0) printf(Cant open /dev/irdan); return -1; while (1) ret = read(fd,&irda_cnt, sizeof(irda_cnt); if (ret 0) printf(read err!n); continue; if (irda_cnt) printf(have people!n); close(fd);return 0;附录4驱动程序:#include #include #include #include #inclu

40、de #include #include #include #include #include #define DEVICE_NAME IRDA #define IRDA_MAJOR 232 static volatile int ev_press = 0;static DECLARE_WAIT_QUEUE_HEAD(button_waitq);static irqreturn_t irda_interrupt(int irq) ev_press = 1; wake_up_interruptible(&button_waitq); return IRQ_RETVAL(IRQ_HANDLED);

41、static int s3c24xx_irda_open(struct inode *inode, struct file *file) int err; err = request_irq(IRQ_EINT4, irda_interrupt,IRQF_TRIGGER_RISING, irda, NULL); if (err) printk(cant request irq!n); return 0;static int s3c24xx_irda_close(struct inode *inode, struct file *file) free_irq(IRQ_EINT4, NULL); r

42、eturn 0;static int s3c24xx_irda_read(struct file *filp, char _user *buff, size_t count, loff_t *offp) unsigned long err; wait_event_interruptible(button_waitq, ev_press); err = copy_to_user(buff, (const void *)&ev_press, sizeof(ev_press); ev_press = 0; return err ? -EFAULT : 0;static struct file_ope

43、rations s3c24xx_irda_fops = .owner = THIS_MODULE, .open = s3c24xx_irda_open, .release = s3c24xx_irda_close, .read = s3c24xx_irda_read,;static int _init s3c24xx_irda_init(void) int ret; ret = register_chrdev(IRDA_MAJOR, DEVICE_NAME, &s3c24xx_irda_fops); if (ret 0) printk(DEVICE_NAME cant register maj

44、or numbern); return ret; printk(DEVICE_NAME initializedn); return 0;static void _exit s3c24xx_irda_exit(void) unregister_chrdev(IRDA_MAJOR, DEVICE_NAME);module_init(s3c24xx_irda_init);module_exit(s3c24xx_irda_exit);MODULE_AUTHOR(xw_tech); MODULE_DESCRIPTION(S3C2410 IRDA Driver); MODULE_LICENSE(GPL);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁