毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc

上传人:sccc 文档编号:4860680 上传时间:2023-05-20 格式:DOC 页数:66 大小:2.26MB
返回 下载 相关 举报
毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc_第1页
第1页 / 共66页
毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc_第2页
第2页 / 共66页
毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc_第3页
第3页 / 共66页
毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc_第4页
第4页 / 共66页
毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于AT89C51单片机的智能IC卡煤气表控制装置设计.doc(66页珍藏版)》请在三一办公上搜索。

1、 摘 要随着信息社会的到来,人类所拥有的信息种类和数量呈爆炸性增长,IC卡,一种方便安全可靠的高技术,高附加值的信息载体便应运而生。IC卡技术以其广泛的应用领域和巨大的产品市场成为近几年来我国信息产业的一大特点。与此同时,我国燃气收费管理长期以来都是以人工抄表为主,存在着工作量大、收费时间长、收费困难、效率低、易出错的问题,为了减少燃气收费管理中人力、物力的浪费,减少不安全因素,进行了“智能煤气表的研究”。这既是IC卡技术实际应用的进一步探索,也是燃气收费管理方式的改革。本设计对智能IC卡煤气表控制装置的组成、功能及技术要求进行了理论上的分析和技术上的应用研究。设计依据低成本,高可靠性的原则完

2、成了以下工作:1. 软件设计中均采用模块化设计结构,完成了燃气表的计费功能以及故障的查询和处理。 2.采用性价比较高的AT89C51单片机作为控制装置的核心,控制装置的硬件电路实现了脉冲采集、数据存储、电磁阀驱动控制、IC卡读写、电源监测及声音报警和等功能。3.本文用Visual Basic6.0成功地实现了对IC卡的管理以及煤气收费系统的管理。数据库软件具有建立用户档案、销售、写卡、统计、查询等功能。 关键词: IC卡技术 煤气表 AT89C51单片机ABSTRACTWith the coming of information society, human beings have the a

3、mount and type of information in the explosive growth, IC card, a convenient safe, reliable and high technology and high value-added information carrier will come into being. IC technology with its extensive applications and great products market in China has become a feature of the information indu

4、stry. Meanwhile, Chinas gas charges administration have long been mainly on artificially meter, there are big workload and charging time is long, difficult charging, the efficiency is low, the error-prone problems, in order to reduce gas fee manpower and material resources in the management of the w

5、aste and reduce the safety factor, smart MeiQiBiao research. This is both practical application of IC card technology explore further, also is the reform of fuel gas fee management mode.Technical requirements makes a theoretical analysis and technical application research. Design basis low cost, hig

6、h reliability principle completed the following job: 1. The software design is all adopt modular design structure, completed the gas meter charging functions and fault inquiries and processing. 2. The ratio of higher AT89C51 as control device, the core of the hardware circuit implementation control

7、device of pulse acquisition, data storage, electromagnetic valve driving control, IC literacy, power monitoring and voice alarm and etc. Function. 3. This article with the Visual Basic6.0 successfully realized the management of IC card and gas fee system management. Database software has build user

8、archives, sales, write CARDS, statistics, inquiry, and other functions Keywords: IC technology Gas meter AT89C51 Micro-controller目 录第1章 摘 要11.1 智能IC卡的作用和地位11.2 研制智能IC卡煤气表控制装置的目的和意义21.3 IC卡在中国的应用与发展3第2章 智能煤气表硬件的设计42.1 硬件总体结构42.2 AT89C51单片机简介52.2.1 AT89C51的引脚结构52.2.2 内部结构82.2.3 外围电路92.3 AT24C02 的应用102

9、.3.1 AT24CXX介绍102.3.2 AT24C02的简介112.3.3 I2C总线特性的简介142.3.4 AT24C02在智能煤气表中的应用152.4 8155的简介152.4.1 8155的结构162.4.2 8155的引脚及功能162.4.3 8155的工作原理172.5 LED显示电路的设计192.5.1 LED显示器结构与原理192.5.2 LED显示器与显示方式202.6 耗气量计数电路的设计222.6.1 霍尔效应222.6.2 计数电路的设计23 2.6.3 霍尔元件的材料及结构特点232.7 可燃气报警电路的设计242.7.1 传感器242.7.2 探测报警电路242

