中国搜课网 http://www.chinasouke.com_______________ 课件 教案 试题 论文 图书 中考 高考 新课标
__
用P89C664实现I2C总线大批量数据的自动存储
摘要:结合FlashMagic软件对PhilipsP89C664单片机ISP功能进行详细介绍,同时详细叙述利用P89C664硬件I2C接口接收数据并转发到电脑,实现I2C总线大批量数据的自动保存技术,并附有完事的源泉程序清单及必要的注释。
__ 关键词:FlashMagicISPI2CP89C664
引言
在实际工作中,有些情况下可能需要对一些I2C接口发出的数据进行分析,如果数据较少则比较容易解决。比如可以直接把数据保存到单片机的RAM中,然后通过LED显示出来,但如果数据量很大,这种方法就很河取了。在这种情况下,想办法把大量的数据保存到电脑里是一个比较好的方法这样不但可以解决大批量数据的存储问题,同时也易于编辑、分析和打印。
但是,电脑的外设接口中是没有I2C接口的,因此需要对I2C部迟疑不决的数据进行转换,使之能发往电脑,实现数据的文件存储。综合各种因素考虑,采用UART串口的方式比较方便,因为串口技术简单、应用广泛、各种应用软件也较为丰富。
本文不仅介绍了如何实现I2C数据的转发和自动存储,同时也介绍了P89C664的ISP功能,并给出了详细配合相关软件,完全可以省去一台价格不菲的编程器,实用性强。这非常适合业余自学单片机技术或者在家吵建立一个简单实用的开发系统。
1P89C664单片机及ISP、IAP简介
P89C664是Plilips公司一款优秀的51内核单片机芯片、带64KB的Flash程序夏令、1792B的数据存储器、I2C硬件全工作方式接口、6clocks/12clocks可选、8个中断源/4级中断优先级、双DPTR寄存器、PCA以及IAP、ISP功能等,具体内容请参考相关资源。在Philips的网站上可以下载到详细的技术资料及各种应用文档:http://www.semiconductors.philips.com/。
__ 下面科简单的介绍一下ISP、IAP的概念。
ISP(InSystemProgramming),即在系统编程。它允许MCU还在产品电路板上时,对其下载新的程序。这种技术的一个明优点是,不需要把MCU芯片从你的电路板上拆下来,再装到传统的编程器上来写入新的程序。你尽可以把具有ISP功能的MCU芯片焊接在电路板上,应用更加可靠、方便。当然,你得把MCU的UART串口留出,并设计好简单的外围电路;同时还配有一个专用的ISP软件以实现用户程序的直下载。这种专用的ISP下载软件可以在各公司的网部上免费下载到。P89C664的ISP软件可在Philips公司的网站上下载。当然,如果你有兴趣也可以自己设计一个个性化的ISP下载软件,因为Philips公司对ISP的各种编程指令是开放的。
__ IAP(InApplicationProgramming),即在应用中程序。就是说,MCU自己可以获取新的代码并对自己重新编程。这是一个极为有用的技术,比如可以通过Internet、程控电话网等给你的产品远程升级,就像常见的杀毒软件可以自动升级一样。有了这项技术,你就可以利用现在的程控电话网、互联网等实现你的嵌入式系统远程自动升级,而无须传统的那种给客户邮寄芯片而带来的不便。
需要指出的是:ISP和IAP的核心技术是相同的,都是调用内部的标准程序对Flash存储器进行擦除和重新编程。区别在于:ISP由片内固化的一个默认的串行加载程序(BootLoader)来完成这一动作;而IAP则由用户在自己的程序中完成这一调用,这就为产品的远程升级提供了可能,甚至可以说是MCU应用技术的一个里程碑。
2ISP技术的应用
对于Philips的MCU,其ISP电路很简单,就是一个与计算机串口通信的电路(注:根据ISP控制软件的不同电路会略有不同),电路如图1所示。
国外的嵌入式系统学会(EmbeddedSystemsAcademy)提供了一个ISP软件FlashMagic,可以在该组织的网站上下载到,网址为http://www.esacademy.com/。上面的连接电路也是与该软件配套使用的。这是一款很优秀的软件,操作方便、功能强大,并且该软件支持Philips公司的几乎所有带ISP的器件。另外,Philips公司也免费提供ISP软件,但其易用性方面不如FlashMagic。
FlashMagic的安装过程与标准的Windows软件类似,在此不再详述。安装完成后,启动FlashMagic后,有图2所示画面。