版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录引言2一、设计目标及原则31.1、目标31.2、原则3二、停车场流程图4三、停车场指示系统工作流程6四、停车场系统各板块的工作原理741、停车场车位指示系统原理图:74.2、超声波探测原理:84.3、RS-485 通讯协议84.4、TCP/IP协议:94.4.1、分层104.4.2、应用编程接口11五、系统配置115.1、超声波探测器(DUS-110)115.1.1、主要特性125.1.2、主要技术参数125.1.3控制接口定义125.1.4、车辆探测距离设定125.2、采集控制器(KL-S121)135.3、节点控制器(TGWH678)145.4、主入口引导屏155.5、停车场设计图:1
2、6六、硬件仿真及软件编译176.2、车位采集的系统仿真176.2、车位指示系统的仿真186.3、矩阵显示以及剩余车位显示196.4、车位寻找及路径运算的matlab建模196.5、车牌号的提取matlab仿真21七、设计心得22参考文献24附录1 车位采集器的程序25附录2 车位指示系统的程序27附录3矩阵显示以及剩余车位显示的程序代码31引言伴随着我国信息事业的蓬勃发展,一方面,计算机技术、自动化控制技术和数据传输技术在近些年来都得到了非常迅速的发展, 各项信息事业方兴未艾、各种身份识别载体日趋丰富;而另一方面,由于生活水平与安全防范意识的提高,使得人们对于停车管理的安全性和停车的便利性都产
3、生了新的需求。停车场管理系统除了进行进出通道管理之外,如何引导司机方便的停车也是停车管理的重要组成部分,本方案通过强化停车场进出通道的安全管理、场内车位引导等方面来阐述一个完整意义上的智能化停车场系统。目前市场上现有的停车管理系统很多都是简单的对停车场进出通道的管理,而实际上,一个完整的停车场管理系统还应该包括车位引导、区位引导和安全控制等要素。区位车位指示系统主要用于对进出停车场的停泊车辆进行有效引导和管理,是停车场管理系统的有力补充,构成智能化更高的停车场管理系统。 该系统可实现泊车者方便快捷泊车,使停车场车位管理更加规范、有序,提高车位使用率,该车位采用超声波探测技术,对每个车位的占用或
4、空闲状况进行可靠检测。根据车库具体情况,在车库入口处设置车位信息显示屏,动态的显示车库内各相应区域的车位剩余数量以及车位的占用等情况。在每个区域设置区域车位信息显示屏,该显示屏可根据车辆的进出情况自动更新显示的数据内容,动态的显示该区域的车位剩余数量以及空闲的车位情况。在每个车位上安装超声波探测器自动感应车辆信息,并将信息反馈给区位采集器。数据处理器通过收集区位采集器的信息,自动计算车库剩余车位及各个车位的占用状态,及时刷新车位显示信息。 车位指示系统主要适用于大、中型地下停车场,广泛用于政府办公楼、火车站和购物中心等公共停车场。其主要工作原理是根据超声波探测器由上往下发出超声波,检测车顶和地
5、面的反射波,由此能够正确地检测出每个车位有无车辆,然后将各个车位停车情况的信息通过网络线路传给控制计算机,计算机通过软件处理,将引导信号传给引导信息。指示器引导司机快速将车停入空位。车位指示系统主要特点:提高停车场的使用率,并更好地管理停车场,降低大中型停车场的经营成本,大大提高了社会效益和经济效益。为顾客消除停车烦恼,轻松停车。一、设计目标及原则1.1、目标方便、快捷、准确的满位显示服务功能;车辆保管的安全性功能;经济合理的运营成本;1.2、原则先进成熟的技术和设备,保证系统运作安全、可靠与稳定;合理布局,提高系统的服务质量,缩短服务时间,增加场内停车流量和收费收入。实用性、实时性、完整性原
6、则;可扩展性及易维护性原则。规范停车场只需,提高停车场的使用率,缩短车主寻找停车位、停车、停车后离开停车场和驶离停车场的时间;二、停车场流程图车辆排队准备进场未找到停车位根据LED指示灯的提示前进通知数据库锁定车位车辆进场管理员打开道闸是提示进场位置数据库提示进场位置录入有效呼叫管理员否无效提示原因逻辑判断断是否取票录入停车券按取票按钮刷卡临时车月卡车LED显示屏显示信息找到停车位呼叫管理员停车否是是是是月卡车临时车出场管理员打开道闸现场处理缴费是否记录缴费提示缴纳费用呼叫管理员是否有效扫描条码计算费用是否有票是否重试记录停车信息刷卡根据LED指示灯提示前进车辆准备出场否逻辑判断无效否有效否三
7、、停车场指示系统工作流程当驾驶员驾车驶至本车库路面入口时,将会在路面的显示屏上看到整个车库的车位情况,有无空车位,以决定是否在本车场的停车;当车驶入地下车场时通过探测器知该已进入车位。将告知区域控制器,区域控制器将做出判断,同时在屏幕上显示此车场新的车位数据。当驾驶员驾车驶至本车库时,会从该层入口处的显示屏上得到提示:该层共分有多少个区域,同时显示每个区域车辆停放数量,并且在该屏旁边立有指示牌。指示牌明确标有驾驶员所在的位置,及区域划分的情况,能更方面的引导驾驶员进入相应分区。当车准备驶入停车场时,先在门口按取票按钮获得停车劵或者刷卡,如果取票成功或者刷卡成功,那么可以进入停车场。如果取票或者
8、刷卡失败,那么寻找管理员解决问题。进场后根据LED指示灯的提示前进,如果找到自己的车位则停车,如果未找到自己的车位就呼叫管理员。某区通过探测器知其已进入车位,将告知区域控制器,区域控制器将做出判断,同时在相应屏幕上显示此区域新的车位数据。当车辆从停放车辆的区域驶出时,根据LED指示灯提示前进,当车到达出口时,车主用自己的车票或月卡扫描计算费用,如果停车卷丢失或者失效,那么就呼叫管理员。如果缴费成功,那么管理员就打开道闸,车辆可以出停车场。探测器将此信息告知区域控制器,区域控制器将在各自入口处的显示屏上已停车辆数量减去一个,同时将空余车位数量加一个,以保证正确显示车位信息。本项目说明:1、本系统
9、共分6个区域,车场总进口2个,车场总出口2个;2、六个区的通道互通; 3、在每个区的主入口需显示该区当前的剩余车位和该区的总车位;4、在总入口处需显示车场的总剩余车位数和车场的总车位数;四、停车场系统各板块的工作原理41、停车场车位指示系统原理图: 停车场指示系统原理的简单介绍:通过超声波探测器检测该区位是否有车,若有车超声波为红灯,无车超声波为绿灯。通过rs485协议传输给采集控制器,采集控制器将信息通过rs485协议传输给车位引导牌、信息显示屏和剩余车位显示屏。节点控制器接收到采集控制器的信息后通过TCP/IP协议传输给满位显示屏和中央控制器,中央控制器通过TCP/IP协议传输给网络。4.
10、2、超声波探测原理:超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2 。这就是所谓时间差测距法。超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。4.3、RS-485 通讯协议RS-485 标准只对接口的电气特性做出规定,而不涉及接插
11、件、电缆或协议;因此,用户需要在RS-485 应用网络的基础上建立自己的应用层通信协议。由于RS-485 标准是基于PC 的UART 芯片上的处理方式,因此,其通讯协议也规定了串行数据单元的格式(8-N-1 格式):1 位逻辑0 的起始位,6/7/8 位数据位,1 位可选择的奇(ODD)/偶(EVEN)校验位,1/2 位逻辑1 的停止位。目前,RS-485 在国内有着非常广泛的应用,许多领域,比如工业控制、电力通讯、智能楼宇等都经常可以见到具有RS-485 接口电路的设备。但是,这些设备采用的用户层协议(术语参考自OSI 的7 层结构)都不相同;这些设备之间并不可以直接连接通讯。比如,很多具有
12、RS-485 接口电路的用户设备采用自己制定的简单通讯协议,或是直接取自ModBus 协议(AscII/RTU 模式)中的一部分功能;在电力通讯领域,当前国家现在执行的行业标准中,颁布有按设备分类的各种通讯规约,如CDT、SC-1801、u4F、DNP3.0 规约和1995 年的IEC60870-5-101 传输规约、1997 年的国际101 规约的国内版本DL/T634-1997规约;在电表应用中,国内大多数地区的厂商采用多功能电能表通讯规约(DL/T645-1997)。下面将分别对ModBus 协议(RTU 模式)、多功能电能表通讯规约(DL/T645-1997)进行简单介绍,便于大家对应
13、用层通信协议有一个基本的概念与理解。响应:当从设备响应时,它使用功能代码域来指示是正常响应(无误)还是有某种错误发生(称作异议响应)。对正常响应,从设备仅响应相应的功能代码。对异议响应,从设备返回一等同于正常代码的代码,但最重要的位置为逻辑1。例如:从一个主设备发往从设备的消息要求读一组保持寄存器,将产生如下功能代码:0 0 0 0 0 0 1 1 (十六进制03H)对正常响应,从设备仅响应同样的功能代码。对异议响应,它返回:1 0 0 0 0 0 1 1 (十六进制83H)除功能代码因异议错误作了修改外,从设备将一独特的代码放到响应消息的数据域中,这能告诉主设备发生了什么错误。主设备应用程序
14、得到异议响应后,典型的处理过程是重发消息,或者诊断发自从设备的消息并报告给操作员。从主设备发给从设备消息的数据域包含附加的信息:从设备必须用于进行执行由功能代码所定义的行为。这包括了象不连续的寄存器地址,要处理项的数目,域中实际数据字节数。例如,如果主设备需要从设备读取一组保持寄存器(功能代码03),数据域指定了起始寄存器以及要读的寄存器数量。如果主设备写一组从设备的寄存器(功能代码10 十六进制),数据域则指明了要写的起始寄存器以及要写的寄存器数量,数据域的数据字节数,要写入寄存器的数据。具体的协议内容:地址域 A0A5:当地址位999999999999H 时,为广播地址,同时当从控制器接收
15、到一帧数据时,地址域相同时应响应命令,取得总线控制权,当响应命令之后,应把总线控制权归还给主控器。命令码:执行操作的依据。校验码:帧开始各个字节二进制算术和,不计溢出值。前导字节:在发送信息之前,发送1 个或多个字节FEH,以唤醒接收方。数据域:发送时数据加33H,接收时数据减33H。用户可以在国家标准计量局,或技术监督部门查询关于多功能电能表通讯规(DL/T645-1997)获取更多在RS-485 网络中实现的通讯规约的具体内容。4.4、TCP/IP协议:很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP 协议组件允许它们互相进行通信。这一点很让人感到吃惊,因为它
16、的作用已远远超出了起初的设想。TCP/IP 起源于60 年代末美国政府资助的一个分组交换网络研究项目,到现在90 年代已发展成为计算机之间最常应用的组网形式。它是一个真正的开放系统,因为协议组件的定义及其多种实现可以不用花钱或花很少的钱就可以公开地得到。它成为被称作“全球互联网”或“因特网”(Internet)的基础,该广域网(WAN)已包含超过100 万台遍布世界各地的计算机。4.4.1、分层网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议组件,比如TCP/IP,是一组不同层次上的多个协议的组合。TCP/IP 通常被认为是一个四层协议系统。每一层负责不同的功能:1. 链
17、路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。2. 网络层,有时也称作互连网层,处理分组在网络中的活动,例如分组的路由选择。在TCP/IP 协议组件中,网络层协议包括IP 协议(网际协议),ICMP 协议(Internet 互连网控制报文协议),以及IGMP 协议(Internet 组管理协议)。3. 运输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP 协议组件中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。TCP 为两台主机提供高可靠性的
18、数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。而另一方面,UDP 则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。这两种运输层协议分别在不同的应用程序中有不同的用途,这一点我们将在后面看到。4. 应用层负责处理特定的应用程序细节。几乎各种不同的TCP/IP 实现都会提供下面这些通用的应用程序:Telnet 远程登录FTP 文件传输协议
19、SMTP 用于电子邮件的简单邮件传输协议SNMP 简单网络管理协议尽管通过IP 地址可以识别主机上的网络接口,进而访问主机,但是人们最喜欢使用的还是主机名。在TCP/IP 领域中,域名系统(DNS)是一个分布的数据库,由它来提供IP 地址和主机名之间的映射信息。现在,我们必须理解,任何应用程序都可以调用一个标准的库函数来查看给定名字的主机的IP 地址。类似地,系统还提供一个逆函数给定主机的IP 地址,查看它所对应的主机名。大多数使用主机名作为参数的应用程序也可以把IP 地址作为参数。4.4.2、应用编程接口使用TCP/IP 协议的应用程序通常采用两种应用编程接口(API):socket 和TL
20、I(运输层接口:Transport Layer Interface)。前者有时称作“Berkeley socket”,表明它是从伯克利版发展而来的。后者起初是由AT&T 开发的,有时称作XTI(X/Open 传输接口),以承认X/Open这个自己定义标准的国际计算机生产产商所做的工作。XTI 实际上是TLI 的一个超集。本书不是一本编程方面的书,但是偶尔会引用一些内容来说明 TCP/IP 的特性,不管大多数的API (socket)是否提供它们。所有关于socket 和TLI 的编程细节请参阅文献Stevens 1990。TCP/IP 协议族分为四层:链路层,网络层,运输层和应用层,每
21、一层各有不同的责任。在TCP/IP 中,网络层和运输层之间的区别是最为关键的:网络层(IP)提供点到点的服务,而运输层(TCP 和UDP)提供端到端的服务。一个互连网是网络的网络。构造互连网的共同基石是路由器,它们在IP 层把网络连在一起。第一个字母大写的Internet 是指分布在世界各地的大型互连网,其中包括1 万多个网络和超过100 万台主机。在一个互连网上,每个接口都用IP 地址来标识,尽管用户习惯使用主机名而不是IP 地址。域名系统为主机名和IP 地址之间提供动态的映射。端口号用来标识互相通信的应用程序。服务器使用众所周知的端口号,而客户使用临时设定的端口号。五、系统配置5.1、超声
22、波探测器(DUS-110) 利用超声波测距的工作原理的检测车位占用情况的车辆检测器,可实时识别车位使用情况,并可通过RS485接口直接与集线器通信,具有防误检功能,如防相邻车位误检、人员在停车位误检、障碍物误检等,能快捷地部署系统。5.1.1、主要特性 工业级设计,适应各种恶劣环境;用于车库车位的车辆存在实时检测;采用RS485 通讯总线,通讯地址最大为32。 5.1.2、主要技术参数 工作电源:DC24V±10%工作模式: 实时监测工作温度:-20至65储存温度:-40至85工作湿度:3090%(相对湿度) 使用条件:安装在车位的上方(推荐范围:2.0m2.5m)5.1.3控制接口
23、定义1 电源及通讯总线接口V-V+BAGND24V+ RS485BRS485A 2 外接 LED 显示灯接口 V+0VRedGreenLED 电源正极LED 地红(高电平有效)绿(高电平有效)3、工作状态及指示状态指示灯状态描述白发红点亮红灯有车白发红点亮绿灯无车红灯通信正常-慢闪; 通信超时-快闪5.1.4、车辆探测距离设定 将探测器安装于预定高度,使用工具将超声波探测器的距离探测按钮激活。此时红绿车位指示灯将会重复闪烁,30次后探测器将所测得的数据平均值设为探测高度,将此平均值减去500mm为报警距离。当报警距离内未检测到物体时,通过RS485输出无车信号,并将绿灯点亮;当报警距离内检测到
24、有物体时,通过RS485输出有车信号,并将红灯点亮;5.2、采集控制器(KL-S121) KL-S系列数据采集器通过采集模拟量和开关量来实时监测现场的设备运行情况和环境状况。产品通过标准的RS232/RS485、以太网通讯接口将设备数据远传至监控中心,使监控人员直接在监控机房通过上位机观察现场的数据并控制现场的设备,从而使现场的仪器设备能够正常运行无异常情况发生。 对模拟量的测量提供4级报警限值,可以根据设定的上下限和上上限、下下限值产生上下限、上上限、下下限报警,其报警限值参数可以通过键盘或监控中心进行近端或远端设置和修改。提供以太网、RS232/RS485标准通讯接口,并且RS232/RS
25、485两种通讯方式可通过板上跳线选择,保证通讯方式的通用性。采用2×16字符液晶显示,4个按键控制,4个LED指示灯指示通讯和报警等工作状态,人机界面友好,易于操作。采用大规模集成电路,减少了分立元件的数量,模块化电源设计,并考虑对过压与雷击的防护。内嵌单片机系统从硬件和软件上均采取先进的抗干扰措施,从而保障监控系统长期稳定运行。系列产品内每种型号都提供壁挂式和1U机架式两款机箱,供用户选择。支持继电器与通道报警联动。技术参数表供电电压DC -48VDC -48V供电范围(-36V-72V)AC 220VAC 220V供电范围(85V265V)功耗空载功耗<3W最大功耗30W采
26、集通道单路功耗0.5W系统速度平均通信响应时间60ms最小通信周期250ms模拟量输入信号范围420mA直流电流或05V直流电压采集精度±0.5开关量输入信号范围TTL电平或干接信号继电器输出信号范围最大触点容量: AC 220V×2A通讯接口硬件接口DB9针位通讯方式RS232或RS485或以太网通讯波特率2400bps,4800bps,9600bps,19200bps通讯协议专用协议,MODBUS协议安装方式壁挂式,机架式,地角式外形尺寸及产品重量机架式(地脚式)长×宽×高:482.6mm× 200mm× 44mm产品重量:约18
27、20克壁挂式长×宽×高:350mm× 70mm×260mm产品重量:约2850克工作环境温度-2080工作环境湿度5RH95RH系统通用指标:供电电源-48VDC(-36VDC72VDC) 220VAC(162VAC265VAC) 数据和报警刷新周期小于0.5秒精度模拟量采集精度:0.5 开关量采集精度:100 工作条件温度:-2060 湿度:5RH95RH通讯方式以太网口或RS232/RS485串行通讯接口 使用专用通讯协议价格:1692元/只5.3、节点控制器(TGWH678)节点控制器用于连接中央控制器和采集节点控制器、显示屏、读卡器、引导箭头等。
28、主要解决长距离引起通讯不可靠问题、网络节点数扩展问题、分组管理问题等。节点控制器是本公司停车场引导系统三层网络总线的的中间层,对保证本系统的安全、可靠与高效有重要作用。 该控制器有两种通讯口,一种是高速的CAN2.0B通讯口,另一种是RS485通讯口,可以与多种设备通讯,从而实现多种设备进行停车场引导系统的网络。技术指标型号 TGWH678扩展点数 32个通讯方式 CAN2.0B与RS485通信速率 51000KBPS可设置站点号 1255可设置通讯距离 1000米以内电源 220伏功耗 小于25瓦价格:1500元/只5.4、主入口引导屏 输入电压 AC220V/50Hz功耗 每行显示屏功耗&
29、lt;20W通讯接口 RS485通讯频率 9600/4800LED单字节符尺寸 150mm*60mm显示分辨率 32*16显示范围 400*200平均无故障工作时间 >10000h外壳材料 冷板磨砂喷涂 5.5、停车场设计图:单箭头LED显示屏: 双箭头LED显示屏: 门禁处的LED显示屏:六、硬件仿真及软件编译6.2、车位采集的系统仿真这次车位指示系统的采集我们选用了74S165八位并行入/串行输出移位寄存器,这里对它做一个简要说明:主要电特性如下:型号Fm(最大时钟频率)PD(功耗)74LS16535MHz90mW工作原理: 当移位植入控制端(SH/LD)为低电平时,并行数据(A-H
30、) 被置入寄存器,而时钟(CLK,CLK INH)及串行数据(SER)均无关。当SH/LD)为高电平时,并行置数功能被禁止。CLK和CLK INK在功能上是等价的,可以交换使用。当CLK和CLK INK有一个为低电平并且SH/LD为高电平时,另一个时钟可以输入。当CLK和 CLK INK有一个为高电平时,另一个时钟被禁止。只有在CLK为高电平时CLK INK才可变为高电平。引出端符号:CLK,CLK INK 时钟输入端(上升沿有效)A-H 并行数据输入端SER 串行数据输入端QH 输出端QH' 互补输出端Sh/LD' 移位控制/置入控制(低电平有效)逻辑图下面是我们的程序导入后
31、的系统仿真图:图为车位采集系统仿真图仿真图的工作原理介绍:我们用了触发开关来代替车位采集器,当开关触发时,经过上来电阻的作用向at89c51单片机输入一个高电平1,没有触发时,向单片机发送的地址信息为低电平0。所有的地址信息由74ls165向单片机发送,经由74LS165的QH串行端口向单片机发送一个16位的地址信号。当有车进入车位时,图中的led灯会亮,并在左边的七段数码管显示1,上边的七段led灯显示车位信息。这里的说声抱歉,本开始选用的是两个七段数码管,后来经过反复仿真和设计,发现实现起来比较困难,所以选用一个七段数码管来表示16个车位。我们修改了程序的代码,车位116的表示由09和af
32、表示。这里说声对不起,到目前为止,我们的仿真图是对的,程序也是对的,但是功能却没有向预先设计的方向发展。第一个问题就是,车位的显示跟我预先的代码不符,第二个问题就是当有车位进入车辆时,led灯不会亮,应该是程序的功能没实现。程序代码会附在后面附录。6.2、车位指示系统的仿真这部分的程序是最简单的部分,因为我们只做了一个简单的显示屏显示我们的预先设定好的内容,本想加入一个手动的控制输入,后面时间有限做了一个显示电路。这部分的功能就是滚动显示屏显示车牌号和要到达的车位以及要行走的距离。6.3、矩阵显示以及剩余车位显示这部分也是根据外部中断输入改变显示的仿真程序,外面输入数据改变矩阵显示和剩余车位的
33、显示:6.4、车位寻找及路径运算的matlab建模Matlab选用蚁群算法对个路径进行计算比较,把最后的数据绘制成一张表格,把所有可能的停车位都表示出来。这个算法的前提是根据车位地图建立一个数学模型,算法根据建立的模型来进行最优路径计算。再把最后的结果存入预先设定好的文件夹。下面是结果的截图:6.5、车牌号的提取matlab仿真车牌号的提取时根据小车在进入停车场是外围的摄像头拍摄的照片,然后运用切割的办法把车牌号的各个数字进行切割并提取样本和图库的图片进行对比,最后将结果保存在预先设定的文档里。下面是结果图:七、设计心得参考文献1.曹光磊,徐克宝:基于超声波探测的停车场车位引导系统的研究中国仪
34、器仪表与测控技术进展大会论文集2. 薛山 :MATLAB基础教程 出 版 社:清华大学出版社 出版时间:2011-03-013. 周润景 ,蔡雨恬 :PROTEUS入门实用教程(第2版) 出 版 社:机械工业出版社4. 胡晓冬 ,董辰辉:MATLAB从入门到精通 出 版 社:人民邮电出版社 出版时间:2010-06-015朱清慧: Proteus教程:电子线路设计·制版与仿真(第2版) 出 版 社:清华大学出版社 出版时间:2011-06-016.W.Richard Stevens(美)( 范建华 等 译):TCP/IP详解卷1:协议 出 版 社:机械工业出版社 出版时间:2000-
35、04-01附录1 车位采集器的程序#include<reg51.h>#include<intrins.h> #define uint unsigned int #define uchar unsigned charuchar code DSY_CODE1=0x7e,0x30,0x6d,0x79,0x33,0x5b,0x5f,0x70;uchar code DSY_CODE2=0x7f,0x7b,0x77,0x1f,0x4e,0x3d,0x4f,0x47;uchar code zDSY=0x7e,0x06;sbit CLK=P31; /时钟位定义 sbit SH_LD =
36、P30; /转载/移位位定义 sbit QH =P32; /接收位定义 sbit CLKIN =P33; uint read_int165(void) uchar i=0; uint read_data=0; CLKIN=1; SH_LD=0; /置入控制有效,锁存端口值 _nop_(); SH_LD=1; _nop_(); CLKIN=0; for(i=0;i<16;i+) read_data<<=1; if(QH)read_data|=QH; CLK=0; _nop_(); CLK=1; /上升沿 _nop_(); return read_data; void main(
37、) int i; uint temp=0; uchar tempH=0; uchar tempL=0; CLK=0; while(1) temp =read_int165();tempH = (uchar) (temp>>8); tempL = (uchar) temp;for(i=0;i<8;i+)if(tempLi=0&&tempHi=0)P0=zDSY0;P1=zDSY0; if(tempLi=1) P0=DSY_CODE1i; P1=zDSY1; if(tempHi=1) P0=DSY_CODE2i; P1=zDSY1; 附录2 车位指示系统的程序#i
38、nclude<reg51.h> /包含单片机寄存器的头文件#include<intrins.h> /包含_nop_()函数定义的头文件sbit RS=P20; /寄存器选择位,将RS位定义为P2.0引脚sbit RW=P21; /读写选择位,将RW位定义为P2.1引脚sbit E=P22; /使能信号位,将E位定义为P2.2引脚sbit BF=P07; /忙碌标志位,将BF位定义为P0.7引脚unsigned char code string ="AN7968 YU75 R396m" /*函数功能:延时1ms(3j+2)*i=(3×33+2
39、)×10=1010(微秒),可以认为是1毫秒*/void delay1ms() unsigned char i,j; for(i=0;i<10;i+) for(j=0;j<33;j+) ; /*函数功能:延时若干毫秒入口参数:n*/ void delay(unsigned char n) unsigned char i;for(i=0;i<n;i+) delay1ms(); /*函数功能:判断液晶模块的忙碌状态返回值:result。result=1,忙碌;result=0,不忙*/ unsigned char BusyTest(void) bit result;RS
40、=0; /根据规定,RS为低电平,RW为高电平时,可以读状态 RW=1; E=1; /E=1,才允许读写 _nop_(); /空操作 _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 result=BF; /将忙碌标志电平赋给resultE=0; return result; /*函数功能:将模式设置指令或显示地址写入液晶模块入口参数:dictate*/void WriteInstruction (unsigned char dictate) while(BusyTest()=1); /如果忙就等待 RS=0; /根据规定,RS和R/W同时为低电平时,
41、可以写入指令 RW=0; E=0; /E置低电平(根据表8-6,写指令时,E为高脉冲, / 就是让E从0到1发生正跳变,所以应先置"0" _nop_(); _nop_(); /空操作两个机器周期,给硬件反应时间 P0=dictate; /将数据送入P0口,即写入指令或地址 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=1; /E置高电平 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=0; /当E由高电平跳变成低电平时,液晶模块开始执行命令
42、/*函数功能:指定字符显示的实际地址入口参数:x*/ void WriteAddress(unsigned char x) WriteInstruction(x|0x80); /显示位置的确定方法规定为"80H+地址码x" /*函数功能:将数据(字符的标准ASCII码)写入液晶模块入口参数:y(为字符常量)*/ void WriteData(unsigned char y) while(BusyTest()=1); RS=1; /RS为高电平,RW为低电平时,可以写入数据 RW=0; E=0; /E置低电平(根据表8-6,写指令时,E为高脉冲, / 就是让E从0到1发生正跳
43、变,所以应先置"0" P0=y; /将数据送入P0口,即将数据写入液晶模块 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=1; /E置高电平 _nop_(); _nop_(); _nop_(); _nop_(); /空操作四个机器周期,给硬件反应时间 E=0; /当E由高电平跳变成低电平时,液晶模块开始执行命令 /*函数功能:对LCD的显示模式进行初始化设置*/void LcdInitiate(void) delay(15); /延时15ms,首次写指令时应给LCD一段较长的反应时间 WriteInstruction(0x38); /显示模式设置:16×2显示,5×7点阵,8位数据接口delay(5); /延时5msWriteInstruction(0x38);delay(5);WriteInstruction(0x38);delay(5);WriteInstruction(0x0f); /显示模式设置:显示开,有光标,光标闪烁delay(5);WriteInstruction(0x06); /显示模式设置:光标右移,字符不移delay(5);WriteInstruction(0x
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版房地产租赁合同台账模板
- 二零二五年度公共设施建设项目中介居间服务协议书2篇
- 2025年度客运公司司机劳动合同修订版3篇
- 2024年版物业服务合同范本3篇
- 关于消防的活动总结(8篇)
- 2024年风力发电机组购销合作协议一
- 2024版峨桥卫生院口腔设备购销合同
- 2024年股权质押合同标的及服务内容
- 二零二五年度危险化学品安全生产标准化审查合同2篇
- 2024年采购流程优化协议3篇
- 胸腔闭式引流护理-2023年中华护理学会团体标准
- 高中体育足球教学教案 全册
- 艺术概论PPT完整全套教学课件
- 社团啦啦操训练计划
- 2023-2024学年四川省雅安市小学语文二年级期末评估试题详细参考答案解析
- UPS维护保养检查表
- 英语人教新目标七年级上册微课PPT
- 2023年安全生产先进集体申报表
- 码头装卸作业风险辨识表
- 国家电网安全生产典型违章300条(含扣分)
- 互联网宗教信息服务管理办法的考试摸拟考试题目
评论
0/150
提交评论