您好,欢迎来到万书网,千万量级范文库任你选!

当前位置:首页 > 范文大全 > 二号文库

基于嵌入式ARM9的USB设计与实现(精选合集)

说明:文章内容所见即所得,本站下载的DOCX文档与页面上展示的相同。如下载word有问题请添加客服QQ:4084380 发送本文地址给客服即可处理(尽可能给您提供完整文档),感谢您的支持与谅解。本文地址:https://www.wanshu.net/fanwen/a2/391003.html

第一篇:基于嵌入式ARM9的USB设计与实现

基于嵌入式ARM9的USB设计与实现

引 言

USB(Universal Serial Bus)是通用串行总线的缩写,因其具有方便易用,动态分配带宽,容错性优越和高性价比等特点,现已成为计算机的主流接口。

随着嵌入式系统的广泛应用,各种小型终端需要开发出与外界联系的USB接口。目前,常用的技术有两种。基于单片机的USB接口,特点是需要外置芯片,电路复杂,留下的CPU资源不多;基于ARM的USB接口,特点是资源丰富,但ARM系列产品较多,如果选型不当,还需要搭接较多的外围电路,且不能很好地发挥CPU性能。USB 接口原理

USB1.1 规范[1]将USB 分为5 部分:控制器、控制器驱动程序、USB 芯片驱动程序、USB设备以及针对不同USB 设备的客户端驱动程序。

(1)控制器(Host Controller)主要负责执行由控制器驱动程序发出的命令。

(2)控制器驱动程序(Host Controller Driver), 在控制器与USB 设备间建立通信

管道(Pipe)。

(3)USB 驱动程序(USB Driver),提供对不同USB 设备及芯片的支持。(4)USB 设备(USB Device), 有两类USB 设备:一类称为功能设备(Function),另

一类是称为USB 集线器(HUB),可以连接多个USB 设备。

(5)USB 设备驱动程序(Client Driver Software)及特定应用程序。主控制器的驱动软件由操作系统支持,USB 设备开发人员一般只需编写客户驱动程序,实现特定功能,设备端所有功能软件需要全面设计。USB 的四种数据传输模式分别是:控制型传输、中断型传输、批量型传输、实时型传输。第一种在缺省通道中传输USB 接口本身的配置等控制信息,后面三种用于功能部件传输数据。中断型用于键盘等的异步输入输出少量数据传输,批量传输主要用于象硬盘等块设备的数据传输,在中断和批量的传输过程中要传递交互握手信号,确保数据准确无误。实时传输对带宽有严格要求,但允许有一定误码,省去了交互握手信号的传递,常用于音视频码流数据传输。四种类型数据都按带宽要求分配在1ms 一帧的数据帧内进行传输,连到端点(EndPoint)通道.1.1嵌入式系统USB 接口设计

要满足高性能ARM嵌入式系统的要求,扩展USB接口必须选择高性能USB控制器芯片,Philips公司的PDISUBD12 USB器件,是与微处理器配合使用的高性能USB接口器件,性价比很高[2][4]。PDIUSBD12主要特性有:

(1)符合USB 1.1 技术规范;

(2)USB控制器并行接口与处理器间的数据传输速度高达2M 字节/秒;(3)在批量模式和同步模式下均可实现1M 字节/秒的数据传输速率;(4)集成了FIFO存储收发器,支持DMA 操作;(5)内置时钟倍频PLL电路,可编程时钟频率输出;(6)多中断模式实现批量和同步传输;

1.2音频码流USB 设备驱动程序

Windows2000 中各种USB 设备客户驱动程序结构框架基本相同,可以从Windows2000 DDK 中获得USB 设备驱动程序范例代码,对范例代码作少量修改就可以满足特定功能需要。图1 显示了驱动程序各层间的数据传递关系,底层USB 主控制器驱动程序(USB Host Driver)由操作系统提供支持,设备驱动程序只需要对USB Host Driver 上传的I/O 数据包IRP 作出响应,并把要输出数据以IRP 形式下传给USB Host Driver 即可[5] [6]。在ISO(实时型)模式下传输音频码流,USB 客户程序除了WDM(Windows Driver Model)驱动常规处理外,必须计算好带宽,并为驱动程序在非分页存储区内分配好环行缓冲区(Ringbuffer),以便USB 主控制器可以不间断输出实时数据。RingBuffer 的大小按下式 计算:

每帧字节数 × 每缓冲帧数 × 缓冲区数 ; 每传完一缓冲区,USB Host Driver 回调(CallBack)一次客户驱动程序,USB 带宽

按每1ms 传送1 帧数据来分配,要实现8kHz 采样频率、8bits 编码的音频PCM 码流传输,帧数据包大小必须设为8Bytes,若设置4 个缓冲区交替工作,每缓冲区分20 帧传送, 则RingBuffer 的大小为640Bytes,那么USB 主控制器每20ms 的频率中断回调一次客户驱动程序是合适的。驱动程序通过IoSetCompletionRoutine()函数给每个IRP 设置回调函数入口地址[6],每完成一个IRP 缓冲区数据传送操作,回调一次该地址指向的函数,以便把下一缓冲包数据压入到IRP 栈,直到全部数据流传送完毕或人为终止传送。S3C2440A特点

S3C2440A的CPU部分主要集成了电源模块、复位和时钟模块、触摸屏和小键盘模块、程序存储器和数据存储器模块。同时提供如下丰富的外围接口:同步存储器(SDRAM)和NAND FLASH控制接口,可扩展到1 GB的存储的空间;4个DMA通道和24个中断端口;能控制STN LCD和TFT液晶屏显示,支持触摸屏功;USB接口A型和B型各一个;3个串行口、I2C,SPI,I2S等接口;带AC97音频接口;具备SD卡、数码相机接口和网络接口。

S3C2440A还具备多种工作模式,管脚为17×17方型分布,横向从左1到右17编号,纵向从下A到上U编号,分类为A1~A17,B1~B17,C1~C17依此类推到U1~U17。这些管脚所对应的功能并不是惟一的,通常只要使能变化,S3C2440A就能实现不同的控制功能。该设计涉及到的 S3C2440A,其管脚如表1所示分为3类。

串口电路

串口在该设计中的作用是通过计算机加载USB驱动程序,原理如图2所示。

3.1电源电路

由于S3C2440A芯片的管脚对电压提出了不同要求,所以需要完成电源的变压,其原理 如图3所示。驱动程序的研究

按USB接口,其设备结构可分为USB Host(主机)和USB Device(外部设备)。USB主机控制USB设备进行通信,而主机与主机之间,或USB设备与USB设备之间是不能通信的。

4.1 USB主机

USB主机的功能通常包含以下几个部分:验证USB设备是否安插好或拔除;控制USB主机与设备两者中的数据流;返回USB主机的所显状态。

USB系统软件由以下3个部分组成:主机控制器驱动(HCD)、USB驱动(USBD)、主机软件(Host Software)。主机控制器所具备的功能如表2所示。HCD和USBD包含基于不同抽象层次的软件接口,两者以一定的方式协同完成任务,用以实现 USB系统的功能。它们的任务差别没有具体定义,然而HCD要具备的一项功能就是必须支持多种不同主机控制器芯片。在一些操作系统中,当系统必须实现某些基本功能时,可由Host Software实现。

4.2 USB传输类型

USB定义了4种传送类型:控制传送、同步传送、中断传送、批传送。其中,控制传送是指可靠的、非周期性的、突发的,并由主机客户软件所发起的通信,主要应用于控制命令和状态信息的传送;同步传送是指在主机和设备之间周期性的、连续的通信,一般用于传送时实信息,这种类型保留了将时间概念包含于数据的能力,但传送并不一定很紧急;中断传送是指少量数据的、低速的、周期的传送;批传送是指非周期的、大量的、可靠的传送,其典型应用在于传送那些可以利用带宽的数据。

4.3 USB设备请求

USB设备应通过缺省控制管道(Default Control Pipe)响应来自主机的请求命令。这些请求是通过使用控制传输来完成的。请求及请求的参数通过Setup包发向设备,由主机负责设置Setup包内的每个域的值。USB设备请求包含的请求类型有三种:标准、厂商和设备类。标准请求用来完成设备的枚举过程;厂商请求用来完成使用者自己定义的请求;设备类请求指的是某些特定的USB设备类所传输出的请求,例如打印机类就属于这一类。设备请求要求有严格的定义,包含的内容有类型、设备请求、值、索引和长度。

4.4 USB驱动程序结构 S3C2440A芯片支持USB1.1协议和USB 2.0协议。该设计是针对USB Host(主机,A型),并基于USB 1.1协议编写的。程序结构和数据传输的流向如图4所示。

驱动程序的编写主要分为以下几个部分考虑:硬件提取层、中断服务程序、标准设备请求和主循环。硬件提取层实现的是S3C2440A对I/O端口直接的读写操作;中断服务程序处理各种中断,包括总线任务上的请求;标准设备请求完成主机送来的各种标准请求,用于完成各种枚举请求;而主循环则负责完成前台的数据采集等工作,所有的任务结束后都要回到主循环上去。

5结 语

该设计采用三星公司ARM9的S3C2440A芯片作为CPU,比原来基于单片机的模式,外围电路简单,容易可靠地实现嵌入式终端的USB接口功能。在调试中,用到的嵌入式开发板GEC2440A套件还提供了串口工具DNW。用这一工具可以检测驱动程序的正确与否,如:程序编写无误,则DNW串口会提示 “USB IS CONNECT”。由于S3C2440A芯片功能丰富,如处理器可提高运算速度,LCD可人机交互,网口可连接因特网,所以开发出的嵌入式终端不但可提升整体性能,还为日后的应用奠定了基础。

第二篇:嵌入式门禁系统硬件的设计与实现

西安电子科技大学

硕士学位论文

嵌入式门禁系统硬件的设计与实现

姓名:田晓明 申请学位级别:硕士 专业:通信与信息系统 指导教师:刘彦明

20080101

摘要

摘要

随着自动控制技术、计算机技术和通信技术的快速发展,人们要求门禁系统 具有更多的功能,许多现有的门禁系统已不能满足人们的生活需求,因此设计一 种反应迅速、功能强大、易于扩展的智能门禁系统具有极大的经济效益和市场价 值。本文详细地介绍了根据应用需求而设计的这种嵌入式门禁系统,其中最大特 点是它结合了嵌入式技术和RFID技术各自的优点。

本文在详细分析嵌入式门禁系统项目需求的基础上,给出嵌入式门禁系统的 硬件总体设计方案,主要包括电源模块、嵌入式门禁控制器模块和RFID模块。电源模块为满足嵌入式门禁系统不问断工作的要求,特别设计了一个充电电路对 蓄电池进行充电,充电电路具有自动充电和自动切断功能。嵌入式门禁控制器模

块采用了基于ARM920T内核的微处理器¥3C2410,在选择合适芯片的基础上,详细地设计了微处理器、SDRAM、FLASH、Ethenet、USB等电路原理图以及进 行相关的讨论。¥3C2410支持8/16/32位数据总线带宽,本设计中采用了32位,这样数据传输速率最大,门禁控制器的响应时间最短。在RFID模块中详细地介 绍了读卡器电路的设计。

在完成电路原理图设计的基础上,进行PCB布局布线,制板焊接,做出产品。最后搭建好ADSl.2调试平台,用传统的硬件调试方法和ADSl.2调试方法一起调 试嵌入式门禁系统的硬件,并给出调试报告。

经过调试和测试,该产品工作正常稳定,满足设计需求,已交付客户使用。

关键词:嵌入式门禁系统RFII)¥3C2410硬件设计

Abstract

Abstract

Withtherapiddevelopmentofautomaticcontroltechnology,computer

technologyandcommunicationtechnology,AccessControlSystemiscalleduponto functionwimmore.manyoftheexistingaccesscontrolsystemcannolongermeetthe

needsofpeople‟slives.Soitisofgreateconomicandmarketvalue,andgreatreality

significancethatdesignanintelligentAccessControlSystemwithrapidresponse,powerfulfunctions.andeasyexpansion.TllisthesisintroducesanembeddedAccess

ControlSystemwhichisdesignedtomeettheapplicationneeds,whosebiggestfeature

isthatitcombinestheadvantagesoftheembeddedtechnologyandRFIDtechnology.

Inthisthesis,afteranalyzingtheAccessControlSystemprojectrequirements,the generaldesignoftheAccessControlSystemismade,whichisincludepowermodules,embeddedcontrollermodulesandRFIDModule.Inpowermodules,achargingcircuit

isspeciallydesignedforthestoragebatteryinordertomeettheAccessControlSystem

therequirementsofuninterruptedwork,whichhasautomaticchargingfunctionand

automaticcuttingfunction.EmbeddedAccessControllerModuleadopts¥3C2410,whichisbasedontheARM920Tmicroprocessorcore,andotherchipsofarechose

appropriately,suchasSDRAMchipandFLASHchip.Thentheschematiccircuit

diagramaredesignedanddiscussedindetails.¥3C2410support8/16/32.bitdata

bus.Becausethisdesignadoptd32,thedatatransferrateofAccessControlleristhe

largestandtheresponsetimeistheshortest.InRFIDmodul,thedesignofthereader

circuitisintroducedindetail.

Onthebasisoftheschematiccircuitdiagram,PCB‟Splacementandroutinghas

beenfinished,thentheproductismanufactured.FinallysexinguptheADSl.2

debuggingplatform,thehardwareofembeddedAccessControlSystemisdebugged

usingthetraditionaldebuggingmethodsandtheADSl.2debuggingmethod,andthe

debuggingreportisgiven.

Afterdebuggingandtesting,thisembeddedAccessControlsystemworkwelland

stably,andmeetstheprojectrequirements.Nowithasbeendeliveredtouser.

Keyword:EmbeddedAccessControlSystemRFIDS3C2410

Hardwaredesig

西安电子科技大学

学位论文独创性(或创新性)声明

秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是我个人在 导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成 果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说

明并表示了谢意。

申请学位论文与资料若有不实之处,本人承担一切的法律责任。

本人签名:哪

日期—2丛丛丛弹

西安电子科技大学 关于论文使用授权的说明

本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内 容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后 结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。

(保密的论文在解密后遵守此规定)

