虚拟I2C总线的ZLG7290 C51程序软件包(V1.0).doc_第1页
虚拟I2C总线的ZLG7290 C51程序软件包(V1.0).doc_第2页
虚拟I2C总线的ZLG7290 C51程序软件包(V1.0).doc_第3页
虚拟I2C总线的ZLG7290 C51程序软件包(V1.0).doc_第4页
全文预览已结束

下载本文档

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

文档简介

广州周立功单片机发展有限公司 Tel: (020) 38730916 38730917 38730976 38730977 Fax: 38730925 虚拟I2C总线的ZLG7290 C51程序软件包(V1.0)1.1 C51软件包说明此软件包包含了模拟I2C C51程序软件包和ZLG7290的C51程序然后包。软件包的接口界面: (1) bit ISendByte(uchar sla,uchar c) (无子地址)写单字节数据 (现行地址写) (2) bit IRcvByte(uchar sla,uchar *c) (无子地址)读单字节数据 (现行地址读) (3) bit ISendStr(uchar sla,uchar suba,uchar *s,uchar no)(有子地址)读N字节数据 (4) bit IRcvStr(uchar sla,uchar suba,uchar *s,uchar no) (有子地址)写N字节数据(5) bit ISendStr(uchar sla,uchar *s,uchar no) (无子地址)写多字节数据(6) bit IRcvStr(uchar sla,uchar *s,uchar no) (无子地址)读单字节数据(7) unsigned char ZLG7290_SendData(unsigned char SubAdd,unsigned char Data)(8) void ZLG7290_SendBuf(unsigned char * disp_buf,unsigned char num)(9) unsigned char ZLG7290_SendCmd(unsigned char Data1,unsigned char Data2)(10)unsigned char ZLG7290_GetKey()l 16是模拟I2C的函数每一个函数都有返回值,当返回值为1时表示操作成功,否则操作失败。l 参数说明:sla 为器件从地址, suba 为器件子地址, *s数据接收/发送区指针,no接收/发送字节数。l 现行地址读/写:有子地址器件,不给定子地址的读/写操作。l 设计有/无子地址子程序是根据I2C器件的特点,把地址和数据彻底分开。l 710是ZLG7290的操作函数。l 第7的参数SubAdd是ZLG7290的内部寄存器地址。l 第8是把显示的内容直接发送到ZLG7290直接显示。l 第9是发送命令函数Data1是COMMAND1, Data2是COMMAND2。l 第10是读键函数,运行后返回键值。使用时只要把VI2C_C51.C和ZLG7290.C加入用户的项目中,然后在用户程序开头加入#include “VI2C_C51.h”#include “zlg7290.h”即可以使用上面的函数。但这样做有1点限制 : (1) MCU的Fosc=12MHz(时钟周期为标准80C51模式即12 Clock)。另外你还要对VI2C_C51.C的如下设置 sbit SDA=P17; /*模拟I2C数据传送位*/sbit SCL=P16; /*模拟I2C时钟控制位*/1.2 软件包清单在这里就不把模拟I2C C51程序软件包一一列出了,用户可以直接参考:/philips/yingrong/iic/51_I2C_A2.pdf/*Copyright (c)* 广州周立功单片机发展有限公司* 研 究 所* 产品一部 * *-*/#include REG52.h#include viic_c51.h#define zlg7290 0x70 /ZLG7290的IIC地址#define SubKey 0x01 #define SubCmdBuf 0x07#define SubDpRam 0x10/* 函数名称: DelayNS* 功能描述: 长软件延时* 输入: i :延时参数,值越大时延时越久* * 输出: 无* 全局变量:无* 调用模块: 无*-*/void delayMS(unsigned char i) unsigned char j,k;for(k=0;ki;k+)for(j=0;j0x17)return 0;ISendStr(zlg7290,SubAdd,&Data,1);delayMS(10);return 1;/* 函数名称: ZLG7290_SendCmd* 功能描述: 发送命令(对子地址7、8)* 输入:DATA1 :命令1* DATA2 :命令2* * 输出: 0 : Fail* 1 : OK* 全局变量:无* 调用模块: ISendStr、delayMS*-*/unsigned char ZLG7290_SendCmd(unsigned char Data1,unsigned char Data2)unsigned char Data2;Data0=Data1;Data1=Data2;ISendStr(zlg7290,0x07,Data,2);delayMS(10);return 1; /* 函数名称: ZLG7290_SendBuf* 功能描述: 向显示缓冲区发送数据* 输入: * disp_buf :要发送数据的起始地址* num :发送个数* * 输出: 无* 全局变量:无* 调用模块: ZLG7290_SendCmd*-*/void ZLG7290_SendBuf(unsigned char * disp_buf,unsigned char num)unsigned char i;for(i=0;i0 键值* =0 无键按下* 全局变量:无* 调用模块: IRcvS

温馨提示

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

评论

0/150

提交评论