毕业论文-单片机双机通信酒精传感器设计.doc_第1页
毕业论文-单片机双机通信酒精传感器设计.doc_第2页
毕业论文-单片机双机通信酒精传感器设计.doc_第3页
毕业论文-单片机双机通信酒精传感器设计.doc_第4页
毕业论文-单片机双机通信酒精传感器设计.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

本本 科科 毕毕 业业 论论 文文 (2013 届)届) 题题 目目 单片机双机通信酒精传感器设计 学学 院院 理学院 专专 业业 光信息科学与技术 班班 级级 学学 号号 学生姓名学生姓名 任课教师任课教师 完成日期完成日期 2013 年 05 月 05 日 杭州电子科技大学本科毕业论文 摘要 本文设计的是一款基于 PIC16F877 单片机与 MQ-3 酒精浓度传感器的酒精浓度测 量仪。可以实现 MQ-3 将酒精浓度信号转换成模拟电信号,然后通过单片机实现模拟 电信号的识别采集和转化为数字量再通过 SPI 接口进行双机通信,并且在第二片单片 机上通过数码管显示采数字量。这样就可以完成酒精浓度测试的基本任务了。 本设计最终目的是制作出实物,硬件部分使用 PIC16F877 单片机、4 位一体数码 管、MQ-3 气敏酒精传感器、焊接用电路板、导线、电容、电阻、晶振等器件。软件编 程语言将会使用 C 语言。在本设计中采用的 SPI 双机通信技术,会使得制作出的成品 功能更加的灵活同时也留下了拓展更多功能的空间。 关键词:PIC 单片机;酒精传感器;SPI 双机通信;A/D 转换;数码管显示 杭州电子科技大学单片机课程设计 ABSTRACT It is a design in this paper , based on PIC16F877 MCU and MQ-3 alcohol concentration sensor alcohol concentration measuring instrument. It can convert alcohol concentration signals into analog signals , then achieved the identification of analog signals acquisition and convert to digital quantity by the SPI interface communication between two MCU, and on the second piece of MCU through digital tube display digital quantity . So we can complete the basic task of alcohol concentration test . The ultimate aim is to produce physical design , hardware part using PIC 16F877 MCU , four digital tube , MQ-3 alcohol gas sensitive sensor , circuit board soldering , conductor , capacitor , resistor , resistor , crystal vibration device , etc . Software will use C programming language . In this design using the SPI communication technology between two MCU , Will make finished product function to produce more flexible at the same time, it left behind to expand more functions of space. Keywords: PIC MCU; Alcohol sensor; SPI communication between two MCU; A/D conversion; Digital tube display 杭州电子科技大学单片机课程设计 目 录 1引言. .1 1.1 单片机的发展及现状.1 1.2 单片机的引用范畴及发展趋势.2 1.3 单片课题设计的任务和要求. .2 2酒精测试仪的背景知识. .4 2.1 酒精测试仪的种类.4 2.2MQ3 气敏酒精传感器介绍. .4 2.3 传感器未来的发展方向.5 2.4 传感器的原理.7 2.5 气敏传感器的发展状况和技术水平.7 3硬件设计. .8 3.1 总体设计. .8 3.1.1 单片机的最小系统.8 3.1.2AD 模块.9 3.1.3SPI 双机通信模块.12 3.1.4 显示模块.15 3.2 单片机仿真以及电路. .15 4软件设计.17 4.1 总体方案.17 4.2 程序流程图.17 4.3 软件编程语言的选择.17 4.3.1 汇编语言.18 4.3.2C 语言.18 4.3.3 汇编语言与 C 语言的混合编程.19 4.4 主要模块的程序设计.19 4.4.1A/D 转换 C 程序设计.19 4.4.2SPI 双机通信 C 程序设计.20 5软件工具的介绍及使用.22 6结论.24 致谢.25 参考文献.26 杭州电子科技大学单片机课程设计 杭州电子科技大学单片机课程设计 1 1.引言 1.1 单片机的发展以及现状 单片机通常被称为微控制器也有人称它为单片微型计算机,单片机的叫法在我国 比较流行。单片机就是把中央处理器 CPU、随机存储器 RAM、只读存储器 ROM、输 入/输出端口 I/O 等主要计算机功能部件,都集成在了一块集成电路芯片上,从而形成 一部完整的微型计算机1。随着科学技术不断发展,单片机也在我们日常的生活中发挥 着越来越重要的作用,涉及到我们生活的方方面面。 现今,单片机大家庭中成员越来越多。主流的单片机有如下几种:Intel 公司的 51 系列单片机、Atmel 公司的 51 系列单片机、美国微芯公司的 PIC 系列单片机、Atmel 公司的 AVR 单片机、摩托罗拉(飞思卡尔)单片机等。这些单片机都有各自的优点和 独特之处,但功能大多是大同小异,有着很多的共通之处。PIC 单片机是由美国的 MICROCHIP(微芯)公司研发的,自 1988 年推出的 PIX16C5X 单片机实现现场可编程至 今为止,经过几十年的发展和创新先后推出了过百种型号的单片机。PIC 单片机功耗 低、性能稳定使得其在单片机市场上占据了一定的份额。PIC 系列单片机由于采用了 精简指令集、哈佛总线结构、流水线取指的方式,较好的抗干扰能力,极高的性价比, 在市场十分受消费者的欢迎。在工业控制、消费电子产品、办公自动化设备、智能仪 器仪表、汽车电子等诸多领域十分的流行1。哈佛总线结构的说法是相对于普林斯顿结 构而言,其程序寄存器和数据寄存器拥有不同的物理地址,有效的解决了普林斯顿结 构中程序寄存器和数据寄存器局限工作带宽的问题。目前根据指令总线的位数可以将 PIC 单片机分为 3 个系列即,基本级 PIC 系列 MCU、中级 PIC 系列 MCU、高级 PIC 系列 MCU。 本设计中将会用到的 PIC16F877 单片机就是中级 PIC 系列的单片机。PIC16F877 单片机的内核特色有:高性能的 RISC 结构 CPU、精简指令集,仅有 35 条、8 级硬件 堆栈、4 种寻址方式、可编程代码保护、低功耗、高速 CMOS 技术、宽工作温度范围, 在线串行编程技术 ICSP 等。外围特色有:同步串行口 SSP、通用异步串行口 USART,多通道 10 位 A/D 转换器等2。 杭州电子科技大学单片机课程设计 2 图 1.1 PIC16F877 单片机 1.2 单片机的应用范畴及发展趋势 近些年来,科学技术的发展突飞猛进,各种新兴技术不断被创造发明。人们对生 活的要求越来越高,不再局限于最基本的需求而是希望能够追求更高层次的享受。基 于这个背景,各种各样用于改善人们的生活的技术同时也越来越完善。单片机无论是 在人们的日常生活还是工业生产中都扮演着十分重要的角色。甚至可以说几乎不可能 找到哪一个范畴中找不到单片机的踪迹。 单片机体积小、功耗低、控制能力强、方便扩展等诸多优点让它可以带各种测量 仪器的领域中大展拳脚。配合传感器件可以完成很多数据的精密测量。例如:电压、 温度、酒精浓度、功率、流量,压力等等。利用单片机制成的仪表要比一般的仪表更 加的精密,功能更加的优良。对于一台测量仪器而言,精确就是测量仪器的灵魂所在, 所以说单片机更加的适合精密仪器的制作。单片机的应用五花八门,其中有很大一部 分是在家电控制方面,例如:电视的语音控制、电饭煲的定时控制、音响自动声道控 制、全自动洗衣机、声控台灯,空调自动调节温度等等。单片机经过不断的发展和完 善,现在通信接口已经成为单片机的标准配置之一,几乎很难找到没有通信接口的单 片机了,除非是特别定制的特殊用途的用不到通信接口的功能性单片机。这就为计算 机和外围设备的通信提供可靠同时可控的沟通桥梁,是计算机对外围设备的操纵更加 的灵活。单片机不仅仅是只在生活领域有着不可替代的作用同时在工业产业中也非常 的重要,一般的智能控制系统例如:简单的流水线操作、声光报警系统,机械智能化 管理等等都可以通过单片机来完成。甚至于武器导弹等军事领域也会有单片机的身影, 例如:自动装弹系统、无线引爆炸弹装置,定时炸弹等等。汽车工业中,单片机发挥 的作用也是至关重要的,例如:电源控制、灯光控制、各种仪表,GPS 导航等等。涉 及到单片机的产品各种各样,不胜枚举。 尽管单片机的用途十分广泛,但是单片机也不是万能的。由于单片机普遍存在硬 件的局限性,所以并不能完成太过于复杂的实时操作流程。单片机的未来发展趋势, 为了达到低功耗的目的制作工艺上要更多的采用 CMOS 工艺;为了使单片机能够更加 的适应复杂的操作环境或者解决冗杂的问题,必须要提高单片机与其它外围设备的通 信效率;由于单片机端口资源的有限,要想更有效的利用单片机就必须要开发更为便 利串行口方式的外围扩展;为了扩展更多功能,必须增加内存储容量;扩展总线的宽 度以达到提高程序运算的速度和能力;将更多实用的模块集成到单片机内部以达到简 化外围电路的目的;单片机性能的稳定性还需要进一步的提高,以适应要求更加精确 的环境。 杭州电子科技大学单片机课程设计 3 1.3 课题设计的任务和要求 任务: (1)了解酒精传感器 MQ-3 的原理以及使用方法。 (2)单片机 AD 模块对酒精浓度信号的采集编程。 (3)单片机采用的协议及编程。 (4)对酒精浓度转化的电信号采集,传送并在数码管上显示数值。 要求: (1)设计出 MQ-3 气敏酒精传感器将酒精信号转化为电信号的电路。 (2)设计出单片机对电信号 采集的电路以及软件编程。 (3)将模拟量转化为数字量并通过 SPI 端口将数字量传输给另一块单片机。 (4)通过数码管显示数字量。 (5)对产品进行实验分析。 杭州电子科技大学单片机课程设计 4 2酒精测试仪的背景知识 2.1 酒精测试仪的种类 随着生活水平的提高,中国社会的私家车数量持续增加。随着私家车持有量持续 增加的是交通事故发生数量的不断提高,这其中就有相当一部分的交通事故是由酒后 驾车造成的。中国已经将酒后驾驶的行为定性为犯法,并列入到刑法中,相应的是越 来越多的人关注酒后驾驶这一问题,酒精测试仪的产生也就有了充足的理由。酒精测 试仪,对于交警在执法中检测驾驶人是否酒后驾车是一个十分重要的手段,也是最主 要的检测方法。 近年来随着经济迅速发展,人们的生活水平日夜提高。社会上灯红酒绿,车水马 龙的场景越来越常见。各式各样的应酬也越来越多,而酒这东西在这些场合中似乎总 少不了。而在交通安全中,酒驾作为交通安全的第一杀手,俨然已经引起了我们的高 度重视。酒后驾车频频发生给人们的生活和生命安全带来了巨大的伤害。酒后驾驶引 起的交通事故是由于司机饮酒过多造成酒精浓度较高,导致精神麻痹,反应迟钝,肢 体不受大脑控制。而人体酒精浓度低于一个特定值时就不出现上述症状从而可以避免 发生危险。因此,当执法人员能及时合理有效地做好酒精的检测,才能有效控制酒驾, 减少司机的违法行为,保证交通安全。 所以,研究一个酒精测试是非常有必要和意 义的事。 当前可以对气体中酒精浓度进行测量检测的仪器大致上可以分为以下 5 种基本类 型:第一种,气体色谱分析型酒精浓度测试仪;第二种,电化学型酒精浓度测试仪; 第三种,比色型酒精浓度测试仪;第四种,半导体型酒精测浓度试仪;第五种,红外 线型酒精浓度测试仪。就当前来说,最流行的两种是半导体型和电化学型两种类型的 酒精浓度测试仪。 2.2 MQ-3 气敏酒精传感器介绍 由于价格和使用方便的原因,目前常用的只有燃料电池型(电化学型)和半导体型 两种类型。燃料电池是当前全世界都在广泛研究的环保型能源,它可以直接把可燃气 体转变成电能,还能不产生污染,酒精传感器只是燃料电池的一个分支。燃料电池酒 精传感器采用贵金属白金作为电极,在燃烧室内充满特种催化剂,使进入燃烧室内的 酒精充分燃烧转变为电能,也就是在两个电极上产生电压,电能消耗在外接负载上, 电压与进入燃烧室内气体的酒精浓度成正比。与半导体型相比,燃料电池型呼气酒精 测试仪具有稳定性好,精度高,抗干扰性好的优点。但是由于燃料电池酒精传感器的 杭州电子科技大学单片机课程设计 5 结构要求非常精密,制造难度相当大,加上材料成本高,因此价格相当昂贵,是半导 体酒精传感器的几十倍。 呼出气体酒精含量检测仪是公安交通管理部门判断驾车司机是否酒后驾车的主要 检测设备,是现场出具执法凭证的唯一手段。保证检测设备的准确性和统一性是保障公 民权益和交警依法行政、公平执法的必要条件3。所以,对于酒精测试仪而言对酒精传 感器的要求还是比较高的,要求传感器灵敏度要够高、抗环境干扰能力要强、输出信 号范围要够大,性能稳定性要够好。MQ-3 气敏酒精传感器是本设计中检测部分的最核 心的部件,它的性能很大程度上影响着整个酒精浓度测试仪的性能。 MQ-3 气敏酒精传感器有微型三氧化二铝陶瓷管和二氧化锌敏感层、测量电极和加 热器件构成的敏感元件固定在塑料或者不锈钢的腔体内,加热器为气敏元件的工作提 供了必要的工作条件4。MQ-3 气敏酒精传感器,因为其良好的识别能力、很长的使用 寿命、出色的抗干扰能力和抗腐蚀能力,在酒精传感器中是一款十分受欢迎的气敏酒 精传感器。MQ-3 对乙醇蒸汽有很高的灵敏度和良好的选择性 快速的响应恢复特性长 期的寿命和可靠的稳定性简单的驱动回路非常适用于于机动车驾驶人员及其他风险作 业人员的酒后监督检测和其他场所乙醇蒸汽的探测。 MQ-3 的工作环境:适用于酒精、探测范围 10ppm 至 1000ppm 酒精、特征气体 125ppm 酒精、灵敏度 R in air/ Rin typical gas5、敏感体电阻 1 至 20 千欧(空气中)、 响应时间小于 10s、恢复时间小于 30 秒、加热电阻 28 至 34 千欧、加热电流小于等于 180 毫安,加热电压 5 伏特。如图 2.1 是 MQ-3 的结构和外形 2.2 所示是 MQ-3 的标准 回路。 图 2.1 MQ-3 的结构和外形 杭州电子科技大学单片机课程设计 6 图 2.2 MQ-3 的标准回路 2.3 传感器未来的发展趋势 众所周知,在气敏传感器的应用方面 ,目前最广泛的是可燃性气体气敏传感器,已普 及应用于气体泄漏检测和监控,从工厂企业到居 民家庭,应用十分广泛。仅以用于安全 保护家用燃气泄漏报警器为例,日本早在 1980 年 1 月就开始实行安装城市煤气、液化 石油气报警器法规。美国目前已有 6 个州立法,规定家庭、公寓等都要安装 CO 报警 器。而报警器的种类相当繁多,有用于一般家庭、集体住宅、饮食酒店 、医院、学校、 工厂的各种气体报警器和系统,有单体分离型报警器、外部报警系统、集中监视系统、 遮断联动系统、防止中毒报警防护系统等等。结构型式上有袖珍型便携式、手推式 、 固定式等;工业用固定式报警又有壁挂式、台放式、单台监控式 、多路巡检式等等。 近年来气体检测技术与计算机技术的相结合,实现了气敏传感器的智能化和多功能化。 近些年来,科学技术的发展日新月异,传感器也搭上了科技发展的顺风车,半导体 技术的突飞猛进为传感器的发展带来了优越的条件。同时,现阶段各个系统对传感器 的要求也越来越高,传感器的未来发展必然有以下几种方向。 第一,由于当前的各种产品都期望在有限的物理空间内完成功能更加强大的产品, 所以就要求产品的各个部件能够完成更多的工作。当前的传感器大多都是为了其它控 制系统服务的并不能够自主进行数据处理等工作,如果传感器内部可以集成某种特殊 功能的芯片,就可以感器可以独立的完成特定的任务,实现一定程度的智能化。所以 说智能化是传感器发展的一个必然的方向。第二,传感器功能的多样化,在一个复杂 的系统上可能需要很多种不同的传感器,如果有一种传感器可以同时实现多种功能, 那么将会极大的减少有限的物理空间的占用和简化外围电路。那么,传感器功能的多 样化也是一个十分有意义的研究方向。第三,为了满足传感器多功能的开发和智能化 拓展的需要,传感器的固态化是必要的条件,目前物理型传感器因其反应灵敏便于集 成等优点发展的十分迅猛。 目前传感器产业将进一步向着生产规模化、专业化和自动化方向发展。随着新型 杭州电子科技大学单片机课程设计 7 敏感材料的加速开发和各种新技术的综合运用 ,同时伴随着电子技术突飞猛进的发展, 传感器行业近几年的发展速度较快 ,其中气敏传感器作为产业化发展 的重点产品之一,广泛应用于建材、化工、建筑、环保、疗、家电等领域,已获得长足 的进步。要体现在: 第一,目前用于工业上的气敏传感器的主要产品包括可燃性气敏传感器、CO、N H 3 、NO 等毒性气敏传感器、氧传感器、溶氧传感器等。此外气敏传感器还广泛应用 于居民家庭,如气体泄漏检测、人工嗅觉等等。第二,随着新材料、新工艺和新技术的 应用, 气敏传感器的性能更趋完善,使传感器的小型化、微型化和多功能化具有长期稳定性好、 使用方便 、价格低廉等优点。具有微处理器的气敏传感器实现了智能化、多功能化。 第三,气敏传感器将在充分利用微机械与微电子技术、计算机技术、信号处理技术、 传感技术、故障诊断技术、智能技术等多学科综合技术的基础上得到发展。第四,生 物芯片的开发和数据处理能力的提高将大大推动 “闻” 、 “尝” 、 “触”这三种感觉 传感器的发展和性能的提高,从而使我们对周围世界的认识进人更深的层次,同时也将在 诸。多领域为我们提供方便而有效的工具。第五,随着纳米技术和蓝牙技术的进一步 发展, 纳米传感器和蓝牙传感器将获得巨大的发展。第六,气敏传感器具有十分广阔的现实 市场和潜在的市场需求14。 2.4 传感器的原理 传感器是一种能够感受被测量并按照一定的规律将被测量转换成可用输出信号的器 件或装置,它是获取信息的重要工具,在现代测控系统和自动控制系统中占有重要的 地位。早在 20 世纪 30 年代人们就已发现金属氧化物具有气敏效应,而半导体气敏元 件则是在 60 年代初期研制成功的,最先研制的 ZnO 薄膜元件,它是利用 ZnO 薄膜电 阻接触的可燃性气体浓度增加而下降,实现对可燃性气体检测。继而又发现在 SnO2 中 添加 Pt 或 Pd 等贵重金属做增感剂能提高其灵敏度。 电化学气体传感器利用气敏电极或者气体扩散电极等构成一系列电池测量各种气体 含量, 其中气敏电极测量一些溶解在溶液中气体的含量或者用于环境监测, 如 O2、 CO2、 SO2、 NH3、HCN、 HF 等气体,尤其是固体电解质气敏传感器能适应高温、 高 压等恶劣环境和高浓度的场合。这些气体传感器结构简单,选择性好,而且能快速响应, 便于自动测量和控制。 杭州电子科技大学单片机课程设计 8 2.5 气敏传感器的发展状况和技术水平 在应用方面,目前最广泛的是可燃性气体气敏元件传感器,已普及应用于气体泄漏 检测和监控,从 工厂企业到居民家庭,应用十分广泛。仅以用于安全保护家用燃气泄 漏报警器为例,日本早在 1980 年 1 月开始实行安装城市煤气、液化石油气报警器法规, 1986 年 5 月日本通产省又实施了安全器具普及促进基本方针。美国目前已有 6 个州立 法,规定家庭、公寓等都要安装 CO 报警器。报警器种类也相当繁多,有用于一般家 庭、集体住宅、饮食餐店、医院、学校、工厂的各种气体报警器和系统,有单体分离 型报警器、外部报警系统、集中监视系统、遮断连动系统、防止中毒报警防护系统等。 结构型式有袖珍型便携式、手推式、固定式报警等;工业用固定式报警又有壁挂式、 台放式、单台监控式、多路巡检式等。气体检测技术与计算机技术相结合,实现了智 能化、多功能化。美国工业科学公司(ISC)一台携带式气体监控仪可实现 4 种气体监 测,采用了统一的软件,只需要换气体传感器,即可实现对特定气体监测。美国国际 传感器技术(IST)公司应用一种“MegaCas传感器和微程序控制单元,可检测 100 种 以上毒性气体和可燃性气体,通过其“气体检索”功能扫描,能很快确定是哪一种气 体。 国外气体传感器发展很快,一方面是由于人们安全意识增强,对环境安全性和生 活舒适性要求提高;另一方面是由于传感器市场增长受到政府安全法规的推动。因此, 国外气体传感器技术得到了较快发展,据有关统计猜测,美国 1996 年2002 年气体传 感器年均增长率为(2730)。总的看来,我国气敏元件传感器及其应用技术有了 较快进展,但与国外先进水平仍有较大的差距,主要 是产品制造技术、产业化及应用 等方面的差距,与日本比较仍要落后 10 年。 杭州电子科技大学单片机课程设计 9 3硬件设计 3.1 总体设计方案 设计的过程中难免会遇到一些理论上或者是技术上的问题。例如,对知识点的掌 握不够透彻。这就需要再回归参考资料,仔细琢磨,实在不懂就请教指导老师。再比 如,制板过程中,由于操作失误,烧坏了元器件。这要求我们必须细心地按照准确的 方法一步一步地完成对应步骤,尽量避免技术错误。而在这之前,最好先准备多几份 材料,以防万一。由于本人知识掌握的有限,所以在设计中难免会出现一些纰漏。但 是在毕业设计的过程中本人一定会本着认真、仔细的态度积极主动的去完成毕业设计。 本设计的最终目的是通过单片机配合酒精传感器完成一台酒精浓度检测仪的设计 与制作。期望能够完成以下几项目标:第一,制作出功耗低、性能稳定、价格低廉的 实物;第二,能够精确采集到酒精浓度的信号,测量精确反映迅速;第三,可以通过 SPI 端口进行数据的传输通信;第四,制作出体积小便于携带操作简单的酒精浓度测试 仪;第五,程序设计简单易懂,可移植性和改进性强。 本设计可分为四个系统模块,即 MQ-3 气敏酒精传感器外围电路模块、单片机 AD 识别采集模块、SPI 端口双机通信模块,数码管显示模块。如图 3.1 所示,即系统框图。 图 3.1 系统框架图 3.1.1 单片机的最小系统 单片机的最小系统是保证单片机正常运行的基本条件,单片机的最小系统应该包 杭州电子科技大学单片机课程设计 10 括电源电路、时钟电路,复位电路。电源电路的作用是给单片机提供工作的电压源, 给单片机供电。时钟电路,是单片机工作时的时间基准,在很大程度上影响着单片机 的运行速度,单片机在进行程序或者指令的操作时必须要有序的进行,必须保证时间 上的先后顺序以防止发生冲突。时钟可以分为内部时钟和外部时钟两种。复位电路可 以保证单片机的初始工作状态。单片机的复位形式可以分为上电复位和按键复位两种 形式,无论哪种的复位形式,都必须保证单片机的复位引脚上连续保持超过两个机器 周期的高电平。如图 3.2 所示,PIC16F877 单片机的最小系统电路图。 图 3.2 最小系统 3.1.2 AD 模块 本设计中使用的 PIC16F877 单片机集成了 A/D 转换芯片,精确度是 10 位。 PIC16F877 单片机拥有 8 条 A/D 转换的通道,有很多基准原可供选择。10 位分辨率的 A/D 转换。转换后可以输出数字量的范围是 0 x0000(0)到 0 x03FF(1023) 。要实现 A/D 转换的功能,主要就是对 AD 相关的寄存器进行设置,以达到读取转换结果寄存 器 ADRESH 和 ADRESL 中的数据的目的。接下来介绍一下 AD 相关的主要寄存器。 表 3.1ADCON0 寄存器 地址寄存器Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0 0 x1fADCON0ADCS1ADCS0CHS2CHS1CHS0GO/DONEXADON Bit0 ADCON:A/D 转换器开关位。Bit0 等于 1 的时候,A/D 转换器开始工作。 Bit0 等于 0 的时候,A/D 转换器停止工作,当前的 A/D 转换寄存器并不会耗费任何的 电能。Bit1 为空闲位,并不会进行赋值,可以读取数值并且为 0。Bit2 GO/DONE:A/D 转换器的启动位和状态位,只有当 Bit 等于 1,开启 A/D 转换器的时 候才会发挥作用。当 Bit2 等于 0 的时候,A/D 转换器当前正在进行工作中,并且 A/D 转换器会开启另一次 A/D 转换。当 Bit2 等于 0 的时候,表示 A/D 转换已经完成工作, 并且由硬件进行自动清零的工作。Bit5:Bit3 CHS2:CHS0 :A/D 转换器模拟通道选 杭州电子科技大学单片机课程设计 11 择位。分别为 0 0 0 的时候 AN0 开启,表示着这时候模拟通道 0 已经选通。为 0 0 1 的时候 AN1 开启,表示着这时候模拟通道 1 已经选通。为 0 1 0 的时候 AN2 开启, 表示着这时候模拟通道 2 已经被选通。为 0 1 1 的时候 AN3 开启,表示着这时候模拟 通道 3 已经被选通。为 1 0 0 的时候 AN4 开启,表示着这时候模拟通道 4 已经选通。 为 1 0 1 的时候 AN5 开启,表示着这时候模拟通道 5 已经选通。为 1 1 0 的时候 AN6 开启,表示着这时候模拟通道 6 被选通。为 1 1 1 的时候 AN7 开启,表示着这时候模 拟通道 7 已经选通。Bit7 和 Bit6:ADCS1:ADCS0,A/D 转换器的时钟的选择位。为 0 0 时,转换时钟是单片机主频的二分频。为 0 1 时,转换时钟是单片机主频的八分频。 为 1 0 时转换时钟是单片机主频的三十二分频。为 1 1 时,转换时钟是 A/D 转换器自 带的 RC 振荡器。 表 3.2 ADCON1 寄存器 地址寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0 0 x9EADCON1ADFMXXXPCFG3PCFG2PCFG1PCFG0 Bit3 到 Bit0 是 A/D 端口的配置维,具体的相关内容将会在表 3.3 中详细给出。 Bit6 到 Bit4,并未使用,不需要进行设置。Bit7 ADFM:A/D 转换格式的选择位。 ADFM 等于 1 时,A/D 转换器将转换结果保存数据的低 8 位在 ADRESL 寄存器中,保 存数据的高两位在 ADRESH 寄存器当中,并将这种保存方式称作左对齐模式。当 ADFM 等于 0 时,A/D 转换器将转换结果保存数据的高 8 位在 ADRESH 寄存器中,保 存数据的低两位在 ADRESL 寄存器当中,并将这种保存方式称作右对齐模式。表 3.3 中给出了 A/D 相关端口配置位功能的详细信息5。 表 3.3A/D 端口配置位功能对照表 PCFG3 PCFG0 RE2 AN7 RE1 AN6 RE0 AN5 RA5 AN4 RA3 AN3 RA2 AN2 RA1 AN1 RA0 AN0 HL 0000AAAAAAAAVddVss 0001AAAAHAAARA3Vss 0010DDDAAAAAVddVss 0011DDDAHAAARA3Vss 0100DDDDADAAVddVss 0101DDDDHDAARA3Vss 011xDDDDDDDDVddVss 1000AAAAHLAARA3RA2 1001DDAAAAAAVddVss 1010DDAAHAAARA3Vss 1011DDAAHLAARA3RA2 1100DDDAHLAARA3RA2 1101DDDDHLAARA3RA2 1110DDDDD DDAVddVss 1111DDDDHDDARA3RA2 表 3.3 缩写说明,A 是模拟量输入引脚;D 是数字量输入引脚;H 是参考电压上限; L 是参考电压下限;Vdd 是单片机供电的高电平;Vss 信号地,低电平5。 杭州电子科技大学单片机课程设计 12 同时还有两个寄存器和 A/D 转换器息息相关,即 ADRESH 寄存器和 ADRESL 寄 存器,但是实际工作中并不需要程序对这两个寄存器进行位设置操作,只需要读取寄 存器中的数据就可以。 3.1.3SPI 双机通信模块 本设计中双机通信部分是通过单片机的 SPI 端口实现的。通信的两片单片机一定 有一方是主控的,要进行同步时钟的发送、建立起通信。而另一方是受控放,被动的 进行数据和信号的接受或者发送6。双机通信中,通信的两片单片机必须完全严格的遵 守 SPI 总线的串口通信协议,进行数据或者信号的发送和接受。 双机通信的工作流程:主机作为通信的发起者,将通信的数据写入到 SSPBUF 中 开始通信过程,没 8 个时钟周期进行一次数据的传送或者接收。在通信过程中,前面 是要传送的数据的高位,后面是数据的低位。无论是主机还是从机都必须是在同一个 时钟的信号的上升沿或者下降沿,进行数据的移位。在数据稳定之后的另外一个变化 沿进行采样。 当接受完一个字节后中断标志位 SSPIF 和缓存器满标志位 BF 会相应的被置为 1。 当数据接收的最后一位被锁定之后或者发送的最后一位数据被移出之后,中断标志位 SSPIF 置为 16。如图 3.3 所示就是 SPI 的时序图。 图 3.3 时序图 功能特点以及系统结构:SPI 模式允许 8 位数据同时发送和接收。PIC16F877 单片 机的 SPI 模式支持 4 种 SPI 模式。在主控模式下使用 3 路信号进行数据通信。第一, RC5/SDO 是串行数据输出信号;第二,RC4/SDI/SDA 是串行数据输入信号;第三, RC3/SCK/SCL 是串行时钟信号。当 SPI 接口工作在从属模式的时候,可以利用第四个 引脚进行从属选择。RA5/AN4/SS 就是从属选择信号。SPI 模块的配置非常灵活,主要 有一下几种特点。第一,主从模式可编程;第二,时钟信号极性可编程;第三,数据 输入采样阶段可编程;第四,输出数据的时钟边沿可编程;主控模式下的时钟速率可 编程7。如图 3.4 中,主控方与从动方的时钟引脚相互连接,并且有主机进行时钟的发 送。主机输出的数据信号与从机的接受数据信号相互连接。在通过程序控制的时候应 杭州电子科技大学单片机课程设计 13 该准确的设置对应的引脚的方向才可以保证主控方进行正常的工作。 图 3.4 主控方发送方式的硬件连接示意图 PIC16F877 除了主控发送操作之外,还可以进行主控接送操作,也就是所谓的全 双工通信模式。主控接收模式的硬件连接,对于主机而言需要对 I/O 端口进行如下的 配置:第一,RC3/SCK 设置为输出,以满足主机进行时钟的输出;第二,SDI 设置为 输入,以达到接受从机的数据的目的;第三,如果主机只需要进行接收操作并不需要 进行发送操作的时候,SDO 允许置为输入,能够减少外界的干扰。对于从动发送模式 而言,需要对 I/O 端口进行如下设置:第一,RC3/SCK 设置为输入;第二 SDO 设置为 输出,方便对主控方发送数据;和主控方接受模式相类似,如果从动方只需要进行发 送操作不需要进行接受操作的时候,同样可以将 SDO 设置为输出,以防止干扰。图 3.5 给出从动接受模式硬件连接示意图。 杭州电子科技大学单片机课程设计 14 图 3.5 从动接受模式的硬件连接示意图 图 3.5 将会给出两片 PIC16F877 通过 SPI 方式互联的示意图。 图 3.6 互联示意图 图 3.6 是 SPI 接口电路结构图。SPI 的核心部分就是数据缓冲器 SSPBUF 和由 SSPUBF 实现装载与与卸载的数据移位寄存器 SSPSR。 杭州电子科技大学单片机课程设计 15 图 3.7 接口结构示意图 3.1.4 显示模块 本设计中的现实模块,将会使用 4 位一体数码管进行结果的现实。PIC 单片机驱 动数码管可以通过很多方法实现。大体上可以分为静态输出驱动、动态输出静态驱动 和动态扫描等几种方式8。图 3.8 是七段 LED 数码管的示意图。 图 3.8 七段 LED 数码管示意图 PIC16F877 单片机静态输出驱动七段 LED 数码管,理论依据就是给每一段数码管 施加驱动,以完成特定字符的显示。可以通过单片机直接进行驱动也可以通过 8421 码 输出七段译码驱动。单片机可以通过 I/O 端口直接对数码管的每段进行亮或者暗的控 制,通过不同的亮暗配合现实数码。 一位数码管的现实需要 PIC16F877 上的 8 个 I/O 端口进行配合,除了可以实现数 字的显示之外同时还可以实现 A、H、F、E,P 等几个特殊的字母。本设计中只要求现 实数码即可。 所谓的静态数码管现实就是显示输出电路能够进行锁存操作,单片机需要完成的 唯一的工作就是将要显示的数据输出,如果并没有发生发送下一组数据的请求,那么 单片机的状态将不进行任何改变,占用很少的 CPU 时间资源。与之相对应的是数码管 的动态扫描显示,动态扫描要求不断的对数据进行更新工作,数码管上显示出的数据 并不会特别稳定,数码管动态扫描相对于静态扫描来说会占用更多的 CPU 时间资源。 数码管的译码有两种形式即,硬件译码和软件译码。所谓的译码就是驱动数码管 显示特定的数码。硬件译码,就是有硬件独立完成译码的过程,整个过程中 CPU 只需 要发送出标准的 BCD 码就可以,但是外围电路相比软件译码要复杂一些。软件译码, 就是通过软件代替硬件完成译码的工作,相比于硬件译码方式更加的灵活方便,同时 软件译码的方式也比硬件译码的方式更加的流行。本设计中将会采用的是动态扫描、 软件译码的方式进行数码的显示。 3.2 单片机仿真以及电路 如 3.9 所示即单片机仿真电路图,3.10 实物工作图。 杭州电子科技大学单片机课程设计 16 图 3.9 单片机仿真示意图 图 3.10 实物工作图 杭州电子科技大学单片机课程设计 17 4软件设计 4.1 总体方案 本设计的软件部分将会完成一下几项功能,实现模拟信号采集的程序设计、模拟 量转化为数字量的程序设计、SPI 双机通信的程序设计,数码管显示的程序设计。 4.2 程序流程图 主程序,分为系统初始化、按键处理以及各个子程序(包括 AD 采集子程序、A/D 转 换子程序、SPI 双机通信子程序、LED 显示子程序)的调度管理等部分。如图 4.1 所示 描述了各个模块的关系 图 4.1 系统程序流程 4.3 软件编程语言的选择 可供选择的语言有 C 语言和汇编语言,汇编语言与 C 语言各自有各自的优点,同 时汇编语言与 C 语言都可以独立完成单片机软件编程的任务,值得一提的是,还有一 种编程方式是汇编语言与 C 语言相互配合完成单片机软件编程的任务。 在实际的系统中,往往可以通过很多种程序完成同一项工作,所以即使都可以完 成工作,那么程序与程序之间同样存在着优劣。一个好的程序往往应该是完成同一项 系统初始化 按键检测 AD 采集 A/D 转换 双机通信 LED显示 杭州电子科技大学单片机课程设计 18 工作的 时候拥有更快的运行速度、占用更少的存储单元这是评价程序

温馨提示

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

评论

0/150

提交评论