10、.7.3 调试252.8 电源电路的设计252.8.1 电源变压器262.8.2 单相整流电路272.8.3 滤波电路292.8.4 稳压电路302.9 防作弊电路的设计31第3章 智能煤气表软件的设计323.1 流程图323.2 软件抗干扰技术33第 4 章 收费管理软件设计364.1 开发平台及开发选用的语言364.1.1 Visual Basic概述364.1.2 Access的介绍384.2 收费管理中心主机软件流程图424.2.1 收费管理中心各部分功能的简介434.2.2 用量查询程序444.2.3 报表输出程序464.2.4 用气信息及断气控制功能474.2.6 IC卡智能煤气表

11、充值系统源程序代码48总 结54致 谢55参考文献56附录1:智能煤气表原理图57附录2:智能煤气表程序清单58VI 第1章 摘 要1.1 智能IC卡的作用和地位随着社会的进步和现代化程度的不断提高,人类所拥有的信息种类和数量都在成倍增加,人们每天都要处理许多与个人有关的信息,如购物、打电话、交水费、电费、燃气费、到银行存款取款等,这样就需要携带多种票证、现金、单据,给人们带来极大的不便和不安全感。于是,人们开始寻求一种具有支付、查询、密码查验等多功能及携带方便、安全可靠的“卡”。IC卡就是随着计算机技术、微电子技术和信息化技术的发展应运而生的一种现代社会重要的信息载体和交易工具。IC卡又被称

12、为集成电路卡(Integrated Circuit Card),它是将集成电路芯片镶嵌于塑料基片之中,并被封装成卡片的形式,其外形与普通信用卡完全相同,尺寸大小符合ISO7816标准。IC卡具有突出的3S特点,即Standard(国际标准化)、Smart(灵巧智能化)和Security(安全性)。因而发展迅速,被广泛地应用于移动数据计算场合,如银行、电信、交通、广播电视、公用事业等领域。IC卡不仅改进了现有多种卡的使用方法和功能作用,它还不断开创新的应用领域。虽然IC卡本身并不创造任何价值,但是,如果将IC卡和其它设备组成系统就能够提供非常丰富的服务功能。把这些功能与生产或流通领域有机地结合起

13、来,将出现令人意想不到的奇迹,创造出巨大的经济和社会效益。我国的金融和非金融产业部门都己认识到发展IC卡产业对加速我国国民经济信息化的重大作用。因此,与国外有关公司合作,引进制卡、读卡设备及应用的先进技术,成立了有关集团、公司、以加速我国应用和发展IC卡的应用和发展。 在国际上不少国家由于受到当时历史条件和技术发展的限制,都是先发展磁卡,其中大多数国家磁卡己发展得相当普遍,拥有数量庞大的磁卡应用设备,若要将其完全改造成IC卡读写设备将是相当困难的。此外,伴随着使用磁卡犯罪现象的日趋严重,采用IC卡已成为势在必行的潮流。IC卡可以最有效地杜绝恶性透支,便于正常用款、存款,其内部有各种安全措施,可

14、免除伪造,它无须计算机网络的实时支持,可脱机作业,还可以实现一卡多用。因此普遍受到人们的赞誉和青睐,根据我国国情,我们没有必要也不应该重复走国外的老路,而应尽快开发适用于我国的IC卡。1993年6月,政府提出了全民推行使用信用卡,以减少大量的现金流通,加强国家对经济的宏观调控,实施以“电子货币”工程为重点启动的卡基础应用系统工程,即“金卡”工程。有关专家预计,IC卡必将在世界范围内逐步取代磁卡等卡种,在金融、电信、保险、公共福利事业等领域大量的应用,并正在我国实施的“金卡”工程中扮演着重要角色。1.2 研制智能IC卡煤气表控制装置的目的和意义IC卡的使用与其应用系统是密切相关的。一方面,采用I

