基于单片机的便携式无线抢答器的设计.doc_第1页
基于单片机的便携式无线抢答器的设计.doc_第2页
基于单片机的便携式无线抢答器的设计.doc_第3页
基于单片机的便携式无线抢答器的设计.doc_第4页
基于单片机的便携式无线抢答器的设计.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南南 昌昌 工工 程程 学学 院院 09 级级毕毕业业(设设计计)论论文文 机械与电气工程系(院) 自动化 专业 毕业设计(论文)题目 基于单片机的便携式无线抢答器的设计 (硬件设计) 学 生 姓 名 周智斌 班 级 09 自动化 学 号 2009100343 指 导 教 师 诸建彬 完成日期 2013 年 4 月 8 日 基于单片机的便携式无线抢答器的设计基于单片机的便携式无线抢答器的设计 (硬件设计)(硬件设计) based portable wireless microcntroller responder design (hardware design) 总计 毕业设计(论文) 29 页 表 格 2 个 插 图 20 幅 摘摘 要要 根据摩尔定律,每 18 个月电子芯片的密集程度会增加一倍,所以基本上每 一年半电子产品就会升级一代。单片机是一种集成电路芯片,他不是完成某一 个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片。所以,单片机已 成为电子产品研制和开发中首选的控制器。为了更好地推广单片机在家电领域 中的实用性用,本次设计介绍了一种基于 stc89c51 单片机设计的无线抢答器。 考虑到现实中使用抢答器的行业和领域各方面的条件,本次设计是使用 at89c51 单片机为核心控制元件设计的一个简易的抢答器,此方案以 at89c51 单片机作为主控核心,与 max232、发光二极管、数码管、蜂鸣器等构成四路抢 答器,利用了单片机的延时电路、时钟电路、定时/中断等电路,设计的抢答器 具有实时显示抢答选手的号码和抢答时间的特点,还有复位电路,使其再开始 新的一轮的答题和比赛,同时还利用 c 语言编程,使其实现一些基本的功能。 本设计的系统实用性高、速度快、功耗低、性能强。它的功能实现是比赛 开始,主持人读完题之后按下总开关,即计时开始,此时数码管开始进行 1s 的 加计时,直到有一个选手抢答时,对应的会在数码管上显示出该选手的编号和 抢答所用的时间,同时该选手对应的发光二极管会发出相应颜色的光,蜂鸣器 也会发出声音,以提示有人抢答本题,如果在规定时间内没有回答问题,则此 轮抢答无效;又或者在规定的时间内没有人做出抢答,则此题作废,即开始重 新一轮的抢答。 关键词:摩尔定律,关键词:摩尔定律,at89c51at89c51 单片机,无线抢答器,计时单片机,无线抢答器,计时 abstract with the constant intellectualization and miniaturization of electronic products, single chip has become the first choice of controller in the electronic product research and development. in order to better promote the single-chip microcomputer in the field of home appliance applications, the design introduces a single-chip design based on the wireless responder stc89c51 monitor. the design proposed using at89c51 microcontroller as the core control elements, to design a simple answer device. this scheme with at89c51 microcontroller as control core, and max232, digital tube, buzzer, etc. posed four responder, using a single chip delay circuit, button reset circuit, clock circuit, timing / interrupt control circuit and so on. designed responder players have the features of real-time display number and answer in the time. by using the reset circuit, you start a new round of the answer and competition. while using c language programming, it also implements some basic functions. the design of the system is practical, accurate, simple, and powerful. its function is to achieve start of the race. when the host reads the question after the press of the main switch, the time begins. at this point the digital control begins the 1s plus time, until a player starts responder, the players number and the time spent to answer will be shown in the digital tube. at the same time the player will be issued corresponding to the corresponding led light, buzzer will emit a sound to prompt that someone will answer in the title. if there is no answer in specified 60s, then this issue is invalided, and it will begin to re-round the answer in. key words:mcs-51,wireless responder,hardware,controller 目目 录录 摘 要i abstract.ii 目 录.iii 第一章 背景.1 1.1 单片机抢答器的背景 1 1.2 单片机抢答器的意义 .1 1.3 抢答器的应用 1 第二章 概要设计.3 2.1 需求分析: 3 2.2 单片机的选择 3 2.2.1 什么是单片机 3 2.2.2 单片机的应用 4 2.2.3 stc89c51 单片机介绍5 2.3 stc89c51 单片机的基本结构5 2.3.1 部分引脚说明:.6 2.3.2. stc89c51 的主要特性.6 2.3.3.stc89c51 功能分析:7 2.3.4 stc89c51 工作方式:.7 2.4 复位电路 7 2.5 定时/计数器 .8 2.6 串口的控制 8 2.7 单片机的存储器配置 10 2.8 可行性分析 .11 2.9 开发环境简介 .11 第三章:系统设计.12 31 系统组成 12 3.1.1 硬件部分12 3.1.2 软件部分21 第四章 软硬件调试23 4.1 硬件调试 .23 4.2 软件调试 .23 4.2.1 程序初始化错误 .23 4.2.2 程序错误 .23 4.3 运行结果: .24 第五章 系统测试.25 5.1 测试方法 25 5.2 测试环境和条件 25 5.3 测试数据 25 5.4 测试结果 25 5.5 对结果的分析与评价 26 结论.27 参考文献.28 致谢.29 附录 1:源代码 .30 附录 2: .37 第一章第一章 背景背景 1.11.1 单片机抢答器的背景单片机抢答器的背景 单片机诞生于 1971 年,经历了 scm、mcu、soc 三大阶段,早期的 scm 单 片机都是 8 位或 4 位的。其中最成功的是 intel 的 8031,此后在 8031 上发展 出了 mcs51 系列 mcu 系统。基于这一系统的单片机系统直到现在还在广泛使用。 随着工业控制领域要求的提高,开始出现了 16 位单片机,但因为性价比不理想 并未得到很广泛的应用。90 年代后随着消费电子产品大发展,单片机技术得到 了巨大提高。随着 intel i960 系列特别是后来的 arm 系列的广泛应用,32 位 单片机迅速取代 16 位单片机的高端地位,并且进入主流市场。 在现实生活中很多地方会用到抢答器,二人们的第一印象就是知识竞赛。 故此我们就选择利用单片机编程来设计抢答器,即使两组的抢答时间相差几微 秒,也能轻松的分辨出哪一组(或哪个选手)先抢答到题。 1.21.2 单片机抢答器的意义单片机抢答器的意义 本系统采用单片机作为整个控制核心。控制系统的四个模块为:显示模块、 语音模块、无线接收和发送模块、抢答器开关模块。该系统通过四个抢答器输 入抢答信号,利用上位机来完成显示功能,用按键来让选手进行抢答,在 pc 机 上显示哪一组先答题的,从而实现整个抢答过程。 1.31.3 抢答器的应用抢答器的应用 随着我国经济和文化事业的发展,在很多公开竞争场合要求有公正的竞 争裁决,诸如证券、股票交易及各种智力竞赛等,举个最简单最常见的例子,比 如有两个人同时打电话给你,先接收到信号的会提示电话接通或其他语音提示, 后接到信号的会到中转站提示正在通话中诸如此类的话语,因此出现了抢答器。 抢答器一般是由很多电路组成的,线路复杂,可靠性不高,功能也比较简单, 特别是当抢答路数很多时,实现起来就更为困难,最主要的是价钱高。因此我 们设计了以单片机为核心的新型智能的抢答器,在保留原始抢答器的基本功能 的同时又增加了数码管显示电路实现了其它功能。抢答器又称为第一信号鉴别 器,其主要应用于各种知识竞赛、文艺活动等场合。 第二章第二章 概要设计概要设计 2.12.1 需求分析:需求分析: 任务要求:设计一套无线抢答器,由抢答分机和主机、上位机组成。由上 位机发出抢答指令后开始接收抢答器的抢答信息,接收完首个抢答信息后自动 屏蔽后续的抢答记录。无线传输采用 433m 无线收发芯片,主机可带分机数达到 64 个。编解码芯片选用固定码芯片 pt2262,pt2272。分机采用“12v,23a”电池 供电。通信距离空旷地可达 1000m。开发上位机软件,能发出“开始抢答” 、 “. 号抢答成功”等语音指令,并在界面上显示抢答成功的号。要求完成抢答器的 设计,设计无线收发功能,实现无线抢答,并开发程序。 任务分析:根据任务要求,需要有一对编码芯片,对发送和接收的无线信 号进行编码和解码,还需要单片机对接收的信息进行处理,发送到 pc 机上,也 就是需要有 pc 机。通过编码芯片 pt2262 将抢答器的信息编码,发送出去,当 接收到无线信号传入 pt2272 芯片,该芯片将对信号进行解码,再将解码后的信 息发送到单片机中进行处理,这就牵涉到单片机一何种方式接收这个信息,本 设计中使用的是中断方式,当 pt2272 接收信息后,进行解码,同时发送一个中 断信号到单片机,通知单片机获取解码后的信息。单片机对接收的信息处理结 束,通过串口发送到上位机,上位机中显示抢答成功的组的序号。 2.22.2 单片机的选择单片机的选择 2.2.12.2.1 什么是单片机什么是单片机 单片机是指一个集成在一块芯片上的完整计算机系统。尽管它的大部分功 能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件: cpu、内存内部和外部总线系统。单片机是将中央处理器,随机存储器。只读存 储器,定时器芯片和 i/o 接口电路集成于一个芯片上的微控制器。 单片机也被称为微控制器(microcontroler) ,是因为它最早被用在工业控 制领域。单片机由芯片内仅有 cpu 的专用处理器发展而来。最早的设计理念是 通过将大量外围设备和 cpu 集成在一个芯片中,使计算机系统更小,更容易集 成进复杂的而对提及要求严格的控制设备当中。intel 的 z80 是最早按照这种 思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 早期的单片机都是 8 位或 4 位的。其中最成功的是 intel 的 8031,因为简 单可靠而性能不错获得了很大的好评。此后在 8031 上发展出了 mcs51 系列单片 机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领 域要求的提高,开始出现了 16 位单片机,但因为性价比不理想并未得到很广泛 的应用。90 年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。 随着 inteli960 系列特别是后来的 arm 系列的广泛应用,32 位单片机迅速取代 16 位单片机的高端地位,并且进入主流市场。而传统的 8 位单片机的性能也得 到了飞速提高,处理能力比起 80 年代提高了数百倍。目前,高端的 32 位单片 机主频已经超过 300mhz,性能直追 90 年代中期的专用处理器,而普通的型号 出厂价格跌落至 1 美元,最高端的型号也只有 10 美元。当代单片机系统已经不 再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系 列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接 使用专用的 windows 和 linux 操作系统。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤 其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些 则是花大力气也很难做到的。一个不是很复杂的功能要是用美国 50 年代开发的 74 系列,或者 60 年代的 cd4000 系列这些纯硬件来搞定的话,电路一定是一块 大 pcb 板,但是如果要是用美国 70 年代成功投放市场的系列单片机,结果就会 有天壤之别。只因为单片机的通过你编写的程序可以实现高智能,高效率,以 及高可靠性。 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片 机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数 据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能 ic 卡, 民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及 程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机 器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批 计算机应用与智能化控制的科学家、工程师。 2.2.22.2.2 单片机的应用单片机的应用 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备 的智能化管理及过程控制等领域,大致可分如下几个范畴: (1).在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便 等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、 功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压 力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化, 且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示 波器,各种分析仪) 。 (2).在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线 的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制 系统等。 (3).在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗 衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花 八门,无所不在。 (4).在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信, 为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备 基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自 动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群 移动通信,无线电对讲机等。 (5).单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪, 监护仪,超声诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十 分广泛的用途。 2.2.32.2.3 stc89c51stc89c51 单片机介绍单片机介绍 stc89c51 系列单片机是宏晶科技推出的新一代超强抗干扰/高速/低功耗的 单片机,指令代码完全兼容传统 8051 单片机,12 时钟/机器周期和 6 时钟/机 器周期可任意选择,最新的 d 版本内部集成 max810 专用复位电路。 相对于市场上其他的单片机,stc89c51 单片机有以下优势: (1)、超强抗干扰:高抗静电;轻松过 2kv/4kv 快脉冲干扰;宽电压,不怕 电源抖动;宽温度范围,-4085,工作频率范围,0-35 mhz。 (2)、三大降低单片机时钟对外部电磁辐射措施:禁止 ale 时钟信号输出; 外部时钟频率降一半,6t 模式;单片机内部时钟振荡器增益降低一半。 (3)、超低功耗:掉电模式下,典型功耗小于 0.1ua;正常工作模式下,典 型功耗为 4ma 7ma;掉电模式可由外部中断唤醒,适用于电池供电系统,如 水表、气表、编写设备等。 (4)、在系统可编程,无需编程器,无需仿真器。 (5)、可送 stcisp 下载编程器。 2.32.3 stc89c51stc89c51 单片机的基本结构单片机的基本结构 stc89c51 系列单片机是宏晶科技推出的新一代超强抗干扰/高速/低功 耗的单片机,指令代码完全兼容传统 8051 单片机,12 时钟/机器周期和 6 时钟/机器周期可任意选择,其引脚分布图如下: 图 2-1 单片机引脚图 2.3.12.3.1 部分引脚说明:部分引脚说明: (1). 电源引脚:vdd(38)接+5v,vss(16)接地 (2). 时钟电路引脚:xtal1(14)xtal2(15)。用于外接石英晶体和微调电容 的两端。是片内振荡电路输入线,振荡频率为 1.2mhz12mhz,典型值为 6、12 或 11.0592mhz。也可采用外部时钟电路。 (3).控制信号引脚 (4).rst:复位引脚,高电平有效 (5).输入输出引脚:89c51 的 i/o 口,四个准双向并行 i/o 端口: p0,p1,p2,p3。端口的负载能力和接口要求: 2.3.2.2.3.2. stc89c51stc89c51 的主要特性的主要特性 增强型 6 时钟/机器周期,12 时钟/机器周期 8051 cpu; 工作电压:5.5v-3.4v(5v 单片机)/ 3.8v-2.0v(3v 单片机) ; 工作频率范围:0-40mhz,相当于普通 8051 的 080mhz,实际工作频率可达 48mhz; 用户应用程序空间 4k/8k/12k/16k/20k/32k/64k 字节; 片上集成 1280 字节/512 字节 ram; 通用 i/o 口(32/36 个) ,复位后为:p1/p2/p3/p4 是准双向口/弱上拉(普 通 8051 传统 i/o 口)p0 口时开漏输出,作为总线扩展用时,不用加上拉电阻, 作为 i/o 口用时,需加上拉电阻。 isp(在系统可编程)/iap(在应用可编程) ,无需专用编程器/仿真器;可 通过串口(p3.0/p3.1)直接下载用户程序,8k 程序 3 秒即可完成一片; 内部集成 max810 专用复位电路(d 版才有) ,外部晶体 20m 一下时,可省 外部复位电路; 共 3 个 16 位定时器/计数器,其中定时器 0 还可以当成 2 个 8 位定时器使 用; 通用异步串行口(uart) ,还可用定时器软件实现多个 uart; 工作温度范围:0-75/-40-+856。 2.3.3.stc89c512.3.3.stc89c51 功能分析:功能分析: vss 接地,vcc 接+5 伏电源,p1.4 与 ds18b20 相连,发出温度转换命令并 接收转换后的温度值,外接晶振引脚 xtal1 和 xtal2 与振荡器相连,由震荡器 给系统产生时钟信号,reset 连接复位电路,stc89c51 与 hd7279 连接,将 ds18b20 测量得到的温度值传送到 hd7279。 2.3.42.3.4 stc89c51stc89c51 工作方式:工作方式: 它的工作方式可以分做复位,低功耗方式等。 (1).复位 复位的主要功能: 初始化操作,pc=0000h 复位引脚:rst 复位影响到的寄存器:除了 p0p3=0ffh,sp=07h,sbuf=不定值之外,其 他寄存器全部清零。 熟悉复位后各寄存器的状态,可以减短初始化程序。 (2).低功耗工作方式 8051:hmos(高密度短沟道 mos)半导体工艺 89c51:chmos=hmos+cmos 89c51 提供两种节电工作方式: (a).空闲工作方式:不向 cpu 供电,只供中断、串行口、定时器部分。 (b).掉电工作方式:所有功能停止工作。 2.42.4 复位电路复位电路 复位方式可以是自动复位,也可以是手动复位,见下图 4。此外, reset/vpd 还是一复用脚,vcc 掉电其间,此脚可接上备用电源,以保证单片机 内部 ram 的数据不丢失。 图2-2 复位电路和晶振电路图 (1)、8位微处理器和控制器 (2)、内部含有4kb 的程序 rom。 (3)、2个16位的计数/定时器。 (4)、内部时钟振荡器 (5)、全双工方式的串行接口(uart)种寻址方式。 (6)、最高时钟振荡频率可达12mhz,大部分指令执行时间为1?s,乘、除指 令为4。 2.52.5 定时定时/ /计数器计数器 stc89c51 单片机有两个 16 位定时/计数器,通过特殊功能寄存器 tmod 的 控制位 c/t 进行选择,tmod 寄存器的各位信息如下表所列。可以看出,2 两个 定时/计数器有四种操作方式,通过 tmod 的 m1 和 m0 选择。2 个定时/计数器的 模式 0、1 和 2 都相同,模式 3 不同。本文中使用的是定时/计数器 0 的定时功 能(c/t=0) ,使用的是模式 1。模式 1 对应的是一个 16 位的定时器,寄存器 th0 和 tl0 是以全部 16 位参与操作,定时时间为: t=(216 - t0 初值)*振荡周期*12 图 2-3 tmod 控制字功能描述 以下介绍各位的功能: m1 和 m0:操作模式控制位。两位可形成 4 种编码,对应于 4 种操作模式。 c/t:定时器/计数器方式选择位,等于 0 表示设定为定时方式,为 1 表示 设定为计数方式。 gate:门控位。等于 0 时,用软件使 tr1=1 就可以启动定时器,等于 1 时, 只有 int0 引脚为高电平且由软件使 tr0 置 1 时,才嫩启动定时器工作。 启动定时器,需要控制寄存器 tcon,tcon 控制字格式如图 tf1tr1tf0tr0ie1it1ie0it0 图 2-4 控制寄存器 tcon 的位定义 2.62.6 串口的控制串口的控制 数据通信方式有两种:并行通信和串行通信。通常根据信息传送的距离决 定采用哪种通信方式。并行通信是指数据的各位同时传送(发送和接收)的通 信方式。其优点是传送速度高;缺点是数据有多少位,就需要多少根线传送。 串行通信指数据是一位一位按顺序传送的通信方式。它的突出优点是只需要一 对传输线(利用电话线就可作为传输线) 。这样就大大降低了传送成本,特别适 用于远距离通信;其传输速度较低。 串行通信的传输方式,有三种:单向、半双工、全双工。本文中适用的桢 格式为一位起始位、8 位数据位、一位停止位。 对串行口的初始化编程,可通过两个控制字分别写入特殊功能寄存器 scon 控制和指示,控制字格式如下图: 图 2-5 特殊功能寄存器 scon 控制 串行口工作方式有四种,通过 sm0 和 sm1 选择通信方式如表 2-2: 表 2-2 串行口通信方式 sm0 sm1工作方式说明波特率 0 0方式 0同步移位寄存器fosc /12 0 1方式 110 为异步收发由定时器控制 1 0方式 211 位异步收发fosc/32 或 fosc/64 1 1方式 311 位异步收发由定时器控制 电源控制寄存器 pcon 中只有 smod 位于串行口工作有关,smod=1 时在串行 口方式 1、方式 2、方式 3 时,波特率和 2smod 成正比;复位是 smod=0。 本文中采用串行口工作方式 1 且 smod=1,不许多机通信、允许接受。方式 1 下,收发一桢数据的格式为 1 位起始位、8 位数据位,1 位停止位,共 10 位。 2.72.7 单片机的存储器配置单片机的存储器配置 图2-6 单片机的内部存储器配置 从用户的角度存储器分 3 个逻辑地址空间: (1)片内外统一编址的 64kb 程序存储器地址空间 0000hffffh; (2)256b 的片内数据存储器地址空间 00hffh(包括低 128b 的内部 ram 地址 00h7fh 和高 128b 的特殊功能寄存器地址空间)即(b)图; (3)64kb 的外部数据存储器或扩展 i/o 接口地址空间 0000hffffh。 (4)画出 ram 的组成 ram 共有 256 个单元,按功能分为两部分低 128 单元(单元地址 00h7fh)和高 128 单元(单元地址 80hffh) 。其中高 128 单元是供给专用 寄存器使用,因这些寄存器的功能已作为专门规定故此称之为特殊功能寄存器 sfr-11 个 sfr 有位寻址作用,而且要说明低 128 单元是单片机的真正 ram 存储 器。 表2-3 ram 的组成图 30h7fh通用 ram 区 20h2fh位寻址区(00h7fh) 18h1fh工作寄存器3区(r7r0) 10h17h工作寄存器2区(r7r0) 08h0fh工作寄存器1区(r7r0) 00h07h工作寄存器0区 (r7r0) 低 128 单元是单片机的真正 ram 存储器,按其用途划分为三个区域: 2.82.8 可行性分析可行性分析 主要的设计实施过程:首先,选择 stc89c51rcx 单片机,以及选购其他电子 元器件:pt2272 和 pt2262 芯片。第二步,使用 protel2004 设计硬件电路原理 图,并决定采用事先设计好的板件焊接。第三步,使用 keil c 软件编写单片机 的 c 语言程序、仿真、软件调试。最后,联合软、硬件调试电路板,完成本次 毕业设计。第四步:用 java 程序编写上位机。 2.2.9 9 开发环境简介开发环境简介 本系统软硬件底层设计软件是采用美国 keil software 公司出品的 51 系 列兼容单片机 c 语言软件开发系统 keil uvision2 。keil uvision2 是众多单 片机应用开发软件中优秀的软件之一,它支持众多不同公司的 mcs51 架构的芯 片, 它集编辑、编译、仿真等于一体,同时还支持汇编和 c 语言的程序设计, 它的界面和常用的微软 vc+的界面相似,界面友好,易学易用,在调试程序, 软件仿真方面也有很强大的功能。 操作系统:winxp; 开发工具:keil c; 第三章:系统第三章:系统设计设计 3 31 1 系统组成系统组成 根据设计的要求,设计出无线抢答器装置的基本结构框图如图 3-1 所示。 rs232 无线信号 图 3-1 无线抢答器装置的基本结构框图 3.1.13.1.1 硬件部分硬件部分 该设计主要由以下几个功能单元构成: (1)cpu 用 stc89c51 单片机获取无线设备接收到得信息,并对收到的信息进行处理, 确定发射该信息的设备,将处理后的信息通过串口发送到 pc 机上。 mcupc 机 pt2272pt2262 图 3-2stc89c51 单片机最小系统 引脚 p1.5p1.6:连接芯片 max232 的串口数据输入输出引脚,在单片机 与 max232 芯片间传送数据。 引脚 rst:连接单片机复位电路。 引脚 int0:外部中断 0,pt2272 接收到无线信号,通过该引脚产生中断。 引脚 xtal1、xtal0:连接晶振。 引脚 vss:接地。 引脚 p2.1:连接发光管 ls2。 引脚 p2.2 p2.7:连接芯片 pt2272,将无线信号解码后的信息传送给单 片机处理。 引脚 vdd:连接外部电源。 (2)无线收发电路 pt2262/2272 是台湾普城公司生产的一种 cmos 工艺制造的低功耗低价位 通用编解码电路,pt2262/2272 最多可有 12 位(a0-a11)三态地址端管脚(悬空, 接高电平,接低电平),任意组合可提供 531441 地址码,pt2262 最多可有 6 位 (d0-d5)数据端管脚,设定的地址码和数据码从 17 脚串行输出,可用于无线遥控 发射电路。 编码芯片 pt2262 发出的编码信号由:地址码、数据码、同步码组 成一个完整的码字,解码芯片 pt2272 接收到信号后,其地址码经过两次比较核 对后,vt 脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端 一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,pt2262 不 接通电源,其 17 脚为低电平,所以 315mhz 的高频发射电路不工作,当有按键 按下时,pt2262 得电工作,其第 17 脚输出经调制的串行数据信号,当 17 脚为 高电平期间 315mhz 的高频发射电路起振并发射等幅高频信号,当 17 脚为低平 期间 315mhz 的高频发射电路停止振荡,所以高频发射电路完全收控于 pt2262 的 17 脚输出的数字信号,从而对高频电路完成幅度键控(ask 调制)相当于调 制度为 100的调幅。 pt2262 特点 1、cmos 工艺制造,低功耗 2、外部元器件少 3、rc 振荡电阻 4、工作电压范围宽:2.6-15v 5、数据最多可达 6 位 6、地址码最多可达 531441 种 pt2262 芯片的外形图如图 3-3,各引脚的功能见表 3-1 图 3-3 pt2262 芯片的外形图 表 3-1 pt2262 引脚的功能说明 名称 管脚说 明 a0-a11 1-8、10- 13 地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空), d0-d57-8、10- 13 数据输入端,有一个为“1”即有编码发出,内部下拉 vcc18电源正端() vss9电源负端() te14编码启动端,用于多数据的编码发射,低电平有效; osc116振荡电阻输入端,与 osc2 所接电阻决定振荡频率; osc215振荡电阻振荡器输出端; dout17编码输出端(正常时为低电平) pt2272 芯片的外形图如图 3-4,其引脚功能如表 3-2 图 3-4 pt2272 芯片的外形图 表 3-2 pt2272 芯片的引脚功能说明 名称 管脚说 明 a0-a11 1-8、10- 13 地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),必须与 2262 一致,否则不解码 d0-d57-8、10- 13 地址或数据管脚,当做为数据管脚时,只有在地址码与 2262 一致,数据 管脚才能输出与 2262 数据端对应的高电平,否则输出为低电平,锁存型 只有在接收到下一数据才能转换 vcc18电源正端() vss9电源负端() din14数据信号输入端,来自接收模块输出端 osc116振荡电阻输入端,与 osc2 所接电阻决定振荡频率; osc215振荡电阻振荡器输出端; vt17 解码有效确认 输出端(常低)解码有效变成高电平(瞬态) pt2262/pt2272 芯片的传输的数据有地址码和数据码,地址码和数据码都 用宽度不同的脉冲来表示,两个窄脉冲表示“0” ;两个宽脉冲表示“1” ;一个 窄脉冲和一个宽脉冲表示“f”也就是地址码的“悬空”如图 3-5: 图 3-5 pt2262/2272 芯片编解码说明 pt2262/2272 芯片每组字码之间有同步码隔开,所以我们如果用单片机软 件解码时,程只要判断出同步码,然后对后面的字码进行脉冲宽度识别即可。 一个字码由 12 位 ad 码(地址码加数据码,比如 8 位地址码加 4 位数据码)组 成,每个 ad 位用两个脉冲来代表: 两个窄脉冲表示“0” ;两个宽脉冲表示“1” ;一个窄脉冲和一个宽脉冲表示 “f”也就是地址码的“悬空” 。 2262 每次发射时至少发射 4 组字码,2272 只有在连续两次检测到相同的 地址码加数据码才会把数据码中的“1”驱动相应的数据输出端为高电平和驱动 vt 端同步为高电平。因为无线发射的特点,第一组字码非常容易受零电平干扰, 往往会产生误码,所以程序可以丢弃处理。pt2272 解码芯片有不同的后缀,表 示不同的功能,有 l4/m4/l6/m6 之分,其中 l 表示锁存输出,数据只要成功接 收就能一直保持对应的电平状态,直到下次遥控数据发生变化时改变。m 表示 非锁存输出,数据脚输出的电平是瞬时的而且和发射端是否发射相对应,可以 用于类似点动的控制。后缀的 6 和 4 表示有几路并行的控制通道,当采用 4 路 并行数据时(pt2272-m4),对应的地址编码应该是 8 位,如果采用 6 路的并行 数据时(pt2272-m6),对应的地址编码应该是 6 位。 本文中采用 8 位地址码,这时编码电路 pt2262 和解码 pt2272 的第 18 脚 为地址设定脚,有三种状态可供选择:悬空、接正电源、接地三种状态,3 的 8 次方为 6561,所以地址编码不重复度为 6561 组,只有发射端 pt2262 和接收 端 pt2272 的地址编码完全相同,才能配对使用,遥控模块的生产厂家为了便于 生产管理,出厂时遥控模块的 pt2262 和 pt2272 的八位地址编码端全部悬空, 这样用户可以很方便选择各种编码状态,用户如果想改变地址编码,只要将 pt2262 和 pt2272 的 18 脚设置相同即可,例如将发射机的 pt2262 的第 1 脚 接地第 5 脚接正电源,其它引脚悬空,那么接收机的 pt2272 只要也第 1 脚接地 第 5 脚接正电源,其它引脚悬空就能实现配对接收。当两者地址编码完全一致 时,接收机对应的 d1d4 端输出约 4v 互锁高电平控制信号,同时 vt 端也输出 解码有效高电平信号。用户可将这些信号加一级放大,便可驱动继电器、功率 三极管等进行负载遥控开关操纵。设置地址码的原则是:同一个系统地址码必 须一致;不同的系统可以依靠不同的地址码加以区分。 pt2262 和 pt2272 除地址编码必须完全一致外,振荡电阻还必须匹配, 否则接收距离会变近甚至无法接收,随着技术的发展市场上出现一批兼容芯片, 在实际使用中只要对振荡电阻稍做改动就能配套使用,根据我们网站的实际使 用经验, 下面的参数匹配效果较好(如表 3-3): 表 3-3 pt2262/pt2272 电阻匹配表 编码发射芯片编码接收芯片 pt226 2 pt22 60 sc226 0 sc22 62 cs5211pt2272/sc2272/cs5212 1.2m无3.3m1.1m1.3m200k 1.5m无4.3m1.4m1.6m270k 2.2m无6.2m2m2.4m390k 3.3m无9.1m3m3.6m680k 4.7m1.2m12m4.3m5.1m820k pt2262/2272 芯片实物图(图 3-6): 图 3-6 pt2262/pt2272 芯片实物图 (1)本文中 pt2272 芯片主要功能是当接收到无线信号时,通过 rf_in 引脚 发送到芯片 pt2272 中,pt2272 产生一个脉冲,由 rf_int 引脚发送到 stc89c51 中,产生一个中断信号,单片机开始进入中断处理程序,在中断处理程序中, 单片机接收来自 pt2272 的数据,进行处理后通过串口发送到 pc 机上。原理图 如图 3-7,3-8 所示 图 3-7 pt2272 芯片 图 3-8 无线接收芯片 (2)pt2262 编码芯片 如图 3-9,3-10 所示。编码芯片 pt2262 发出的编码信号由:地址码、数据 码、同步码组成一个完整的码字,频率是 315m。s1 是一个按键,当按键按下时, pt2262 芯片的 vcc1 引脚接通高电平,同时 ds1 点亮,pt2262 芯片通过发射头 将码字发送出去。 图 3-9 pt2262 芯片引脚图 图 3-10 发射头结构 (3)传输电路 串口通过 max232 芯片和单片机连接,单片机通过串口和 pc 机通信,单片 机接收 pt2262 发出的信号,并经过处理,通过串口发送给 pc 机。 图 3-11 串口电路原理图 (4)蜂鸣器 当开始抢答后,单片机得到最先按下抢答器的信息,蜂鸣器明叫表示接收 到抢答信号。 图 3-12 led 结构图 (5)电源 h 7805 系列为 3 端正稳压电路,to-220 封装,能提供多种固定的输出电压, 应用范围广。内含过流、过热和过载保护电路。带散热片时,输出电流可达 1a。虽然是固定稳压电路,但使用外接元件,可获得不同的电压和电流。输出 电流可达 1a 输出电压有:5v 过热保护短路保护输出晶体管 soa 保护。图中电 容的作用是提供稳定的电压。 vcc 0.1uf c13 c11 0.1uf vout 3 vin 1 gnd 2 u27805 10uf c10 10uf c12 vdd 1 2 3 j1 pwr2.5 vdd 图 3-13 电源结构图 (6) 接线图: 无线接收端连接:图中连连接头 h2 的连接方式要和 pt2262 芯片中 16 号 引脚相同,否则无法接收到无线信号如图 314。 图 314 无线接收端连接图 无线发送端连接:发送端出了 pt2262 芯片的 16 号引脚要与 pt2272 的 h2 接头的连接保持一直外,每个抢答器的 h1、h2 接头的接法不能相同,因为 在单片机中要根据这个地址判断是哪个抢答器抢答成功。 图 315 无线发送端连接图 3.1.23.1.2 软件部分软件部分 首先,单片机检测是否有上位机通过串口发送的开始命令,如果没有,则 继续循环检测,如果有,执行单片机系统初始化和串口初始化,设置一个 end 值判断是否已经有哪组抢答成功,end=1 表示还没有,则执行抢答程序,将该 组号发送到上位机,end=0 表示已经抢答成功。不予处理。如果程序这样执行, 必然会处于无限循环的状态,所以设置一个值 n=6000,每检测是否有抢答信息 时减 1,当 n0) if(flag=1) ex0=0; beep(); send_char(wire_data); end=0; flag=0; n-; void int0_int(void) interrupt 0 ex0=0; wire_data = (p22) flag=1; ex0=1; void send_char(unsigned char t) sbuf=t; while (ti= 0 ); ti= 0 ; unsigned char receive_data(void) while(ri=0); temp = sbuf; ri = 0; return temp; void system_init(void) bell =0; flag=0; it0 = 1; ex0=0; ea=1; void uart_init(void) scon=0x50; /串口控制字 工作方式 1 不允许多机通信 允许接受 pcon=0x80; /电源控制寄存器 smod =1 波特率加倍 tmod=0x00; /tmod tmod |= 0x20 ; /tmod: timer 1, mode 2, 8-bit reload tmod |= 0x01;/timer0 作 16 位定时器,为空转定时器 th0=0x4c; tl0=0x00;/50ms 定时 th1 = 0xfa ; /baud:9600 fosc=11.0592mhz fd tr1=1; void delay(int n) for(;n0;n-); void beep(void) bell=1; delay(1000); bell=0; 上位机 java 代码: application.java: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class application extends jframe jtextarea area = new jtextarea(); jtextfield text = new jtextfield(20); public static application app; public application() app = this; jpanel panel = new jpanel(); jbutton button = new jbutton(“开始抢答“); button.addactionlistener(new actionlistener() public void actionperformed(actionevent e) simpleread.write(); ); new simpleread(“); this.add(button,borderlayout.north); this.add(new jscrollpane(area),borderlayout.center); this.add(text,borderlayout.south); this.setdefaultcloseoperation(jframe.exit_on_close); this.setsize(400,400); this.setvisible(true); public static void main(string args) new application(); simple.ja

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论