网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > 课程设计 > 正文

微机控制LED点阵显示屏设计

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务
微机控制LED点阵显示屏设计论文致谢本论文是在导师毛高级工程师和徐X教授的悉心指导下完成的。两位导师富有创造性的思维方法、丰富的科研经验和对科学研究的远见卓识,开拓了我的思路,使我受益非浅。他们严谨的治学态度和高尚的人格为我树立了做人的榜样。在此我向两位导师致以深深的谢意!本论文的工作也得到了仲崇权副教授的悉心指导,仲老师学识渊博,科研过程中态度严谨、诲人不倦,本论文的完成与仲老师的辛勤耕耘也是分不开的。感谢冯副教授、吴老师、孙老师在学习和生活中对我的关心和照顾,这和我的论文能够顺利完成是分不开的。感谢和我一起学习、工作多年的常、刘军、杨、夏、孙、鞠、余等同学给予的关心和帮助。最后,仅以此文献给所有关心、教育和帮助过我的人……参考文献〔l]张毅等,“户外大屏幕显示技术的发展”,电子技术应用,1996年第4期仁2〕甘早斌,“LEO图文实时显示系统的设计”,计算机工程与应用,1999年第3期〔3〕缪思恩,“LED大屏幕显示电路设计”,电子技术应用,1996年第8期〔4jYamaguehi,“LargeSereenDisPlay,Past,Present,AndFuture”,SIDConfereneeReeordoftheInternationalDisPlay,ResearehConfereneeproeeedingsofthe199717th〔5〕Song,Hongyu,“DotInterlaeeTransmissionInVideoCommunieationOfLED”,DisPlayPanelShuJuCaiJiYuChuLi/JournalofDataAequisitionandProeessingv14nlMar1999〔6」Shen,Shuqun,“RealizationOfImageSeanningControlsForLEDLargeSereenDisplay”,JournalofInverseand111一PosedProblemsv7nZ1999〔7〕王树青等,“集散型计算机控制系统(DCS)”,浙江大学出版社,1994年n月「8]俞金寿等,“集散控制系统原理及应用”,化学工业出版社,1995年8月[9〕凌澄等,“PC总线工业控制系统精粹”,清华大学出版社,1998年5月「1田王常力,“LED显示屏市场发展及展望”,电子产品与世界1998年第4期「11]甘早斌等,“LED图文显示自动生成系统的数据模型”,华中理工大学学报,1999年第2期〔12〕郑齐健等,“双基色LED图文显示屏的可靠性分配”,数据采集与处理,1999年第l期[13]刘古LlJ等,“LED显示屏电路设计”,仪表技术,1999年第2期祷.‘,参考文献【14〕关积珍,“我国LED显示屏产业冷思考”,电子产品世界,1998年第9期仁巧」刘亚军等,“LED显示屏的高速扫描驱动电路”,电子与自动化,1998年第6期「16〕张建涛等,“数据压缩技术在L印大屏幕中的应用”,发光学报,1998年第3期【17)西贝,“LED的应用与发展”,广东电子,1998年第2期【18)李爱国,“模块化LED电子大屏幕的设计与实现”,计算机应用研究,1995年第2期[19〕王宏民,“LED点阵显示屏驱动方案”,黑龙江电子技术,1999年第5期[20〕BertramLA,“Reliabilitymathematies”,MeGraw一Hill,1987[21」Bruee,A.G.,“ReliabilityanalysisofeleetrieutilitySCADAsystems”,IEEETransaetionsonPowerSystemsv13n3Aug1998[22]:veshnik。v,V.I一Calculati。。。ethods五蔽福孟燕不而赢而ingthereliabilityofeleetriePowersystemsinthedynamieregimes”,IEEEP92一98[24〕Yu,R1ehard,“Reliabilitypredietionmethodforeleetroniesystems.AeomParativereliabilityassessmentmethodProeeedingsoftheHigh一AssuraneeSystemsEngineeringWorkshoPOet21一2219961997SPonsoredby:IEEEIEEEP237一241[23〕卢昆祥,“电子产品可靠性试验”,天津科技出版社,1987年12月「24〕陈炳生,“电子可靠性工程一系统设备的可靠性理论与实践”,国防工业出版社,1987年5月417
 
微机控制LED点阵显示屏设计摘要本文提出了一种实现微机控制L印点阵显示屏的新方案。论文从上位机信息的输入开始,到显示屏的最终显示,详细的给出了电路的设计方案和软件流程。并根据L印显示系统中的具体技术难点讨论了相应的解决方案。在总体设计上,运用集散控制理论,在统一协调的基础上进行分级递阶控制,并通过功能分散、危险分散来达到设计的优化。在此基础上,为了提高显示数据的传送速度,本文采用双端口静态随机存储器(Dual一PortSRAM)使双C即共享数据区,实现大量数据的高速交换。多单片机技术和嵌入式结构的运用,使系统实现多机并行处理和LED显示单元的模块化。整个系统采用了RS-485通信标准实现批量数据的快速准确传送。在软件上,采用Windows风格界面,在Windows95环境下运用面向对象的编程技术进行串行通信控制,并提供友好的用户界面、清新的菜单窗口和强大的控制功能。论文在最后,还采用了元器件计数法对产品的可靠性进行初步的预计计算,同时粗略的分析了影响产品系统可靠性的因素,并给出了对应的解决办法。关键词:L印显示屏显示单元单片机双口RAM可靠性Ab5traetThisartielePutsforwardwithakindofnewsehemeontheLEDdisplaysereeneontrolledbymieroeomPuter.FrominPutofinformationofePigynymaehinetooutPutofultimatesereendisPlay,thevariousdesignsehemesandsoftwareflowehartsarestudiesindetail.Furthermore,relativemeasuresaretakenaeeordingtoeonereteteehnologyd1ffieultyofLEDdisPlaysystem.BasedontheTotalDistributingControlTheoryandelassifiedstePbystePinuniformandharmoniousstyle,thewholedesignfinallyaehievesoPtimizationthroughfunetiondistributionanddangerdistribution.InordertoimProvetransmissionsPeedofdisPlaydata,Dual一PortSRAM15usedanddoubleCPU15abletosharewithdataunit.Asaresult,agreatdealofdatarealizesexehangeinhighsPeed.ThesystemeaneomPletemodularizationofparallelProeessingandLEDdisPlayunitbyuseofmultisingleehiPteehnologyandembeddedstrueture.RS一485eolnnlunieations七andardadvaneesbatehdataintransmittingfastandexaetly.TheWindowsinterfaee15showninsoftware.ObjeetOrientedProgranuningTeehnology15adoPtedinserialeonununieationeontrol,Providingfriendlyuserinterfaee,freshmenuwindowandstrongeontrolfunCtion.F1nally,reliabilityassessment15eonduetedbymeansofenumerativemethodofParts.FaetorsthathaveeffeetonProduetsystemareanalyzedroughlyandtherelativemeasure15Provided.KeyWord:LEDdisPlayreliability.sereen,disPlayunit,Dual一PortSRAM第一章绪言显示屏的历史、现状与发展.LED点阵显示屏的原理与特点417
 
微机控制LED点阵显示屏设计佑—崔爹婆吉夕口.月=寻目口互1.1显示屏的历史、现状与发展显示屏技术的发展可追溯到本世纪三十年代,1938年日本成功研制了世界上第一台大型显示屏,用小白炽灯做发光器件,采用脉宽调制(PWM方法,首先在户外实现电视节目的播放。让人们看到了这一技术的可行性和实用性。随着科学技术与生产技术的发展,显示屏己由传统的白炽灯发展到现代的LED、电视墙、LCD等多种显示方式。特别是近几年,随着微电子技术、自动化技术、计算机技术的迅速发展,半导体制作工艺日趋成熟,导致LED显示尺寸越来越小,解析度越来越高。而可将显示光的三基色(红、绿、蓝)集成化一体达到全彩效果,使得发光二极管(LED)作为显示器件的应用范围日益扩大。我国最早自行研制的显示屏安装于上海的人民广场和北京火车站及体育场。他们开创了第一代我国自行研制生产显示屏的历史。近年来,随着高亮度发光二极管(LED)技术的发展,LED显示屏从室内走到室外,其显示内容也从没有层次的计算文字动画发展到能显示有层次的电视图像。1997年,北京利亚德公司开始了应用于LED显示的大规模集成电路的设计。采用0.5微米集成电路设计和生产工艺。国家信息产业部委托蓝通电子科技有限责任公司制定的《LED显示屏技术条件》也于1998年正式颁布实施。大屏幕显示技术由早期传统的白炽灯经历了阴极射线管(CRT)和石英管(DV),到现在的LED全彩色显示屏,已有了长足的发展,而对于LED显示屏而言,高亮度LED仍然是其发展的主要方向。LED显示屏的关键控制技术随着新型VLSI的发展也有了新的提高。EPLD、DSP和FPGA等得到应用。通用vLSI在产品性能提高的同时成本章绪言下降趋势,新一代LED控制专用集成电路也己开始得到推广和应用。国经济发展迅猛,对信息传播有越来越高的要求。可以相信,LED示屏以其色彩鲜亮夺目,大的显示信息量,寿命长,耗电量小,重量间尺寸小,稳定性高,易于操作、安装和维护等特点,将在社会经济扮演越来越重要的角色。2LED点阵显示屏的原理与特点LED点阵显示屏的原理ED点阵显示屏具有美观的画面、灵活的内容更换、较低的功耗、较命等优点,被广泛运用在商场、街道、广场、车站和机场等人群密集量大的场合,用来及时的传播信息和电视,尤其用来播放广告、产品更有良好的经济效益和社会效益。主要原理是将要显示的图文信息首先进行数字化处理,使图文信息转应的数字化视频信号,经过数字通信系统将数字视频信号传输到LED显示缓存中,由显示单元控制电路读取相应的显示信息进行显示。由D显示屏在进行图文显示时,其显示方式丰富多变,因此其相应的视模块也十分复杂,一般分为单色显示屏和彩色显示屏两大类。LBD点阵显示屏的特点着科学技术的发展以及制造工艺的进步,LED显示屏也在不断的进善。高新技术使LED显示系统与以前相比有了更为优异的性能。当ED显示系统主要有以下特点:总体设计上采用较为先进的集散控制(DCS)理论于集散控制理论的应用使LED显示系统软件设计实现模块化,硬件上形成一个松藕合的多处理机系统,它的分散的子系统自治性强。各理机都可以有自己的局部操作系统,所以系统配置十分灵活。如果要缩小系统规模,只须按需要在系统中增加新单元,或拆去某个单元,第一章绪言系统完整性不会受到多少影响。2.在局部设计上采用模块化设计电路设计按功能分成不同的模块,每个模块之间只需要极少的联系,极大的提高了系统的稳定性、可靠性。调试难度、维护难度大大降低。3.先进的分布式扫描技术显示部分的扫描采用扫描控制技术,显示部分被分成不同的单元,独立进行扫描。每个单元间的信号采用信号锁存技术进行同步控制,显示的稳定性大大增强。4.高性能的通信接口显示屏与控制微机之间一般可靠的通信距离大于1000米,可抗高电压的静电放电击穿。采用RS一485或RS一422工业总线。5.软件设计新颖WindowS风格界面,功能强,操作简便,通用显示屏软件具有良好的用户界面,清晰的菜单窗口,用户可以根据需要任意编排节目,既能播放录像,也能播放动画文字,插播消息等。6.可视性好采用高性能LED晶片构成的显示屏具有高亮度、色彩鲜艳、视角大,寿命长(不少于50,000小时),稳定性高,响应速度快等特点。7.易于安装采用显示单元板或显示单元箱体,可根据用户要求和应用场所要求任意组装成所需要的显示屏尺寸,并且便于安装和维护。总之,LED显示技术作为一种电子信息显示技术,它是建立在光学、化学、电子学、机械学、声学等科学技术的基础上的具有某种程度综合性的技术。相信随着各种科学技术的发展,LED显示系统以其优异的性能将会有更为广阔的发展前景。第一章绪言荟1.3LED显示屏的技术难点及解决方案1.3.1技术难点1.由于要对显示屏上数以万计的像素进行控制,并且随着显示屏面积的增大,电路结构也非常庞大,因此系统的模块化设计成为重点考虑的问题。2.为了在屏上显示动画,视频图像等信息,显示系统必须用30帧/秒以上的速度来更新显示画面,这就要求显示系统有非常高的处理速度。3.为了在显示屏上细致的显示出信息所表示的形状,一般每帧有多至几百KB的显示数据送到显示屏,因此有非常大的数据传输量。4.用LED器件制造的显示屏主要用于大型公共设施和室外场所,尺寸通常在几米到几十米长,显示数据传输距离达几百米到千米以上。可以看到LED显示屏的制造技术是集大容量的数据传输、高速处理、高速LED控制、超高亮度LED器件等技术于一体,涉及了计算机、信息、电子技术、色彩学等领域的综合产物,有着较高的技术难度和较大的生产工作量。1.3.2解决方案总体设计采用集散控制方案,在统一协调的基础上来进行分级递阶控制,并通过功能分散、危险分散来达到设计的优化。化整为零,将显示屏分解为规模较小的显示单元,即用显示单元来组成显示系统。显示单元本身具有与显示屏相同的控制功能,并具有良好的嵌入性。显示单元具备稳定、高速、简洁的长距离数据传输系统。显示单元组成的显示系统应结构简单、性能稳定。
 
微机控制LED点阵显示屏设计夸1.4本课题的主要特点和贡献本课题主要以集散控制理论(DCS)为指导,分散LED显示系统相应控制功能,来达到分散危险和控制的分级递阶模式;运用计算机多机技术嵌入式结构,使系统实现多机并行处理和LED显示单元模块化;采用双口静态随机存储器(Dual一PortSRAM)使双CPU共享数据区,实现大量据的高速交换;在Windows95环境下采用面向对象的编程技术,使控制件具有良好的用户界面、清晰的菜单窗口和强大的控制功能,从而为LE显示屏的设计提出一种新的切实可行的方案。第二章微机控制LED点阵显示系统的总体设计第二章微机控制_LED点阵显示系统的总体设计夸2.1徽机控制LED点阵显示系统的基本构成微机控制LED点阵显示系统主要由主控计算机、通信部分、控制部分、显示部分和附属部分五大部分构成。这五大部分都是各自相对独立的自治统,虽然它们各自完成各自的功能,但相互间还有联系及数据信息的交换,各种条件相互制约,在系统的协调下统一工作。系统的基本组成如图2一1不。口口口口附属功能控控制制制制制制制部分分11111一一一一一一一一主控部分分分分lllJJJJJJJ通通信部分HHH通通信部分IIIIIIIIIIIIIIIII(((通信转换)))))显示部分分系统的基本组成框图(图2一1)一般以工BM/PC及其兼容机作为系统的主控微机,用于接收用户的第二章微机控制LED点阵显示系统的总体设计入信息并向显示屏发送数据。整个系统的通信部分分为两个模块,模块I来进行通信标准的转换即把RS一232总线标准转换为RS一485总线标准。模H用来接收RS一485总线标准的数据并向显示模块发送显示数据。控制部作为显示屏的核心则主要进行系统进程的控制、数据的存储发送以及外部制信号的输出。显示部分根据需要由一定数量的显示单元构成,按显示单划分为若干显示区域,并采用分布式扫描技术,各单元独立进行扫描显示。附属功能控制部分主要是执行如打铃控制信号的输出等一些附属控制功能,它是在控制部分的管理、监控下完成其功能的。互2.2微机控制LED点阵显示系统的功能及工作过程微机控制LED点阵显示系统主要用在公共场所显示文字信息。用户微机上通过控制软件将编辑好的文字和相应的控制命令经通讯线路传至系的控制部分,显示屏即可根据用户选择的方式逐页循环显示用户编辑好的字。本系统还具有脱机显示方式。在这种方式下,用户将显示内容传至显部分后,计算机就可以不再介入显示过程,显示系统就可以根据用户设定模式显示所要显示的信息。由于系统有内置时钟和温度传感器,故显示屏可以循环显示日期、时间以及温度。此外,显示屏还具有定时打铃功能。示屏内的非易失性存储器可存储多达数百次的打铃时间。显示屏工作过程如下:用户将待显示的信息输入主控计算机中,由计算机中的控制软件把输的信息转换成相应的数据,经微机串行接口发送到RS一232C数据总线上。信转换电路将RS一232标准的数据转换成RS一485标准,以便进行远距离传输。主控部分的通信接口接收到RS一485标准的信号后,将其转换成CMOS电平号存储在缓冲区内。主控CPU识别控制命令及显示数据并执行相应的操作。副CPU则从显示缓冲区取出显示数据发送给显示单元。显示单元接收到本元的数据后,按照规定的频率在本区域内独立进行扫描显示。副CPU分别时从双端口存储器和温度控制器中读出时间值、温度值,经查询字库后转成显示数据送到显示单元。微机控制LED点阵显示系统的功能流程图如图2一所示。第二章微机控制LED点阵显示系统的总体设计微机控制L印点阵显示系统的功能流程图(图2一2)
 
微机控制LED点阵显示屏设计第三章主控电路主控电路作为点阵显示系统的核心部分,其主要是将接收到的显示数据存储到视频显示缓冲区,同时将显示缓冲区的数据按地址分配给各显示单匾匾FFF,,,,,,,,,,,,,DS1820000000000000000000看看看看看看门狗狗狗狗狗狗主控控控XXXXXXXXXXX250455555555555板电源源源图3一1主控电路板原理框图第三章主控电路元。为了完成以上功能,在主控电路中采用一些新的技术和器件。如多机并行处理和异步双口RAM等。主控电路原理图如图3一1所示。夸3.1多cPU并行处理工作方式系统采用双CPU并行处理工作方式。主CPU采用89C51单片机,主CPU与一些外围电路一起构成主CPU电路,负责整个系统的初始化、显示方式的处理、以及与PC机的通信等工作。副CPU则负责将收到的显示数据按地址分配到各显示单元以及信息的分屏显示、滚动等。与此同时,主副CPU都有各自的存储电路,用于保存一些非易失性信息。3.1.1主CPU电路主CPU电路原理图见图3一2。CPU采用89C51单片机,外扩一片74HC373实现数据和地址总线的分离,74HC139为二—4线译码器,用于输出片选信号。DS12887为整个系统提供时l旬基准。28C256是32KbytesEZPROM,用于存储显示信息和其它一些系统临时信息。MAXS13L实现电压监测和看门狗功能,防止系统因电源干扰和其它干扰出现死机现象。工CL232和MAX485担负主CPU的串行通信功能。电路中采用高速光藕6N136来进行串行通信的光电隔离,增强系统的抗干扰性。电路中一些主要芯片简介如下:众灯盈留乃DS12887为美国DALLAS公司提供的实时时钟芯片。该芯片在掉电情况下仍可工作十年以上。芯片提供了秒、分、小时、日、月、年、星期等信息并且可自动运行至2100年,输出信息可用二进制和BCD码两种方式表示,芯片提供报警功能和工ntel及Motorola两种总线操作方式。内部有128个RAM单元用于与软件的接口。其外型为24脚双列直插封装。(1)图3一3显示了DS12887的地址映射图,其中包含114字节的用户RAM、实时时钟占用了10字节、另外控制寄存器占用了4字节。由于0512887内部装有铿电池,故其114字节的用户RAM为非易第三章主控电路ll图3一2主CPU电路原理图第三章主控电路失性的。除了下面几个寄存器外,128字节中的其它字节都可直接读写。(2)寄存器C、D为只读寄存器。(3)寄存器A的位7只能读。(4)秒寄存器的高位只能读。ADDRESSMAPDS12吕87片发甲,之.:不︸留介舍岔J价﹄丈盛呈甘一资图3一3DS12887的地址映射图此外DS12887的三个报警字节可按两种方式工作。第一种方式是当报警时间已写入时、分、秒字节单元且报警允许位为1的情况下,每天在规定的报警时间产生一次报警中断。第二种方式是在三个报警单元中插入一个或多个“忽略”代码(十六进制的CO一FF),当在时报警字节中写入一个“忽略”代码时,每小时将产生一次报警;类似的其它字节按此类推。DS12887含有三个独立的、可编程中断源。报警中断可编程为每秒一次到每天一次;.周期中断可编程为IOOms一122us;更新结束中断可用于通知微处理芯片己完成一次更新周期。DS12887的走时精度为士1分/月。州胭才3L:MAXS13L是美国MAxIM公司生产的带电压监测的单片机专用看门狗电
 
微机控制LED点阵显示屏设计路。它能显著增强由分立IC芯片构成的控制系统的可靠性。MA控电源及电池电压和协P/协C的工作状况,当电源电压降至4.6即产生复位。MAXS13L在上电、掉电期间及在电压降低的情况下复位信号。此外,MAXS13L还带有一个1.6秒的看门狗定时器,其门限的电源故障报警电路可用于检测电池电压和非5V的电源。有手动复位(MR)输入。看门狗定时器的输出如果连接至MR将信号。其封装型式为8脚DIP、50或MieroSO封装。MAX813L主要特点:.精确的电源监控(4.65V门限).去抖动的手动复位输入.电压监控—1.25VI’1限—电池监控/辅助电源监控.看门狗定时器.ZOOms复位脉冲宽度.高电平有效的复位输出主CPU具体工作过程:.主CpU与上位机之间的通信主CPU与计算机之间的通信采用两种通信标准,即RS232C和根据现场的实际情况任选一种,如果计算机离显示屏相对较RS232C标准进行通信;反之,则采用RS485进行通信。RS232通信:RS一232C通讯标准规定:逻辑“l”为一3V~一15V,逻辑“O”为这种信号的抗干扰性能比TTL强得多。其异步传输最高速率规定在RS一232标准中,码元畸变小于百分之四时,最大传输距离为15米),但在应用中传输距离一般按负载电容来计算。RS一232最大传输负载电容为25OOPF。主CPU电路中采用的是工CL232RS232C标准通信的。工CL232只要求单一+5V供电,且外围电路片内有电荷泵,具有升压、电压极性转换能力;功耗低,瓷封典第三章主控电路mw;塑封典型值为375mw,输出无负载,供电电流典型值smA;于Z000V。RS485通信:系统是采用MAX485芯片来进行RS485标准通信的。MAX485公司生产的半双工通信专用芯片。功耗很低:待机状态、5V电300协A。其抗共模干扰能力很强,能在一7V到+12V的共模电压数据。MAX485的驱动能力较强,RS485总线可以挂接32个MAX节点。此外MAX485还具有电流限制、过热关断以及输出超载保最高通信速率2.SMbps,最大距离1200米。MAX485采用平衡差分传输,外形为8引脚封装,芯片内集和接收器,引脚D1、R0分别是发送输入和接收输出端,。E、送允许和接收允许使能端,电平为标准TTL兼容电平:A、B串行差分总线,当VA一VB)ZoomV时,表示逻辑“1”,当VB一VA表示逻辑“0”。其典型应用电路图如下:图3一4MAX485典型应用电路图MAX485和单片机接口方便,组网简单。如下图所示:120线阻抗匹配电阻,信号在传输线上传送,若遇到阻抗不连续的现反射现象;’从而影响信号的远距离传送,因而必须采用匹配的反射。由于双绞线其特性阻抗和节距比有关,特性阻抗在1100间,因此在总线两端分别挂接两个12OQ电阻,以便使线路阻输出阻抗相匹配,减少传输反射,提高可靠性。第三章主控电路计算机与主CPU之间的通信格式约定如下:一帧命令由五个字节组成,第一个字节为标志字节,数据帧令帧为CCH。最后一个字节为帧结束标志F阳。第二、三字节为第四字节是备用字节,给系统开发时的一些测试命令使用。通信中帧与帧之间的间隔主要是靠时间来区分的。实际上CPU之间采用的是通信速率为9600bPs,十位为一组的异步串行一个起始位,一个停止位,八个数据位,因此传输一个有意义的一个毫秒左右。这样帧之间的时间间隔定为3.5一4个毫秒,这从接收到最后一个字节起,在4个毫秒内没有收到其它字节,这接收完毕。由时间间隔、帧头、帧尾共同来区分所传送的数据帧的这高的准确性,防止了传输数据中出现帧头、帧尾标志而导致的混.主CPU工作流程:主CPU软件流程如图3一6。主CPU上电后首先确认是冷启动,如果是冷启动,则在初始化过程中将各种标志位及内存清种可编程控制寄存器;如果是热启动,则意味着是主CPU在受正常工作状态后由看门狗电路复位而重新启动的,在这种情况内存全部清零,而应尽可能的恢复以前的工作状态。主CPU的程序在系统正常工作后首先查询是否有存储的显果有,则先将这些显示数据调到双口RAM的显存中,供显示屏显要查询是否收到计算机发来的命令,当收到命令后,对命令进行解图3一5MAX485通信网络应用电路图第三章主控电路行相应功能,如初始化接收缓冲区、设置时钟芯片等。主程序入口启动方式判\\断//J冷启动初始化热启动初始化接受上位机命令//初始化接收缓冲区初初始化时间设设置置缓冲区区Y一扭画呼查询相应功能请求并执行图3一6主程序软件流程
 
微机控制LED点阵显示屏设计图3一7主CPU串行中断流程图主CPU负责整个系统时间的发布,每当时钟芯片DS12887完成一次时间更新,都会产生一个脉冲,引起主CPU的一次中断。主CPU响应外中断INTI后,就会读取当前的全部时间信息,送至时间存储区中供系统其它各部分使用。第三章主控电路18当主CPU接收到一帧串行数据,就会产生串行中断,其具体软件流程图如图3一7。首先要查询当前的工作状态,然后将数据存储在相应的缓冲区内,直至接收完全部数据,并置上相应的执行标志,图3一8副CPU电路原理图第三章主控电路3.1.2副CPU电路副CPU电路原理图见图3一8。副CPU有两个单片机,其中一片为AT89C51,同主CPU一样也外扩一片74HC373,采用74HC139作译码器。另一片则为AT89C2051,它负责读取温度传感器DS1820的数据,并进行一定的浮点运算,转换成分辨率为O,1’C的温度值。副CPU电路中的28C256是用来存储时间和温度的点阵字模。副CPU电路主要芯片简介如下:及刃韶卿:DS1820是美国DALLAS半导体公司生产的可组网数字式温度传感器,在其内部使用了在板(0N一BOARD)专利技术。全部传感元件及转换电路集成在型如一只三极管的集成电路内。与其它温度传感器相比,DS1280具有以下特性:.独特的单线接口(1一W计尹Bus)方式,DS182O在与微处理器连接时仅需要一条口线即可实现微处理器与DS182O的双向通信。.DS182O支持多点组网功能,多个DS182O可以并联在唯一的三线上,实现多点测温。.DS1820在使用中不需要任何外围元件。.测温范围一55℃—+125℃,固有测温分辨率0.5℃。.测量结果以9位数字量方式串行传送。其典型应用电路如下图所示:户户户户户户户图3一9DS1820电路应用图第三章主控电路在正常测温情况下,DS1820的测温分辨率为0.5℃,以九位数据格式表示,其中最低有效位(LSB)由比较器进行0.25℃比较,当低温计数器中的余值转化成温度后低于0.25℃时清除温度寄存器的最低位(LSB),当低温计数器中的余值转化成温度后高于0.25℃时置位温度寄存器的最低位(LSB),如一25.0℃对应的九位数据格式如下:彻毛已L三e口「「l“l。卜l」引…」二一26CDS1820在使用中要注意的问题:(1)DS182O虽然硬件开销较小,但其需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此在对于051820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。(2)051820的有关资料中未提及单总线上所挂DS1820数量问题,但决不可以认为可以挂任意多个。当单总线上所挂DS1820超过8个时,就需解决微处理器的总线驱动问题。(3)连接DS182O的总线电缆是有长度限度的。一般来说,采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。采用屏蔽或双绞线时距离会加长一些。这主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测量系统设计时要充分考虑总线分布电容和阻抗匹配问题。(4)在DS1820测温程序中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦DS182O接触不好或受到其它干扰,将没有返回信号,程序进入死循环。因此在进行DS1820软件设计时需要解决这个问题。副CPU与显示屏的通信:副CPU与显示屏的通信采用RS485通信标准。这样可以利用RS485通信的优良胜能高速的传输数据。由于MAX485芯片有较强的抗共摸干扰的能力,再配以6N136高速光藕进行光电隔离,大大的提高了传输的准确率。副CPU与显示屏的通信格式与主CPU的通信格式是基本一致的。但其
 
微机控制LED点阵显示屏设计图3一10副CPU工作流程通信速率要比主CPU高得多。实际中应用的速率是单片机晶振频率的三十二第三章主控电路分之一,即375KbPs。之所以采用比主CPU高得多的传输速率,是因为副CPU不但要传送主CPU已发送到显存的数据,而且还要将时间、温度等自身转换后的点阵信息发送给显示单元。为了达到速率上的匹配,副CPU的通信速率必须要比主CPU高许多,否则当上位机连续变换显示内容,而副CPU通信速率低于要求时,会发生丢失显示内容的现象。此外,副CPU还要与89C2051通信,读取89C2051已经计算好的温度值。副CPU与各部分之间的通信采用时分复用的查询应答方式,由副CPU向各部分发出查询信息,各部分在规定的时间返回查询结果。副C尸U工作流程:副CPU软件流程如图3一10。同主CPU一样,副CPU上电后也首先检测是冷启动还是热启动,以进行相应的初始化。副CPU还提供显示屏定时开关功能。初始化后,副CPU监测系统时间是否在关显示时间区段(21:00一6:00),如果在这段时间内,副CPU会停止显示数据的传送并立即发出关闭显示屏的指令;否则副CPU会将当前显示时间、温度转换成点阵信息,发送给显示屏。再判断有无显示信息,若有,从显示缓冲区读出并立即发送。系统打铃功能的实现是由副CPU的外中断INTI来实现的。其具体软件流程如图3一H所示。副CPU的外中断INTI的中断源是由DS12887产生的。DS12887的SQW管脚方波的输出频率被设为1024KHz。当副CPU进入中断入口后,首先查询打铃允许标志位,该位置1则允许打铃,反之禁止打铃。若允许打铃,副CPU进一步查询当前的系统时间是否有与设置的打铃时间相一致的,有则在打铃输出管脚输出高电平,并启动时间计数器,然后退出中断。时间计数器20秒后溢出,副CPU会将打铃输出管脚拉低。若当前的系统时间没有同设置的打铃时间相一致的,就退出中断。打铃的数据单元由三个字节组成,三个字节都用BCD码来表示。第一个字节代表本单元的星期数,第二个字节代表小时数,第三个字节代表分钟数。第三章主控电路读读当前时间间*****查查询并比较较YYY启sss中断返回图3一n副CPU外中断1软件流程图互3.2异步双口RAM由于点阵显示系统属于高速数据处理系统,其数据量和信息处理任务都非常繁重,因此对数据传送的要求是比较高的。如果在系统或模块间没有能够高速传送数据的接口,极易在数据传送时造成瓶颈堵塞现象,以至影响整个系统的信息处理能力。所以高速并行接口占有非常重要的地位。利用高性能的双口RAM能够方便的构成各种工作方式的高速数据传送接第三章主控电路口,保证数据通路的畅通。双端口RAM提供了两个完全独立的端口,每个端口分别有自己独立的控制线、地址线和工/0数据线。两个CPU可以独立的读写任意双端口RAM单元。使用双端口RAM在两个CPU之间共享信息有很多优点:速度快,方式简单,存取共享信息所用的时间一般与存取CPU外部RAM中数据所用时间一样。总之,对两个CPU中的任意一个而言,双端口RAM等效于CPU的外部RAM,并且,通过适当设计可消除读写双端口RAM的系统等待时间。双端口RAM在使用上应注意的一个问题就是有可能发生争用。当两个端口的CPU同时取同一双端口RAM单元时,就产生了争用,会出现写入值和读出值不是所期望的值的数据混乱状态。通常,有四种争用解决方案:硬件判优方案,中断方案,令牌传递方案和软件判优方案。下面以在系统中实际使用的工DT公司生产的工DT7005为例,说明这四种方案:.硬件判优方案当出现争用现象时,双端口RAM的片内判优电路确定某一个具有优先权的端口可以继续对该端口进行读写操作。对该端口而言,就像未发生争用一样:硬件判优电路把另一个被延迟存取的端口的/BUSY引脚置为有效(低电平)。在/BUSY有效期间对该端口的读写操作是无效的。当具有优先权的端口完成对争用单元的读写操作后,硬件判优电路把延迟存储端口的/BUSY引脚置为高电平,这时延迟存取的端口可以继续存取。硬件判优方案要求CPU能插入等待状态。使用时把双端口RAM的/BUSY连到本端口CPU的等待状态检测线上即可。如8098单片机的READY引脚。一般只要等待周期长度超过另一端口CPU的读写周期即可保证CPU结束等待时/BUSY=l。但由于本系统采用的是不能插入等待状态的89C5ICPU,故不能采用硬件判优方法来解决争用问题。中断方案中断方案向每个端口分配一个双口RAM单元,该单元叫信箱或消息中心。当右边端口写右边的信箱单元时,将左边的/工NTL清O:左边读该单元第三章主控电路时,将/工NTL置1。对左边也有类似的功能。左、右两个端口的信箱单元的偏移地址不同。以本系统使用的工DT7O05为例。当右端口写偏移地址IFFEH单元时,将左端口的/INTL清O;左端口读IFFEH单元时,将工NTL置1。对左端口有类似的功能,只是使用偏移地址为IFF阳的单元。使用中断方案时,右端口不应写IFFFH单元,左端口不应写IFFEH单元。IFFEH和IFFFH单元中的消息是用户定义的。若不使用中断方案,IFFEH和IFFFH可当成普通单元,左右端口都可读写。使用时应将/INTL连到左端口CPU的一个中断输入端:/工NTR连到右端口CPU的一个中断输入端。这种方法不允许两个端口的CPU同时使用双端口RAM,当然不会发生两个端口同时存取一个双端口RAM单元的争用现象,且CPU不必插入等待周期。但由于两个C四同时读取双端口尺AM同一个单元的概率很小,因此这种方法在速度上造成一些浪费,故本系统实际上也未采用这种方法。.软件判优方案软件判优的基本思想是在两个端口的CPU之间建立“握手”信号,一个端口在存取双端口RAM之前,先看对方是否在用双端口RAM,若未用,则本方使用双端口RAM并通过握手信号通知对方本端口已占用了双端口RAM;对双端口RAM操作结束后,再通知对方本方停止占用双端口RAM。软件判优方案也不要CPU插入等待周期,但软件较复杂且要占用一些
 
微机控制LED点阵显示屏设计CPU硬件资源,故也不十分可取。.令牌传递方案IDT7005有8个独立于双端口RAM的锁存器逻辑,即8个令牌,提供了对令牌方案的硬件支持。工DT7005可最多分成8个区间段,每个区间段用一个令牌来控制。因为令牌数目较多,还可以用来控制其它的共享硬件资源。令牌控制原理见图3一12所示。使用双端口RAM或其它共享资源应按这样的步骤进行:申请令牌,然后判断申请是否成功;若成功,可使用该令牌控制的双端口RAM区间段;若不成功,可继续申请或转向其它应用;使用这个区段后,释放令牌。下面详述本系统是如何实现这个过程的。(1)申请令牌申请令牌的端口先把本端口的/SEM清0(SEM是令牌的选择信号,可连到89C51单片机P1口的一位上,如Pl.0)。由地址线A0一A2来区分8个令牌的位置。通过数据线D0向未用的令牌位置写0,即完成了令牌的申请。其它的地址、数据线可任意为O或l,但不应使地址落入己使用的其它片外RAM或接口空间内。/0E、R/W用法与标准双端口RAM一致。程序段如下:CL尺P1.0;清0/SEMMOVDPTR,#800OH;800OH应为一未用单元,为令牌O的地址MOVA,#OOHMOVX@DPTR,A;向令牌O写0申请令牌O(2)判断令牌申请是否成功通过读本端口令牌标识,由读入值来判断是否申请成功。读令牌标识时,值扩展到所有数据线上,标识是0,读出地址全0,表示申请成功;否则,读出全1,表示令牌申请失败。程序段如下:CLR一’Pl.O;清0/SEMFAIL:……MOVDPTR,#8000H:SUCCESS:……MOVXA,@DPTRCJNEA,#OOH,FAIL;申请令牌失败,转FAIL标号程序段LJMPSUCCESS;申请令牌成功,转SUCCESS标号程序段第三章主控电路由图3一n可以看出,左右端CPU都未申请令牌时,处于初始状态/QL二QR=O,A=B=C=O二1。这时左端口CPU向令牌写出O时,/QL=1,使C二B=O,D=A=1,接着左端口读出令牌状态为0,申请成功。这时若右端口CPU再去申请该令牌,使/QR=1,申请被挂起,且A、B、C、D状态不变,右端口读出的令牌状态仍为1,右端口申请不成功。(3)释放令牌左端口CPU使用完双端口RAM后,通过向令牌标识写1释放令牌。程序段如下:CLRPl.O;清0/SEMMOvDPTR,#8000H;8000H应为一未用单元,为令牌O的地址MOVA,#OOHMOvx@DPTR,A;向令牌0写l释放令牌0如图3一n所示,左端口CPU向令牌标识写l后,/QL=0,C=1,释放令牌。若右端口的令牌请求触发器有请求挂起,即/QR=l,左端口C即释放令牌后,使C二B=1,D二A=0,右端口CPU马上获得令牌。因此,必须注意右端口C尸U申请令牌失败后,要不断的读令牌标识,左端口CPU一释放令牌,右端口就可获得令牌,进行双端口RAM操作。若右端口CPU申请令牌失败后转去处理其它事务,则必须先释放令牌。否则左端口释放令牌后,右端口获得令牌,但右端口己转到其它事务处理,即不撤销申请也不操作双端口RAM,使左端口无法再次获得令牌,令牌系统被挂起。令牌状态不能自动初始化,要在上电时通过程序初始化,即左右端口CPU都向令牌请求触发器置l。这样初始化后,左、右端口CPU都可获取令牌。令牌传递有一临界条件,即左、右端口同时向同一个令牌请求触发器写O而申请同一令牌。令牌逻辑在器件上保证了同时申请同一个令牌时,固定向一个端口分配令牌。同其它方案相比,令牌传递方案不仅CPU不必插入等待周期而且还以较高的效率解决了两个CPU的争用问题。故在实际应用中本设计采用了此种方案。第四章显示单元第四章显示单元显示单元是系统中负责将用户所示的内容显示出来的部件,所以它是系统与用户交互最直接的部分。因此显示单元性能的优劣在很大程度上决定着整个系统的好坏。由于在不同的场合需要不同尺寸大小的点阵显示屏,这就要求在系统设计上采用模块化设计。本系统是以24*24点阵为一个单元,根据实际需要拼装成所需尺寸的显示屏。点阵显示单元的电路原理结构图如图4一1所示。RS一485通信总全图4一l显示单元电路原理结构图第四章显小单儿夸4.1显示单元电路每一个显示单元都有一个89C51作为其微处理器,一片6264(SK*8bit)的RAM作为其显示缓冲区。显示单元采用74HC373实现数据和地址总线的分离,74HC138作为地址译码器,用X25045来监控微处理器的复位、死机及存储少量的非易失性信息。以RS一485总线标准作为显示单元与主控电路的通信标准。显示单元采用74HC273作为点阵的行驱动器,MC1413作为列驱动器,用4051作为行到列的译码器。显示单元中采用的X25045是美国Xicor公司生产的可编程看门狗畔PROM。X25045把三个在微控制器为基础的系统中常用的外部功能元件集成为单一的低成本、低功耗器件。X25045把精密的RESET(复位)控制器,可编程的、灵活的看门狗和4K位的EZPROM存储器组合成单一的8引脚封装的器件。它与微控制器的接口是常用于大多数先进微控制器的SP工(串行外设接口)。复位(RESET)控制器监视系统中Vcc电平且在上电、掉电期间与电压降低的情况下产生一个复位(RESET)脉冲。如果在设置的超时周期内看门狗定时器未被复位,那么它将产生一个RESET(复位)脉冲。EZPROM按512字节组织,且具有先进的数据保护,例如软件数据保护(SoftwareDataProteetion)和块锁定写保护(BloekLoekWriteProteetion)的特点。显示单元主要工作原理:当微处理器的串行中断接收到显示命令后,置相应的标志。主程序查询标志后进行必要的初始化。显示单元的刷新功能由单片机的定时中断来完成,其流程图如图4一2所示。当定时中断产生后,首先判断当前有无显示内容,若有则计算当前显示指针的位置,然后读取显示数据,按照约定好的行列规范送出数据进行扫描显示。由于电路采用动态扫描技术,因此扫描频率必须大于50赫兹,否则在观看时就会有明显的闪烁感,特别是在字幕滚动时,对扫描刷新的时间要求就更为严格。由于显示屏由许多显示单元组成,且采用分布式扫描方式,这样各显示第四章显示单元单元都是相互独立的,即使某一个显示单元在某一时刻受到千扰,造成这个单元显示有误,但对整个屏幕的影响并不很大,使得显示屏在整体上仍然可定时中断入口计计算显示指针针送送行列值值值显示黑屏屏图4一2显示单元定时中断流程看;在下一时刻,随着扫描电路的刷新,系统又会全面恢复正常。所以,这种分布式扫描的模块化设计极大的提高了系统的稳定性。在显示单元的电路中,其行列选通信号的译码电路如图4一3所示。在电路中,单片机的高两位地址线A13、A14经74HC138进行二一4译码,译码后的信号用来选通行驱动器(74HC273)。为了节省单片机的口线及简化电路,电路中再次使用74HC138的译码信号,将信号送至4051的A、B、C切换端,这样经二次译码后的信号就可直接送至MCI413(列驱动器),从而达到行列选通信号的同步。
 
微机控制LED点阵显示屏设计1.点阵的亮度在设计点阵显示屏时,首先要考虑点阵显示屏所安放的位置,如在室外则选用室外高亮的L印点阵。若在室内,可选择室内专用的LED。这样通过选择适当的L印点阵类型来保证点阵显示屏在使用中的亮度。另外由于显示单元采用动态扫描技术,每个发光点被点亮的时间只有静态发光时间的几分之一,因此要想使动态扫描点阵的亮度达到所要求的亮度,其瞬时点亮电流一般至少为静态电流的四倍以上。这样在电源和驱动电路的设计上就必须保证有足够的容量。2.地线由于点阵显示单元的耗电量非常大,占整个系统的百分之九十以上。一般单个显示单元的瞬时扫描电流就可达到一安培左右,这样显示单元的地线必须有足够的宽度,以防止地线的电阻过大,导致地线上出现很大压降,引起逻辑电平混乱,锁存器锁存电平错误,显示屏上出现干扰。在各显示单元与系统电源的连接中,也必须注意实现一点接地,防止出现不必要的其它干扰。第四章显示单元3.扫描频率显示单元的扫描频率一般要有比较严格的要求,在实际使用中,本系统采用52赫兹的刷新频率,即约19.2毫秒刷新一次。当显示屏幕以滚动方式显示时,还必须协调滚屏与动态扫描的频率。也就是说在显示屏向左(或右)滚动一列的时间内,动态扫描电路必须全部扫描完本单元24列一轮以上。综合以上要求,本系统实际上扫描一列的时间设定为0.8毫秒,显示屏向左(或向右)滚动一列的时间是19.2毫秒。第五章主控软件第五章主控软件主控计算机对显示屏的监控功能主要是通过其运行的主控软件来实现的,主控软件通过计算机的串行口发送、接收数据,对显示屏进行显示控制和传送显示数据。夸5.1软件的基本构成1.编程工具的选择随着计算机的发展,微机的软件开发平台己由DOS转入windows,在图形化的windows操作系统下,提出了可视化的软件开发方法。随之而产生了各种软件开发工具,其中比较成功的有:VisualBasiC、VISua1C++、De上phi、C++Builder、PowerBuilder等。Delphi是Borland公司在VisualBasie之后推出的软件开发工具,它使用ObjeCtPascal作为它的语言基础,具有完善的面向对象的思想。Delphi强调快速开发,采用全新的objectPascal语法。它的编程简单,可视化程度很高,程序的执行速度也很快。因此,Delphi与其它编程语言相比具有很多优点,是首选的Windows环境下的快速软件开发工具。2.软件的基本构成根据监控微机功能的需求,主控软件必须具备更改显示屏显示内容、设置显示方式和设置打铃及系统时间等功能,因此主控软件的数据流图如下设设定时间间间发送数据据主控软件数据流图(图5一Ic)图5一1所示。按功能划分,整个主控软件是由更改显示内容模块、设置打铃时间模块、设置系统时间模块和数据通信模块四部分构成。软件的设计力求具有良好的用户界面,清晰的菜单窗口,用户可以根据需要选择使用。其主程序流程如图5一2。如图所示,主控软件的各部分功能与相应的程序模块一一对应。每个模块都执行各自的功能,每一层模块和下一层模块的功能都是调用关系。由于各模块功能单一,所以上层模块与下层模块之间只存在调用与返回关系,同层模块之间没有联系。各模块是功能内聚性模块,模块之间藕合很松。系统运行时,显示出图形界面,用户用鼠标或键盘选择相应的功能,由操作系统收集到这些消息,然后送给本程序,消息处理机制根据消息的内容第五章主控软件分别调用各功能模块,各功能模块执行相应的功能,并返回操作系统。更更改显示内容容容设定系统时间间间设定打铃时间间调调用串行通信信子子模块块主程序流程(图5一2)圣5.2软件的具体实现软件直接利用DELPHI提供的各种可视化编程控件,如Richedit、SpeedButton、Image、Lable、ProgressBar等等。这样编程人员就可以集中精力考虑软件的核心算法,较好的运用了软件的继承性。更改显示内容模块、设置打铃时间模块、设置系统时间模块等主控软件的功能模块具体程序流程如图5一3、5一4和5一5所示。
 
微机控制LED点阵显示屏设计设定系统时间模块流程图(图5一5)在主控软件中主要运用了汉字字库提取和控件编制两项技术。汉字字库提取是从汉字字库中提出输入汉字的点阵信息。编制控件则是运用面向对象的编程技术,利用Windows进程及消息机制,编制成灵活的模块化的控件。5.2.1汉字字库的提取1.汉字的表示及编码使用过计算机的人都知道,英文在计算机内的表示是采用ASCI工码的方式,每个英文字母在计算机内部用一个ASCH码表示。中文的表示也采用ASCH码的形式,所不同的是一个汉字对应两个ASCI工码。汉字经过了几千年的演变。在发展的过程中汉字的数量不断增加,常用的汉字大约有六千多个。1981年我国正式发布国家标准—《信息交换用汉字编码字符集基本集》[GB2312一80〕。在GB2312一80中,总共收入汉字数第五章主控软件为6763个,将比较常用的3755个列为一级汉字,将其余3008个列为二级汉字,而且一级汉字的排序按照拼音顺序,二级汉字的排序采用部首顺序方法。GB2312用两字节表示一个代码,总共规定了94x94二8836个代码。中间有一些空代码,即没有对应汉字。GB2312码的前一个字节称为区码,后一个称为位码,GB2312把汉字分为94个区,每个区又有94个汉字,所以每个汉字用GB2312来表示,就是采用“区码+位码”的方式。GB2312的前1一9区为图形字符区,包括标点符号,其它各种文字如日文假名,罗马字母,俄文,制表符等。从16区以后是汉字,10一巧区没有使用。由GB2312定义的编码称为区位码,即区码和位码组合而成的一种编码。但是,为了解决区位码与西文字符相混淆的问题,计算机内表示汉字的是另外一种编码,称为机内码。一个机内码是由两个字节组成,它与区位码的关系是:机内码高位二区码+AOH机内码低位二位码+A0H2.点阵汉字原理汉字在计算机中处理时是采用图形的方法,即每个汉字就是一个图形。显示一个汉字就是显示一个图形符号,这个图形符号称为汉字字模。每个汉字在计算机中都对应一个字模,字模分为两种类型。一种是点阵字模,一种是矢量字模。点阵汉字是汉字字型最基本的表示法。点阵字模的原理是把汉字的方形区域细分为若干小方格,每个小方格便是一个基本点。在方形范围内,凡笔画经过的小方格便形成黑点,不经过的形成白点,若黑点代表1,白点代表0,那么小方格恰好可以用一个二进制位表示。这样制作出来的汉字称为点阵汉字。3.点阵字库韵文件结构和读取方法对于点阵汉字来说,一个汉字的字模(如16xl6,24x24,32x32)都有固定的字节数。大多数字库文件都不进行压缩,所以采用顺序存储方式,即先存储区位码为0101的汉字模,紧接着0102,0103,一直到0194,下一个是0201,……直到87汉字区。值得注意的是,有些字库文件没有10一15第五章主控软件区汉字,有些字库文件还常有文件头,写着有关字库的一些信息。本软件为了显示楷体、黑体、宋体等不同种类字体,故需要读取24X24点阵字库。首先取得输入汉字的区位码,进行计算后,得到此汉字模在点阵字库中的偏移量即:Offset:二(Queode*94+Weieode)*72:然后将对应的点阵信息读出并存储。4.点阵汉字的显示24x24点阵汉字字模的每一竖行占3个字节。也就是说24x24大方格的第一竖行的黑白点是由这3个字节来决定的。将其数字转化为二进制,O的地方不填充,1的地方填充为黑色,如此循环把24格全填充好后,画出了汉字的第一竖行。逐个读取字模,将24列全部画出来,这样就显示了一个完整的汉字。5.2.2通信控件1.面向对象方法通信控件的编制和使用必须用到“面向对象”这一概念。“面向对象”是一种思维方式,即把我们生活中的现实世界按其本来面目在计算机世界中进行刻划,从面向专家的模型演变成面向普通人的模型。面向对象在软件开发中的思维方式比传统的结构化方法更接近于自然,即在构成现实的抽象模型中使用对象进行思维比使用功能思维更自然;另外,从问题空间的模型到求解空间的映射过程采用面向对象的开发方法更为直接,因为在面向对象的开发中二者在知识的表示(问题的描述)方式上取得了一致,即这种映射是同态变换。在面向对象的设计方法中,对象(。bject)和传递消息(messagepassing)分别是表现事物与事物间相互联系的概念。类(class)和继承(inheritance)是适应人们一般思维方式的描述范式。方法(method)是允许作用于该类对象上的各种操作。这种对象、类、消息和方法的程序设计范式的基本点在于对象的封装性(encaPsulation)和继承性。通过继承能第五章主控软件现类与类之间的关系,以及由此带来的动态聚束(dynamicbinding)和实体的多态性(polymorphism),从而构成了面向对象的基本特征。Delphi下的具体实现方法为了将通信子程序封装成一个不可视的控件,控件源代码必须包含一个来自Teomponent的对象派生(或一个后代)和一个RegisterComponent调用。由于抽象对象类型TComponent是所有控件的基础类型,因此从Component直接继承所创建的控件就是非可视化控件。控件单元必须包含一个Register过程,在该控件注册时,控件所包含的位图资源将被用在该omponentPalette上。简而言之,建立自定义控件的过程包含下列几步:.建立包含新控件的库单元.从己有控件类型中继承得到新的控件类型.增加属性、方法和事件.用Oelphi注册控件.为控件的属性方法和事件建立Help文件(1)建立新控件的方法有两种:.手工建立控件.使用ComponentExpert一般来说使用ComponentExpert比较方便,ComponentExpert简化了创建新控件最初阶段的工作,只需确定新控件的名字、祖先类型和新控件要加入的ComponentPalette页名。它自动执行建立新的库单元、继承得到新控件对象、注册控件三个过程。但ComponentExpert不能在已有单元中增加控件。(2)‘定义控件属性属性(Property)是控件中最特殊的部分,主要因为控件用户在设计时可以看见和操作它们,并且在交互过程中能立即得到返回结果。属性也很重要,因为如果将它们设计好后,将使用户更容易地使用,自己维护起来也很容易。
 
微机控制LED点阵显示屏设计属性提供非常重要的好处,最明显的好处是属性在设计时能出现在0匕ject工nspect。r窗口中,这将简化编程工作,因为你只需读用户所赋的值,而不要处理构造对象的参数。从控件使用者的观点看,属性象变量。用户可以给属性赋值或读值,就好象属性是对象的域。从控件编写者的观点看属性比对象的域有更强的功能;声明控件的属性,必须指明:.属性名.属性的类型.读和设置属性值的方法控件属性应当定义在控件对象声明的pub1iC部分,这样可以在运行时很方便地从外部访问;为了能在设计时编辑属性,应当将属性在published部分声明,这样属性能自动显示在ObjeCt工nspeCtor窗口中。属性内部数据存储:关于如何存储属性的数据值,Oelphi没有特别的规定,通常Delphi控件遵循下列规定:.属性数据存储在对象的数据域处.属性对象域的标识符以F开头,例如定义在TControl中的属性FW1dth.属性数据的对象域应声明在private部分后代控件只应使用继承的属性自身访问,而不能直接访问内部的数据存储。属性的访问:使属性数据可用的最简单的办法是直接访问。属性声明的read和write部分描述了怎样不通过调用访问方法来给内部数据域赋值。但一般都用read进行直接访问,而用write进行方法访问,以改变控件的状态。(3)事件:对编程人员来说事件一般分为两种,即标准事件和自定义事件。Delphi带的所有控制继承了大多数Windows事件,这些就是标准事件。程序员可通过一定的方式进行调用。定义自定义事件一般分为触发事件、定义处理过程第五章主控软件类型、声明事件、调用事件四步骤。触发事件:定义自己的事件要遇到的第一个关键是:当使用标准事件时不需要考虑由什么触发事件。当两种事情一状态变化和用户交互一发生时,处理机制是相同的,但过程稍微不同。用户交互事件将总是由Windows消息触发。状态改变事件也与Windows消息有关,但它们也可由属性变化或其它代码产生。你拥有对自定义事件触发的完全控制。定义处理过程类型:一旦你决定产生事件,就要定义事件如何被处理,这就是要决定事件处理过程的类型。在大多数情况下,定义的事件处理过程的类型是简单的通知类型(TN。tifyEvent)和己定义的事件类型。声明事件:当你决定了事件处理过程的类型,你就要准备声明事件的方法指针和属性。为了让用户易于理解事件的功能,应当给事件一个有意义的名字,而且还要与部件中相似的属性的名称保持一致。Delphi中所有标准事件的名称都以“0n”开头。这只是出于方便,编译器并不强制它。Object工nspect。r是看属性类型来决定属性是否是事件,所有的方法指针属性都被看作事件,并出现在事件页中。调用事件:一般说来,最好将调用集中在事件上。就是说在部件中创建一个虚方法来调用用户的事件处理过程和提供任何缺省处理。当调用事件时,应考虑以下两点:.必须允许空事件.用户能覆盖缺省处理不能允许使空事件处理过程产生错误的情况出现。就是说,自定义部件的正常功能不能依赖来自用户事件处理过程的响应。实际上,空事件处理过程应当产生与无事件处理过程一样的结果。(4)用Delphi注册控件第五章主控软件为了让Delphi识别自定义控件,并将它们放置于ComponentPalette上,你必须注册每一个控件。注册一个控件要在控件所在单元里加入Register方法,这包括两个方面的内容:.声明注册过程.实现注册过程一旦安装了注册过程,就可以将控件安装在选择板上。注册过程要在控件所在单元中写一个过程,该过程必须以Register命名。Register必须出现在库单元的interface部分,这样Oelphi就能定位它。在Register过程中,可以为每个控件调用过程RegisterComponentS。(5)提供有关属性和事件的帮助编写适当的帮助文件是编程的一个良好风格。Delphi提供了创建和插入WindowsHelp文件的工具,包括windowsHelp编译器HC.EXE。为自定义控件建立Help文件的机制与建立任何Help文件没什么不同,但需要遵循一些约定以与库中其它Help兼容。保持兼容性的方法如下:.建立Help文件.增加特殊的注脚.建立关键词文件.插入Help索引3.基于wIN95/NT的串行通信机制Windows操作系统的机制禁止应用程序直接访问计算机硬件,但它为程序员提供了一系列的标准AP工函数,使得应用程序的编制更加方便并且免除了对有关硬件的调试麻烦。在Windows95/NT中,原来Windows3.X的wM_c0MMNOT工FY消息己被取消,操作系统为每个通信设备开辟了用户可定义大小的读/写缓冲区,数据进出通信口均由操作系统后台完成,应用程序只需对读/写缓冲区操作即可。W工N95/NT中几个常用的串行通信操作函数如下:第五章主控软件44CreateFile(szDeviee,fdwAeeess,fdwshareMode,IPsa,fdwCreatefdwAttrsAndFlags,hTemplateFile);打开串行口CloseHandle(hConun);关闭串行口Set叩Comm(hComm,dwRxBufsize,dwTxBufsize);设置通信缓冲区的大小尺eadFile(hComm,inBuff,nBytes,&nBytesRead,&overlapped):读串口操作Wr1teFile(hConun,outBuff,nTowrite,&nAetua1Write,&overlaPPed);写串口操作BOOLSetCommstate(HANDLEhFile,//handleofeommunieationsdevieeLPDCBlpDCB//addressofdeviee一eontrolbloekStructure):设置通信参数BOOLGetCommstate(HANDLEhFile,//handleofeommunieationsdevieeL尸oCBlpDCB//addressofdeviee一eontrolbloekstrueture);获取默认通信参数BOOLClearCornmError(HANDLEhFile,//handletoeomfnunieationsdevieeLPDWORDlpErrors,//pointertovariabletoreeeiveerrorCOdeSLPCOMSTATlpstat//pointertobufferforeonununieationsStatUS);清除串口错误并获取当前状态除上述几个函数外,还要经常用到一个重要的记录DCB(设备控制块)。DCB中记录有可定义的串行口参数,设置串行口参数时必须先用GetCOInfnstate函数将系统默认值填入DCB控制块,然后才可把用户想改变的自定义值设定。在wIN95/NT中进行串行通信除了解基本的通信操作函数外,还要掌握
 
微机控制LED点阵显示屏设计多线程编程。线程是进程内部执行的路径,是操作系统分配CPU时间的基本实体。每个进程都由单线程开始完成应用程序的执行。串行通信需要利用多线程技术实现,其主要的处理逻辑可以表述如下:进程一开始先由主线程做一些必要的初始化工作,然后主线程根据需要在适当时候建立通信监视线程监视通信口,当指定的串行口事件发生时,向主线程发送wM_COMMNOTIFY消息(由于wIN95取消了WM_COMMNOTIFY消息,因此必须自己创建),主线程对其进行处理。若不需要WM_COMMNOT工FY消息,则主线程终止通信监视线程。多线程同时执行,将会引起对共享资源的冲突。为避免冲突,就要用同步多线程对共享资源进行访问。W工N95提供了许多保持线程同步的方法,本软件采用创建事件对象来保持线程同步。通过CreateEventO创建事件对象,使用SetEvent()或PulseEvent()函数将事件对象设置成信号同步。在应用程序中,利用WaitsingleobjeCt()函数等待同步的触发,等到指定的事件被其它线程设置为有信号时,才继续向下执行程序。第六章附属单元及可靠性预计第六章附属单元及可靠性预计夸6.1附属单元6.1.1打铃控制开关打铃控制开关包括两部分,一部分是防误触发电路,另一部分是固态继电器。1.防误触发电路防误触发电路主要是防止其它干扰脉冲产生干扰,造成电铃间歇响铃,其电路原理图如图6一1所示。图6一l防误触发电路原理图当控制信号有效(高电平)并从1N端输入,4OIO6B(施密特反向器)的4脚输出高电平,经R1对E2充电,其充电时间由R1、E2的RC时间常数决定。当4OIO6C的5脚达到其翻转触发电平即三分之二电源电压时,4OIO6D翻转,其8脚输出高电平送到OUT输出端。当控制信号变为低电平,4OIO6B的4脚迅速变为低电平,此时E2通过R1、R3放电,由于D1的存在并处在第六章附属单元及可靠性预计正向导通状态,大大加快了放电过程,使4OIO6D很快翻转,8脚输出低电平。电路中E1、Cl主要是滤除尖脉冲的干扰,R3提供电路的初始状态,使输出为低电平。R2为下拉电阻,增强电路输出的抗干扰性。由于干扰脉冲一般都为短脉冲,不可能持续很长一段时间,故只要将EZ的充电时间延长,使干扰脉冲过后5脚电压仍未达到能引起40106翻转的电压,这样就可有效的抑制了干扰。2.固态继电器由于控制电铃需要交流控制开关,而固态继电器有许多优良的性能,因此在实际应用中采用了固态继电器来控制电铃。固态继电器(SSR)又名固态开关,是一种由固态电子元器件组成的无触点电子开关器件。它利用分立元件、集成器件及微电子技术,实现了控制回路(输入)与负载回路(输出)之间的电隔离及信号祸合,可达到无触点、无火花接通和断开电器的目的。在本电路中选用的是交流过零型固态继电器。其工作原理框图如图6一2路图6一2SSR工作原理框图如图,在输入端加一控制信号,就可以控制输出端的“通”和“断”,实现开关功能,其中藕合电路是以光电祸合器作为输入、输出间的通道,又在电器上实现电隔离,以防止输出端对输入端的影响。过零电路保证在输入信号和开关器件两端电压在过零瞬间触发开关器件实现通、断动作,减少了开关器件带电(压)动作产生的干扰和污染。吸收回路由RC组成,它是为了防止电源中带来尖峰电压、浪涌电流对开关器件的冲击和干扰而设的。在输入信号撤掉后,电源电流过零时才被关断。第六章附属单元及可靠性预计敏电阻簇困态继电器土甩--福菇矿-一图6一3SSR外接保护电路SSR外接保护电路如下图6一3所示。由于所带的负载为感性,当电路接通或断开的一瞬间,RL将产生一个反向电动势使固态继电器的两端电压急剧升高,dy/dt值远大于固态继电器所能成承受值ZOV/us。因此在电路中设有阻容吸收回路,电容器把过电压的电磁能量变成静电能量存储,电阻防止电容与电感产生谐振。压敏电阻是用来吸收意外原因产生的能量较大、持续时间较长的过电压。.2系统电源点阵显示屏工作时需要很大的电流,因此必须择大功率电源。现有大功率电源基本分为两种。一种为线性电源,另一种为开关电源。两种电源相比较,各有优缺点。通常认为线性电源稳压效果比较好,但体积较大,效率较低,功率大时相对价格也较昂贵。而普通开关电源虽然稳压效果不如线性电源,但其效率高、体积小、重量轻,性价比较高。因此在设计中采用了开关电源。电源的总功率应有一定的冗余,以保证系统能在意外情况下仍继续正常工作。在电源接入电网的进线端应加电源滤波器,滤除电网中的一些干扰,保证电源电路正常工作。
 
微机控制LED点阵显示屏设计夸6.2点阵显示屏的可靠性预计对于一个新的产品,无论是生产者还是消费者,人们最关心的问题该产品是否安全、可靠、耐用。而通过对产品可靠性预计的计算则可以分影响产品可靠性的因素及提高可靠性的途径。在对LED显示屏进行设计时,当系统的性能技术指标及费用等要求出后,我们希望所研制的显示屏能够达到较高的可靠性,具有较长的使用命,较好的工作稳定性,易维修及安全性等。基于这些要求,我们在研制产之前必须对系统中各个模块所用元器件的性能、可靠性进行分析,并对个LED显示屏系统的最终稳定状态进行预估计算,以帮助我们分析出系统失效率较高的单元,从而采取必要的纠正措施(如应用冗余系统、更换元严格控制制造工艺等)改进系统,减小失效率,把设计精力集中在系统最的地方。6.2.1可靠性预计方法可靠性预计的方法较多,本文采用的元器件计数法是在初步设计阶段用的预计方法。在这个阶段中,每种通用元件(例如电阻、电容)的数量基本确定,在以后的研制和生产阶段整个设计的复杂度预期不会有明显的化。元器件计数法假定元件的寿命是指数分布的(即元器件失效率恒定)。失效率—指工作己到时刻t的产品,在时刻t后单位时间内发生失的概率,记为入(t)。平均无故障时间(MTBF)—指产品相邻两次故障之间工作时间的平值,是失效率的倒数,即MTBF二1/入。元器件计数法中产品失效率的一般表达式是:“产品=艺从凡二Gi对一定的环境来一说,式中:人产品=产品总失效率第六章附属单元及可靠性预计兄,二第i类元件的通用失效率二G‘二第i类元件的质量系数N,=第i类元件数量N=不同元件的种类数在计算中采用的环境类别为“地面良好”,代号“GB”,指能保证正气候条件,机械应力接近于零的实验室环境,维护条件良好。6.2.2显示屏的可靠性模型LED显示屏主要有以下几部分组成:.主板(MASTER)l块.电源板(POWER)1块.显示驱动板(DISP一DRIV)10块每块显示驱动板由9个8X8的发光二极管显示方块组成,由一块独驱动板控制。基本可靠性模型是一个串联模型,包括那些冗余或代替工作模式的都按串联处理,用以估计产品及其组成单元故障引起的维修及保障要求。本文采用基本可靠性模型对LED显示屏进行可靠性预计,它的基本性框图如下图6一4所示。R:(t)RZ(t)主主板板板显示板板显显示板100000电源源图6一4基本可靠性框图按照LED显示屏的基本可靠性框图,我们建立数学模型,即把设备靠性与在可靠性框图上用方框表示的各组成部分的可靠性联系起来计算靠度。R、(t)=R:(t)R:(t)R:(t)R;(t)……R,(t)=XR,(t)其中RS(t)—系统可靠度第六章附属单元及可靠性预计民(t)—第i个模块的可靠度i=1、2、3、4……nn—组成系统的模块数t—模块及系统的工作时间当故障率恒定时,各模块的故障时间服从指数分布写成:尺(t)二e--^‘e--toe--#.…£一即=e一凡t式中则公式(l)可(2)入S—系统的故障率“、=艺凡入i—第i各模块的故障率,i=l,2,3,4,…,n因此,系统的故障率入s是组成串联系统的各模块的故障率之和。对模块故障时系统的故障前平均工作时间为:t)dt,dt脚。。尸。对了万F=二1/兄一套电子系统最终的实际使用价值如何,对元器件的可靠性依赖性大。为了对研制的LED显示屏最终可靠性有一个大致的了解,对整个系所使用的元器件全部按照军品和民品定货两种情况进行估算,即预算出L显示屏研制成功后,系统可靠性的最坏和最好结果。6.2.3LED显示屏的可靠性预计由于LED显示屏包括的元器件种类较多,为明确计算,特作以下几点第六章附属单元及可靠性预计.PAL、GAL、8D触发器、寄存器、8位以上的移位寄存器等为MSI规模集成电路)类,其它24腿以下为551(小规模集成电路)类其余为LSI(大规模集成电路)类。.带插件的组件可靠性包括:组件本身的失效率、接插点失效率、点失效率、金属化孔失效率四个部分。.过孔按焊孔的1/4估计,基本等同金属化孔失效率。.有封装的电阻元件按551失效率计算,无封装的电阻按一般电阻效率计算。.不同种类元器件失效率标准见表6一1。.按民品标准失效率计算整个系统各模块所用元器件均按民品标准失效率统计,计算得出各模失效率及平均无故障工作时间MTBF,数据如下:表6一IL印显示屏元器件目录清单元元件件显示示主板板电源源军品通用失效效民品通用失效效质量等马马马区动动动动率入。;八。一6h一’’率入。/10一“h一LLL系数JT板板板板板板板板板55551117OOO1OOO3330.23332.3330.111MMMSIII5OOO3333330.25552.5550.111LLLSIII2OOO7772225.477754.7770.2电电阻阻3400022229990.016660.16660.333电电解解300010009990.13331.3330.333电电容容容容容容容容晶晶体体lOOO3331110.72227.2220.333连连接接l00099917775.22252220.444器器器器器器器器器LLLEDDD57600000000.08880.8880.222金金属属27840003069991021110.00015550.001555
 
微机控制LED点阵显示屏设计显示驱动板入显,J;二1564.45XIO一6MTBF=639.2oh主控板入主。:‘二305.87X10一6MTBF=3269.35h电源板入电源==394.37X10一6MTBF=2535.67h根据以上各模块失效率的统计值可得出该显示系统的总失效率为入全总二入显示十入主控十入,酬二2264.69X10一6MTBF=441.56h2.按军品标准失效率计算整个系统各模块所用元器件均按军品标准失效率统计,计算得失效率及平均无故障工作时间MTBF,数据如下:显示驱动板入显示二156.44Xlo一6MTBF二6392.23h主控板入主控二30.59X10一6MTBF==32690.42h电源板入.。*:二39.44X10一6MTBF二25354.97h第六章附属单元及可靠性预计根据以上各模块失效率的统计值可得出该显示系统的总失效率为入全总=入显示+入主控十入电源=226.47X10一6MTBF=4415.6Oh通过采用两种标准计算出的结果可以看出相差很大。因此,在过程中,采用高质量的元器件对提高整机的可靠性是至关重要的。6.2.4讨论针对采用军用标准计算出的各模块可靠性指标,可以看出:显示驱动板的失效率入显示=156.44X10一6比其它各模块的失效多,这是影响系统可靠性的关键。究其原因是组成模块的元件数量例如,显示驱动板单是发光显示器件就有10X9X8x8二5760个。件数目的增多,必然导致失效几率的增大,MTBF的减小。所以在进时,为了提高系统的可靠性,、应把系统设计的越简单越好,也就是同样功能,系统的设备越少越好;并尽量采用高稳定电路和高质量元假设系统在并行冗余或后备冗余的两种情况下运行,有如下两个.假设整机元件均存在并行冗余结构,即当有某一元件或模块可由另一并行工作的元件或模块替代,保证整机的正常工作根据可靠性原理,得:R‘=ZR一RZMTB:一了R,dt一补。一。一,力)dt一奥了言之凡假设整机元件均存在后备冗余结构,即工作单元数是不变某一元件或工作模块失效时,有完全可靠的检查和转换装置转换开关导向后备的元器件或模块,也可以通过维修的方式更换性能良好的元件或模块。在所用元件相同,失效检查和置百分之百的可靠,而且备用失效率又为零的情况下,两单个单元备用)的系统的可靠度为:R,=e一七(l+兄t)第六章附属单元及可靠性预计MTBF一丁R,dt-0一力+方e一七)故2兄(5)召了.、1.0从以上三种工作模式:串联、并行冗余、后备冗余得出的平均作时间(式(3)(4)(5)可以看出,系统采用不同的结构对系统靠性有很大影响。在实际设计中,很少把整个系统都设计成有冗余因为尽管冗余设计可以提高任务可靠度,但会降低基本可靠度并增后勤保障的负担,所以,只能针对很重要的模块或失效率较高的模块计成具有冗余的结构。针对本实例中对可靠性影响较大的显示屏采用后备冗余设计来系统的可靠性指标。在实际设计中,把显示屏设计成模块化结构,即整个显示屏由个8x8的显示方块组成。当显示屏中有若干个发光点损坏时,只点所在的显示方块取下,替换上完好的显示模块即可。根据式(5)有:MTBF=介R,dt一止兰分‘元。二U月匕.J、坛显示=156.44xlo一6156.44x10一6=12784.45h人了TB瓜显示278.22xl0一6兄新全总=兄新显示+兄主控+兄电源=148.25x10一6MTBF新全总=6745.36h从上述预计的可靠性指标可以看出,把系统中关键的单元设计成余的结构,可以极大的提高系统的可靠性。特别需要强调的是系统在实际使用中,当有若干个元器件失效影响系统的正常工作。上述计算的系统平均无故障时间是系统中没有器件失效的情况。所以,实际应用时系统正常工作时间通常比计算得多,但通过计算可以为我们提供一个确凿的理论依据,来评价一个最低平均无故障工作时间。第七章总结与展望第七章总结与展望京练本文提出了一种实现微机控制L印点阵显示屏的新方案。LED屏主要包括主控电路和显示刷新电路两部分。主控电路负责与上位收待传送点阵信息,刷新显示RAM内容,向显示电路传送数据;刷责点阵的逐行动态扫描。因此显示屏的显示质量和显示规模在很大程度上取决于主控示电路的传送速度以及显示屏的刷新速度。这样如何提高显示数据度和动态扫描速率就成为本文的研究基础。在此基础上,本文提出算机多机技术和嵌入式结构,使系统实现多机并行处理和LED显块化及采用双端口静态随机存储器使双CPU共享数据区,实现大高速交换是本文的主要特点之一。据此本文主要完成了以下几个方面的工作:1.在总体设计上,运用集散控制理论,在统一协调的基础上进行控制,并使功能分散、危险分散来达到设计的优化。2.在硬件电路上,采用双端口静态随机存储器(Dual一PortSRAM量数据的高速交换;运用分布式动态扫描电路来实现显示屏的快使用显示单元来实现显示屏拼装的模块化;利用RS一485总线实据的快速准确传送。3.在软件上,在Windows95环境下采用面向对象的编程技术进行控制,并提供友好的用户界面、清新的菜单窗口和强大的控制功4.在可靠性预计上,采用元器件计数法,对产品的可靠性进行初计算,同时粗略的分析了影响产品系统可靠性的因素,并给出解决办法。
  • 上一篇资讯: 小学毕业感言
  • 下一篇资讯: 大学毕业感言
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师