15、C卡可以使系统的运作更富创造性,另一方面,应用系统又会不断地对IC卡提出新的要求,促使其功能更加完善。因此,怎样把IC卡与实际应用有机地结合起来,充分发挥IC卡的优越性,一直是IC卡技术的一个重要课题,智能IC卡燃气表控制系统就是IC卡技术的一种实际应用。 我国大规模发展燃气化工程是从七十年代开始的,与世界发达国家相比,不论是从燃气普及率上,还是从燃气的计量、收费和管理上,都有很大的差距。更突出的问题是,我国燃气化工程一次性投资很大,燃气经营多处于微利润或亏损,除了政策性亏损外,其中计量供销差和收费管理漏洞是各地煤气公司普遍存在的重要亏损原因。所以国家每年要投入大量资金来弥补亏损,这就给国家增

16、加了相当大的负担,也使城市燃气事业的自身发展缺乏活力。目前,随着国家开发大西北“西气东输”计划的正式启动,对燃气管理的进一步规范提出了更高的要求。此外,国家的“金卡工程” 的深入开展为新型的智能IC卡预付费燃气表的研制提供了十分广阔的应用前景。我国各地已研制了电子卡、磁卡、光卡和IC卡的智能燃气表,这些技术的共性就是把卡作为信息载体,作为“开”表的钥匙。因为IC卡除了在价格上暂时比其它几种卡稍贵一些(光卡除外),IC卡的技术性能等指标均高于其它卡。鉴于IC卡的优点,IC卡与燃气表的结合是未来发展的一种趋势。随着IC卡技术的不断发展以及国内相关行业服务意识的提高,在与居民用户日常生活相关的计量表

17、计中使用IC卡技术己经得到了迅速的推广和广泛的应用。目前在电表、水表、燃气表及暖气热力表中都开始采用IC卡作为抄表收费、控制以及数据管理的媒介,使得IC卡表已经成为当前国内应用技术发展的一个亮点。此外,从燃气表的管理模式和收费方式上看,我国采用智能IC卡燃气表装置是可行的。1.3 IC卡在中国的应用与发展我国的信用卡正跳过磁卡发展阶段而直接进入IC卡时代,国内先后组建华旭、华鑫集团公司等,出现了一批科研及生产、经营单位。96年10月,国内第一张用芯片设计、研制到卡片制作生产全部国产化的中华IC卡顺利通过技术鉴定,哈尔滨工业大学微电子中心与航天金卡电子公司联合研制成功的HWZ201型IC卡也在9

18、6年年底鉴定,该逻辑加密型IC卡芯片用1微米以CMOS与EEPROM工艺小批量生产,据称一年内可提供10万张IC卡。另外,上海贝岭微电子有限公司也从美国引进了1.2微米EEPROM关键技术,制造IC卡芯片。目前,国内引进IC卡后部装配生产线较多,它们采用国外芯片,生产能力未充分发挥,97年研制出加密算法,IC卡操作系统COS,着手开发智能IC卡,其CPU芯片拟先用国外芯片,而操作系统采用国产的,国内IC卡应用市场发展迅猛,截止98年6月,7家银行共有发卡机构2023个,发卡量2040万张,存款余额670多亿元,特约商户18万多家,取现网点24万多个,自动柜员机ATM 7万多台。目前国内IC卡的

19、应用已跳出单一的银行业务与传统的信用功能,与其它产业联袂发展,它的付费功能,可用于交电费、水费、燃气费、电话费、车船费,甚至医疗费、保险费、纳税等。我国目前正按多种使用要求开发IC卡新品种,以便最大限度地发挥IC卡的各种功能和作用。第2章 智能煤气表硬件的设计2.1 硬件总体结构 图2-1 硬件总体结构如图2.1所示,系统采用了AT89C51单片机作为核心,IC卡采用了AT24CO2卡,其中AT24CO2(1)为IC卡内存储芯片,AT24CO2(2)中存储用户信息。浓度检测电路、计量机构、报警显示电路、电源切换电路、电器驱动电路等构成了煤气表系统。2.2 AT89C51单片机简介2.2.1 A