本学位论文属于保密,在一年解密后适用本授权书。

本人签名: 导师签名:

日期岔翌星:至:夕

日期Z.盘亚爱!;!/.

第一章绪论

第一章绪论

1.1课题背景及意义

随着自动控制技术、计算机技术和通信技术的发展,建筑与社区智能化建设 获得了长足地发展,近十年来,我国大规模兴建的建筑和社区都配备了不同水平的智能化安防系统。随着数字化理念逐渐深入人心,社区的安防系统开始走向数

字化。

门禁系统作为数字安防系统的重要部分,集自动识别和现代安全管理措施为 一体,涉及电子、机械、计算机技术、通信技术、生物技术等诸多新技术。近年 来更是广泛地应用于智能大厦、智能小区、远程控制、交通控制等诸多领域。所 以为满足市场地需求,设计一种智能门禁系统就迫在眉睫。本论文课题就是在这 种背景下提出的。

目前国内嵌入式微处理器作为门禁系统的控制器的应用比较少,很多控制器 中都是用单片机开发的,因为单片机的资源有限和指令系统的局限性,以致于产 生不少问题。主要有:

(1)处理能力不够,从采集数据到做出响应之间的时间太久。

(2)存储容量小,现在射频卡中的信息越来越多、用户数越来越多,现有的存

储容量己不能满足需求。

(3)升级困难和维护不便,因为单片机自身的限制,现有的门禁控制器升级非

常困难且不易于维护。

(4)开放性不好,大部分现有门禁控制器都是以前设计的,都是各自为阵标准

不一,不利于日后的使用和维护。

(5)管理中心服务器位置不易更换,这类型门禁系统通常采用RS485通信方

式,不易实现网络控制和异地控制。

显然由于这些问题,许多现有的门禁系统已经不能满足用户的需求,门禁系 统的升级已经是势在必行,而采用嵌入式微处理器开发门禁控制器则完全可以解 决这些问题。针对这种现状,本文提出设计一种比较先进的门禁控制器——RFID 技术和嵌入式技术结合的门禁控制器,它结合了RFID技术和嵌入式技术的优点,采用基于ARM920T的32位嵌入式处理器实现嵌入式门禁控制器对门禁子系统的 工作进行控制。嵌入式门禁控制器资源丰富,在实现原有门禁功能的基础上可以 扩展许多的新功能,如视频、音频等,并且缩短了门禁系统的响应时间,加大用 户信息的存储容量,同时嵌入式引入了操作系统的概念,在稳定性方面高于单片 机,这些功能的增加满足了客户的需求,提高产品的市场竞争力。2嵌入式门禁系统硬件的设计与实现

1.2嵌入式微处理器特点简介

目前应用的嵌入式处理器种类繁多,各有特点。有8位、16位、32位,有

Microchip系列、PhilipsLPC系列、Motorola系列、Atmel公司的AVR系列、Intel 的80C186系列、PowerPC系列、ColdFire系列和ARM系列等等。但是所有的嵌 入式微处理器都有以下几个特点【l】【2】:

(1)对实时多任务具有很强的支持能力。微处理器内部具有精确的晶振电路、丰富的定时器资源,从而具有较强的实时处理能力。微处理器能完成多任务并且 有较短的中断响应时间,从而使内部的代码长度和实时内核的执行时间减少到最 低限度。

(2)具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块 化,而为避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护

功能,同时也有利于软件诊断。

(3)采用可扩展的处理器结构。一般在微处理器内部都留有很多扩展接口,以 方便对应用的扩展。

(4)提供丰富的调试功能。嵌入式系统的开发很多在交叉调试中进行,嵌入式 微处理器是面向应用、面向用户的嵌入式系统的核心。在嵌入式系统开发中,基 本的开发模型就是在宿主机上进行目标机的开发。一方面要求宿主机上有相应的 开发工具,另一方面要求目标机上的微处理器提供必要的调试接口以方便用户开 发。一般的调试方式有硬件仿真调试、软件仿真调试、模拟调试等。常见的硬件 调试接口有J1AG、BDM方式等。

(5)低功耗。许多嵌入式微处理器提供几种工作模式,如正常工作模式、备用 模式、省电模式等。这些工作模式为嵌入式系统提供了灵活性,满足了嵌入式系 统对低功耗的要求。信息社会是以网络以及移动计算和通信设备为基础的,这样 的一些设备中的嵌入式微处理器必须消耗非常低的功耗。

1.3RFID技术优点

RFID射频识别是一种非接触式的自动识别技术,它的基本原理是电磁理论。RFID技术不局限于视线,识别距离比光学系统远。RFID卡具有读写功能,可携 带大量数据,难以伪造,智能性较高。它通过射频信号自动识别目标对象并获取 相关数据,识别工作无须人工干预,可工作于各种恶劣环境。目前,RFID技术 的主要应用领域有:身份识别、门禁管理、防伪应用、商业供应链、公共交通管 理、物流管理等。

与其他的自动识别技术相比较,RFID有如下优点:(1)快速扫描

第一章绪论

RFID技术可以识别高速移动物体,也可以识别远距离的物体。

(2)体积小,易封装

RFID在读取上并不受尺寸大小与形状的限制,射频标签更加趋于小型化与

多样化,以应用在不同的产品。

(3)抗污染能力和耐久性

射频标签对水、油和化学药品等物质具有很强的抗性。在黑暗或脏污的环境 之中,读卡器照常可以读取射频标签上的数据。由于无机械磨损,因而射频标签 的使用寿命可以达lO年以上,读写次数达10万次之多。

(4)可重复使用

读卡器则可以重复地新增、修改、删除射频标签内存储的数据,方便信息的

更新。

(5)穿透性和无屏障阅读

在被覆盖的情况下,RFID技术能够穿透纸张、木材和塑料等非金属或非透 明的材质,并能够进行穿透性通信,但不能穿透铁质金属。

(6)数据的记忆容量大

射频标签的数据容量大,标签数据可更新,特别适合于存储大量数据或物品 上所存储的数据需要经常改变的情况下使用。

(7)安全性高

射频标签承载的是电子式信息,其数据内容可经有密码保护,使其内容不易 被伪造及变造。

1.4门禁系统简介

门禁系统是数字安防的一个子系统,它属于智能建筑楼宇自动化系统(BAS)中的安防系统。作为一种新型现代化安全管理系统,门禁系统集自动识别技术和 现代安全管理措施为一体,涉及电子、机械、光学、计算机技术、通信技术、生 物技术等诸多新技术。门禁系统在建筑物内的主要管理区、出/入口、电梯厅、设 备控制中心机房、贵重物品的库房等重要部位的通道口安装门磁、电控锁或控制 器等控制装置,有管理人员在中心控制室监控,能够对各通道口的位置通行对象 及通行时间方向等进行实时控制或设定程序控制,从而实现对出/入口的安全控 制。授权人员在其授权范围内通行无阻,在非授权范围禁止通行。门禁系统使任 何人在任何时间段内通过任何出/,入口进行事先设置、实时监控和事后检查成为现 实。它能对所以人员的出入事件进行详细的记录,并有丰富的扩展功能。控制功 能包括实时巡更、身份核实、考勤管理和人员定位等。门禁系统使解决重要部门 出,入口安全防范的有效措施。适用于银行、宾馆、机房、仓库、机要室、办公室、4嵌入式门禁系统硬件的设计与实现

智能化小区、工厂等各种场合。

1.4.1门禁系统的组成

门禁系统通常由出入凭证、识别仪、门禁控制器、电控锁、其他设备和门禁

软件组成。

(1)出入凭证

出入凭证是门禁系统开门的“钥匙”,在不同的门禁系统中可以是磁卡、IC 卡等各种卡片,密码,或是指纹、掌纹、虹膜、视网膜、脸面、声音等各种人体 生物特征。

(2)识别仪

识别仪负责读取出入凭证中的数据信息(或生物特征信息),并将这些信息传 输到门禁控制器。

(3)门禁控制器

门禁控制器是门禁系统的核心部分,它负责这个系统输入、输出信息的处理、存储和控制等。它验证识别仪输入信息的可靠性,并根据出入法则和管理规则判 断其有效性,若有效则对执行部件发出动作信号。

(4)电控锁

电控所是门禁系统中的执行部件。根据门的材料、出门要求等不同可选取不

同的锁具。主要有电磁锁、阳极锁和阴极锁。

(5)其他设备

包括对出门无限制的情况下安装在门内侧的出门按钮,检测门的开/关状态的 门磁,负责对整个门禁系统供电的电源等部分。

(6)1"-1禁软件 门禁软件负责门禁系统的监控、管理、查询的等工作,监控人员通过门禁软

件可对出从门的状态、门禁控制器的工作状态进行监控管理,并可扩展完成巡更、考勤、人员定位等功能。简单的门禁系统框图如图1.1所示:

第一章绪论

图1.1简单的门禁系统框图

1.4.2门禁系统的发展

门禁系统是在传统的门锁基础上发展而来的。从最初的机械门锁,到随后的 电子磁卡锁和电子密码锁,最后发展到现在的门禁系统。

最近几年,随着自动识别技术的发展,门禁系统得到了飞跃式的发展,进入 了成熟期,出现了乱序键盘门禁系统、IC卡式门禁系统、感应式门禁系统、各种 生物识别门禁系统等应用各种技术的系统。这些门禁系统应用的自动识别技术更 为先进,设计也趋于更合理,安全性方面有很大提高,系统的可靠性、管理和使 用的方便性等方面也有很大的进步。随着人们对门禁系统各方面要求的不断提高,门禁系统的发展主要呈现出两种趋势:

(1)门禁系统的应用范围越来越广泛

门禁系统的应用已不局限在单一的出/入口控制。它不仅可应用在智能大厦或 智能小区的门禁控制,还可以应用在远程控制、停车场控制、电梯控制、交通管 理或与其他系统连动控制等多种控制场合。

(2)门禁系统的集成应用趋势

门禁系统可兼容多种读卡技术,同时具备先进的联网功能,通过联网组成智 能大厦、智能小区等大型系统进行统一管理和监控。

1.4.3门禁系统的功能

任何一种成熟的门禁系统,都应能实现以下基本功能:(1)对通道进出权限的管理

(a)进出通道的权限:就是对每个通道设置那些人可以进出,那些不可以进出。(b)进出通道的方式:就是对进出该通道的人进行进出方式的授权,进出方式 通常有密码、读卡(生物识别)、读卡(生物识别)+密码三种方式。6嵌入式门禁系统硬件的设计与实现

(c)进出通道的时段:就是设置可以进出该通道的人在什么时间范围内可以进

出。

(2)实时监控功能

系统管理员可以通过微机实时查看每个门区人员的进出情况(同时有照片显 示)、每个门区的状态(包括门的开关,各种非正常状态保健等);也可以在紧急状 态下打开和关闭所有的门区。

(3)出入记录查询功能

系统可存储进出记录、状态记录,可按不同的查询条件查询,配备相应软件 可实现门禁、巡更、考勤一卡通。

(4)异常报警功能

在异常情况下(如非法侵入、门超时未关等)可以实现微机报警或报警器报警。此外,根据系统的不同,门禁系统还可以实现一些特殊的功能,如防尾随功 能、消防报警、监控联动功能、网络设置管理监控功能、逻辑开门功能等功能。1.4.4国内#bf3禁系统研究现状

门禁系统是随着自动识别技术的发展而迅速发展的,由于其巨大的市场潜力,许多公司都投入相当大的人力、物力从事门禁系统的开发生产。国外门禁系统的

知名品牌有美国的休斯(HID)、摩托罗拉(MOTOROLA),以色列DDS、SERVANT,英 国集宝,新加坡SYRIS,韩国SUPERLOCK等诸多品牌。国内从事门禁系统开发的 公司也有数千家,知名的有清华紫光等公司。

目前,在自动识别技术方面,国内外研制和使用的门禁系统主要集中在感应 门禁系统和生物识别门禁系统。在感应门禁系统又以RFID门禁系统的应用最为广 泛,在生物识别门禁系统以指纹门禁系统应用最为广泛。随着芯片技术、天线技 术、无线收发技术、数据变换与编码技术、电磁传输技术的不断发展和成熟,RFID 系统不断成熟,其价格也不断降低,因而可以被广泛应用Nf3禁系统等许多领域。无论是感应门禁系统还是生物门禁系统,其应用的RFID技术和生物识别技术都已

经比较成熟。

在控制器方面,大多数门禁系统是单片机控制型。由于单片机固有的局限性,这样的门禁系统都存在处理能力不够、存储容量小、升级困难和维护不便、管理 中心服务器位置不易更换等缺点。嵌入式微处理器丰富的资源和众多的专用集成 接口可以很好的解决这些问题,现在采用嵌入式技术的门禁系统还不多,但是现 有门禁系统的缺点和嵌入式技术的发展都将决定,嵌入式技术将是门禁控制器的

主流技术。

作为一种安防产品,门禁系统产品竞争的都集中在产品的安全性,可靠性和

第一章绪论7

性能价格比上。就目前而言,国外生产的门禁系统安全性较高,但是价格昂贵,感应式门禁系统控制器的价格从4千元到3万元不等,包括读卡器、门锁、控制 器、软件在内的一套最小系统市场价格在1万元到数万元不等。国内生产的感应 式门禁系统和指纹门禁系统价格较国外同类产品低大约10%-50%,但产品可靠

性和安全性差一点。

1.5本课题主要的工作

本文的研究以嵌入式门禁系统项目为背景,从功能需求出发,设计一套基于 ARM微处理器的嵌入式门禁系统。本设计主要采用嵌入式技术和RFID技术来实现 目标。需要完成的主要工作如下:

(1)基于ARM的嵌入式门禁系统的硬件设计

根据嵌入式系统的工程设计方法,分析本系统的功能需求,开发基于¥3C2410 的嵌入式门禁系统硬件设计。给出嵌入式门禁系统硬件设计的总体设计方案,根

据此方案借助ProtelDXP完成嵌入式门禁系统硬件的原理图设计。

(2)RFID电路设计

根据项目要求实现的功能,采用RFID技术和嵌入式技术来具体实现。设计的 核心思想就是用RFID技术在嵌入式平台上来实现门禁系统的功能。

