网站大量收购独家精品文档,联系QQ:2885784924

24C04模拟IIC读写程序..doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
24C04模拟IIC读写程序.

SCL BIT P1.7;定义24C02的串行时钟线 SDA BIT P1.6;定义24C02的串行数据线 ORG 00H START: MOV R1,#20H ; 数据保存地址 MOV R7,#120 ; 取数据的个数 ;;********************************** CALL FIRST ;开始命令 MOV A,#0A0H ;写器件地址 CALL SUBS ;;********************************** MOV A,#00h ;所要读的器件的地址 CALL SUBS ;;********************************** CALL FIRST ;开始命令 MOV A,#0A1H ;开始读数据 CALL SUBS ;;********************************** WIN: CALL SUBR MOV @R1,A INC R1 DJNZ R7,WIN CLR SDA CALL DELAY SETB SCL CALL DELAY SETB SDA JMP $ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SUBR: MOV R0,#08H LOOP2: SETB SCL CALL DELAY MOV C,SDA RLC A CLR SCL CALL DELAY DJNZ R0,LOOP2 CJNE R7,#00h,LOW1 ;改 SETB SDA JMP CLIMBER LOW1: CLR SDA CLIMBER:CALL DELAY SETB SCL CALL DELAY CLR SCL CALL DELAY SETB SDA RET SUBS: MOV R5,#08H LOOP: CLR SCL RLC A MOV SDA ,C NOP SETB SCL CALL DELAY DJNZ R5,LOOP CLR SCL CALL DELAY SETB SCL REP: MOV C, SDA JC REP CLR SCL RET DELAY: NOP NOP RET ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; FIRST: SETB SDA SETB SCL CALL DELAY CLR SDA CALL DELAY CLR SCL ;开始传数据 RET ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; END I2C驱动24c04程序 mugenwon 发表于 2007-5-23 15:26:00 看到很多人在找24Cxx的程序,找了又用不了,干脆拿自己的分享算了。 以下代码功能极其强大,而且使用方便,基本上改几个参数,直接调用就行。至于原理说起来就太长了,只好自己消化吸收。 只能用24c01A~24c16A系列,容量超过的不行 /* 本程序可以一次读和写最多256个字节数据,超出会发生卷页,即从0xff回到0x00 继续写或者读,请注意 本子程序使用方法如下: 先把下面的#define numbyte 改为对应IC型号 调用Write_Flash()和Read_Flas

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档