20、T89C51的引脚结构从应用的角度来看,AT89C51单片机具有集成度高、系统结构简单、系统扩展方便、可靠性高、处理功能强、处理速度高、容易产品化等特点。图2.2是AT89C51双列直插封装方式的引脚结构图。AT89C51运用了ATMEL公司的高密度非易失存储器技术,与工业标准的80C51的指令和管脚排列兼容。芯片内可下载的FLASH存储器可通过SPI串行接口或通过通用的非易失存储器编程器对其进行系统内的重新编程。通过将可下载的FLASH存储器与通用的8位CPU相结合,AT89C51成为一种许多嵌入式应用系统中低成本,灵活性好的单片机。如图2-2。 图2-2 AT89C51单片机引脚配置图其主

21、要特点如下:与MCS-51产品兼容,4K字节可系统内重复编程的FLASH EPROM,128字节的内部RAM,操作电压为4V至6V,32路可编程I/O,2个16位计数器/定时器,5个中断源,可编程的UART串行接口。下面分别叙述这些引脚的功能:(1)电源:AT89C51单片机正常工作时,其40脚(Vcc)接+5V电源,20脚(Vss)接地。(2)外接晶体引脚XTAL1,XTAL2。XTAL1接外部晶体的一个引脚。在单片机内部,它是构成片内振荡器的反相放大器的输人端。当采用外部振荡器时,该引脚接收振荡器的信号,即把此信号直接接到内部时钟发生器的输人端。XIAL2接外部晶体的另一个引脚。在单片机内

22、部,它是上述振荡器的反相放大器的输出端。采用外部振荡器时,此引脚应悬浮不连接。(3)控制或与其他电源复用引脚RST;ALE/PROG;和/VPP。RST复位输人端。当振荡器运行时,在该引脚上出现两个机器周期的高电平将使单片机复位。ALE/;当访问外部存储器时,ALE地址锁存允许的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE端仍以不变的频率输出。此频率为振荡器频率的1/6周期性地出现正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是:每当访问外部数据存储器时,将跳过一个ALE脉冲。在对Flash存储器编程期间,该引脚还用于输入编程脉冲PROG。如果需要的话,通过

23、对专用寄存器SFR区中8EH单元的D0位置数,可禁止ALE操作。该位置数后,只有在执行一条MOVX或MOVC指令期间,ALE才会被激活。另外,该引脚会被微弱拉高,单片机执行外部程序时,应该设定禁止ALE位为无效。程序存储允许,输出是外部程序存储器的读选通信号。当AT89C51由外部程序存储器取指令时,每个机器周期两次PSEN有效即输出2个脉冲。但在此期间内,每当访问外部数据存储器时,这两次有效的PSEN信号将不出现。/VPP外部访问允许端。要使CPU只访问外部程序存储器地址为00C0H-FFFFH则端必须保持低电接到GND端。然而要注意的是,如果保密位LBI被编程,复位时在内部会锁存EA端的状

24、态。当端保持高电平(接VCC端)时,CPU则执行内部程序存储器中的程序。在Flash存储器编程期间,该引脚也用于施加12V的编程允许电源VPP(如果选用12V编程)。(4)输人/输出引脚P0.0-P0.7,P1.0-P1.7,P2.0-P2.7,P3.0-P3.7。1.P0口P0口是多功能口,即可作为地址/数据总线使用,又可作为普通I/O口使用。P0口作为地址/数据总线时,控制线为高电平,用来输出外存储器地址的8位D0D7,因此P0口进行分时复用操作。P0端口是一个8位漏极开路型双向1/0端口。作为输出口用时,每位能以吸收电流的方式驱动8个TTL输人,对端口写1时,又可作高阻抗输人端用。在访问

