




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、燃气报警系统总体设计燃气报警系统总体设计 燃气报警系统总体设计燃气报警系统总体设计 摘要 随着燃气的大量使用,每一座居民大楼都被燃气所“笼罩”。 燃气的普及给公共生活 带来了方便,减少了城市的污染,提高了生活质量和效率,但是同时, 燃气也是潜在的“危险 品”,一旦发生大面积泄漏,处置不及时就可能引发大爆炸,给居民的生命财产安全带来巨大 的威胁。面对燃气泄漏而造成的种种事故威胁,我们需要一个解决办法。使用燃气报警 器是对付燃气无形杀手的重要手段之一。 本设计以半导体气敏传感器和单片机技术为核心设计的气体报警器可实现声光报警 功能,是一种结构简单、性能稳定、使用方便、价格低廉、智能化的气体报警器,
2、具有 一定的实用价值。 其中选用了 89c51 为报警器的核心部件,对燃气报警器进行控制。通过同步串行通 信的接口芯片对燃气进行检测,将所得的浓度值与设定浓度值相比较得到偏差。通过对 偏差信号的处理获得控制信号,发生报警信号,并把报警通道显示并储存在 led 数码 管显示器中,八个单元的燃气浓度对应模拟量利用 a/d 转换为数字量,并加入了键盘输 入控制,从而实现对家用和工业燃气漏气的监控。整个系统的硬件电路设计合理,性能 安全可靠。 关键词关键词:单片机;报警器;串行总线 design of the coal gas alarm device abstract with the wide u
3、se of natural gas, each a residential towers were gas enveloped. the popularity of natural gas to public life brought convenient, reduce the citys pollution and improve the life quality and efficiency, but at the same time, natural gas is also potential dangerous, once produce large leak, disposal n
4、ot timely could trigger, the big bang to peoples life and property safety brought great threat. facing the gas leak all kinds of accidents caused by threats, we need a solution. use of natural gas alarm is deal with gas invisible killer one of the important means. this papers to the semiconductor ga
5、s sensors and single chip microcomputer as the core design can realize the gas alarm sound-light alarm functions, is a kind of simple structure, stable performance, easy to use, inexpensive and intelligent gas alarm, has certain practical value. among them choose the 89c51 scm as the most important
6、controller of alarm. it is a core-components that control the whole programs and circuit of the coal gas alarm device. the appliance monitors the density of coal gas with the interface chip of synchronous serial communication and compares the current density with the setting density. we get the cont
7、rol signal through the dealing with the deviation signal and then sent a alarm signal that is memoried in a led digital tube display. the analog signal of eight densities of the coal gas are transformed into the digital signal with the a/d converter, in addition which is cotrolled with the keyboard.
8、 we can monitor the leak of coal gas in the house or industy. the hardware design of circuits is reasonable and the performance of the coal gas alarms device is safe and reliable. keywords: scm ;alarm device ;serial bus 目录 第一章绪论1 1.1 研究背景 1 1.2 研究目的 1 1.3 研究内容 2 第二章燃气报警器总体方案设计4 2.1 燃气报警系统原理 4 2.2 燃气
9、报警器设计思路 4 2.3 燃气报警系统设计 5 2.4 单片机应用系统设计 5 2.5 燃气报警器总体方案设计 6 第三章燃气报警器硬件系统设计9 3.1 89c51 单片机介绍 9 3.2 基于 89c51 的电子钟的设计9 3.3 x5045 看门狗定时器11 3.4 人机对话设计 11 第四章软件系统设计13 4.1 程序框图 13 4.2 主程序编程 14 4.3 串行总线技术 16 第五章系统仿真调试19 5.1 keil 集成开发软件介绍19 5.2 keil c51 开发环境20 5.3 调试过程 20 参考文献23 谢辞24 第一章绪论 1.1 研究背景 燃气报警器是微机控制
10、的安全报警设备,它广泛用于石油、化工、冶金、 矿井、油气库、燃气生产工厂等部门,也可以用于饭店、餐饮行业、居民住宅 厨房等处。它用来对现场空气中泄漏的可燃气体(如石油挥发气体、天然气、 煤制气、液化气等)进行浓度的检测和显示。当空气中所含的可燃气体的百分 比浓度值达到某一设定值时,即超过预定的报警点时,该报警器自动发出声光 报警信号,提示值班人员采取必要的安全措施。它也可以通过继电器等输出控 制信号,以便能够自动开启安全装置(如排风设备、关断阀门等) 。该设备可以 通过通信口和上位计算机连接,构成功能强大的计算机控制系统。 在社会信息化进程日益发展的今天,信息技术应用己渗透到人类生存、活 动的
11、各个领域,在建筑领域,人们的现代生活、工作对居住要求舒适健康、安 全可靠、高效便利。这时候气体燃料的应用也越来越广泛。目前家用煤气,液 化器、天然气作为气体燃料,已用与家庭旅馆,深入人民的生活之中。气体燃 料的应用和普及,伴之而来的是气体泄漏造成的中毒、爆炸、火灾等事故也时 有发生。其中由于一氧化碳泄漏中毒死亡尤为严重。众多周知由于 co 与血液 中的血红素的结合能力是氧的 240 倍,因此,当它进入人体血液循环系统后,就会 大量取代氧而与血红素结合,抑制血液中氧气的释放,从而导致发生头痛、耳鸣、 呕吐、血压降低等不同程度的症状发生。如果 co 中毒严重,轻者于康复过程中 可能会头昏眼花、丧失
12、记忆或引起视觉及神经上的障碍,严重者会导致脑部受损 甚至发生死亡。这就对燃气自动报警的器的设计更加迫切 。 为了预防燃气的泄漏,人们采用了各种措施。家用智能燃气报警器是为了 预防气体中毒的一种家用的自动报警器,也是一种高灵敏度的气体探测器,一 般都是应用高灵敏度的气敏元件作气电转换元件,并配以电路和声光报警部分 组成。当泄漏的气体达到危险极限值时报警器就会发生鸣响和声光报警。 1.2 研究目的 近年来,随着人们生活水平的提高,可燃气体作为清洁能源已在居民生活 中得到广泛的应用,人们面对燃气泄漏而造成的事故威胁,没有一个彻底的解 决办法,据有关专家介绍,使用燃气报警器是对付燃气的重要手段之一。燃
13、气 泄漏或废气排放而大量产生的一氧化碳是燃气中毒事件的根源,如采用燃气泄 漏报警器就能得到及时的警示。有关部门经长期测试同样得出结论,燃气报警 器防止一氧化碳中毒事故发生的有效率达 95%以上。单片机在日用电子产品中 的应用越来越广泛,有利于为现代人工作、科研、生活、提供更好的更方便的 设施。 1.3 研究内容 本设计中的燃气报警器系统,以单片机 89c51 为核心,选用了同步串行通 信的接口芯片,可以采集最多 16 路模拟量输入信号,并设置了 8 个开关量输出 通道,对外部设备进行数据采集和超限报警处理。利用低功耗的实时时钟电路 ds1307 提供实时的日期、时间信息。独立式的按键设计和 l
14、ed 数码管显示器 作为人机对话通道。通过 rs-485 标准的异步串行通信接口和上位机通信,用 于多机系统和远距离通信。利用硬件看门狗电路(监视器)x5045,提高系统 可靠性。该应用系统功能齐全,性能优越,电路简单实用,可靠性强,不失为 一个经典的应用实例。 燃气报警器系统的总体设计的方案如下: cpu:89c51 单片机 主频:11.0592mhz 数据采集:16 通道模拟量输入 多路选择器:4067(16 选 1 模拟开关电路) a/d 转换器:max187(12 位串行接口 a/d 转换器) 开关量输出:8 路开关量输出,可作继电器开关,或超限报警控制。 看门狗定时器:x5045(带
15、 eeprom、上电复位、降压管理的看门狗定时 器电路) 。 实时时钟 rtc:ds1302(带 64 字节 ram、串行实时时钟电路) 。 串行通信接口:max485,提供 rs-485 异步串行通信标准接口,和上位机 通信。 并行 i/o 接口:8255a 并行 i/o 接口电路 显示器: 6 位 led 显示器和 8 个发光二极管指示灯,由 8255a 驱动,动 态扫描显示。 键盘:4 个按键,独立连接的非编码键盘 电源:dc+5v、dc+12v 软件:程序固化在 89c51 单片机中,采用汇编语言编程。 基于 89c51 单片机的数据采集系统结构框图如图 1.1 所示。 图 1.1 8
16、9c51 单片机燃气报警器系统功能框图 fig.1.1 89 c51 gas alarm system function diagram 第二章燃气报警器总体方案设计 2.1 燃气报警系统原理 该数据采集系统是以单片机 89c51 为核心,可以采集最多 16 路模拟量输 入信号。模拟量信号可以是温度、压力、流量、浓度等物理量经过传感器、变 送器变换后输入而来。模拟信号通过同步串行 a/d 转换器 max187 的转换,量 化成为 12 位精度的数字量,由单片机进行处理。处理的过程可以是数据采集, 可以是数据运算和进行控制调节,也可以进行超限报警处理等。 为了进行系统控制,系统设置了 8 个开关
17、量输出通道,控制继电器来对外 部设备进行控制或者进行报警处理。 系统利用高性能、低功耗的实时时钟(rtc)接口芯片 ds1307 提供实时 的日期、时间信息。 单片机系统通过异步串行通信接口和上位机通信,通信标准转换成 rs-485 通信接口,适于远距离通信,并可以构成多机系统,通信距离可以最远到 1000m。 作为仪表式的系统,显示器采用了最简单的 led 数码管显示,并辅以 8 个 发光二极管作为指示灯。安装了 4 个按键,可以进行人机对话、人为设置参数 和干预系统的操作。 为了加强系统的可靠性,面向连续运行和无人值守的环境,电路里增加了 硬件看门狗(监视器)芯片x5045,可以在系统故障
18、停机时自动复位,保证 系统可靠运行。 2.2 燃气报警器设计思路 燃气报警系统是能够检测环境中的可燃性气体浓度,并具有报警功能的仪 器,仪器的最基本组成部分应包括:气体信号采集电路、模数转换电路、单片 机控制电路。 气体信号采集电路一般由气敏传感器和模拟放大电路组成,将气体信号转 化为模拟的电信号。模数转换电路将从燃气检测电路送出的模拟信号转换成单 片机可识别的数字信号后送入单片机。单片机对该数字信号进行处理,并对处 理后的数据进行分析,是否大于或等于某个预设值(也就是报警限),如果大于 则会自动启动报警电路发出报警声音,反之则为正常状态。 为使报警装置更加完善,可以在声音报警基础上,加入光闪
19、报警,变化的 光信号可以引起用户注意,弥补嘈杂环境中声音报警的局限。以上是根据报警 器应具备的功能,提出的整体设计思路。 2.3 燃气报警系统设计 根据该设计要实现的基本功能,设计大致应分为信号采集放大,信号处理 控制,系统设置报警三个部分。 (1)信号采集部分即通过气体传感器检测室内气体浓度,将这种变化量转化 成电压模拟量的变化,然后通过运放进行必要的放大。 (2)信号处理部分是将采集到的模拟信号量转换成数字信号,送入控制器进 行处理,并将处理过的信号送存储器保存和送显示器显示。 (3)系统设置报警部分是通过预定控制方式并利用蜂鸣器报警实现系统的准 确操作。 依据上面所说的的思路,得到如下一
20、些基本的结论: (1)信号采集部分为了能准确采集到气体浓度的变化应选用半导体气体传感 器,为使其有效的监测室内气体浓度,采用电阻型半导体气体传感器;而放大 部分使用运放进行比例和反相两级放大 (2)信号处理部分为了实现精确控制,采集单片机较为合适。将模拟信号送 入 a/d 模块进行模数转换,经过处理后送存储保存和送显示器显示。 该单片机应用系统中大量选用了同步串行通信的接口芯片,cpu 和接口芯 片间采用串行通信,大大简化了硬件电路,减小仪器的体积。 该应用系统功能齐全,性能优越,数据采集路数多,精度高,电路简单实 用,可靠性强,并能和上位机构成多机系统,是一个实用性很强的应用系统。 2.4
21、单片机应用系统设计 一般情况下,单片机应用系统的设计过程主要包括以下几部分: .总体方案的设计 .硬件系统设计 .软件系统设计 .系统仿真调试 .运行维护 设计过程列出的这 5 个部分不是孤立的,而是相互关联、相互依靠、互相 制约的,设计过程的流程图如图 2.1 所示。 图 2.1 单片机应用系统设计过程的流程 fig. 2.1 microcomputer application system design process flow 2.5 燃气报警器总体方案设计 应用系统总体方案的设计是非常重要的环节,总体方案的优劣直接影响后 续工作的进行。因此,对于设计过程前期的这些工作不能掉以轻心,项目
22、不可 仓促上马,要尽可能把总体设计的工作作细,作好。 首先要根据市场需求,进行分析,提出本项目的任务。要对项目的可行性 进行调研和分析,最好能提出可行性报告,作为开题的依据。据此,才可能由 有关领导对设计方案作出决策,或者作为和用户签定技术合同的基础。 熟悉和了解控制对象,确定合理、可行的技术指标。单片机作为控制核心, 它所控制的对象是各种各样的,所实现的控制要求也不尽相同。有些控制对象 是一个生产过程,有些控制典型是一个具体设备,如仪器仪表、家用电器;有 些控制对象是数据采集系统,有些控制对象是安全报警系统等。无论哪种应用 系统,作为设计者都要对被控对象的工作过程和现场的要求进行深入的调研和
23、 分析,了解系统的控制要求,如输入/输出信号的种类和数量、数据处理的数学 模型、该系统的应用环境等。在调研的过程中,不仅了解应用的要求,而且要 尽可能多地了解国内外同类产品的资料,加以分析对比,对要设计的系统有一 个合理的定位。在充分调研分析的基础上,还要综合考虑应用系统的可靠性、 可维护性、产品的功耗、成本、经济效益等诸方面因素,提出一个合理、可行 的技术指标。 在方案和技术指标基本确定的前提下,确定系统功能的具体实现形式。单 片机是系统的核心,首先完成的是单片机的选型。近年来单片机的发展非常快, 体现在以下几个方面: 1. 运行速度的提高。单片机技术的发展不仅是主频提高,而且一条指令的 执
24、行周期也发展到单机器周期,使得数据处理的能力得到极大的提升。 2. 存储技术的发展。特别是单片机片内程序存储器包括 mrom、eprom、eeprom 和 flash memory 多种形式,rom 和 ram 的存储 容量越来越大,使得程序可以完全固化在单片机芯片中。 3. i/o 接口的多样化。很多 i/o 的功能已被大量集成在单片机芯片里,包 括模拟量输入、开关量输入、模拟量输出、开关量输出、继电器控制信号输出、 液晶显示器输出接口等。单片机也集成了各种标准数字通信接口,如 spi、i2c、单总线、can 总线、usb 总线等接口,也包括有 rs-232c、rs- 422、rs-485
25、等总线接口。 4.单片机产品的系列化。生产厂家现在推出的单片机产品已经不再像初 期那样,产品型号单一,而是产品系列化。在单片机的核心功能不变的基础上, 集成不同形式、不同容量的存储器,集成不同形式、不同数量、不同精度要求 的 i/o 接口,和面向不同环境应用(台式、仪表、便携式、低功耗等)的产品。 基于这些原因,再加上成本价格、产品来源、开发手段、开发经验等的综 合考量,设计者完全可以在众多的单片机产品中选择出一款适合该项目,能迅 速开发出性能价格比高的应用系统来的单片机。 进行软件、硬件功能的划分,是总体设计中重要的工作。划分的合理与否, 将直接影响后续的设计和开发过程。在系统功能指标确定以
26、后,确定它的具体 实现方法,哪些功能由硬件模块实现,哪些功能由软件程序完成。硬件模块包 括微处理器、存储器、asic、dsp、fpga、i/o 接口部件,以及传感器、电源 设备、机箱等;软件模块包括操作系统、监控程序、设备驱动程序、应用程序 等;以及两者之间联系的载体,如总线、固化器件、数据通道等。这个划分的 过程是一个复杂的过程,可能会反复修改,不断地完善和不断迭代。而且,由 于硬件模块的可编程性和软件固化技术的发展,软件、硬件的界限已经不十分 严格,具有一定的互换性。例如,系统的的定时,可以由片内外的硬件定时器 来实现,也可以通过软件程序、中断服务来实现。再如,系统数据处理可以用 硬件运算
27、电路或 dsp 来实现,也可以通过编写运算程序来实现。在系统中,硬 件负担任务多,可以提高运行速度,减少程序设计工作量,加快开发周期,但 是也会增加系统的成本和复杂程度。反之,软件代替硬件的某些功能,可以减 少成本,简化硬件结构,增加程序设计的难度和工作量。在设计过程中,必须 根据具体情况,结合系统造价、开发周期等的要求综合考虑,进行平衡,尽可 能合理地划分出硬件和软件两部分的功能要求。 在以上论证、分析的基础上,确定总体方案,拟定出设计任务书。特别是 团队工作时,要按照软件工程的思想,将整个系统分解为若干子系统,分别列 出子系统的任务书,以及软件、硬件及它们之间的接口标准、技术要求,这样 会
28、最大效率地完成系统的设计。 第三章燃气报警器硬件系统设计 3.1 89c51 单片机介绍 单片计算机简称单片机,又称微控制器(mcu) 。它在一块半导体芯片上 集成了微处理器、一定容量的存储器、输入/输出接口、定时器/计数器等电路, 构成了较完整的数字处理系统。单片机体积小、可靠性高、控制功能强、广泛 应用于工业控制、仪表控制、网络通信、汽车电子、智能家居、家用电器以及 日常生活等各个领域。如今,可以说是无处不在,无时不在。 89c51 单片机是在 intel 公司的 8051 基础上发展的 8 位单片机。它的内部 除了一个 8 为的微处理器外,片内还包含 128 个字节的数据存储器、21 个
29、特殊 功能寄存器(sfr)和 4kb 的 flash 程序存储器;它可以寻址片内外统一编址 的 64kb 的 ram;片内有 4 个 8 位并行 i/o 接口(uart)和两个 16 位的定时 器/计数器;有很强的中断处理和位操作功能。 3.2 基于 89c51 的电子钟的设计 为了深入了解单片机应用系统设计的过程,设计一个基于 89c51 单片机控 制的电子钟的实例。 时间的概念对每个人来说都是非常重要的,计时的时钟(钟表)在日常生 活中经常见到,是人们工作、学习、起居不可缺少的用具。利用电子元器件数 字实时显示“时:分:秒”信息,就是这里介绍的电子钟(电子表) 。 电子钟的实现有多种方法,
30、一种是采用专用集成电路,目前市场上销售的 电子手表、电子挂钟等多数是这种,它的优点是集成度高、应用方便、价格低 廉。但是在单片机应用系统中,往往也需要实时的时间信息,例如数据采集的 具体时间、历史记录的日期时间等,这就需要在单片机应用系统中,设计出一 个实时的电子钟,提供当前的“时:分:秒”以及“年:月:日“的信息。 本设计是单片机片外扩展专用的实时时钟接口芯片(rtc) ,通过读取 rtc 的信息达到计时效果。 rtc(实时时钟接口芯片)ds1302。ds1302 是 dallas 公司推出的一款 高性能、低功耗的实时时钟接口芯片。该电路采用同步串行通信,简单的三线 接口,简化了和微处理器之
31、间的通信。低功耗、小封装,大大减少了整机的体 积。 ds1302 的内部结构如图 3.1 所示。它主要由移位寄存器、控制逻辑、振荡 器、实时时钟以及 ram 组成。 图 3.1 ds1302 内部结构 fig.3.1 ds1302 internal structure 双列直插 dip 封装的 ds1302 的引脚如图 3.2 所示。其中: vcc2 (1 脚):外接备用电源,如电池。工作电压为 2.5v5.5v。 vcc1 (8 脚):接主电源。工作电压为 2.5v5.5v。 gnd (4 脚):接地。 x1、x2 (2、3 脚):外接 32.768khz 晶振。 rst (5 脚):复位输
32、入端。 i/o (6 脚):串行数据输入/输出端。 sclk (7 脚):串行时钟输入端。 图 3.2 ds1302 引脚图 fig.3.2 ds1302 pin figure 其中,电源引脚有两个,vcc1 在单电源与电池供电的系统中提供电池备份。 vcc2 在双电源系统中提供主电源。在双电源系统方式中, vcc1 连接到备份 电源,以便在没有主电源的情况下,也能保存时间信息和数据。ds1302 由这两 者之间电压较高者供电,当 vcc2 大于 vcc1 的+0.2v 时,由 vcc2 给 ds1302 供 电;当 vcc2 小于 vcc1 时,ds1302 由 vcc1 供电。 3.3 x
33、5045 看门狗定时器 x5045 的特点是一种集看门狗、电压监控和串行 eeprom 三种功能于一 身的可编程电路。这种组合设计减少了电路对电路板空间的需求。x5045 中的 看门狗对系统提供了保护功能。当系统发生故障而超过设置时间时,电路中的 看门狗将通过 reset 信号向 cpu 作出反应。x5045 提供了三个时间值供用户 选择使用。它所具有的电压监控功能还可以保护系统免受低电压的影响,当电 源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。 x5045 的存储器与 cpu 可通过串行通信方式接口,共有 4096 个位,可以按 512 x 8 个字节来放置数据。可以
34、存放 512 个字节,可擦写 100 万次以上并且存 储 100 年。 图 3.3 x5045 引脚图 fig.3.3 ds1302 pin figure x5045 的管脚排列如图 3.3 所示,它共有 8 个引脚,各引脚的功能如下: cs :电路选择端,低电平有效 so :串行数据输出端;si :串行数据输入端; sck:串行时钟输入端; wp :写保护输入端,低电平有效; reset :复 位输出端; vcc :电源端;vss :接地端。 本设计中由于 x5045 是利用 spi 通信协议的,所以电路连接十分简单。si 和 so 分别接 89s52 的 p1.3 和 p1.4 用作数据的
35、传输使用。而 cs 和 sck 分别 接单片机的 p1.1 和 p1.2 用作控制端口使用。而 wp 和 vcc 是直接接电源,rs 上拉 10k 电阻接电源,并且接上 89s52 的 reset 引脚,用作控制单片机复位 信号使用,并且上电复位。 3.4 人机对话设计 单片机数据采集系统中,需要操作者对系统进行干预,如设置或修改参数、 选择操作功能、对系统进行人工控制等。这就要求系统中有键盘输入的功能。 如前面所述,键盘有编码键盘和非编码键盘两种。在单片机应用系统中,由于 不需要经常和大量地进行键盘操作,同时为了简化硬件电路,往往采用非编码 键盘,利用软件来进行按键的识别和功能的散转。根据需
36、要的按键的多少,又 可以选择独立式或行列矩阵式的键盘。在本单片机数据采集系统中,鉴于所需 要的按键不多,采用了独立式的按键设计。利用 p3 口的 p3.2、p3.3、p3.4、p3.5 作为 4 个按键的输入端。 在单片机应用系统中,显示器是必不可少的设备。除了传统的 crt 显示器 外,常用的有指示灯(发光二极管) 、led 数码管显示器、液晶显示器等。显 示的内容可以是机器的工作状态、超限报警的信号、实时的信息、采集的数据、 历史的记录、趋势图等。单片机可以输出“0、1”状态、ascii 码、汉字及点阵 图形的数据给显示器。单片机和显示器之间的通信可以通过并行接口、串行接 口来实现。在有些
37、显示器设备中,本身带有 cpu 或控制器,单片机只需要通过 标准的通信接口,遵循有关的通信协议传送数据即可,这样的显示器会大大减 少单片机的负担,当然成本会大一些。在这里介绍的单片机数据采集系统中, 采用了 led 数码管和发光二极管显示器。其中,6 个 led 数码管显示数据,8 个发光二极管指示工作状态,为了减少硬件连线,采用 led 动态扫描显示方式。 人机对话功能框图如图 3.4 所示。 图 3.4 人机对话功能框图 fig.3.4 the man-machine dialogue function diagram 第四章软件系统设计 4.1 程序框图 在具体编写软件程序之前,要根据功
38、能实现的过程,画出程序的主流程图, 将各个模块、子程序的工作流程形象化地描述出来。在这个基础上,进行具体 化,对各部分编写出详细的流程图,作为编写程序语句的依据。各个部分之间 要进行软件接口的设计,包括出口、入口传递参数等,规定系统启动和关闭过 程。程序主流程框图如图 4.1 所示。 图 4.1 程序主流程图 fig.4.1 flow chart of the main program 在绘制好流程图的基础上,就可以开始编写程序了。在编写程序的过程中, 不仅要考虑实现系统要求的功能,还必须考虑软件的抗干扰措施,例如进行数 字滤波、软件容错设计、看门狗(监视计时器)程序等。 在目前的单片机开发环
39、境中,可以进行软件模拟仿真。对一些和硬件关系 不多的程序段,可以在软件模拟仿真过程中,例如,在 keil 调试环境中,先行 进行调试。 4.2 主程序编程 软件系统设计的任务是根据总体方案提出的要求和具体的硬件电路,设计 出实现应用系统功能要求的控制程序。 在进行软件设计的时候,首先应该根据实际情况选择软件的开发环境,好 的开发环境的支持是完成软件系统设计的保障。同时,需要确定设计时使用的 编程语言。单片机应用系统的开发可以采用汇编语言,其优点是程序效率高, 占用的存储器空间小,运行速度快,特别是和硬件相关性强。近年来,面向控 制系统的高级语言发展很快,在单片机应用中,c 语言(c51)的使用
40、越来越广。 高级语言程序通用性强,可读性好,提供函数功能,适于复杂的数学运算。比 较好的方案是 c 语言和汇编语言混合编程,在需要直接控制硬件的场合,使用 汇编语言。使用汇编语言编程是单片机应用的设计者需要掌握的基本技能之一。 对于单片机应用的软件系统,建立一个好的数学模型是非常必要的。根据 任务的要求,描述出各个输出变量和输入变量之间的数学关系。不同的控制对 象和任务的要求,建立的数学模型会有所不同。特别是较复杂的控制系统,需 要对数据进行数据变换、数学运算,可以采用经验公式,也可以采用成熟的数 学公式,这样来保证系统快捷、正确的数据处理。单片机应用系统的设计一般 是采用自顶向下的程序设计,
41、在设计软件系统时,要采用模块化的程序设计方 法。把整个的软件系统划分为若干个功能相对独立的较小的程序模块,各个程 序模块可以分别进行单独设计和编程和测试,最后再集成到一起,共同完成整 个系统的任务。模块化的设计方法提高了效率,保证了程序的可靠性。 由于单片机应用系统的软件和硬件之间密不可分的联系,在软件设计的开 始,要把软件要实现的功能和硬件的结合进行具体的定义。系统的定义包括合 理分配存储器空间,包括系统主程序、各个子程序、常数表格、数据缓存区、 堆栈区、设定工作单元等。还要定义说明各个输入/输出口的端口地址、读取和 输出的方式,信息代码的具体含义等。以及定义按键、显示器等人机对话的控 制方
42、式等。在整个程序中统一规定。这些工作必须和硬件电路的设计一起进行。 例如 led 动态扫描显示程序: org 0000h ljmp main org 1000h disp : mov dptr,#7fffh ;8255a 的控制端口地址 mov a,#80h ;8255a 的控制字,a 口、b 口、c 口输出,方式 0 movx dptr,a ;8255a 初始化 led: mov r2,#07h ;r2 作为 led 位数计数寄存 器,初始值为 6 mov r5,#01h ;r5 作为位选寄存器,位选码 从左到右依次为: 40h、20h、10h、08h、04h 、02h、01h mov r1
43、,#40h ;r1 作为数据缓存区地址寄存 器,数据从左到右依次保 ;存在内部 ram 的 46h、45h、44h、43h、42h 、41h、40h。 disp: mov a,r1 ;取要显示的数据 mov dptr,#tab movc a,a+dptr ;查表,转换成 led 的段码 mov dptr,#7ffch ;8255a 的 a 口地址 movx dptr,a ;送 led 段码(字形码) mov a,r5 mov dptr,#7ffdh ;8255a 的 b 口地址 movx dptr,a ;送 led 位选码 lcall delay ;延时 1ms inc r1 ;修改缓存区地址
44、指针,指向 下一个数据 mov a,r5 rl a mov r5,a ;修改位选指针 r5,指向下 一位 djnz r2,disp ;6 位显示完否?未完继续 ljmp led ;重复动态显示过程 delay:mov r7,#02h ;延时 1 ms 子程序 dl: mov r6,#0ffh dl1: djnz r6,dl1 djnz r7,dl ret tab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh end 4.3 串行总线技术 在单片机和嵌入式应用系统中,目前大量采用了具有同步串行接口的器件。 这些外部接口器件包括串行 e2prom、移位寄存
45、器、显示器件、a/d 转换器、 d/a 转换器、单片机监控电路、通信接口等。微处理器和这些接口芯片之间的 通信只需要少量几条信号线就可以实现,和并行 i/o 接口相比,省掉了大量的 地址线、数据线和控制线,省掉了很多常规电路中的接口器件。这些串行接口 由于占用 cpu 的资源少,使得系统的结构大大简化,可以很容易实现模块化结 构,并且提高了系统的可靠性。随着技术的发展,这些串行接口芯片还具有速 度快、精度高、功能强、工作电压宽、功耗低和抗干扰能力强等特点。同步串 行外设接口扩展技术在智能仪器仪表、医疗电子、汽车电子、移动通信、ic 卡、 信息家电、分布式测控系统等领域得到了广泛应用。 在单片机
46、和嵌入式应用系统中使用的同步串行接口总线主要有以下几种: i2c 总线(intel-integrated circuit)是 philips 公司推出的串行总线; spi 总线(serial peripheral interface)是 freescale 公司(原 motorola 公司半 导体部)推出的串行总线; 单总线(1wire)是由 maxim 全资子公司 dallas 公司推出的串行总线; microwire/plus 总线是由 ns 公司推出的增强型串行总线; can 总线(controller area network)是由 bosch 公司推出的最早用于汽车 电子的串行总线;
47、 usb 通用串行总线(universal serial bus)最早用于 pc 机上的串行总线 等。 最新推出的单片机很多都有符合以上总线的标准接口,所以使用起来非常 方便。89c51 这类的单片机虽然没有专门的同步串行总线接口,但是,它们可 以利用自己的少数几根 i/o 口线,通过软件模拟通信协议,进行同步串行总线 外设接口芯片扩展,更具有灵活方便的特点。 1. spi 串行外设接口总线 1pi (serial peripheral interface)总线是 freescale 公司(原 motorola 公司半导 体部)推出的同步串行外设接口总线。它用于 mcu 与各种外围设备以串行方
48、式 同步传送和接收 8 位数据。外围设备包括简单的 ttl 移位寄存器(用作并行输 入或输出口)至复杂的 lcd 显示驱动器或 a/d 转换器等。 spi 总线主要特性: spi 总线是全双工同步串行通信标准,可以同时同步传送和接收 8 位数据; spi 串行接口设备可以配置为主或从操作模式;接口设备工作于主机模式 时,要提供同步时钟信号,并决定要选中的从机,发出从机片选信号。 接口设备工作于从机模式时,从主机获取时钟和片选信号,选中的从机和 主机通信,没有被选中的从机将其数据线处于高阻抗状态。 接口共使用 4 条信号线: 主机输出的低电平有效的从机选择线 cs (ss) 主机输出/从机输入的
49、数据线 mosi 主机输入/从机输出的数据线 miso 主机输出用于同步的串行时钟信号线 sck spi 有较高的数据传送速度,主机方式最高速率可达 1.05 mb/s; spi 串行接口设备可以提供频率可编程的时钟信号和发送结束的中断标志; 并具有写冲突保护、总线竞争保护等功能。 在 spi 接口中,数据的传输只需要 1 个时钟信号和 2 条数据线。大大简化 了电路设计,省掉了很多常规电路中的接口器件,提高了设计的可靠性。 spi 总线除了可以用来连接一个处理器(系统主机)和多个 spi 接口外部 设备(spi 从机)以外,还可以应用于一个主处理器和多个从处理器之间的通 信,用于多个处理器和
50、若干个 spi 接口外部设备之间的连接。在一些单片机和 嵌入式处理器中配置了 spi 接口,因此可直接与各个厂家生产的多种标准外围 器件直接接口。 2.i2c 串行外设接口总线 i2c 总线(intel-integrated circuit)是 philips 公司推出的串行总线,应用非 常广泛。常使用的 i2c 串行外设接口总线通用器件有 sram、e2prom、adc/dac、rtc、i/o 口等。外部设备模块有 led 显示器, 各种 lcd 驱动控制器构成的段式、图形点阵、字符点阵液晶显示器等。通过 i2c 总线通用 i/o 口器件可构成许多通用接口,如键盘、码盘、打印机接口和 lcd
51、 接口等。 i2c 总线是具有自动寻址、高低速设备同步和总线仲裁等功能的高性能串行 总线,能实现完善的全双工数据传输。总线传输速率为 100 kb/s,改进后为 400 kb/s。可以非常方便地用于单片机的外围扩展。 i2c 总线的通信只使用两根信号线: 串行数据线 sda 和时钟线 scl。带 有 i2c 总线接口、符合总线电气规范特性的所有设备,只需将串行数据线 sda 和时钟线 scl 分别与总线的 sda 和 scl 相连即可。各节点供电可以不同,但 需共地,另外 sda 和 scl 需分别接上拉电阻。 i2c 总线上支持主从和多主两种工作方式。i2c 总线上的器件或模块根据工 作状态
52、分为主控发送器、主控接收器、被控发送器和被控接收器四种。数据传 送时,启动数据发送并产生时钟信号的器件称为主器件;被寻址的任何器件都 可看作从器件。发送数据到总线上的器件称为发送器;从总线上接收数据的器 件称为接收器。多数情况下,系统中只有一个主器件,即单主节点,总线上的 其他器件都是有 i2c 总线的外围从器件,这时的 i2c 总线就工作在主从工作方 式。具有 i2c 总线接口的单片机可工作在上述 4 种中的任一状态,而一些带有 i2c 总线接口的存储器(ram 或 e2prom)模块只能充当被控发送器或被控接 收器。 i2c 总线是多主机总线,支持多主方式,可以允许多个作为主控器的电路模
53、块(单片机)与总线连接,去抢占总线。同时 i2c 总线还具有总线仲裁功能, 某一时刻只允许一个主器件控制总线,从而保证数据不被破坏。多主方式中, 通过硬件和软件的仲裁主控制器取得总线控制权。 第五章系统仿真调试 5.1 keil 集成开发软件介绍 keil c51 vision2 集成开发软件是基于 32 位 windows 环境的一个非常优 秀的 51 系列单片机集成开发平台。keil c51 vision2 集成开发软件包括有一个 编辑软件,可以在线编辑用 c 语言或 51 系列单片机汇编语言写成的源程序。 它还包含有一个高效的编译器、一个项目管理器和一个 make 工具。其中专 门有一个
54、项目管理器,按项目(project)来管理,使得应用系统的设计变得简 单。它集成了 c51 交叉编译器、a51 宏汇编器、bl51 连接定位器等工具软件 和 windows 集成编译环境。包括一个单片机软件仿真器 dscope51,内嵌的仿真 调试软件可以使用户采用软件模拟仿真和实时在线仿真两种方式对目标系统进 行开发。本章介绍 keil c51 vision2 开发环境和程序的开发调试过程,包括软 件模拟仿真、硬件实时在线仿真的程序开发调试实例。 在在 keil c51 vision2 集成开发环境中,完成一个应用系统的开发,要包 括新建源程序文件、新建项目文件、编译和链接(build)项目
55、、程序调试和固 化程序等过程。 keil c51 vision2 集成开发软件是德国 keil 公司针对 51 系列单片机开发 的基于 32 位 windows 环境的单片机集成开发平台。它以 51 系列单片机为开发 目标,以高效率的 c 语言为基础,集编辑、编译和仿真软件于一体,是一个非 常优秀的 51 系列单片机的开发平台。 keil c51 vision2 集成开发软件包括一个编辑软件,提供有源程序编辑窗口, 可以在线编辑用 c 语言或 51 系列单片机汇编语言写成的源程序。可以编写、 修改、复制、粘贴源程序,可以保存、打开、重存源程序文件。 keil c51 vision2 集成开发软
56、件包含有一个高效的编译器、一个项目管理器 和一个 make 工具。集成了 c51 交叉编译器、a51 宏汇编器、bl51 连接定位 器等工具软件和 windows 集成编译环境。其中 keil c51 是一种专门为单片机 设计的高效率 c 语言编译器,符合 ansi 标准,生成的程序代码运行速度极高, 所需要的存储器空间极小,完全可以与汇编语言媲美。它同样也支持 a51 宏汇 编。 keil c51 vision2 集成开发软件包括一个单片机软件仿真器 dscope51,它 内嵌的仿真调试软件可以使用户采用软件模拟仿真和实时在线仿真两种方式对 目标系统进行开发。软件模拟仿真时,除了可以模拟单片机的 i/o 口、定时器、 中断以外,甚至可以仿真单片机的串行通信。借助于开发的目标系统,可以进 行实时在线仿真,利用单步、跟踪、连续运行、设断点等调试方法,利用在线 显示输出结果,可以非常方便和有效地进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新质生产力领航
- 2025家庭装修合同协议书
- 2025短期围挡建设合同
- 上海食品模拟考核b类试卷及答案
- 山东省初中统考语文试卷及答案
- 《电容式传感器》课件
- 化纤织造工艺参数优化考核试卷
- 油炸食品制造的工艺流程考核试卷
- 浙江国企招聘2025中移铁通嘉兴海盐分公司招聘10人笔试参考题库附带答案详解
- 2025年中国铝锻压五金制品市场调查研究报告
- 新疆乌鲁木齐市米东区2024-2025学年九年级上学期期中数学试卷(含答案)
- 课件:《科学社会主义概论(第二版)》第一章
- 国际关系理论知到智慧树章节测试课后答案2024年秋外交学院
- 第一章整式的乘法单元(教学设计)-七年级数学下册同步备课系列(湘教版2024)
- 中考物理复习欧姆定律复习讲解学习
- 上海市2024年中考英语试题及答案
- TMT行业市场发展现状及趋势与投资分析研究报告
- 2024年黑龙江哈尔滨市中考英语真题卷及答案解析
- 【MOOC】道路交通安全-河海大学 中国大学慕课MOOC答案
- 人教版二年级上册英语期中考试卷【3套】
- 2025年湖北省武汉市高考数学模拟试卷附答案解析
评论
0/150
提交评论