(3)嵌入式门禁系统硬件的测试

用ProtelDXP进行PCB设计,经过交互式布局和交互式布线,确定PCB设计。

最后使用两种测试手段对嵌入式门禁系统硬件进行测试和调试。一种是单纯的传 统的硬件调试,另一种是以ADS集成开发环境为核心搭建嵌入式系统的调试平台,在这个平台上对嵌入式门禁系统硬件进行测试和调试。

(4)总结与展望

通过本次嵌入式门禁系统的硬件设计和调试,对门禁系统有了更深一步地理 解,总结本次设计和提出自己的一些思考。

第二章嵌入式门禁系统的硬件总体设计9

第二章嵌入式门禁系统的硬件总体设计

2.1嵌入式门禁系统的需求分析

由于客户的要求不同,应用的范围不同,门禁系统的设计也不同。既有只控 制一两道门的简单门禁系统,也有控制多门和有许多特殊功能的复杂门禁系统。本方案是在详细了解了客户的需求,参考了许多门禁系统的设计的基础上进行设

计的。本设计的需求分析如下: 2.1.1目的

本设计以嵌入式控制器为主,结合当前的RFID阅读器、指纹阅读器等新技 术,设计开发一个中高端智能化门禁系统(主要是嵌入式门禁控制器的设计),嵌 入式门禁控制器作为智能化门襟监控报警系统的核心控制器。

2.1.2性能

(1)先进性

客户要求嵌入式门禁系统要具有一定的技术先进性,在未来5一10年不会被 淘汰。但也要注意不要使用不成熟的新技术或不实用的新功能,既要保证技术的 先进性又要系统的实用性。

(2)实时性

门禁系统作为数字安防中的一种,对实时性要求比较高。嵌入式门禁系统就 要求刷卡开门响应时间不得超过O.5s,报警要求达到实时报警。因此实时性对嵌 入式门禁系统是非常重要的。

(3)扩展性

不仅是门禁系统,任何一个系统都应充分考虑到今后技术的发展和使用的需 要,具有更新、扩充和升级的可能。客户明确要求以后要在嵌入式门禁系统的基 础上要进行音频、视频、小键盘等功能的控制。

(4)可靠性

嵌入式门禁系统的设计应具有较高的可靠性,在系统故障或事故造成中断后,能确保数据的准确性、完整性和一致性,并具有迅速恢复工作的功能。

(5)安全性

嵌入式门禁系统中必须采取必要的措施以保证系统数据的安全性。如果门禁 系统中的数据没有安全性,那么门禁系统也就失去了它的作用和意义。

(6)电磁兼容性 10嵌入式门禁系统硬件的设计与实现

随着电子技术的发展,电磁兼容性越来越值得重视。要求嵌入式门禁系统的 电磁兼容性达到国家标准。否则设计根本就不会通过测试。

2.1.3功能

(1)支持IC、ID、RFID三种格式卡进行出入及记录。每个控制器可支持3000

--5000用户。

(2)强制开门报警和开门超时报警,报警时间可在0--255s之间设置。(3)具有网络接口,通过TCP/IP协议与上位机进行通信。

(4)系统状态指示。控制器上有相应的指示灯指示阅读器通讯,上位机通讯,电池充电、欠压,扩展板运行是否正常。

(5)系统初始化复位,按住系统复位按钮不动,当过3秒钟时系统重启动。

(6)系统数据恢复,能恢复用户的的初始设定以及lO万条记录。

(7)断电后数据保存当控制器断电时,里面的数据至少能保存80个小时以上。(81具有异常情况时自控及恢复功能,如硬件看门狗等电路。

(9)具有高度的自检功能,允许上位机对控制器进行全透明的检测,并由此可 进行大部分的故障检测。

(10)读卡器和控制器通信采用RS485,速率是9600b/s。对嵌入式门禁系统设计的需求分析还有些如生产成本、功耗、质量等诸多方 面,这里就不详细介绍了。

2.1.4I/O口的设计要求

嵌入式门禁控制器的I/O接口具体要求如表2.1:

表2.1I/O接口具体要求表 接口

编号名称具体要求备注

数量

要求支持10M/100M自适应与服务器连接;

1Ethemet接口1组配置、维护和上

传记录

2USB接口1组支持USB2.0标准.一个主端口主要用于维护

3RS2321组3线端子

主要用于调试和 维护

1、内供电源:共四线

4电源接口2组12VDC一组,2线;

5VDC一组,2线;

第二章嵌入式门禁系统的硬件总体设计

2、外供电源:12VDC一组,2线; 四组读卡器接口,每组读卡器接口 需含:

l、12V电源端口2线;

2、RS4852线:

3、预留扩展RS4222线;

5读卡器接口4组线;

4、防拆开关信号(Nc)输入端口两

共8线,端口应进行抗干扰设计。

每组读卡器接口使用一个8位的接 插件,要求4组接口的各端口位设

计统一,方便安装与辨认。共:4×8=32线端子。

门磁(Inl~In4]四组标准门磁状态和请求按钮输入

端口,每组包括一个门磁状态(NC要求具有防抖动、和按钮(In5~

按钮输入(No.常开)端口(两线)。共:4×4=16线端子。

主机防拆(In9)接对主机进行保护,2个接线端子,7

l组口

NC(常闭)输入。

四路电锁控制继电器输出端口,每

继电器输出接

组继电器控制一个电锁开关,每组

84路继电器为3线端子,为NC、COM、6InS)接口4组一常闭)端El(两线)和一个出门请求抗干扰设计。

口(Outl~ou“)No。

共:4×3=12线端子。

2路可编程继电器输出,可用作报

可编程继电器警输出(对应四门的报警)或安防监

9输出接口2路控接口。每组继电器为3线端子,(Out5~Out6)

共:2×3=6线端子。

为NC、COM、NO。

2.1.5嵌入式门禁控制器的物理要求

嵌入式门禁控制器要求在长200mm、宽150mm的电路板上实现,由于控制 器的芯片和电路比较多,故要求电路板采用六层板进行布线。嵌入式门禁控制器 的接口在电路板上的分布如图2.1所示 12嵌入式门禁系统硬件的设计与实现

图2.1嵌入式门禁控制器的接口图

2.1.6设计依据

本项目所设计的产品属于安防领域,因此需要满足下列标准的要求:

(1)系统的安全性、可靠性、防雷、环境适应性、电磁兼容性等设计应满足公

安部发布的GA/T394.2002号标准。

(2)电源、结构、可靠性、性能、电磁兼容设计应满足公司企标Q/PRM

003--2002和国标GB12663.2001标准。

2.2嵌入式门禁系统的组成

嵌入式门禁系统由SVR(即上位机)、发卡器、EGR(门禁控制器)、读卡器、电子锁、识别卡组成,其系统组成如图2.2所示。其中,sVR与EGR之间是通过 以太网用TCP,IP协议来通信的。EGR与读卡器之间是通过RS485进行通信的。

嵌入式门禁系统的工作过程是识别卡靠近读卡器时,读卡器读到识别卡里的 信息,然后将读到的信息通过RS485传输给控制器,控制器根据卡号、当前时间 和内部数据库信息,判断该卡是否有效,并控制开锁。同时将卡号、登陆时间、有效、无效等信息参数记录下来。然后定期将存储的数据信息上传给上位机,并 且定期通过TCP/IP协议从上位机下载数据库来更新控制器的数据库。嵌入式门禁 系统如图2.2所示,图中控制器的信号输入数据采集部分从外部得到的信号,如

第二章嵌入式门禁系统的硬件总体设计

门磁状态、报警信号、按钮信号等;控制器的信号输出是控制器的响应动作,比

如有开门、报警等。

读卡器读卡器读卡器读卡器读卡器读卡器读卡器读卡器

图2.2嵌入式门禁系统

2.3嵌入式门禁控制器硬件结构

2.3.1嵌入式微处理器

嵌入式硬件设计的核心是嵌入式微处理器的选择。所以控制器微处理器的选 择关系着整个嵌入式门禁系统的成败。与通用处理器相比,嵌入式微处理器具备 体积小、重量轻、成本低和可靠性高等优点。当然各个系列中的每个嵌入式微处

理器又都有各自的特点,下面主要介绍一下ARM微处理器--¥3C2410的特点p“。

ARM(AdvancedRISCMachine)处理器凭借高超的技术现在广泛地应用于各

种领域中,已经占据了相当大的RISC处理器市场份额。采用RISC构架的ARM

微处理器一般具有的特点如表2.2所耐”。

ARM微处理器还有一个很大的优势就是ARM公司有全球众多的合作伙伴以 及来自第三方开发者的广泛支持,使得设计者可以使用丰富的标准开发工具和 ARM优化的应用软件。目前基于ARM核的微处理器有ARM7系列、ARM9系 列、ARM9E系列、ARMIOE系列、ARMll系列、SecurCore系列、Intel公司的

StrongARM/XScale系列等¨。”。14嵌入式门禁系统硬件的设计与实现

表2.2ARM微处理器特点

序号特点

1体积小、功耗低、成本低、性能高

支持Thumb(16位)/ARM(32位)双指令集,能很好地兼容8位/16位器2 件

3大量使用寄存器,指令执行速度更快

4大多数数据操作都在寄存器中完成5寻址方式灵活简单,执行效率高 6指令长度固定等特点

删920T微处理器使用了5级流水为数据和程序提供了各自独立的Cache,平均功耗是0.7mW/MHz。减少了在每个线,同时采用1.1MIPS/MHz时钟周期内必须完成的最大工作,进而允许使用更高的时钟频率。5级流水线具体流程如下:哈佛结构,(1)取指:从存储器中取出指令,并将其放入指令流水线;

(2)译码:对指令进行译码;

(3)执行:把一个操作数移位,产生ALU的结果;

(4)缓冲/数据:如果需要,则访问数据存储器;否则ALU的结果只是简单的 缓冲1个时钟周期,以便所有的指令具有同样的流水线流程;

(5)回写:将指令产生的结果回写到寄存器堆,包括任何从存储器中读取的数 据。

ARM流水线结构如图2.3所示:

写目

图2.3ARM流水线结构

第二章嵌入式门禁系统的硬件总体设计

ARM920T的功能结构框图如图2.3所示,ARM920T核由ARM920TI)MI、存储管理单元(MMU)和高速缓存三部分组成。ARM920TDMI有4个功能模块T、D、M、I,其中:T功能模块表示16位Thumb,可以在兼顾性能的同时减少代码 尺寸;M功能模块表示8位乘法器;D功能模块表示Debug,该内核中放置了用于 调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而可

方便地进行断点设置、单步调试。I功能模块表示EebeddedlCELogic,用于实现 断点观测及变量观测的逻辑电路部分。MMu可以管理内存,高速缓存由独立的 16KB地址Cache和16KB数据Cache组成。¥3C2410具有丰富的集成专用接口和其他资源,具体如下:

l、1.8V/2.0V内核供电,3.3V存储器供电,3.3V外部I/0供电; 2、具备16KB的I—Cache和16KB的D.Cache/MMU: 3、外部存储控制器(sDmw控制和片选逻辑),支持NANDFLASH系统引导; 4、aMUART(IrDAl.0,16字节TXFIFO,和16字节RXFIFO)/2通道SPI;

5、2路主USB和一路从USB(UniversalSerialBus)(Verl.1);