25、外部程序和数据存储器时,它是分时多路转换的地址(低8位)数据总线,在访问期间激活了内部的上拉电阻。在Flash编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻2.P1口Pl口是一个带有内部上拉电阻的8位双向I/0端口。Pl口的输出缓冲器可驱动4个TTL输人。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输人口。Pl口作输人口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流IIL。在对Flash编程和程序校验时,Pl口接收低8位地址。3.P2口P2口是一个带有内部上拉电阻的8位双向I/0端口。P2口的输出缓冲器可驱动吸收或输

26、出电流方式)4个TTL输人。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输人口。P2作输人口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流IIL。在访问外部程序存储器和16位地址的外部数据存储器时,如执行MOVX DPTR时,P2口送出高8位地址。在访问8位地址的外部数据存储器时,如执行MOVX R1指令时,P2口引脚上的内容就是专用寄存器SFR区中P2口寄存器的内容,在整个访问期间不会改变。在对Flash编程时和程序校验期间,P2口也接收高位地址和一些控制信号。4.P3口P3口是一个带内部上拉电阻的8位双向1/0端口。P3口的输出缓冲器可驱动(吸收或输出

27、电流方式)4个TTL输人。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输人口。P3口作输人口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流IIL。P3口也是准双向口,在作第二功能使用时,相应的口锁存器必须为“1”。对并行口进行读写时有两种操作:一是锁存器,二是读引脚。1读引脚的指令是绝大部分的并行口作为操作数的数据指令。2读锁存器指令执行器如下操作,读入锁存器的值,改写,然后再写入。在AT89C51中,P3端口还有一些复用功能。复用功能如表2-1所列。表2-1 P3各端口引脚与复用功能表端口引脚复用用能P3.0RXD(串行输入口)P3.1TXD(串行输出口

28、)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读写通)2.2.2 内部结构AT89C51单片机内部集成口多达8个部件:1.数据存储器(RAM):片内为128个字节(单元),片外最多可扩展至64K字节2.程序存储器(ROM/EPROM):有4K的EPROM。3.中断系统:有5个中断源,两个中断优先级4.定时器/计数器:两个16位的定时/计数器,具有四种工作方式。5.串行口:1个全双工的串行口,具有四种工作方式。6.P0口、P1口、P2、P3口:为4个

29、并行的8位I/O口。7.特殊功能寄存器(SFR):共有21个,用于对片内各个功能模块进行管理、控监视。实际上是一些控制寄存器和状态寄存器,是一个特殊功能的RAM区域。8.处理器(CPU):为8位的CPU,而且内含一个位处理器,不仅可以处理字节数据,还可以进行多位变量的处理。2.2.3 外围电路1.复位电路通过某种方式,使单片机内各寄存器的值变为初始状态的操作称为复位。为使单片机正常工作,必须保证良好的复位。复位可分为上电复位和外部复位两种方式。上电复位是指单片机在接通电源时对单片机复位,外部复位可由外部脉冲复位或由手动复位。本系统采用上电复位方式。复位电路如图2-3。 上电瞬间,由于电容C两端

30、电压不能突变,所以电容正极电压为低,单片机RESET脚保持高电平。随着电容正极电压的逐渐上升,RESET脚的电压逐渐下降。只要合理选择R、C的值使RESET脚上高电平的保持时间超过两个机器周期,就可以使单片机可靠复位。2.时钟电路单片机的定时控制功能是用片内的时钟电路和定时电路来完成的,而片内的时钟产生有两种方式:内部时钟方式和外部时钟方式。本课题采用内部时钟方式(如图2-4所示),片内高增益反相放大器通过XTALI和XTAL2外接作为反馈元件的晶体(呈感性)与电容组成的并联谐振回路构成一个自激振荡器向内部时钟电路提供振荡时钟。AT89C51工作的时钟频率范围为0到24MHz.本课题选择12M

