《毕业设计论文基于AT89S52单片机的电子迎宾机器人.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于AT89S52单片机的电子迎宾机器人.doc(23页珍藏版)》请在三一办公上搜索。
1、目录1 绪论32 机器人的发展及现状33 任务分析及方案确定63.1 设计要求63.2 设计方案63.2.1 红外信号发射电路方案论证63.2.2红外信号接收电路方案论证63.2.3 显示部分方案论证63.3 系统整体框图64 理论分析与参数计算74.1 红外发射载波信号频率38KHz74.2 红外接收部分74.3 数据处理部分74.4 显示部分75 系统各模块电路的设计75.1 系统电路图75.2 红外产生发射电路85.3 红外信号接收电路95.4 数据处理电路11引脚结构及说明11特殊功能寄存器13内部结构框图165.5 显示电路185.5.1 LCD1602显示电路18指令集19基本的读
2、写时序图205.5.2数码管显示电路216 系统软件设计226.1 软件系统结构图22摘要 该电子迎宾机器人装置是以AT89S52构成的单片机最小系统作为核心控制处理电路,热释电红外传感器为传感源,加以语音和电源电路组装而成。本电路可安装在商场、宾馆、舞厅等营业场所的门口,利用热释电红外检测技术自动识别顾客的进、出方向。客人进门时它会说“欢迎光临,客人出门时它又会说“谢谢光临”。语音电路发出的语音能给人以愉悦、亲切的感受。并且该装置不受情绪和天气冷热的影响,对待顾客热情如一。增强顾客对该部门的好感,提高该部门的声誉。它将成为一个无人值守的自动迎宾礼仪小姐。用该装置来代替迎宾小姐,不仅经济,而且
3、十分有趣。关键字:电子迎宾机器人;单片机;红外传感器The Design of Guest greeting of robot TransistorAbstractThis kind of device for saluting is a robot whose central controlling electrocircuit is a mini MCU system which is made up of AT89S52.The sensor source of this device is Pyroelectric infrared sensor.There are extra par
4、ts in this device, such as speech and power circuit.This device can be installed at the entrance of shopping malls, hotels, and ballrooms. It can automatically recognize the in and out directions of customers.It will say welcome when a cutomer comes in, and it will say thanks for your coming while a
5、 customer leaves. The sounds of this device can give people the feeling of delight and kindness. Furthermore, it will not be affected by the mood or the weather. It is always very enthusiastic to the customers. By this way, it can enhance the favor of people for the department, and it will improve t
6、he reputation of the deparment. It will be a independent ceremony girl. With the ceremony girl replaced, it will not only be very economic, but also very interesting. Key words: electronic robot for saluting;MCU;Pyroelectric infrared sensor1 绪论在竞争日益激烈的今天,各行各业为提高竞争力,纷纷推出各种新、奇的事物来吸引消费者,经过长时间的市场调查,发现各种
7、商场、宾馆等场所的门口都站有一排或两排的迎宾小姐,这中迎宾方式不但消耗了大量的人力物力资源,而且由于现在人力成本的不断增加,这样就大大增加了企业的生产成本,此外还会由于服务人员长期从事单调重复的工作,造成对工作的热情锐减,从而影响服务质量,针对这一现象我决定开发设计一套自动电子迎宾机器人的装置,虽然现在市场上使用的机器人运用了热体感应检测和语音输出了实现的,但这种产品没有进出识别功能,人性化程度较低,不能全方位体现人的服务特点,市场上至今还没有出现这种比较完善的自动电子迎宾机器人产品。相比之下,全自动迎宾机器人体现出强大的优越性,现在所开发的这套电子机器人装置不但成本低廉,而且工作性能稳定,还
8、能为消费者提供人性化的服务。本文综合考虑了降低成本与功能灵活性方面的要求,利用AT89S52构成的单片机最小系统最为核心控制系统,再加上必要地辅助电路和电源,就构成了简单实用,成本低廉和控制灵活的迎宾机器人。本电路可安装在商场、宾馆、舞厅等营业场所的门口,利用热释电红外检测技术自动识别顾客的进、出方向。客人进门时它会说“欢迎光临,客人出门时它又会说“谢谢光临”。语音电路发出的语音能给人以愉悦、亲切的感受。并且该装置不受情绪和天气冷热的影响,对待顾客热情如一。增强顾客对该部门的好感,提高该部门的声誉。它将成为一个无人值守的自动迎宾礼仪小姐。用该装置来代替迎宾小姐,不仅经济,而且十分有趣。2 机器
9、人的发展及现状机器人技术的发展,它应该说是一个科学技术发展共同的一个综合性的结果,同时,为社会经济发展产生了一个重大影响的一门科学技术,它的发展归功于在第二次世界大战中各国加强了经济的投入,就加强了本国的经济的发展。比如说日本,战后以后开始进行汽车的工业,那么这时候由于它人力的缺乏,它迫切需要一种机器人来进行大批量的制造,提高生产效率降低人的劳动强度,这是从社会发展需求本身的一个需求。另一方面它也是生产力发展的需求的必然结果,也是人类自身发展的必然结果,那么人类的发展随着人们逐渐的这种社会发展的情况,人们越来越不断探讨自然过程中,在改造自然过程中,认识自然过程中,来需求能够解放人的一种奴隶。那
10、么这种奴隶就是代替人们去能够从事复杂和繁重的体力劳动,实现人们对不可达世界的认识和改造,这也是人们在科技发展过程中的一个客观需要。但另一方面,尽管人们有各种各样的好的想法,但是它也归功于电子技术,计算机技术以及制造技术等相关技术的发展而产生了提供了强大的技术保证。 那么下面我谈一下就人们很关心的问题,为什么要发展机器人?那么简单说,机器人有三个方面是我们必要去发展的理由:一个是机器人干人不愿意干的事,把人从有毒的、有害的、高温的或危险的,这样的环境中解放出来,同时机器人可以干不好干的活,比方说在汽车生产线上我们看到工人天天拿着一百多公斤的焊钳,一天焊几千个点,就重复性的劳动,一方面他很累,但是
11、产品的质量仍然很低;另一方面机器人干人干不了的活,这也是非常重要的机器人发展的一个理由,比方说人们对太空的认识,人上不去的时候,叫机器人上天,上月球,以及到海洋,进入到人体的小机器人,以及在微观环境下,对原子分子进行搬迁的机器人,都是人们不可达的工作。上述方面的三个问题,也就是说机器人发展的三个理由。 那么什么是机器人呢?这个问题是一个非常有意思的一个问题。但人们一般的理解,机器人是具有一些类似人的功能的机械电子装置或者叫自动化装置,它仍然是个机器。它有三个特点:一个是有类人的功能,比如说作业功能;感知功能;行走功能;还能完成各种动作,它还有一个特点是根据人的编程能自动的工作,这里一个显著的特
12、点,就是它可以编程,改变它的工作、动作、工作的对象和工作的一些要求。它是人造的机器或机械电子装置,所以这个机器人仍然是个机器。但是目前还没有一个统一的有关机器人定义,一般来说我们认为机器人是计算机控制的可以编程的目前能够完成某种工作或可以移动的自动化机械,这是美国工程师协会定的一个定义,但日本和其他国家也对机器人有不同的看法,他们认为从完整的更为深远的机器人定义来看,应该更强调机器人智能,所以人们又提出来机器人的定义是能够感知环境,能够有学习、情感和对外界一种逻辑判断思维的这种机器。那么这给机器人提出来更高层次的要求,那么比方说机器人在这里边可以代替人进行焊接,焊接的环境是非常复杂的,可以搬运
13、,它在生产线中搬运玻璃和各种各样的一些零件的搬运的工作,还可以在生产线中码垛等等,这都是把人从繁重的体力劳动中解放出来的一个例子。下面是机器人的主要发展过程:1920年 捷克斯洛伐克作家卡雷尔恰佩克在他的科幻小说罗萨姆的机器人万能公司中,根据Robota(捷克文,原意为“劳役、苦工”)和Robotnik(波兰文,原意为“工人”),创造出“机器人”这个词。1939年 美国纽约世博会上展出了西屋电气公司制造的家用机器人Elektro。它由电缆控制,可以行走,会说77个字,甚至可以抽烟,不过离真正干家务活还差得远。但它让人们对家用机器人的憧憬变得更加具体。1942年 美国科幻巨匠阿西莫夫提出“机器人
14、三定律”。虽然这只是科幻小说里的创造,但后来成为学术界默认的研发原则。1948年 诺伯特维纳出版控制论,阐述了机器中的通信和控制机能与人的神经、感觉机能的共同规律,率先提出以计算机为核心的自动化工厂。1954年 美国人乔治德沃尔制造出世界上第一台可编程的机器人,并注册了专利。这种机械手能按照不同的程序从事不同的工作,因此具有通用性和灵活性。1956年 在达特茅斯会议上,马文明斯基提出了他对智能机器的看法:智能机器“能够创建周围环境的抽象模型,如果遇到问题,能够从抽象模型中寻找解决方法”。这个定义影响到以后30年智能机器人的研究方向。1959年 德沃尔与美国发明家约瑟夫英格伯格联手制造出第一台工
15、业机器人。随后,成立了世界上第一家机器人制造工厂Unimation公司。由于英格伯格对工业机器人的研发和宣传,他也被称为“工业机器人之父”。1962年 美国AMF公司生产出“VERSTRAN”(意思是万能搬运),与Unimation公司生产的Unimate一样成为真正商业化的工业机器人,并出口到世界各国,掀起了全世界对机器人和机器人研究的热潮。1962年-1963年 传感器的应用提高了机器人的可操作性。人们试着在机器人上安装各种各样的传感器,包括1961年恩斯特采用的触觉传感器,托莫维奇和博尼1962年在世界上最早的“灵巧手”上用到了压力传感器,而麦卡锡1963年则开始在机器人中加入视觉传感系
16、统,并在1965年,帮助MIT推出了世界上第一个带有视觉传感器,能识别并定位积木的机器人系统。1965年 约翰霍普金斯大学应用物理实验室研制出Beast机器人。Beast已经能通过声纳系统、光电管等装置,根据环境校正自己的位置。20世纪60年代中期开始,美国麻省理工学院、斯坦福大学、英国爱丁堡大学等陆续成立了机器人实验室。美国兴起研究第二代带传感器、“有感觉”的机器人,并向人工智能进发。1968年 美国斯坦福研究所公布他们研发成功的机器人Shakey。它带有视觉传感器,能根据人的指令发现并抓取积木,不过控制它的计算机有一个房间那么大。Shakey可以算是世界第一台智能机器人,拉开了第三代机器人
17、研发的序幕。1969年 日本早稻田大学加藤一郎实验室研发出第一台以双脚走路的机器人。加藤一郎长期致力于研究仿人机器人,被誉为“仿人机器人之父”。日本专家一向以研发仿人机器人和娱乐机器人的技术见长,后来更进一步,催生出本田公司的ASIMO和索尼公司的QRIO。1973年 世界上第一次机器人和小型计算机携手合作,就诞生了美国Cincinnati Milacron公司的机器人T3。1978年 美国Unimation公司推出通用工业机器人PUMA,这标志着工业机器人技术已经完全成熟。PUMA至今仍然工作在工厂第一线。1984年 英格伯格再推机器人Helpmate,这种机器人能在医院里为病人送饭、送药、
18、送邮件。同年,他还预言:“我要让机器人擦地板,做饭,出去帮我洗车,检查安全”。1998年 丹麦乐高公司推出机器人(Mind-storms)套件,让机器人制造变得跟搭积木一样,相对简单又能任意拼装,使机器人开始走入个人世界。1999年 日本索尼公司推出犬型机器人爱宝(AIBO),当即销售一空,从此娱乐机器人成为目前机器人迈进普通家庭的途径之一。2002年 丹麦iRobot公司推出了吸尘器机器人Roomba,它能避开障碍,自动设计行进路线,还能在电量不足时,自动驶向充电座。Roomba是目前世界上销量最大、最商业化的家用机器人。2006年 6月,微软公司推出Microsoft Robotics S
19、tudio,机器人模块化、平台统一化的趋势越来越明显,比尔盖茨预言,家用机器人很快将席卷全球。3 任务分析及方案确定3.1 设计要求1、能判断顾客进门与出门,在有顾客进门时“欢迎光临”,出门时“谢谢光临”;2、能实时统计来访人数及当前店内人数,并用数码管显示;3、电路设计要求具有一定抗干扰措施;4、统计误差不超一人。3.2 设计方案该测试仪由红外信号发射电路、红外信号接收电路、数据处理部分和显示部分组成,下面分别说明各部分的方案。3.2.1 红外信号发射电路方案论证方案一:将NE555接成多谐振荡器,设定频率38KHz其输出端通过三极管接红外发射二极管,即发射端发射38KHz的红外线;方案二:
20、通过单片机产生38KHz的方波信号,作为红外发射的载波信号,在通过三极管放大后,用红外发射二极管发射。在本次设计中,为了节省单片机的资源,采用方案一来产生红外线,采用独立原件来产生红外线,方便调试,不需要软件设计,减轻了设计负担。3.2.2红外信号接收电路方案论证红外接收电路采用SM0038接收头接收3.2.3 显示部分方案论证根据设计要求,可以有以下几种显示方案:方案一:把测量所得的参数通过液晶屏显示,这种方案虽然简便易行,但显示精度不高;方法二:把所有的测量结果送到上位计算机进行显示,显示精度比较高,但不够方便灵活,并且需两个全双工串行接口,实现比较困难;方案三:由数码管来显示进店人数以及
21、店内剩余人数,用LCD1602来显示欢迎语。根据实际情况,进店人数和店内剩余人数没有必要让顾客知道,因此选择方案三。3.3 系统整体框图根据任务要求及电路的实际情况,整个系统的方框图如下:红外探测A红外探测B单片机AT89S52最小系统数码管显示电路LCD1602显示电路显示电路 图14 理论分析与参数计算4.1 红外发射载波信号频率38KHz用NE555组成震荡电路,其输出信号的频率表达式为:f=1.443/(2RB+RA)C,NE555振荡器的震荡频率非常宽,可由外接电阻R和电容C任意设定。上限频率可达100KHz。关于电阻的选择,电阻RA不能太小,太小将使内部放大三极管的电流太大,一般要
22、求大于1K,电阻RB一般选择范围为10RA1000RA。在本次设计中,选用电阻RA为10 K,电阻RB为220 K,通过公式f=1.443/(2RB+RA)C可以算出电容C为100pF。4.2 红外接收部分 当SM0038接收到连续红外线时,就会输出连续的低电平,当有人进门或出门的时候,由于人体阻断了红外线的传输,因此,接收头SM0038就会产生一个高电平,利用高电平的变化情况数据处理部分做出相应的处理。4.3 数据处理部分采用美国Atmel公司的AT89S52进行数据处理。数据处理部分需要处理的是将红外接收装置接收到的电平信号进行处理,判断顾客是进门还是出门,然后做出相应的运算,最后驱动显示
23、设备显示需要的内容。4.4 显示部分通过单片机控制数码管输出显示结果。5 系统各模块电路的设计 前文图1已经给出了系统的整体框图,下面分块说明各个部分。5.1 系统电路图系统的整体电路如图2所示:图2 商场迎宾机器人原理图5.2 红外产生发射电路红外产生电路的主要元件是NE555,NE555为8脚时基集成电路,封装如图3所示 图3主要特点:1. 只需简单的电阻器、电容器,即可完成特定的振荡延时作用。其延时范围极广,可由几微秒至几小时之久。2. 它的操作电源范围极大,可与TTL,CMOS等逻辑电路配合,也就是它的输出电平及输入触发电平,均能与这些系列逻辑电路的高、低电平匹配。3. 其输出端的供给
24、电流大,可直接推动多种自动控制的负载。4.它的计时精确度高、温度稳定度佳,且价格便宜。 图4参数功能特性:供应电压4.5-18V 供应电流3-6 mA 输出电流225mA (max) 上升/下降时间100 ns引脚位配置:图4为NE555结构图。Pin 1 (接地) -地线(或共同接地) ,通常被连接到电路共同接地。Pin 2 (触发点) -这个脚位是触发NE555使其启动它的时间周期。触发信号上缘电压须大于2/3 VCC,下缘须低于1/3 VCC 。Pin 3 (输出) -当时间周期开始555的输出脚位,移至比电源电压少1.7伏的高电位。周期的结束输出回到O伏左右的低电位。于高电位时的最大输
25、出电流大约200 mA 。Pin 4 (重置) -一个低逻辑电位送至这个脚位时会重置定时器和使输出回到一个低电位。它通常被接到正电源或忽略不用。Pin 5 (控制) -这个接脚准许由外部电压改变触发和闸限电压。当计时器经营在稳定或振荡的运作方式下,这输入能用来改变或调整输出频率。 Pin 6 (重置锁定) - Pin 6重置锁定并使输出呈低态。当这个接脚的电压从1/3 VCC电压以下移至2/3 VCC以上时启动这个动作。 Pin 7 (放电) -这个接脚和主要的输出接脚有相同的电流输出能力,当输出为ON时为LOW,对地为低阻抗,当输出为OFF时为HIGH,对地为高阻抗。 Pin 8 (V +)
26、 -这是555个计时器IC的正电源电压端。供应电压的范围是+4.5伏特(最小值)至+16伏特(最大值)。在该设计中,利用NE555和电阻电容产生方波信号,作为红外发射的载波信号,在实际设计中,由于电容是值是固定的,因此在7脚上加了一个10K的电位器,这样就可以任意改变RA、RB的值,从而改变输出信号的频率,测试时,只要连接上示波器,调节电位器W1,就很容易得到频率38KHz的载波,方便了调试,同时也使频率更接近理论值。图5具体电路如图5所示:红外发射管选用850红外发射管,5.3 红外信号接收电路红外接收探头采用SM0038接收头。SM0038是一种小型的红外遥控系统接收器件,电路内置PIN二
27、极管和前置放大器,采用可红外滤波的环氧树脂材料封装。SM0038的解调输出信号可以直接由微处理器解码,本电路的主要特点是可靠性高,不易受环境干扰,并可以防止非控制信号的输出脉冲出现。主要特点: .内置光电检测器和前置放大器 .内置PCM频率滤波器 .防电场干扰设计 .输出电平与TTL和CMOS兼容 .输出低电平有效 .低功率消耗 .不受环境光源干扰 .可以连续进行数据发送(1200bit/s) .输入脉冲串长度10周期/脉冲串内部框图 在本次设计中为了判断顾客是进门还是出门,采用了两组红外接收装置,实际电路如下图 图6当SM0038接收到红外线的时候,P32和P33就会产生低电平,一旦有人进门
28、或出门,阻断了红外线的传输,端口P32和P33就会产生一个高电平,通过检测单片机P32和P33电平的变化,达到检测顾客的进出门情况。比如:在实际安装的时候,将电路1放在门外,将电路2放在门内,在无人进门或出门的时候,P32和P33端口的电平一直为低电平,若有人进门,则P32先出现一个高电平,然后P33才会出现高电平,因此利用这两个电平出现的顺序来判断顾客进门;同样,假如P33先出现高电平,然后P32才出现低电平,则顾客是出门。检测出电平的变化后,通过单片机最小系统的处理,分别在显示屏上显示相应的内容。5.4 数据处理电路数据处理电路是以AT89S52为核心的单片机最小系统。AT89S52是一种
29、低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,也适用于常规编程器。在芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供灵活性、超搞笑的解决方案。AT89S52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支
30、持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。主要性能.与MCS-51单片机产品兼容.8K自己在系统可编程Flash存储器.1000次擦写周期.全静态操作:0Hz33Hz.三级加密程序存储器.32个可编程I/O口线.三个16位定时器/计数器.8个中断源.全双工UART串行通道.低功耗空闲和掉电模式.掉电后中断可唤醒.看门狗定时器.双数据指针.掉电标识符引脚结构及说明AT89C51有三种封装形式,分别如图7,图8,图9所示,其中图8是常见封装形
31、式。Vcc:电源GND:地图9 PLCC封装图8 PDIP封装图7 PQFP/TQFP封装P0口:P0口是一组8位漏极开路型双向I/O口,作为输出口使用时,驱动8个TTL逻辑电平输入。对端口写“1”可作为高阻抗输入使用。在访问外部程序和数据存储器时P0口也可作地址/数据总线使用,此时P0口有内部上拉电阻。在Flash编程时,P0口可以接收指令字节,而在程序校验时,输出指令字节。程序校验时要求有上拉电阻。P1口:P1口是一组带内部上拉电阻的8位双向I/O口。P1口的输出缓冲级可以驱动4个TTL逻辑门电路输入。对端口写“1”时通过内部上拉电阻把端口拉到高电平,此时可以作为输入口使用。作为输入口使用
32、时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。Flash编程和校验时P1口会接收低8位地址。P2口:P2口是一组带内部上拉电阻的8位双向I/O口。P2口的输出缓冲级可以驱动4个TTL逻辑门电路输入。对端口写“1”时通过内部上拉电阻把端口拉到高电平,此时可以作为输入口使用。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器(如执行MOVX DPTR指令)时,P2口送出高8位地址数据。在这种状况下当发送“1”时它有很大内部上拉电阻。在访问的外部数据存储器时,P2口发送满足P2的特殊
33、功能寄存器的8位地址(MOVX RI)。P3口:P3口是一组带内部上拉电阻的8位双向I/O口。P3口的输出缓冲级可以驱动4个TTL逻辑门电路输入。对端口写“1”时通过内部上拉电阻把端口拉到高电平,此时可以作为输入口使用。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表所示:、表1 P3口第二功能表端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外中断0请求输入端)P3.3(外中断1请求输入端)P3.4T0(定时/计数器0计数脉冲输入端)P3.5T1(定
34、时/计数器1计数脉冲输入端)P3.6(外部数据存储器写选通信号输出端)P3.7(外部数据存储器读选通信号输出端)P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。:片外ROM读选通信号输出端。在读片外ROM时,有效,为低电平,以实现对片外ROM的读操作。RST/VPD:复位端,单片机的振荡器工作时,该引脚出现持续2个机器周期的高电平就可使单片机完成复位操作。该引脚的第二功能是VPD,即备用电源的输入端,具有掉电保护功能。若在该引脚接+5V备用电源,在使用中若主电源VCC掉电,可保护片内RAM中的信息不丢失。:片外程序存储器地址允许输入端/编程电压输入端。该引脚有效(低电平)时只
35、选用片外程序存储器,否则计算机上电或复位后先选用片内程序存储器。该引脚的第二功能VDD是对8751片内EPROM编程写入时作为21V编程电压的输入线。:地址锁存允许信号输出/编程脉冲输入引脚。在访问片外ROM期间,每机器周期该信号出现两次,其下降沿用于控制锁存P0口输出的低8位地址。该引脚的第二功能是对8751内部4KB EPROM编程写入时,作为编程脉冲的输入端。XTAL1:片内反相放大器输入端。XTAL2:片内反相放大器输出端。外接晶体时,XTAL1与XTAL2各接晶体的一端,借外接晶体与片内反相放大器构成振荡器。特殊功能寄存器特殊功能寄存器(SFR)的地址空间映象如表1所示。 AT89S
36、52 特殊寄存器映象及复位值并不是所有的地址都被定义了。片上没有定义的地址是不能用的。读这些地址,一般将得到一个随机数据;写入的数据将会无效。 用户不应该给这些未定义的地址写入数据“1”。由于这些寄存器在将来可能被赋予新的功能,复位后,这些位都为“0”。 定时器 2 寄存器:寄存器T2CON 和T2MOD 包含定时器2 的控制位和状态位(如表2和表3所示),寄存器对RCAP2H和RCAP2L是定时器2的捕捉/自动重载寄存器。 中断寄存器:各中断允许位在IE寄存器中,六个中断源的两个优先级也可在IE中设置。 表2 T2CON:定时器/计数器2控制寄存器 T2CON 地址为0C8H 复位值:000
37、0 0000B位可寻址 TF2 EXF2RLCLK TCLK EXEN2TR2C/T2CP/RL27654 3210符号功能TF2定时器2 溢出标志位。必须软件清“0”。RCLK=1 或TCLK=1 时,TF2不 用置位。EXF2定时器2 外部标志位。EXEN2=1 时,T2EX 上的负跳变而出现捕捉或重载 时,EXF2 会被硬件置位。定时器2 打开,EXF2=1 时,将引导CPU执行定 时器2 中断程序。EXF2 必须如见清“0”。在向下/向上技术模式(DCEN=1) 下EXF2不能引起中断。RLCLK 串行口接收数据时钟标志位。若RCLK=1,串行口将使用定时器2 溢出脉冲 作为串行口工作
38、模式1 和3 的串口接收时钟;RCLK=0,将使用定时器1计数 溢出作为串口接收时钟。TCLK串行口发送数据时钟标志位。若TCLK=1,串行口将使用定时器2 溢出脉冲作 为串行口工作模式1 和3 的串口发送时钟;TCLK=0,将使用定时器1计数溢出 作为串口发送时钟。EXEN2定时器2外部允许标志位。当EXEN2=1时,如果定时器2没有用作串行时钟, T2EX(P1.1)的负跳变将引起定时器2 捕捉和重载。若EXEN2=0,定时器2 将视T2EX端的信号无效TR2开始/停止控制定时器2。TR2=1,定时器2开始工作C/T2 定时器 2 定时/计数选择标志位。C/T2 =0,定时; C/T2 =
39、1,外部事件计 数(下降沿触发)CP/RL2捕捉/重载选择标志位。当EXEN2=1时, CP/RL2=1,T2EX出现负脉冲,会引 起捕捉操作;当定时器2溢出或EXEN2=1时T2EX出现负跳变,都会出现自动重载 操作。CP/RL2=0 将引起T2EX 的负脉冲。当RCKL=1或TCKL=1时,此标志位 无效,定时器2溢出时,强制做自动重载操作。双数据指针寄存器:为了更有利于访问内部和外部数据存储器,系统提供了两路16位数据指针寄存器:位于SFR中82H83H的DP0和位于84H85。特殊寄存器AUXR1中DPS=0 选择DP0;DPS=1 选择DP1。用户应该在访问数据指针寄存器前先初始化D
40、PS至合理的值。 表 3a AUXR:辅助寄存器 AUXR 地址:8EH 复位值:XXX00XX0B不可位寻址 WDIDLEDISRTO DISALE 7 6 5 432 10预留扩展用 DISALE ALE使能标志位 DISALE 操作方式 0 ALE 以1/6晶振频率输出信号 1 ALE 只有在执行MOVX 或MOVC指令时激活 DISRTO 复位输出标志位 DISRTO 0 看门狗(WDT)定时结束,Reset 输出高电平 1 Reset 只有输入 WDIDLE 空闲模式下WDT 使能标志位 WDIDLE 0 空闲模式下,WDT继续计数 1 空闲模式下,WDT停止计数 掉电标志位:掉电标
41、志位(POF)位于特殊寄存器PCON的第四位(PCON.4)。上电期间POF置“1”。POF可以软件控制使用与否,但不受复位影响。 表 3b AUXR1:辅助寄存器1 AUXR1 地址:A2H 复位值:XXXXXXX0B 不可位寻址 DPS7654 3 210预留扩展用 DPS 数据指针选择位 DPS 0 选择DPTR寄存器DP0L和DP0H 1 选择DPTR寄存器DP1L和DP1H内部结构框图图10 AT89S52内部结构图以AT89S52为核心的单片机最小系统包括:晶振电路,复位电路以及为了烧写程序方便而加上的ISP下载接口,为了滤除电源中得杂波,还需加上一组电源滤波电容。单片机最小系统原
42、理图如图11所示: 图11 单片机最小系统红外接收探头分别接单片机的12(INT0)和13(INT1)脚,这样在编写程序的时候可以用扫描或中断两种方式进行信号的检测。根据所检测到的信号,再由单片机做出相应的处理。5.5 显示电路5.5.1 LCD1602显示电路在设计开发阶段可以用LCD1602显示,在实际的迎宾机器人实用场合,一般都是用LED点阵屏显示。LCD1602是很常见的一种显示屏,能够同时显示16x02即32个字符。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有
43、一个固定的代码。因为1602识别的是ASCII码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值。以下是1602的16进制ASCII码表:指令集1602通过D0D7的8位数据端传输数据和指令。 显示模式设置: (初始化) 0011 1000 0x38 设置162显示,57点阵,8位数据接口; 显示开关及光标设置:(初始化) 0000 1DCB D显示(1有效)、C光标显示(1有效)、B光标闪烁(1有效) 0000 01NS N=1(读或写一个字符后地址指针加1 &光标加1), N=0(读或写一个字符后地址指针减1 &光标减1), S=1 且 N=1 (当写一个字符后
44、,整屏显示左移) s=0 当写一个字符后,整屏显示不移动 数据指针设置: 数据首地址为80H,所以数据地址为80H+地址码(0-27H,40-67H) 其他设置: 01H(显示清屏,数据指针=0,所有显示=0);02H(显示回车,数据指针=0)。 通常推荐的初始化过程: 延时15ms 写指令38H 延时5ms 写指令38H 延时5ms 写指令38H 延时5ms (以上都不检测忙信号) (以下都要检测忙信号) 写指令38H 写指令08H 关闭显示 写指令01H 显示清屏 写指令06H 光标移动设置 写指令0cH 显示开及光标设置 完毕基本的读写时序图读写操作时序如图1和2所示: 写操作时序: 读
45、操作时序: 在这次设计中使用的原理图如图12所示:图12LCD1602显示屏主要显示:当客人进门的时候显示“欢迎光临”;顾客离开的时候显示“谢谢惠顾”。5.5.2数码管显示电路数码管显示电路主要显示统计出的进店人数以及店内剩余人数,在本次设计中采用了两块四位共阴数码管,一块用于实时显示进店人数,另一块用于实时显示店内剩余人数,两块共阴数码管通过八进制锁存器74HC573和译码器74HC138共同控制,总共需要单片机的12根地址线。具体电路如图13所示:图136 系统软件设计6.1 软件系统结构图在本次软件设计中以红外线接收探头1为进门检测探头,红外线接收探头2作为出门检测探头。本系统软件采用模块化设计方法,整个系统有初始化模块,信号采集模块,人数统计