用P89C664实现I2C总线大批量数据的自动存储
Device:选择ISP器件型号,在Flash Magic的1.81版中,共支持35种ISP器件,这里选择P89C664。
Oscillator Frea.(MHz):在这里请填入你用户板上MCU用兵晶振频率值。
其它部分类似,可以自己下载下一个Flash Magic,新自操作一下就会很清楚了。
除了下载用户程序外,Flash Magic还提供了其它的一些功能,都集中在“ISP”菜单中。可以亲自去试一下,以后你会发现Flash Magic真的很好用。有了它一定能让你的开发工作事半功倍,而且可以省去一台昂贵的编程器,对单片机的初学者尤为适用。javascript:window.open(this.src);" style="cursor:pointer;"/>
3 I2C接收数据并转发到电脑
由于P89C664带有硬件I2C接口,因此我们用它作为从器件接收I2C总线上的数据,Philips公司在相关的技术资料中给出了标准的I2C接口控制程序包。其实也可根据P89C664的资料自己来编写I2C接口的控制程序,不过Philips公司提供的参考程序很值得我们学习、研究。下面程序中用的就是Phlips公司推出的I2C接口控制程序,为了更适用于接收大批量的I2C总线数据,我们对其中的一部分代码作了必要的更改,如果需要标准的控制程序请自己从Philips的网站上下载。
程序的流程是首先设置好I2C接口的地址以及各SFR的值,然后启动I2C接口,并把接收到的数据通过串口发往电脑,在电脑上启动另一串口调试软件并做好相关的设置,即可将I2C总线的数据接收并保存下来。在这里,我们的用户板作用相当于一个协议转换装置,即把I2C总线的数据流转换为UART的数据流并发往电脑。
请注意:一般我们的ISP下载、串口调试是公用同一部分电路和同一个串口的。因此,Flash Magic和串口调试软件不能同时启动,否则将出错,请在下载完程序后关闭Flash Magic软件再启动串口调试软件。
由于串口一直以来都是各种计算机系统所提供的一个标准接口,因此串口中的调试软件在网上随处可见,当然你若有兴趣也可自己设计一款串口调试软件。
在这里我们采用的是一个名为串口调试器,英文名COMPort Debuger的软件,比较好用,并且具有大批量数据的自动保存功能,这个功能很重要。该软件启动后的界面如图8所示。
javascript:window.open(this.src);" style="cursor:pointer;"/>
在用户板程序运行并对串口调试设置好后即可点“打开串口”,此时在接收区将显示通过串口发来的各种数据。
网站(www.dpj.com.cn)给出该转发装置中P89C664的完事源泉程序,程序中附有必要的注释。
结语
本文较为详细的介绍了P89C664 ISP功能的应用,及利用简单的在线下载装置编程实现I2C总线的数据转发和保存;同时给出了详细的I2C硬件接口的初始化及整套装置的源程序。可用于各种大批量I2C总线数据的自动保存、编辑、分析、打印等,也可将该置用于一般的开发中,测试你的程序是否满足要求等。