31、Hz的石英晶振与30pF的电容构成并联谐振电路。图2-3 复位电路图2-4 时钟电路2.3 AT24C02 的应用2.3.1 AT24CXX介绍AT24CXX系列采用低功耗COMS工艺制造,内部设有高压泵电路,可以单电压工作,具有擦除/写入10万次和数据保留100年的高可靠性,提供双线串行接口,支持ISO/ICE78163同步协议,便于与各种微机系统进行接口,使用方便。另外,对存储器在芯片中的数据,还可通过软件的方法利用各种算法进行加密处理,从而提高安全性,扩大器件的应用范围。AT24CXX含24C01/24C02/24C04/24C08/16,它们分别提供1K/2K/4K/8K/16K位串行

32、E2PROM,内部组态为128/256/512/20488位,支持8字节(1K,2K)、16字节(4K,8K,16K)页面写入方式。如将这些芯片的输入地址引脚A2、A1和A0按照表2-2所示进行硬件接地后,便可用于IC卡中。表2-2 AT24CXX用于IC卡的硬件连接AT24CXX0102040816接地引脚A2,A1,A0A2,A1.A0A2,A1A2无2.3.2 AT24C02的简介1.AT24C02引脚简介,如图2-5。(1)A2,A1,A0接地引脚(2)GND 模拟地(3)SDA 数据引脚(4)SCL 时钟引脚(5)Vcc 电源引脚(6)TEST 测试端 图 2-5 AT24C02引脚

33、图2.AT24C02的卡模块触点(图 2-6)及功能设置(表23)。图2-6 卡模块触点图表23 功能设置 引脚 卡触点 符号 功能 1 C1 VCC 操作电压5V 2 C2 NC 复位 3 C3SCL 串行时钟线 4 C4 NC 未用5 C5 GND 地 6 C6 NC 未用 7 C7 SDA 串行数据线 8 C8 NC 未用3.AT24C02卡工作状态AT24C02卡工作时的总线时序如图2-7所示。SCL和SDA两总线平时通过一个电阻上拉为高电平,SDA总线上的数据仅在SCL低电平时间周期内可能改变。SCL高电平周期期间数据的改变表示“开始”或“停止”两种状态:当SCL处于高电平时,SDA

34、由高电平转向低电平表示一个“开始”状态必须在其他操作之前执行,而“停止”状态则终止所有操作。除了以上两种状态外,AT24C02卡与外界的通讯还需要另外一个状态,那就是“确认(ACK)”:总线上的任何接收数据设备必须将SDA总线置于低电平以确认它成功的收到了每个字节(所有的地址和数据都是以8位码串行输入、输出AT24C02卡),该确认是在每个字节之后,第九个时钟周期时发生。AT24C02卡也通过在收到每个地址或数据码之后置SDA于低电平的方式确认。为了正确地访问AT24C02卡,外部数据传送设备必须在发出“开始”状态之后,随即给出一个8位地址码,称为器件寻址码。该码高四位为1010,这在AT24

35、C02系列所有芯片中都是一样的。接下来3位依次是A2,A1和A0,它们与芯片各自的输入地址引脚硬件连接相对应,未作硬件连接的引脚所对应位用于页面寻址。最后1位是读、写操作选择位,该位为0(低电平)时激发写操作,为1(高电平)时激发读操作。4.AT24C02的读写方法AT24C02具有写字节和写页面两种写操作方式。图2-8所示为写字节方式,该方式在器件寻址和确认之后跟随一个数据寻址码,卡片在收到该寻址码后通过SDA发出确认,并随时钟输入8位数据码,同样,收到数据之后卡片再次发出确认,数据传送设备必须用停止状态来终止写操作。这时,卡片进入一个内计时固定存储器写入周期,在该写周期内,所有输入都被禁止