6、4路DMA(DirectMemoryAccess)通道并有外部请求引脚; 7、1路IIC(InterIntegratedCircuit)和~路IIS(Inter-ICSound)总线控制器; 8、8通道lO比特ADC(AnalogDigitalConverter)和触摸屏接口; 9、带专用DMA通道的LCD控制器(支持STN&TFT): 10、SD(SecureDigitalInterfaee)卡(Ved.01和MMC(Multi-MediaCard)卡接口; 11、4路PWM(PulseWidthModulation)定时器和一路内部定时器;

12、看门狗定时器。13、功耗控制模式:具有普通、慢速、空闲和掉电模式; 14、117个可编程的1/o口和24路外部中断;

15、具有日历功能的RTC;

16、片内锁相环,内部时钟可达203MHz。

从前面的嵌入式门禁系统的需求分析中知道,本设计对先进性、实时性、扩 展性等方面都有较高的要求,综合考虑所需处理器的功能、处理速度、寻址能力、片上集成专用接口等方面,最终确定选择Sansung公司一款ARM920T内核的芯 片--¥3C2410。选择ARM处理器的另外一个重要原因是,现在主流市场大量使用 ARM处理器,关于ARM处理器的资料很多,成功的案例也很多,方便查阅和参 考。

2-3.2逻辑结构

确定选用¥3C2410作为嵌入式门禁系统的控制器后,其他的芯片和器件就很 16嵌入式门禁系统硬件的设计与实现

容易选定了,而且很多器件有多种选择。遵循着采用目前市场上的主流芯片来选

择各个外围接口芯片,以免以后买不到元器件,如FLASH存储器选用Intel公司 的TE28F256J3C;SDRAM存储器选用三星公司的K4S511632B.TC75;以太网控 制器选用SMSC公司的LAN91C111;USB用PHILIPS的ISPll61;RS232和RS485

串口分别选用MAXIM公司的MAx3232和MAX3488等等。图2.4是嵌入式门禁

控制器的硬件总体设计框图。表2.3是嵌入式控制器主要功能模块的资源分配表。

图2.4嵌入式门禁控制器的硬件总体设计框图

表2.3嵌入式控制器主要功能模块的资源分配表

主要硬件模块芯片片选信号占用资源 微处理器S3C2410

FLASHTE28F256J3CnGCS0/nGCSl读/写来自nRESET来自复位电路

SDRAMK4S511632B.TC75nGCS6、微处理器的SDRAM接口

USBAU9254A21微处理器的USB接口

控制信号来自CPU,占用微处理以太网LA器的INT2

N9lClllnGCS2

串口MAX3232枞X3488微处理器的UART接口

第二章嵌入式门禁系统的硬件总体设计17

整个控制器以微处理器为核心,其工作原理为:在一个门禁系统中,每一个 门禁控制器都有一个相互不同的地址号,作为服务器区分不同门禁控制器的标识。在门禁控制器启动前,首先由系统从服务器经通信接口向其传输事先设置的各项 运行参数,主要是硬件设备的连接情况及控制模式、使用人员信息、允许的时间 和出,入门方式等参数。门禁控制器经过上述初始化后就能独立运行(脱机运行)。通常控制器处于等待状态,当有人读卡时,读卡器经其接口将卡号传输到门禁控 制器,在门禁控制器中将卡号、当前控制时间、当前的控制模式进行比较、鉴别,得出开门与否指令。当指令是准许时,门禁控制器还通过继电器驱动电控锁使之 退出锁门状态,完成读卡开门的整个过程。同时门禁控制器将该过程描述成一个 事件记录下来,在可以与服务器通信时将事件上传。

第三章嵌入式门禁控制器的原理图设计19

第三章嵌入式门禁控制器的原理图设计

3.1电源模块的设计

电源是一切系统的动力之源,是系统正常运行的基础,电源的稳定工作对整 个系统的稳定工作起着至关重要的作用。电源设计看似简单,其实有许多需要特 别注意的地方,任何一个微小的错误都可能对系统造成致命影响。所以在电源设 计时一定要认真仔细,正所谓磨刀不误砍柴工。

嵌入式门禁系统的电源模块分为电源板和控制器板上电源两部分。

3.1.1电源板的设计

电源模块负责对嵌入式门禁系统控制器供电,电源板的基本组成框图如图3.1

所示。

图3.1电源板的基本组成框图

(1)电源板的具体要求

(a)电源板的输入是15伏的直流电,输出包括一路12V/SA直流和2路5W3A 直流。

(b)蓄电池的输入是13V-15V,充电时间8.24小时,蓄电池和外部电源供电的 转换时间为0。

(c)电源板蓄电池的电池状态显示:充电状态、满状态和电池供电状态。电池 饱和后,自动切断充电,以延长电池的寿命。

其它要求:

●工作电源:额定电压DCl2V(a:20%)、额定电流≤5A。●输入参数:干接点开关量输入。

●输出负载参数:工作电压DC茎12V,工作电流翌A。

嵌入式门禁系统硬件的设计与实现

・工作环境:温度.20℃~55℃,湿度0-95%。

●蓄电池的续航能力为16小时,充放电次数不小于10000次。(2)开关电源输入

电源板的输入部分电路如图3.2所示。外部输入电流是15V,最大电流3A。经过整流后输给蓄电池和后面DC/DC变换电路。其中TVS--P6KE6.8CA是防止 雷击和过压的,当P6KE6.8CA两端电压过大时,它自动导通让电流通过它到地 形成回路,已达到保护后面电路的目的;桥堆KBPC8/10A的起到防反接的作用: 电感和两端的电容组成Jl"形滤波网络对输入的电流进行滤波,减小电流的纹波: 二极管6A10的作用是防止电流回涌;F1是自恢复保险丝防止电路电流过大,有 保护电路作用。

图3.2电源板的输入部分电路图

(3)蓄电池电路

蓄电池充电电路要求可以对蓄电池自动充电、充满后可以自动断电。充电电 路如图3.3所示。电路核心是电压比较器CA3140和双路继电器,其中双路继电 器用继电器有没有电流通过来控制两路开关,而且这两路开关互斥,即总是一路 开一路关。当D+和D一不导通时,K1+和K1一导通,K2+和K2一不导通;当 D+和D一导通时,K1+和K1一不导通,K2+和K2一导通。

充电电路的原理是:当刚接上蓄电池时(不妨设此时蓄电池电压低于12.3V,即使此时高于12.3V使用一段时间后也要低于12.3v),采样电阻R4和R9通过分 压将蓄电池电压的1/3电压送到电压比较器的2管脚,然后和电压比较器的3管 脚进行比较,此时K+1和K一1导通由电路很容易知道3管脚的电压为4.1V,2 管脚电压小于3管脚,电压比较器输出为高,则三极管Q1-9013基极为高,所

第三章嵌入式门禁控制器的原理图设计2l

以三极管导通有电流流过,这时继电器的D+和D一由不导通变为导通。然后K2 +和K2一变为导通,充电开关闭合(】融+和K2一相当于充电电路开关)对蓄电池 进行充电:K1+和K1一不导通,此时电压比较器3管脚的电压由4.1V变为4.7V。直到蓄电池充电到电压超过14.1v时,采样电阻送给电压比较器2管脚的电压超 过4.7v,2管脚电压大于了3管脚电压,这时电压比较器输出低电平,三极管Q1 不导通,所以继电器D+和D一不导通,K2+和K2一不导通,充电电路自动切

断蓄电池的充电电路;K1+和K1一导通,电压比较器3管脚的电压又变成了4.1V。

等蓄电池使用一段时间后,电压降到12.3V以下时,采样电阻R4和R9送到 电压比较器2管脚的电压小于4.IV,电压比较器又输出高电平,然后又对蓄电池 充电,如此周而复始不断循环下去。

从上面的分析可以看出蓄电池充电电路有2个极限14.1V和12.3V,当蓄电

池电压大于14.1V时,切断充电电路;当蓄电池电压小于12.3V时,闭合充电电

路,简单地说就是相当于一个窗式电压比较器。具体就体现在电压比较器3管脚 的电压上。

蓄电池的状态是用发光二极管来实现的,如图3.3DSI是供电状态显示,DSl 亮就是市电不供电,蓄电池在给系统供电;DS2是充电状态显示,DS2亮就是正 在对蓄电池进行充电,DS2灭就是蓄电池是满状态。外部电源和蓄电池供电的转 换是通过两个并接的二级管来实现的。

图3.3蓄电池充电电路图

(4)DC/DC变换电路

由外部电源或蓄电池供给DC/DC变换电路的电压在11.5V一13.5V之间,一 路经过滤波处理后直接作为12V供给控制器,因为12V是用来控审lJf-J锁的开断的,所以对电压的纹波要求不高,电压在9V一14V之问都可以对门锁进行控制。其他

嵌入式门禁系统硬件的设计与实现

两路都是供给DC/DC电路5V,一路是供给嵌入式门禁控制器,另一路是供给扩展 板的,因此对5V电压的纹波要求就比较高。DC/DC变换电路的5V部分如图3.5 所示,设计采用的是传统的线性稳压器DC/DC设计方法。一块高质量的DC/DC 电源芯片一国家半导体的LM2576、一段电感和肖特基二极管1N5822,再加些电 容组成了5V的DC仍C电路。

值得注意的是电源的地信号有两种,一种是数字地,如图3.4中的GND2: 另一种是模拟地,如图3.5中的另一个地,两者之间用一个0欧姆的电感来耦合。这样的好处是数字电路部分和模拟电路部分之间的干扰可以减小到最小从而互不

影响。

L6

图3.45VDC/DC变换电路图,V¨jOl'D2彳

3.1.2嵌入式门禁控制器板上的电源

嵌入式门禁系统控制器需要的电源有:

(1)1.8V,¥3C2410内核工作电压。(2)3.3V,¥3C2410芯片工作电压,IO端DT作电压,SDRAM/FLASH等其他器件 的工作电压。

(3)5V:是DC/DC变换电路提供输入电源,还给扩展板的LCD提供电源。(4)12V,是控制门锁开断的电源和读卡电路电路。

经过上面的分析知道,门禁控制器上的电源模块只要做5V到3.3V的DC/DC

变换和5V到1.8V的DC/DC变换就可以了.

而这两部分的DC/DC变换和电源板上的DC/DC变换类似,都是通过电源芯片 变化的,只不过是把LM2576换成n公司的TPS77818D和TPS78633DCQ.电路图 如图3.5所示。

第三章嵌入式门禁控制器的原理图设计

图3.53.3VDC/DC变换电路图

3.2微处理器的原理图设计

¥3C2410集成了许多的功能,大部分的工作都是通过设置相应的控制寄存器 来确定CPU的工作方式的。¥3C2410共有272只引脚,采用FBGA封装。除去 电源与地、数据总线、地址总线、通用Io与外部中断和其他专用模块,如LCD、UART、USB、DMA、SPI、IIC、IIS、ADC、SD、SDRAM、NANDFLASH等,¥3C2410需要设置的寄存器也不多了,下面就详细的介绍一下嵌入式门襟控制器 硬件设计中¥3C2410需要设定的关键控制管脚。

3.2.1启动模式

¥3C2410具有三种启动方式,可以通过OM[I:0]管脚进行选择,表3.1是

S3C2410所支持的启动模式„¨。

表3.1¥3C2410的启动模式

OMI(操作模式1)OM0(操作模式0)导入ROM数据宽度

OONandF1ashMode

Ol16一bit

lO32-bitl11、estMode本设计采用的是32位的NORFLASH作为存储器,因此本次设计OM[1:O】 应该设定为10。如果设计的硬件平台需要支持NANDFALSH和NORFLASH双 启动,可以以跳线的方式来设定OM[1:O】的值。

用户可以将引导代码和操作系统镜像存放在外部的NANDFLASH中,并从

NANDFLASH启动,当处理器在这种模式下启动时,外部的NANDFALSH将访

嵌入式门禁系统硬件的设计与实现

问控制接口,并将引导代码自动加载到处理器内部的SRAM(此时该SRAM定位 于起始地址空间0x00000000,容量为4KB),并且运行。之后,SRAM中的引导 程序将操作系统镜像加载到SDRAM中,操作系统就能够在SDRAM中运行。启 动完毕后,4KB的启动SRAM就可以用于其他用途。如果从NORFLASH方式启 动,启动ROM就要定位于内存的起始地址空间Ox00000000,处理器直接在ROM 上运行启动程序,而4KB启动SRAM被定位于内存地址的0x40000000处【l】。3.2.2时钟

在时钟方面S3C2410有突出的特点,该芯片集成了一个具有日历功能的RTC 和具有PLL(MPLL和UPLL)的芯片时钟发生器。¥3C2410可以生成三种时钟信号,分别是微处理器使用的FCLK、AHB总线使用的HCLK和APB总线使用的PCLK。同时,¥3C2410有两个锁相环,一个用于FCLK、PCLK和HCLK,称为MPLL; 另一个用于USB设备,称为UPLL。MPLL产生主时钟,能够使处理器工作频率 最高达到203MHz。这个工作频率能够使处理器轻松运行于WindowsCE、Linux 等操作系统以及进行较为复杂的信息处理。UPLL产生实现主从USB功能的时钟。(1)HCLK、PCLK和FCLK的频率选择 S3C2410支持HCLK、PCLK和FCLK的分频选择,其比率通过HDIVN、PDIVN寄存器控制,如表3.2所示。

表3.2FCLK、PCLK和FCLK频率选择

HDIVNPDIVNFCLKHCLKPCLK比率

0OFCLKFCLKFCLKl:1:1(默认值)O1FCLKFCLKFCLK/21:1:2

lOFCLKFCLK/2FCLK,21:2:2llFCLKFCLK/2FCL肼1:2:4(推荐值)(2)时钟源选择

通过OM[3:2]管脚来选择主时钟源和USB时钟源,如表3.3所示。在本系统 中我们用外部晶振作为时钟源,因此设OM[3:2]=00,电位拉低【I】【121。

表3.3S3C2410的时钟源选择

OM[3:2]MPLL状态UPLL状态主时钟源USB时钟源

00OnOnCrystalCrystalOlOnonCrystalEXTCLK

10OnOnEXTCLKCrystallOOnOnEXTCLKEXTCLK

这些所以的寄存器的设置都是在软件S3C2410.h中定义的,这里就不详细说

第三章嵌入式门禁控制器的原理图设计

明了。

实时时钟器件是一种能提供日历/时钟、数据存储等功能的专用集成电路。RTC逻辑模块可以通过一个备用电池供电,备用电池的正极通过二极管接到

¥3C2410的RTCVDD管脚,而RTCVDD直接连接到RTC模块。RTC电路如图

3.6所示。

苛寺2Jl■ljllI・

o,--C51

104D∞I)28BTl

门11JlI●瑚„148砰148Bm舯

图3.6RTC电路图

其中V18是电源模块供电,大部分时间都是由V18供电的。当供电¥3C2410 处于掉电工作模式时,由备用电池来供电,此时¥3C2410中只有RTC模块工作,其他模块都处于停止状态。3.23晶振电路

根据¥3C2410的最高工作频率及PLL电路的工作方式,设计选择12MHz的无源 晶振为微处理器提供系统时钟,选择32.768KHz无源晶振作为实时时钟提供时钟信 号。12MHz的晶振频率通过¥3C2410芯片内部集成的倍频电路可以产生系统所需的 不同频率。片内的PLL电路兼有频率放大和信号提纯的功能,因此,系统可以以较 低的外部时钟信号获得较高的工作频率,以降低因高速开关时钟所造成的高频噪 声。图3.7是系统时钟和实时时钟的示意图,这里的电容用于滤除来自振荡的高次 谐波,电阻是进行阻抗匹配的。

嵌入式门禁系统硬件的设计与实现

正互3.2.4JTAG接口

图3.7系统时钟和实时时钟的示意图

1990年被修改后成为IEEE的一个标准,EPlEEEll49.1.1990。通过这个标准,可对

具有JTAG接口芯片的硬件电路进行边界扫描和故障检测,主要用于芯片内部测试 及对系统进行仿真、调试。一般的较高档的微处理器都带有JTAG接口,¥3C2410 也具有这个接口。通过J1_AG接口,可对芯片内部的所有部件进行访问,因而是开 发调试嵌入式系统的一种简洁高效的手段。新标准的JTAG接口采用了20根引脚,表3.4是JTAG各功能引脚的含义111。

表3.4JTAG各功能引脚的含义:

信号输入/输出描述

VTref输入参考电压,通常接电源Vsupply输入电源JTAG(JointTestActionGroup)是1985年制定的检钡iJPCB和IC芯片的一个标准,nTRST输出测试复位输入信号TDI输出JTAG指令和数据寄存器的串行数据输入端TMS输出输入方式选择

TCK输出测试时钟

RTCK输入目标反馈的时钟信号TDO输入JTAG指令和数据寄存器的串行数据输出端nSTST输入/输出目标系统复位信号DBGRQ调试请求调试ARM内核不使用

DBGACK调试应答调试ARM内核不使用

第三章嵌入式门禁控制器的原理图设计

图3.8嵌入式控制器JTAG接口原理图

嵌入式控制器JTAG接口原理图如图3.8所示,¥3C2410Pq部具有JTAG模块,只 需将nTRST、TDI、TMS、TCK、TDO等引脚与相应的接口相连即可,将nRESET 引脚与系统复位信号相连。

3.2.5串口

本次硬件设计需要1个232串口用于调试和1个485串口用于接受读卡器数据。RS232用正负电压来表示逻辑状态,采用负逻辑。RS485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。s3c2410内部有3个独立的UART(通用异步收发器)控制器,每个控制器都可以工作在中断模式或DMA模式,UART控制器可以在微 处理器与UART控制器传送数据的时候产生中断请求或DMA请求。每个UART包括 波特率产生器、一个传输器、一个接收器和控制单元。波特率产生器由PCLK或

UCLK提供时钟,传输器和接收器分别包含16位先入先出队YIjFIFO和数据移位器。数据先写入FIF0,然后在传输数据前复制到传输数据移位器,最后数据通过传输

数据管脚(TxDn)移出去。其间接收数据管脚接收数据,然后从移位器中复制到FIF0 这样就完成了一次数据交换12j。¥3C2410可以很容易地用UART控制器实现RS232 和RS485接口功能,UARTO和UARTl控制器扩展RS232接口,UART2扩展RS485接 口。要实现RS232接口需加电平转换电路,系统使用采用MAX3232来实现RS232 接口的电平转换。RS485接口采用MAX3488收发器来实现,收发器有四根信号线,A和Y分别是接收器输入与驱动器输出,B和z分别是A和Y的反向的接收器输入和 反向的驱动器输出。收发器还有DI和RO两个引脚,分别与UART的Tx和Rx信号相 连接。RS232与RS485接口设计原理图如图3.9所示。

嵌入式门禁系统硬件的设计与实现

C33

图3.9RS232与RS485接口设计原理图

3.3嵌入式门襟控制器的存储器组成

一般的嵌入式微处理器都需要外部内存来支持操作系统的运行。¥3C2410也 一样,它只有管理虚拟内存的MMU和相互独立的16KB数据Cache/16KB地址 Cache,也需要扩展外部内存来支持工作,工作方式是通过设置存储器的控制寄存 器来控制的。嵌入式系统的存储系统一般都包括:SDRAM和FLASH两部分。

¥3c2410将系统的存储空间分成8组(bank),每组的大小是128MB.共1GB。Bank0到Bank6的开始地址是固定的,用于ROM或SRAM。Bank6和Bank7用 于ROM/SRAM或SDRAM,这两组可编程且大小相同。Bank7的开始地址是Bank6 的结束地址,灵活可变。所有内存块的访问周期都可编程。总线访问周期可以通

过插入外部WAIT信号来延长,支持SDRAM的自刷新和掉点模式,S3C2410采 用nGCS[7:0]8个通用片选信号选择这些组。¥3C2410的物理地址映射如图3.10

所示。

第三章嵌入式门禁控制器的原理图设计

mFFFF_F3:F01峨1:明-01。'OOM[1:硼・00

F—+

NⅨ刚

0"am00_0000—+

8FR№ NOTES:

‟.SROMmaFBROM口SRAMtm_g}‟0M2SFRmeansSDec倒Fur,ar

图3.10¥3C2410的物理地址映射图OonP.鲫e,(1)总线宽度和等待控制寄存器

表3.5总线宽度和等待控制寄存器表

寄存器地址读/写说明复位后的值

IBWSCONOx48000000

总线宽度和等读/写待寄控制存器

(2)组控制寄存器r(nGCS0-nGCS7)

表3.6组控制寄存器

寄存器地址读/写说明复位后的值

BANKCON0Ox48000004读/写BANK0控制寄存器0x0700 BANKCONlOx48000008读/写BANKl控制寄存器0x0700 BANKCON20x4800000c读/写BANK2控制寄存器0x0700 BANKCON3Ox48000010读/写BANK3控制寄存器Ox0700 BANKCON『4Ox48000014读/写BANK4控制寄存器0x0700

OxO00000

嵌入式门禁系统硬件的设计与实现

BANKCON5Ox48000008读/写BANK5控制寄存器0x0700 BANKCON6Ox4800001c读/写BANK6控制寄存器0x18008 BANKCON70x48000020读/写BANK7控制寄存器0x18008

3.3.1SDRAM

与FLASH存储器相比较,SDRAM不具有掉电保持数据的特性,但其存取速度 远远高于FLASH存储器,且具有读/写的属性,因此,SDRAM在系统中主要用作 程序的运行空间,数据及堆栈区。当系统启动时,微处理器首先从复位地址0x0处 读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以 提高系统的运行速度,同时系统及用户堆栈、运行数据也都放在SDRAM中。

SDRAM(SynchronousDRAM)即同步DRAM。主要用来存放执行代码和变量,是系统启动之后主要进行存取操作的存储器。它的最大的特点就是可以与微处理 器的外部工作时钟同步。SDRAM是以阵列单元来存取数据的,因此在存取时必 须提供一个行地址和一个列地址来确定所要访问的数据的位置,其寻址步骤应该 是这样的,首先地址总线上出现所要访问的数据的列地址,同时作为列地址信号

标志的RAS(RowAddressStrobe)信号有效,将列地址送入SDRAM,SDRAM将

整列的数据都准备好,等待着被访问。然后地址总线上出现所要访问数据的行地

址,并通过行地址选通信号CAS(ColumnAddressStrobe)送入SDRAM,SDRAM 从在这之前已选中的列中挑出该地址所对应的数据¨31,并将该数据输出或输入到 数据总线。具体是输出还是输入操作是由WE信号决定的。

(1)SDRAM存储器的三星公司的SDRAM具有性能稳定、价格低、存储量大和存取速度快等优点,选择

所以选用三星公司的K4S511632B作为本次硬件设计的SDRAM芯片。

K4S511632B具有SDRAM的所有的优点,并且具备自刷新功能,自动刷新的周 期为64ms。工作电压为3.3V,常见的封装为54脚TSOP,兼容LVrrL接口,支 持自动刷新和自刷新,具有16位的数据宽度【14】。因为DRAM中的数据是靠电容 内的电荷来维持的,电荷的泄露会导致数据的丢失,定时对DRAM进行刷新就能 够解决这个问题,从而提高SDRAM的稳定性。目前常用的SDRAM为8位/16 位的数据宽度,可根据系统需求构建16位或32位的SDRAM存储器系统。本次 设计选择的K4S511623B芯片是16位数据宽度,每片的存储密度是

512Mbit(32Mxl6bit),本次设计中使用两片K4S511632B芯片构建32位的SDRAM

存储器系统,这样总存储容量可达1024Mbit(32Mx32bit)。表3.7是K4S511623B 的管脚说明。

第三章嵌入式门禁控制器的原理图设计

表3.7K4S511632B的管脚说明

引脚描述功能

CLK系统时钟芯片时钟输入

CS撑片选禁止或使能除CLK、CKE和DQM外的所有输入信号CKE时钟使能片内时钟信号控制

AO.A12地址总线行地址:RA0-RAl2,列地址:CA0-CA9BA0.BAl组地址选择用于片内4个组的选择

当RAS#为低时,在CLK的上升沿锁存行地问和预充电。

址,使能行访RAS群行当CAS#为低时,在C地址锁存

LK的上升沿锁存列地问。

址,使能列访CAS牟列地址锁存 W.E#写使能使能写操作和行预充电。

DQMI/O屏蔽在读模式下控制输出缓冲;在写模式下屏蔽输入数据 DQ0一DQl5数据总线数据输入/输出引脚

VDD,VSS电源/地内部电路及输入缓冲区电源/地

VDDQ/VSSQ电源/地输出缓冲区电源/地

(2)SDRAM的原理图设计

㈣∞1℃“s!lmTC

图3.11SDRAM的设计原理图

SDRAM的设计原理图如图3.11所示,从原理图设计中可以看到使用两片

K4S511632B芯片构建32位的SDRAM存储器系统,总的存储容量为32MX32bit。

所以微处理器端的地址总线从A2开始连接,也即处理器端的地址A[14:21对应

嵌入式门禁系统硬件的设计与实现

SDRAM芯片端的地址A[12:0],微处理器每次以四字节的模式访问SDRAM。A25 和A26用于Bank的选择。CAS#、RAS#分别和微处理器端的列地址使能信号 nSCAS、行地址使能信号nSRAS连接,CS#连接微处理器端的片选信号

nSCS0(nGCS6),CLK连接微处理端的时钟SCLKl和SCLK2,WE#与微处理器端 的写使能信号nWE、UDQM和LDQM分别和微处理器端的DQM[3:0]连接。

3.3.2FLASH

FLASH存储器是一种可在系统(In.System)进行电擦写,掉电后信息不丢失的 存储器。它具有低功耗、大容量、擦写速度快、可整片或分扇区在系统编程(烧写)、擦除等特点,并且可由内部嵌入的算法完成对芯片的操作,因而在各种嵌入式系 统中得到了广泛的应用【”。

(1)FLASH存储器的选择

目前FLASH主要有NORFLASH和NADNFLASH两种,它们在应用上有 所不同因此也用于不同的场合。

读取NORFLASH和读取常见的SDRAM是一样的。它的所有地址都是可见 的,可以读取它任意随机地址的值。同时它和SDRAM一样可以直接运行装载在

NORFLASH里面的代码,这就是所谓的XIP(Execute.In-Place)技术【11。因为NOR

FLASH有这种特性,所以它非常适用于小型嵌入式系统。可以把代码装载到 FLASH中,在系统启动的时候直接运行它,而减少SRAM的容量从而节约了成

本。使用NORFLASH来启动时,就要定位于内存的起始地址空间0x00000000,处理器直接在NORFLASH上运行启动程序。

NANDFLASH没有采取内存的随机读取技术【l】。它的读取是以一次读取一块 的形式来进行的,通常是一次读取512个字节。采用这种技术的FLASH比较廉 价。但是和所有块设备一样,NANDFLASH比较容易出现坏位,这需要采用软 件来避免使用这些位,这样以来就增加了软件的复杂度。不能直接运行NAND

FLASH上的代码,因此好多使用NANDFLASH的开发板除了使用NANDFLASH 以外,还作上了一块小的NORFLASH来运行启动代码,这样作会增加系统的复

杂度。

设计的嵌入式门禁控制器不需要经常擦写FLASH,并且需要读取数据的速度 越快越好。FLASH中存有操作系统,FLASH的读取速度越快系统运行的越好。因此本次设计选择Intel公司生产的TE28F256J3C型NORFLASH。

TE28F256J3C的单片存储密度为256Mbit(32MB),由256块128Kbyte容量的 高密度对称的块组成。采用O.18um的制造工艺,具有125ns的初始访问速度,30ns 的异步页模式读,32字节写缓冲区,每字节6.8us的有效编程时间,工作温度一

第三章嵌入式门禁控制器的原理图设计

40一80等特点。工作电压为2.7V-3.6V,采用56脚的TSOP封装。16位的数据宽 度,可以以字节模式或者字模式数据宽度的方式工作。TE28F256J3C需要3.3V 电压即可完成在系统的编程与擦除操作,通过对其内部的命令寄存器写入标准的 命令序列,可对FLASH进行擦除(烧写)、整片擦除、按扇区擦除以及其他操作。本次设计需要128Mbyte总容量的FLASH,因此本次设计选用4片TE28F256J3C,这样就可以满足嵌入式门禁控制器FLASH存储空间的需求。图3.12是 TE28F256J3C的内部结构框图,表3.8是TE28F256J3C的引脚说明。

图3.12TE28F256J3C内部结构框图 表3.8TE28F256J3C引脚说明

引脚I/O类型功能

地址总线,在字模式下A0不使用。在字节模式下A0用来选择高字

A【24:0】l节或者低字节访问。D[7:0】l/o低字节数据总线。

D[15:8】l/o高字节数据总线,在字节模式下D[15:8]悬空。

片选使能。低电平有效,在进行读/写操作时,该引脚必须为低电平,CE[2:0】I当为高电平时,芯片处于高阻旁路状态。

硬件复位/掉电。低电平有效,当RP#为低电平时,重启正在操作式,设备处于调电模式;当RP#为高时,使能正常的操作。进行的RP拌I

oE群I输出使能,低有效。、^悒#I写使能,低电平有效。

嵌入式门禁系统硬件的设计与实现

STS开漏输出状态指示。指示内部的工作状态,STST使用上拉电阻连接到VCCQ。

BYTE#I字节使能。当BYTE#为低时选择字节模式,为高时选择字模式。

擦除/编程/块锁使能。当VPEN<VPENLK,存储一般VPEN连接到VCC。器只能读但不能写,VPENVCC电源内核电源电压,逻辑电压。I

VCCQ电源I/O电源电压。连接到VCC。

GND地地。不能使任何的地信号悬空。

(2)FLASH的原理图设计

图3.13FLASH的设计原理图

图3.13FLASH的设计原理图设计,从原理图设计中可以看到由于FLASH存

储器使用的是字模式,所以A0需接地。两块TE28F256J3C并联在一起实现32 位的数据总线传输,即两字(四字节)模式传输数据,所以嵌入式微处理器的地址 总线从A2开始连接,也即嵌入式处理器端地址A[25:2]对应FLASH芯片地址 A[24:1]。各FLASH芯片的STS管脚直接接V33上拉,BYTE#管脚直接接V33 上拉,选择单芯片的16位字模式。OE#、wE拌分别接CPLD扩展的信号

FLASHnOE和FLASHnwE,RP#接CPLD扩展的信号FLASHnRESET。因为

两块TE28F256J3C芯片并联在一起可以实现32位的数据总线传输,所以四片 E28F256J3C芯片需使用嵌入式处理器S3C2410的两个片选信号nGcsO和 nGCSl,占用¥3C2410的两个存储空间。

3.4以太网的原理图设计

3.4.1以太网控制器的选择

第三章嵌入式门禁控制器的原理图设计35

根据前面的需求分析可知,本次设计的嵌入式控制器需要有以太网支持,目

前市场上以太网接口芯片有很多,比如CirrusLogic公司的CS8900A,Realtime 公司的RTL8XXX系列产品,以及SMSC公司的91CXX产品等等。根据10M/100M 自适应以及选择主流芯片的原则,本次设计选用SMSC的LAN91C111作为嵌入 式门禁控制器设计的网络接口芯片。LAN91Clll是SMSC公司生产的专门用于 嵌入式系统的非PCI接口的10M/100M第三代快速以太网控制器,该器件具有自 适应的选择传输速率:10/100Mbps;充分支持全双工交换式以太网;支持突发数 据传输;同步或异步工作方式;低功耗CMOS设计等特点。完全支持IEEE802.3 标准,支持VLBUS、EISA以及ISA等总线,内部集成有用于

100BASE.T/10BASE.T的以太网收发器。工作电压为3.3V,内部集成有8KB的

收发缓存(FIFO),具有完善的冲突检测和重传机制。对于传输帧而言,它提供了 自动填充和CRC校验的功能,支持8位、16位和32位的数据宽度,有丰富的中 断控制功能,该芯片支持多种ARM处理器,并且拥有完全独立的收发逻辑,其

总线时钟(LCLK)的最大频率为50MHZ,工作在VLBus模式下,最小频率为 8.33MHZ,工作在EISA模式下115】【…。

LAN91C111内部集成了物理层(PHY)和数据链路层(MAC),图3.14是 LAN91C111以太网控制器的原理框架图117心J。

图3.14LAN91C111以太网控制器的原理框架图

总线判决器(Arbiter)用来监视以太网总线的数据交流情况,一旦发生阻塞,判决器一方面通过总线接口单元与外部CPU联系;另一方面控制内存控制单元

(MMU),实现总线数据协调。LAN91Clll内部8KB的RAM为数据包的传输接 收提供缓冲,使全双工工作模式下数据传输率可达10/100Mbps;MMU把RAM 分为2048byte的页。对于100Mbps来说,发送数据时,MMU首先将处理器传来 的数据根据其大小为其在RAM中分配若干页。在数据传送到RAM时,数据包

嵌入式门禁系统硬件的设计与实现 的包号也在TXFIFO中排队,然后按照FIFO规则逐个将数据包传送到PHY模块 进行485B编码,并经过扰频器整理后送到发送数据端,发送数据端将这个经过 扰频后的4BSB数据包转变成三电平信号MLT-3并加以驱动在双绞线上输出。接 收数据时,接收端把MTL一3信号转换成内部的数字电平,然后转换数据恢复到 NRZ格式送到解扰频器整理后,再送到485B解码器解码。而以太网协议处理器 EPH模块根据数据包的目标地址是否为本网卡的MAC地址或广播地址或多播地 址来决定数据包的取舍。若地址匹配,MMU为其在RAM中开辟相应大小的空

间,并以中断的方式告知处理器。当数据包被取走后,MMU释放此块内存【17.20l。3.4.2以太网的原理图设计

倒3.15LAN91C111以太网接口原理图

图3.15是LAN91C111以太网接口原理图。由于电路中没有使用LAN91C111 的MII接口,故与MII接口有关的18个的引脚全部悬空。该电路工作在异步传 输方式下,故将与同步信号有关的引脚LCLK、nRDYRTN、nSRDY、nCYCLE、W/nR等设置为无效,将ARDY设置为有效。nDATACS、nVLBUS是工作在32 位数据传输的情况下,而本接口是16位数据传输,故不用;nLDEV信号是AEN 信号有效,并且A4-A15地址信号被正确解码的确认信号,对于本设计来说不用; nADS是地址锁存信号,可直接拉低。

第三章嵌入式门禁控制器的原理图设计

¥3C2410有32位的外部数据总线,由于本设计使用16位的ISA总线方式,故将它的数据总线DO.D15与LAN91C111的DO.D15连接,其余的数据线悬空。由于数据总线是16位的,故将¥3C2410的地址总线A1-A15与LAN91Clll的 A1.A15相连,A0和A16.A26悬空不用。由于使用的是ISA总线方式,故将nBE2、nBE3接高,ISA总线中根据nBE0、nBEl的值的设定来确定不同的数据访问方式,本设计是16位的数据线访问方式,故应将nBE[0:I]设定为[0,Ol。LAN91Clll的 异步读信号nRD和写信号nWR分别与¥3C2410的读信号和写信信号相连接,另 外LAN91C111的AEN和nGCS2片选信号连接,以确定以太网部分的寻址空间 是从0x10000000地址段开始。¥3C2410的复位信号nRESET经反向后与 LAN91C111的复位信号RESET连接。LAN91C11lPHY的RBAIS必须接11K的 电阻接地,以便PHY能够正确地收发数据。TGll0一S050N2是针对10M/100M的 以太网的变压滤波器。另外LAN91C111外接25MHz晶振。. 本设计采用中断方式收发数据,故将LAN91Clll的中断信号与¥3C2410的 外部中断EINTl7相连接。该以太网接口设计电路没有使用EEPROM,故将引脚 ENEEP接地。如果需要使用EEPROM,将引脚ENEEP拉高即可。

3.5USB的原理图设计

¥3C2410上有兼容USBl.1标准的1个USB主设备接口和1个USB主设备 和从设备的复用接口,但不能满足嵌入式门禁控制器硬件设计要求,门禁控制器 要求用USB2.0标准。本设计选用ISPll61BD作为USB芯片,电路原理图如图

3.16所示。

按照ISPll61BD的datasheet介绍连接好数据总线和地址总线,再外接12MHz 晶振和USB接口。为了提高硬件设计USB接口的稳定性和安全性,采用MAXl823 芯片在USB的接口处采取过流保护措施,具体原理是,5V电源提供给MAXl823,然后由MAXl823提供给USB接口,当MAXl823监测到电流大于720mA的时 候,发送OC(过流)信号给ISPll61BD,并关闭USB接口的5V电源。

嵌入式门禁系统硬件的设计与实现

图3.16USB接口的设计原理图

第四章RFID电路设计

第四章RFID电路设计

嵌入式门禁控制器设计好后,下面就是设计门禁控制器外围相关的电路了。门禁系统的最前端数据采集一般都采用自动识别技术来实现的。目前的自动识别

技术主要包括条形码技术、磁条(卡)技术、IC卡识别技术、射频识别(RFID)技术、语音识别技术、视觉识别技术、光学字符识别(oCR)等,如图4.1所示

条形码识别技术

光学字符识别技术

生物识别技术自动识别技术

磁卡识别技术

接触式Ic卡识别技术

射频识别(RFID)技术

图4.1自动识别技术图

4.1RFID系统组成

技术的一种。一般来说,RFID系统由射频标签(Tag)、读写器(Reader)和数据管理 系统三部分组成——在实际应用中【2”,还需要其他硬件和软件的支持,RFID系统 组成结构如图4.2所示。

数n好髓圈 据

管●●_. 理 系 统 RFID(RadioFrequencyIdentification)是无线射频识别,为非接触式自动识别

斟幽凶U一目面卤・回

图4.2RFID系统组成结构图

其中射频标签由天线和芯片组成,每个芯片都含有唯一的识别码,一般保存

一卧恤困—高

有约定格式的电子数据,在实际的应用中,射频标签粘贴在待设别的物体的表面; 读写器是可非接触地读取和写入标签信息的设备,它通过网络与其他计算机系统 进行通信,从而完成对射频标签信息的获取、解码、识别和数据管理;数据管理 系统主要完成数据信息的存储和管理;并可以对标签进行读写控制。

嵌入式门禁系统硬件的设计与实现

RFID技术是利用无线电波或微波能量进行非接触双向通信,来识别和数据 交换功能的自动识别系统。其中射频标签与读写器之间通过耦合元件实现射频信 号的空间(非接触)耦合。在耦合通道内,根据时序关系,实现能量的传递和数据 的交换。

4.1.1射频标签

射频标签是RFID系统的真正的数据载体。一般情况下,射频标签由标签天 线和标签专用芯片组成。每个标签具有唯一的电子编码,附着在物体目标对象上 标签相当于条形码技术中的条形码符号,用来存储需要识别和传输的信息。与条 形码不同的是,射频标签必须能够自动或在外力的作用下,把存储的信息主动发 射出去。射频标签可以做的很薄,而且是可编程的。射频标签内编写的程序可按 特殊的应用随时进行读取和改写。射频标签可以存储一些相关人员的数据信息,这些人的信息可依据需要分别进行管理,并可随不同的需要制作新标签。射频标 签中的内容被改写的同时,也可以永久锁死保护起来。

依据射频标签供电方式的不同,射频标签可以分为有源射频标签和无源射频 标签。有源射频标签内装有电池,无源射频标签内部没有电池。从功能方面来分,可将射频标签分为4种:只读标签、可重写标签、带微处理器标签和配有传感器 的标签。按调制方式分,射频标签还可分为主动式标签和被动式标签。主动式标 签用自身的射频能量主动地发送能量给读写器,主要用于有障碍物的情况下;被 动式标签使用调制散射方式发射数据,它必须利用读写器的载波来调制自己的信 号,特别适用于门禁考勤或交通管理领域。4.1.2读卡器

读卡器是负责读取或写入标签信息的设备,读写器可以是单独的整体,也可 以作为部件嵌入到其他系统中。它可以单独实现数据读写、显示和处理等功能,也可以与计算机或其他系统进行联合,完成对射频标签的操作。根据支持的标签 类型不同与完成的功能不同,读写器的复杂程度是不同的。读写器基本的功能就 是提供与射频标签进行数据传输的途径。有些读卡器还可提供相当复杂的信号状 态控制、奇偶错误校验与更正功能等,因而射频标签中除了存储需要传输的信息 外,还必须包含有一定的附加信息,如错误校验信息等。

典型的读写器包含有控制模块、射频模块、接口模块以及读写器天线。此外

许多读写器还有附加的接H(RS232、RS485、以太网接121等),以便将所获得的数 据传送给应用系统或从应用系统中接受命令。

第四章RFID电路设计41

一旦到达读写器的信息被正确地接受和解码后,读写器通过特定的算法决定 是否需要发射机对信号进行重发,或者指示发射器停止发信号,这也是命令响应

协议。

(1)读卡器应具有的主要功能:

(a)读写器与标签之间的通信功能:在规定的技术条件下,读写器与射频标签 之间可以通信。

(b)读写器与计算机之间可以通过标准接C1(RS485)进行通信:读写器可以通 过标准接口与计算机网络连接,并提供相关信息(包括读写器的识别码、读写器识 读标签的时间和读写器读出的标签信息),以实现多读写器在系统网络中的运行。

(c)读写器适用于固定和移动标签的识读。(d)读写器能够校验读写过程中的错误信息。

(e)对于有源标签,读卡器能够标识电池相关信息(如电量等)。(2)读卡器的主要特征包括:

(a)协议和频率的抽象:在物理的标签技术中,包括载波频率和通信协议,必 须抽象出来,网络设备和读卡器的通信与这些物理传输机制无关,即读卡器必须 兼容最通用通信协议,单一的读卡器必须能够和所有的标签进行通信。

(b)适应性:读卡器的空中接口和网络界面可以根据通信量进行改变,以适应 不同的通信速率。

(c)易于扩展:读卡器在现有的网络结构中必须做到非常容易安装。

(d)易于维护:通过组织成员的控制信息,读卡器能够被远程维护,这样就不 需要分散地维护系统了。

4.1.3数据管理系统

数据管理系统主要完成数据信息的存储、管理以及对射频标签进行读写控制,数据管理系统可以是市面上现有的各种大小不一的数据库或供应链系统,用户还 能够买到面向特定行业的、高度专业化的库存管理数据库,或者把RFID系统作 为这个智能系统的一部分。写入数据一般来说是离线完成,也就是预先在标签中 写入数据,等开始应用时直接把标签粘附在被标识物体上。也有一些RFID应用 系统,写数据是在线完成的,尤其是在生产环境中将信息作为交互式便携数据文 件来处理时。第三章设计的嵌入式门禁控制器就是RFID系统中的数据管理系统,详细的介绍见第三章。从RFID的组成图中很容易看出读卡器主要由天线、射频模块、控制模块和 接口模块组成。下面就读卡器的电路设计,详细介绍一下射频模块和控制模块。4.2.1射频模块

本设计选用的读卡器芯片是TI公司的¥6700多协议收发芯片

RI.R6C.001A[22112”,控制芯片选的是AT89C52,AT89C52是常用的单片机芯片就 不对它做详细地介绍了,主要还是介绍一下RI.R6C.001A。RI—R6C.001A能够支

持的协议包括:Tag.it协议、ISO/IECl5693[24J、ISO/IECl4443[251等。它从功能上 划分由发送器、接收器、电源供应部分、参考时钟和内部振荡器、默认的复位设 置和电源管理、串行通信接口等几部分组成。芯片5V供电,内部封装有发送编

码器、调制器和接收器、解调器。典型发送功率200mW,有IDLE、POWERDOWN、FULLPOwER三种电源管理功能。它提供给用户数字接口,信号线为DIN、DOUT

和SCLK,通过这三根线可完成与控制模块之间的数据传输。RI.R6C一001A被用 来同天线和控制模块连接起来共同使用,外部无需任何器件进行直流转换和射频

滤波、调制解调、电流检测、电源供电解耦。图4.3是R6C内部结构框图【26】。

发射信道首先对DIN、SCLOCK的数据解码,经过深度调节,再进行功率放

大和低通滤波器后输出;接收信道对接收数据进行检波,得到423/484/848KH z 的信号,经解码后输出DOUT和MERR。由于RI.R6C.001A通过TX.OUT向外 发送数据的时序与控制器向RI.R6C.001A发送数据的时序完全不同,因此为了保 证射频传输中时序的转换,在芯片内部有一个16bit的FIFO输入缓冲器。接收部 分通过一个电阻与天线相连,从标签来的调制信号运用包络检波法对其解调,接

——

压卜酗423/484,/8压狂乎hL亡

垣HI医4813寸兰兰习kHEz|l

嵌入式门禁系统硬件的设计与实现

4.2读卡器电路设计

解调、滤渡

I≈l‟,I

图4.3R6C内部结构图

第四章RFID电路设计

收部分的解码器把解码后的数据直接送给控制器。表4.1是RI.R6C.001A管脚说

明口7】【2羽。

表4.1RI.R6C-001A管脚说明

管脚功能

VDD.TX发射器电源端

TX.OUT连接晶体管漏级输出R.MOD外部电阻设置调制度深度 VSS.1X发射器接地端

X1.ALl晶体振荡器1脚,接13.56MHzXTAL2晶体振荡器2脚,接13.56MHzVSS.DIG数字接地端

XTALCLK晶体振荡器缓冲端

NC不接

DOUT串行通信数据输出端VDD.DIG数字电源端DIN串行通信数据输入端MERR曼彻斯特协议错误标志

VDD.RX接收器电源端 SCLOCK串行通信时钟VSS-RX接收器接地端RX.IN接收器输入端

芯片对需要发送的数据用外部可调节的幅度引脚R.MOD对其进行控制,通 过对外接电阻的不同,发送数据的调制深度可以不同,具体调制深度变化条件如

表4.21291。

表4.2调制深度变化条件说明

调制深度%电阻值(欧姆)说明

1012最小的调制深度2018推荐的调制深度3025最大的调制深度

读卡器的部分电路原理图如图4.4所示。

嵌入式门禁系统硬件的设计与实现

p;

图4.4读卡器部分电路原理图

RI.R6C.001A芯片的外围电路主要分为电源滤波、接收、发射、与AT89C52接 C14个部分。发射信号、接收信号、数字信号有各自独立的电源和地。在RI—R6C.001A 应用电路中,外部晶振是13.56MHz,芯片的发射引脚TXOUT内部直接接到一个 MOSFET的漏极,调制好的信号经此引脚输出。首先经过一个LC网络将信号谐振 放大,然后经过一个T形网络进行通带的选择与阻抗的匹配,最后输出到匹配阻抗

为50Q的天线上。在外围电路图中,此T形网络由L4、L5、L6、C67、C68构成,通带的中心频率应在13.56MHz附近。接收通过一个2.2k.O的电阻直接与到天线的 输出端相连。2.2kQ电阻主要起保护作用,以避免发射信号电压过大对芯片接收引

脚造成损坏。信号进入芯片的接收引脚(IⅨIN)后,经过芯片内部的二极管包络滤

波器进行解调。4.2.2控制模块

控制芯片选的是AT89C52,AT89C52是常用的单片机芯片就不对它做详细地 介绍了。下面主要介绍控制模块与射频模块的电路连接,以及控制模块如何将数 据传输给数据处理系统f30l。连接电路如图4.5所示。

第四章RFID电路设计女卡器

图4.5控制模块和射频模块接口图

读卡芯片RI-R6C.001A与读卡控制芯片AT89C52之间的通信主要通过三根连 线实现。分别是:SCLOCK、DIN和DOUT,分别代表时钟线、数据输入和数据输 出线。时钟是双向的,发送数据时由AT89C52控制,接收数据时由芯片控制,在时 钟的上升沿锁存数据。DOUT除了在接收数据期间有把接收到的数据输出给

AT89C52的功能外,还用来表征RI.R6C.001A内部FIFO的情况,DOUT内部下拉,平时为低电平。输入数据过程中,当RI.R6C一001A的16位FIFO寄存器满时,DOUT 线会自动跳变为高电平,直至i]FIFO寄存器空,DOUT线又会跳变为低电平。在软 件设计时微处理器每发一位数据都要检测DOUT的状态。在DOUT为高电平期间,输入数据无效[34--36]。我们用软件模拟AT89C52端的SCLOCK时钟来实现数据的同 步传输。M.ERR这根线是用来检测接收到的射频卡中的数据是否发生错误,若有 错误此引脚变为高电平。在软件上用端口扫描的方式来判别是否有数据错误发生。

考虑到门禁的特殊性,门锁和门禁控制器距离相对较远,所以从读卡器到门 禁控制器之间采用RS485方式传输。采用RS485的优点有:

(1)RS485接口采用平衡驱动器和差分接收器的组合,抗共模干扰能力强,即 抗噪声干扰性好。

(2)RS485的数据最高传输速率为10Mbps。最重要的一点就是RS485接E1的最大传输距离标准值为4000英尺,(3)实际 上可达3000米。这个距离在物理安装上满足读卡器与门禁控制器是绰绰有余了。由于读卡器控制芯片AT89C52和门禁控制芯片¥3C2410没有RS485的专用 集成接口,故要进行转换。AT89C52和¥3C2410的UART接口分别接两个RS485 转换芯片,本设计采用的转换芯片是MAX3488,然后两个转换芯片之间交叉互 连就可以了,详细介绍见第三章3.1.5。

4.2.3读卡器的工作原理

1.4目DIN习

(1)-1-作过程

RI.R6C.001A芯片通过发射天线发送13.56MHz的射频信号,当射频标签进 入发射天线工作区域时会产生感应电流,射频标签把感应电流能量存储在电容中 作电源使用,控制器发出发送数据的指令,存储器中的数据经过编码器和调制器

嵌入式门禁系统硬件的设计与实现

处理把信息送到天线上发送出去(这个过程是把数字信号转化成模拟信号);

RI—R6C一001A芯片天线接受到从射频标签天线上发送出来的信息,它们之间的通 信采用的是IS014443协议,然后把收到的信息送给RI—R6C.001A芯片的解调、滤波模块,接着在通过RI.R6C.001A芯片的接受解码模块送到DOUT口(这个过 程是把模拟信号转化成数字信号)。

最后把信息送到读卡器的控制模块AT89C52中,经过处理后,用RS485传 输方式传送给门禁控制器,这就完成了读卡器的读卡过程。然后门禁控制器根据 传输来的信息与数据库里的信息进行比对,做出处理指令。这时外围电路根据指 令做出响应。详细的工作过程将在下一节介绍。

(2)数据流和接口

RFID系统中的数据流向和各部分之间的接口如图4.6所示。

图4.6数据流和接口图

这是读卡的主要工作原理。按钮、门磁、防拆的工作原理也于读卡的工作原 理相类似。

4.3响应电路和其他数据采集电路设计

4.3.1门锁控制电路

上面的设计已经使数据从射频卡上传输到嵌入式门禁控制器,门禁控制器通 过应用软件会做出处理指令,当处理指令是开门时,门锁控制电路就会开门。门 锁控制信号电路如图4.7所示。

嵌入式门禁控制器做出开门或关门命令时(比如处理读卡的信息后要开门),就会通过改变GPIO的高低电平来控制三极管Q3的通断,也就是控制了继电器

RelaySPDT的电流通断,而继电器电流的通断则控制着电锁的开门或关门状态(本 次设计的电锁一端接在NCI上,另一段接在12V的地端),这样就实现了RFID系

统的功能。

第四章RFID电路设计

图4.7门锁控制信号电路图

关于门锁控制电路的说明:

(1)HCF40106BMl是施密特触发器,它的作用是对GPIO输出的波形进行整 形以免波形失真造成误开门。

(2)R142起限压作用,防止三极管Q3被击穿损坏。

(3)肖特基二极管1N4007的作用是导走Q3的集电极的电流,以免电荷积累 过多损坏Q3。

(4)JP3跳线的1端接板内12V电源,3端接板外的12V电源,这样设计是为

了以后灵活供电。

(5)N01和powerl是为了接另一种电子锁准备的接口,这样就可以接多种的 电锁,为以后的应用提供方便。

报警电路与门锁控制电路几乎完全相同,只不过是门锁控制电路外接电子锁,而报警电路接报警器。4.3.2其他数据采集电路

射频卡的数据采集是用的读卡器,其他的数据采集,如门磁、按钮、防拆,采用的外围电路直接采集的。下面以防拆为例介绍电路原理。防拆数据采集电路 如图4.8所示。

嵌入式门禁系统硬件的设计与实现

图4.8防拆数据采集电路图

防拆电路的设计思想是:VCC通过一个电阻和导线形成一个回路,导线布满 防区,在电路图中就是VCC、R10和R26,其中R26是导线等效电阻。正常条件 下,导线的等效阻值等于平衡电阻值。窗式双限比较器设定一个电压范围,比较 器的4、7脚的电压在这个范围时,比较器输出高电平,ANTIDESl送给门禁控 制器GPIO的是高电平,这时候不触发报警。在导线处于断路或者短路的条件下,比较器的4、7脚的电压就高于或者低于设定的电压范围,比较器输出低电平,ANTIDESl送给门禁控制器GPIO的是低电平,这时候通过应用软件触发报警。

按钮电路和门磁电路与防拆电路的设计思想是相同的,就不对它们进行详细 的介绍了。

第三篇:一种基于MODBUS的嵌入式人机界面的设计与实现 电子技术

欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

一种基于MODBUS的嵌入式人机界面的设计与实现

错误检测主程序 ">

现场总线是一种用于底层工业控制和测量仪表之间的总线,人机界面设备就是作为现场总线中,控制器和操作者之间的通信员它可以完成现场控制器与操作者之间数据的接收和发送。本设计使用Atmel单片机89C52作为主要控制芯片,用以东芝丁6963C为控制芯片的128*64液晶比O作为显示界面,采用工业标准通信协议MOOBUS作为数据信息交互的介质,主要功能是完成对工业网络中现场控制器数据的采集显示,根据需要设定数据并发送到现场控制器完成控制任务,实现人机之间控制信息的交互传送。文章分别介绍了硬件设计电路和软件的设计过程,并介绍了一种好用和简单的MOOBUS从设备调试工具 Modbus slave。

系统硬件电路框图如图2。

电路部分十分简单,包括看门狗电路、4个按键的直接连接、程序扩展电路、RS232电平转换部分、液晶点阵连接部分。

MAX7OS的功能是:上电复位程序监视。89C52正常工作,执行喂狗程序时,不断从P17输出脉冲信号至MAX705的WDI脚,当单片机程序跑飞后,Pl.7不再输出脉冲信号MAX705的WDI脚在1.6S内收不到脉冲信号,将在MAX70S的RESTE端产生高电平,产生复位信号,将单片机复位,迫使程序复位到入口处。

针对AT89C52硬件资源比较丰富,考虑采用直接方式设计键盘电路,而且可以简化电路。键盘采用4个开关直接控制。开关的一段通过电阻连接电源和 欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

AT89C52的P10~P13管脚,而另一端接地。由于P10~P13是低电平工作,当不同的开关接通时,根据采集到不同端口是高还是低电平,来执行相应的按键子程序。

考虑到使用LCD具有较强的表现能力和丰富的表现方式,所以扩展了32K的EPROM27256。是为实现产品升级,完成丰富菜单,强大功能,表现动画准备的。

128*64液晶显示器LCO采用直接访问方式,直接访问方式是把内置T6963C控制器的液晶显示模块作为存储器或I/O设备直接挂在单片机的总线上。模块的数据线接单片机的数据总线上,片选及寄存器选择信号线由单片机的地址总线提供,读和写操作由单片机的读写操作信号控制。按口电路如图2所示,在图中使用了地址线AS作为模块的寄存器选择线C/D,使用地址线A15作为模块操作的片选线;模块的VO端所接的电位器是作为液晶驱动电源的调节器,调节显示的对比度。使用该种连接方式,不用考虑T6963C的时序图,不用对LCD的管脚进行单独的操作来满足时序,就像读写外部RAM一样,笔者认为比采用要在程序中实现时序的间接访问连接方式方便。

考虑到在常温下,LCD的额定电流为0。4ma所需的功率很小,再加上RS232串口集成电路MAX232有两路发送器、两路转换器,使用其中一套完成电平转换用来通信,另一套正好用来产生-10V,该电压由MAX232的14端供LCD显示画面使用。

下面介绍软件部分,主要完成一下功能按键的查询和响应、画面的显示和刷新通过MOOBUS协议完成数据的接收和传输通信。

软件结构清晰,按模块分为三大块主程序部分、T0定时中断、串口中断部分。

(1)主程序部分

主程序流程图如图3所示,主要完成一些初始参数的设定,其中LCD的初始化包括:液晶屏的尺寸光标的位置和形状等这部分程序在购买LCD时厂家会附带的,根据需要修改一下即可满足要求;还有就是将需要显示的汉字进行编码。定时器使用的是T0选择方式1,采用50ms中断查询按键,考虑到还有串口中断,使用了默认的中断优先级,即T0中断高于串口中断。这种安排已通过试验调试。在等待中断部分安排了循环执行喂狗程序目的是在程序正常执行时起到看门狗的作用,在等待中断过程中系统又不认为是死机。

欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

main: Icall clearmemory;清内存 Icall initlcd;初始化Icd mov sp,#stackpointer;堆栈为65h mov tmod.#21h:t0方式1,t1方式2 mov radixcursor.#10h mov currentpagenumber,#01h;指定初始 页号为1 mov page number,currehtpagenumber setb es setb ea mov th1,#Ofdh;设定波特率9600bps mov tl1.#Ofdh setb tr1;启动定时器t1 mov scoh.#Od0h mov 2ch,用来辅助发送 mov 2bh.#10h Icall setuptimer0;初始化定时器t0,并启动t0 setb ren Icall chaxuhsj;发送查询命令 Icall showpage;显示页面 dieloop: 欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

nop Icall feeddog;执行喂狗程序

jmp dieloop;循环等待中断

(2)T0定时中断部分

流程图如图4所示,这部分主要功能是完成按键的查询,并转去执行相应的子程序本系统中一共有四个编程键,依次可实现修改数据、增加值、减少值和翻页功能。当我们按下修改键后(即光标被激活)修改键可以用来移动光标位置此时按增加键和减少键可以分别增加和减少数值。其中翻页键是一个复用键如果直接按翻页键(不激活光标),那么它的功能就是在不同的页面之间切换,并从现场收集各页数据并显示到LCD上:而当光标处在被激活状态下时,按下翻页键就可以向现场控制器(如DSP)发送数据达到控制目的这种一键复用的设计,在电子商品中特别常见通过软件的设计减少了按键的数量,是一个比较有实际价值的设计已被广泛使用。键盘采用50ms定时中断设计,一般人手按键的起落时差远大于50ms所以可以满足设计要求而且在后面软件部分进行了去抖动,等待按键抬起功能的设计。timer0int: pushdph pushdpl pushacc pushpsw movthi0。#4bh 欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

movtl0。#Dfdh clrtr0;关定时器

movp1,#Offh;置p1口为输入状态

mova,p1;读按键

epla anda,#00001111b;屏蔽高4位

jzgoret00;无键按下

movpgbkey,a Icalldelay;有键按下delay10ms去抖动

Icallwait;等待按键抬起

Icallseankey;转去执行相应的按键子程序

goret00: setbtr0;开定时器

poppsw popacc popdpl popdph ren(3)串口中断部分

这部分的主要功能是通过MODBUS协议完成数据的查询和发送。先对MODBUS做个简单的介绍该协议通信使用主从技术,即仅主设备能初始化传输(查询)其它设备(从设备),根据主设备查询提供的数据作出相应反应。按传输模式分为ASCII和RTU方式。本设计采用RTU方式。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。每个消息必须以连续流的方式传输。

MODBUS协议建立了主设备查询的格式设备地址、功能代码、所有要发送的数据、错误检测域从设备回应消息也由MODBUS协议构成,包括确认要行动的域、任何要返回的数据和错误检测域。如果在消息接收过程中发生错误或从设备不能执行其命令,从设备将建立错误消息并把它作为回应发送出去。

查询查询消息中的功能代码告之被选中的从设备要执行何种功能数据段包含了从设备要执行功能的任何附加信息例如功能代码03是要求从设备读保持寄存器并返回它们的内容。数据段必须包含要告之从设备的信息:从何寄存器开始读及要读的寄存器数量错误检测域为从设备提供了一种验证消息内容是否正确的方法。

回应:如果从设备产生正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应数据段包括了从设备收集的数据:像寄存器值或状态。如果有错误发生功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。

举一个关于功能码03H的例子。

主站询问报文格式:

从站应答格式:

serialportint: 欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

push dph push dpl push acc push psw jbc ri, receive Icall chaxunsj;发送查询命令

sjmp return receive: mov r0 ,2bh;指定用来存接收数据的地址指针

mov a,sbufall clr riall mov @r0 ,a inc 2bh mov a,2bh Icall crc;进行crc校验

Icall showpage return: pop psw pop acc pop dpl pop dph reti

欢迎到访我的豆丁主页:http://www.feisuxs/hechaoscut(文档精灵)本文格式为WORD,能编辑和复制,感谢您的阅读。

笔者使用了Modbusslave软件仿真下位机,模拟MOD-BUS的从设备。通过该软件,用所设计人机界面可以读取具体设备的具体各类寄存器的数据,同样可以写数据到指定设备中指定的各类寄存器中,这样就完成了数据的接收和传送。

重要提示: 文档由由 文档精灵 上传,但版权归原作者所有。涉及版权问题请联系原作者。

第四篇:基于ARM-Linux的嵌入式HTTPS服务器与实现.

基于ARM-Linux的嵌入式HTTPS服务器与实现

随着计算机技术和微电子技术的发展,嵌入式系统在工业控制、信息家电、通信设备、智能仪器等领域得到了越来越广泛的应用。在这些领域,网络化、信息化的要求也随着Internet的迅猛发展而逐渐突出,越来越多的嵌入式设备有接入网络实现远程控制的需求,其基本的方法是在嵌入式设备上实现HTTP服务器,通过万维网在客户端用浏览器对设备进行访问。同时,这种方法不可避免地带来互联网上的安全问题,而HTTPS(安全超文本传输协议)是由Netscape公司提出的以SSL(安全套接层)为基础的安全HTTP方法,因此构建嵌入式HTTPS服务器,将有效地为嵌入式设备的网络化提供安全保障。本文对HTTP传输协议和SSL安全协议以及基于ARM的嵌入式技术等关键技术进行了深入的研究。首先分析了HTTPS这个安全传输设施的实现方法,即在标准的TCP/IP参考模型中在HTTP标准协议层和下面的TCP/IP传输协议层之间额外附加一层SSL安全层,紧接着对基于请求/响应模式的HTTP协议的信息交换的基本过程和SSL握手协议的安全加密的详细过程进行了分析与研究。然后,设计了系统的整体架构,硬件采用了应用广泛的32位ARM920T处理器S3C2410,操作系统采用了开源的嵌入式Linux操作系统,应用层的实现以Linux系统调用和OpenSSL开源库为基础。其次,建立了HTTPS服务器的支撑环境,在宿主机上通过Vmware虚拟机技术建立了Linux操作系统并通过一系列的服务配置建立起交叉编译环境;在硬件平台上烧写了系统引导程序bootloader,并以此为基础进行了嵌入式Linux和根文件系统的配置、编译和移植。最后,在深入研究了相关理论后,设计了服务器的基本结构和功能模块,在利用Linux的系统调用和OpenSSL API的基础上,使用C语言实现了基于ARM-Linux的嵌入式HTTPS服务器。实验结果表明,该服务器实现了与客户端浏览器的HTTPS的交互过程,能正确解析浏览器发出的HTTP请求,并根据请求资源和请求方法的不同做出不同的响应,返回给浏览器静态资源或者CGI程序的处理结果。同主题文章

【关键词相关文档搜索】: 信号与信息处理;ARM;Linux;HTTP;SSL 【作者相关信息搜索】: 武汉理工大学;信号与信息处理;王虹;戴帅;

第五篇:嵌入式远程视频采集系统的设计与实现(基于S3C2410)

嵌入式远程视频采集系统的设计与实现(基于S3C2410)

发 布 时 间 : 2024-11-19 来 源 : 中电网 作 者 : 张永强,赵永勇,李崇德 浏 览 :

984

多媒体通信技术的发展为信息的获取和传输提供了丰富的手段,视频采集是其中不可缺少的重要组成部分,该系统基于S3C2410的ARM9芯片和嵌入式Linux操作系统,采用USB摄像头捕捉视频,经MPEG-4算法压缩编码,系统直接与网络相连,用户使用标准的网络浏览器和流媒体播放程序即可查看远程视频影像。硬件系统

系统硬件平台选用基于ARM9架构嵌入式芯片S3C2410,稳定工作在202MHz主频,板载64MB SDRAM 64MB FLASH,主板资源包括:主USB口、从USB口、10M/100M以太网口,触摸屏、彩色LCD、键盘、8个用户自定义LED数码管,A/D,RTC电路,2个串口、1个JTAG通用接口,音频模块,支持MPEG4,MP3编解码,3个168PIN的扩展插座,32位的数据总线,保留充分扩展空间。

其中标配模块包括:IC卡+PS2模块、IDE硬盘+CF卡模块、PCMCIA+SD/MMC模块。另外可选配模块有:GPS模块,GPRS模块,FPGA模块,CAN+AD+DA模块、红外模块、蓝牙模块、摄像头模块。软件系统

2.1 内核配置与USB摄像头驱动

假定已经搭建好嵌入式Linux的开发环境,下面第一步工作就是USB摄像头的安装与驱动。首先检查Linux Kernel中是否已经添加了USB模块的支持,并且加入Video4Linux支持。

Multimedia devices→Video For Linux

Video For Linux→[*]V4L information in proc filesystem

在主菜单的USB Support下还有各种摄像头的驱动,选中将要使用的摄像头芯片类型。

<>USB IBM(Xirlink)C-it Camera support<*>USB OV511 Camera support<>USB Philips Cameras <>USB SE401 Camera support<>USB STV680(Pencam)Camera support<>USB 3com HomeConnect(akavicam)support 在USB摄像头选购时,优先考虑Linux内核公开支持的摄像头芯片,不然要额外编写相应的USB摄像头驱动程序,然后进行编译、安装。在此选用网眼公司的V3000产品,他采用了OV511的芯片。

确定USB摄像头被正常驱动后,下一步就是使用Video4Linux提供的API函数集来编写视频采集程序。

2.2 基于V4L设计的视频采集模块

在Linux下,所有外设都被看成是一种特殊的文件,称为设备文件。系统调用是内核和应用程序之间的接口,而设备驱动程序则是内核和外设之间的接口。他完成设备的初始化和释放、对设备文件的各种操作和中断处理等功能,为应用程序屏蔽了外设硬件的细节,使得应用程序可以像普通文件一样对外设进行操作。

Linux系统中的视频子系统Video4Linux为视频应用程序提供了一套统一的API,视频应用程序通过标准的系统调用即可操作各种不同的视频捕获设备。Video4Linux向虚拟文件系统注册视频设备文件,应用程序通过操作视频设备文件实现对视频设备的访问。

Linux下与Video4Linux相关设备及用途如表1所示。

这里主要针对设备文件/dev/video进行视频捕捉方面的程序设计。

Linux下视频采集流程如图2所示。

其中用到的主要函数有:

Camera_open():用来开启视频设备文件,使用前需要首先声明一个video_device类型的设备文件。

Camera_get_capability():通过调用ioctl()函数取得设备文件的相关信息,并存放到video_capability结构里。

Camera_get_picture():通过调用ioctl()函数取得图像的相关信息,并且存放到video_picture结构里。

Camera_close():用来关闭设备文件。Camera_grab_image():用来抓取图像,采用mmap方式,直接将设备文件/dev/video0映射到内存,加速文件I/O操作,还可以使多个线程共享数据。

剩下的还有设备初始化、参数设备等相关函数,不再详述。

2.3 视频压缩编码模块

获取图像数据后,可以直接输出到FrameBuffer进行显示,由于本系统要将采集到的视频影响通过网络传输出去,所以在传输之前要对原始的图像数据进行压缩编码,在此选用MPEG-4视频编解码方案。和其他标准相比,MPEG-4压缩比更高,节省存储空间,图像质量更好,特别适合在低带宽条件下传输视频,并能保持图像的质量。

MPEG-4中基于对象的视频编码过程可以分为3步进行:

(1)从原始视频流中分割视频对象。

(2)对视频对象进行编码,对不同视频对象的运动信息、形状信息、纹理信息分配不同的码字。对输入的任意形状的VOP序列,用基于块的混合编码技术编码,处理顺序是先IVOP后PVOP,BVOP。在对VOP的形状信息编码后,取得任意形状VOP的采样,每个VOP划分为不相交的宏块,每个宏块含有4个8×8象素块进行运动补偿以及纹理编码,已编码的VOP帧保存在帧存中,在当前VOP帧和已编码VOP帧之间的计算运动矢量;对将编码的块和宏块,计算他们的运动补偿预测误差;运动补偿预测后的IVOP及误差用8×8块DCT变换,并进行DCT系数的量化,然后是游程编码和熵编码。

(3)对各个视频对象的码流进行复合,每个视频对象的形状、运动纹理信息复合成VOL比特流,各视频对象视频流复合成统一的码流输出。对视频流进行压缩编码以后,接下来就要实现网络传输部分的功能。

2.4 JRTPLIB网络传输模块

流媒体指的是在网络中使用流技术传输的连续时基媒体,RTP是目前解决流媒体实时传输问题的好办法,JRTPLIB是一个面向对象的RTP库,他完全遵循RFC1889设计,下面讲述如何在Linux平台上运用RTP协议进行实时流媒体编程。

2.4.1 初始化 在使用JRTPLIB进行实时流媒体数据传输之前,首先应该生成RTPSession类的一个实例来表示此次RTP会话,然后调用Create()方法来对其进行初始化操作。RTPSession类的Create()方法只有一个参数,用来指明此次RTP会话所采用的端口号。

2.4.2 数据发送

当RTP会话成功建立起来之后,接下来就可以开始进行流媒体数据的实时传输了。首先需要设置好数据发送的目标地址,RTP协议允许同一会话存在多个目标地址,这可以通过调用RTPSession类的AddDestination()、DeleteDestination()和ClearDestinations()方法来完成。目标地址全部指定之后,接着就可以调用RTPSession类的SendPacket()方法,向所有的目标地址发送流媒体数据。

2.4.3 数据接收

对于流媒体数据的接收端,首先需要调用PollData()方法来接收发送过来的RTP或者RTCP数据报。由于同一个RTP会话中允许有多个参与者(源),因此既可以通过调用GotoFirstSource()和GotoNextSource()方法来遍历所有的源,也可以通过调用GotoFisstSourceWithDat()和GotoNextSourceWithData()方法来遍历那些携带有数据的源。在从RTP会话中检测出有效的数据源之后,接下去就可以调用RTPSession类的GetNextPacket()方法从中抽取RTP数据报,当接收到的RTP数据报处理完之后,要及时释放。

JRTPLIB为RTP数据报定义了3种接收模块,通过调用RTPSession类的SetReceiveMode()方法可以设置下列这些接收模式:

RECEIVEMODE_ALL:缺省的接收模式,所有到达的RTP数据报都将被接受;RECEIVEMODE_IGNORESOME:除了某些特定的发送者之外,所有到达的RTP数据报都将被接受,而被拒绝的发送者列表可以通过调用AddToIgnoreList(),DeleteFromIgnoreList()和ClearIgnoreList()方法来进行设置;RECEIVEMODE_ACCEPTSOME:除了某些特定的发送者之外,所有到达的RTP数据报都将被拒绝,而被接受的发送者列表可以通过调用AddToAcceptList(),DeleteFromAcceptList和ClearAcceptList()方法来进行设置。

2.4.4 控制信息 JRTPLIB是一个高度封装后的RTP库,只要PollData()或者SendPacket()方法被成功调用,JRTPLIB就能够自动对达到的RTCP数据报进行处理,并且还会需在要的时候发送RTCP数据报,从而能够确保整个RTP会话过程的正确性。

在本系统中,使用RTPSession JRTPLIB类库提供的方法来实现底层的RTP/RTCP操作,并且把他封装在CrtpTransmitter类中,该类从Media Sink类继承而来,接收到相应的媒体帧数据,使用RTPSession类库的操作把数据发送到网络上。结语

本系统基于S3C2410平台和Linux操作系统,利用Video4Linux设计采集程序,使用MPEG-4压缩编码算法,通过实时流媒体传输技术实现了网络传输,整个系统具有稳定可靠、安装简便、成本低廉等特点,可扩展应用在工业控制、视频会议系统、可视电话、远程监控系统等诸多领域。

基于嵌入式ARM9的USB设计与实现(精选合集).docx

将本文的Word文档下载到电脑

推荐度:

下载

本类热门推荐

热门文章