36、,直至写操作完成。图2-7 AT24C02卡总线时序AT24C02的读操作分为立即地址读取、随机地址读取和顺序地址读取三种方式。随机读取方式式需要一个“空”字节序列来加载数据地址,一旦器件寻址码和数据寻址码随时钟输入,并被确认,传送设备必须产生另一个开始状态。通过送出一个读、写选择位处于高电平的器件寻址码去激发一次立即寻址读取,卡片确认器件地址,并随时钟串行输出数据。数据的读取不通过确认应答,而通过产生一个停止状态来应答。 图2-8 写字节操作2.3.3 I2C总线特性的简介I2C双向二线制串行总线协议定义:只有在总线处于“非忙”状态时,数据传输才能被初始化。在数据传输期间,只要时钟线为高电平

37、,数据线都必须保持稳定,否则数据线上的任何变化都被当作“启动”或“停止”信号。I2C串行总线支持所有NMOS、CMOS, 工艺制造的器件,通过两根线(SDA-串行数据线,SCL串行时钟线)再连接到总线之间传递信息,根据地址识别每个器件,根据器件的功能可以工作在发送接收方式,对于发送器和接收器而言,在进行数据传递时可以认为时主器件或从器件。主器件是启动在总线上传的数据并产生时钟信号以允许传送的器件,这时能寻址的器件即认为时从器件。1.总线非忙状态(A段):数据线SDA和时钟线SCL都保持高电平。2.启动数据传输(B段):当时钟总线SCL为高电平状态时,数据线SDA由高电平变为低电平的下降沿被认为

38、时“启动”信号。只有出现“启动”信号以后,其他的命令才有效。3.停止数据传输(C段):当时钟线SCL为高电平状态时,数据线SDA由低电平变为高电平的上升沿被认为时“停止”信号。随着“停止”信号的出现,所有的外部操作都结束。4.数据有效(D段):在出现“启动”信号以后,在时钟线为高电平时数据线是稳定的,这是数据线的状态就表示要传送的数据。数据线上的数据改变必须在时钟线为低电平期间完成,每位数据占一个时钟脉冲宽度。每个数据的传输都是由“启动”信号开始,结束语“停止”信号。在“启动”与“停止”信号之间传输的数据字节数由微机处理机确定,并且从理论上设字节数没有限制。起始(S),停止(P)都是由SCL高

39、电平期间SDA的跳变决定的。SDA电平下拉时启动I2C总线,上拉时停止使用总线。在启动I2C总线后,对应SCL高电平期间SDA上的数据有效,对应SCL低电平期间允许SDA上的数据更迭。5.应答信号:每个正在接收数据的E2PROM在接到一个字节的数据后,通常需要发出一个应答信号,微处理机必须产生一个与这个应答相联系的额外的时钟脉冲。在应答时钟脉冲周期内,时钟脉冲为高电平,数据线必须下拉成稳定的低电平。微处理机对E2PROM完成的最后一个字节不产生应答位,但是应该给E2PROM一个结束信号。在这种情况下,E2PROM应该结束数据线的高电平状态,而使微处理机能够产生“停止”信号。但是,如果正在进行内

40、部定时编程周期,那么将不产生应答位。2.3.4 AT24C02在智能煤气表中的应用AT24C02(1)为IC卡内存储芯片,该芯片是一种具有I2C总线结构的串行E2PROM,容量为256字节。用气前,用户持卡向煤气公司购买煤气,由煤气公司写卡机把所购煤气量编码加密后写入IC卡中。然后插入家中煤气表IC卡插槽内,由AT89C51对该卡进行解码和核对工作,并读取购气量。卡中的密码信息经某种算法得到且每次不同,内容完全相同的两次插卡操作,其后面一次将被视为非法,这样可防止通过复制IC卡进行窃气的行为。同时,表内记录的累积已耗用气量被写入IC卡中,供气插卡时煤气公司的计算机管理系统查对,发现累积已耗用气

41、量比累积购气量大的情况,即进行调查。在插槽中插入IC卡时,触动K2闭合,引起中断,且P1.5由高变低供该中断服务程序查询确认是IC卡插入。表内非易失性内存芯片与IC卡内芯片一样,即AT24C02(2)。煤气表中诸如累积已耗用气量、结余气量、购气次数等重要数据都存在AT24C02(2)中,这样可克服由充电电池长期维持RAM中信息所潜在的不可靠性。AT24C02仅有8条引脚,串行通信只用两根口线,做成IC卡时外界连线少,作为非易失性内存更是比采用并行E2PROM减少许多连线,PCB布线更简洁,体积更小。IC卡煤气表中所需存取的重要数据少,且数据存储速度要求不太高,故这种小容量的串行E2PROM非常

42、适用。AT24C02是I2C总线结构器件,这就要求AT89C51通过编程使其P1.0和P1.1完全遵循I2C总线时序及AT24C02的数据传送格式,去分别等效串行数据线SDA和串行时钟线SCL,从而实现两者的通信。2.4 8155的简介8155芯片内具有256个字节的RAM,两个8位、一个6位的可编程I/O口和一个14位计数器,与单片机的接口简单,是单片机应用系统中广泛使用的芯片。2.4.1 8155的结构按照器件的功能,8155可由下列三部分组成;1.随机存储部分 容量为2568位的静态RAM。2.I/O接口部分 (1)端口A:可编程8位I/O端口PA0PA7。 (2)端口B:可编程8位I/

43、O端口PB0PB7 (3)端口C:可编程6位I/O端口PC0PC53.计数器/定时器部分 是一个14位的二进制减法计数器/定时器2.4.2 8155的引脚及功能如图2-9所示,8155具有40条引脚线,采用双列直插式封装。 图2-9 8155引脚图1.AD7AD0(8条) AD7AD0是地址/数据总线,与单片机的P0口相连,用于分时传送地址/数据信息。2.I/O总线(22条)PA7PA0为通用I/O线,用于传送A口上的外设数据,数据传送方向由写入8155命令字决定的;PB7PB0通用I/O线,用于传送B口上的外设数据,数据传送方向也由8155命令字决定。PC5PC0制线,共有6条,在通用I/O

44、方式下,用作传送I/O口数据,在选用I/O方式下,用作传送命令/状态信息。3.控制总线(8条)RESET:复位输入线,在RESET线上输入一个宽大于600ns的正脉冲8155立即处于复位状态,A、B、C三口也定义为输入方式。和IO/:为8155片选输入线,若=0,CPU选中本8155工作;否则,本8155不工作。IO/为I/O端口或RAM存储器的选通输入线;若IO/=0,则CPU选中8155的RAM存储器工作。若IO/=1,则CPU选中8155片内某一存储器。和:是8155的读/写命令输入线,为写命令线,当=0和=1时,8155处于读出数据状态:当=1和=0时,8155处于写入数据状态。ALE

45、:为允许地址输入线,高电平有效,若ALE=1,则8155允许AD7AD0上地址锁存到地址锁存器;否则,8155的地址锁存器处于封锁状态。TIMERIN和:TIMERIN是计数器输入线,输入的脉冲上跳沿用于对8155片内的14位计数器减1,为计数器输出线,当14位的计数器减为0时就可以在该引线上输出脉冲或方波,输出脉冲的形状与所选的计数器工作方式有关。4.电源线(2条)Vcc为+5V电源输入线,Vss接地。2.4.3 8155的工作原理 8155的结构框图见图2-10。这里主要介绍它的三组I/O端口电路及14位二进制减法器的工作原理。1.8155I/O端口工作原理8155的三组I/O端口电路的工作方式,均由可编程的命令寄存器的内容所规定,而其状态可由读出状态寄存器的内容而获得,上面已经叙述,8155的命令寄存器和状态寄存器分别为各自独立的8位寄存器。在8155的器件内部,从逻辑上来说,只允许写入命令寄存器和读出状态寄存器的内容。而实际上,读命令寄存的内容及写入状态寄存器的操作实际不允许、也不可能实现的。因此完全可将命令寄存器和状态寄存器的地址合用一个地址通道,以减少器件占用通道地址;同时将两个寄

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号