- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
                        查看更多
                        
                    
                * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *        发送应答位子程序 MACK:CLR SDA        SETB SCL        NOP        NOP        CLR  SCL        SETB SDA         RET  * *    发送非应答信号子程序 MNACK:SETB SDA         SETB SCL          NOP          NOP          CLR  SCL          CLR  SDA          RET    * *     应答位检查子程序 当检查到正确应答位后,F0=0 ;否则F0=1 CACK: SETB SDA         SETB SCL         CLR F0         MOV C,SDA          JNC CEND         SETB F0 CEND: CLR SCL         RET 发送一字节数据子程序 WRBYT:MOV R0,#08H  WLP: RLC A        JC WR1 ;判断发送1还是0        AJMP WR0 WLP1: DJNZ R0,WLP         RET  WR1: SETB SDA;发送1子程序        SETB SCL        NOP        NOP        CLR SCL        CLR SDA        AJMP WLP1 WR0: CLR SDA;发送0子程序       SETB SCL       NOP       NOP       CLR SCL       AJMP WLP1 * *    从SDA上接收一字节数据子程序 RDBYT:MOV R0,#08H RLP: SETB SDA       SETB SCL       MOV C,SDA;读入SDA引脚状态       MOV A,R2 ;由C拼装入R2中       RLC A       MOV R2,A       CLR SCL;使SCL=0可继续接收数据位       DJNZ R0,RLP       RET   * * 向被控器发送N字节数据子程序 WRNBYT: MOV R3,NUMBYT            LCALL STA ;启动I2C总线            MOV A,SLA; SLA外围器件寻址字节存放单元            LCALL WRBYT            LCALL CACK;检查应答位            JB F0,WRNBYT;非应答位则重发            MOV R1,#MTD;MTD主节点发送数据缓冲区首址  WRDA: MOV A,@R1          LCALL WRBYT          LCALL CACK          JB F0,WRNBYT          INC R1          DJNZ R3,WRDA          LCALL STOP          RET  * * 从外围器件读取N字节数据子程序 RDNBYT:MOV R3,NUMBYT           LCALL STA ;发送启动位           MOV A,SLA ;发送寻址字节           LCALL WRBYT           LCALL CACK ;检查应答位           JB F0,RDNBYT ;非正常应答时重新开始   RDN: MOV R1,#MRD ;接收数据缓冲区首址入R1   RDN1:LCALL RDBYT ;读入一字节到接收数据缓冲区中          MOV @R1,A          DJNZ R3,ACK;N字节读完?          LCALL MNACK;N字节读完发送非应答信号          LCALL STOP ;发送停止信号          RET  ;子程序结束  ACK:LCALL MACK ;发送应答位       INC R1 ;指向下一个接收数据缓冲单元        SJMP RDN1;转读入下一个字节数据 * *    第八章单片机系统及外扩展. 谢谢 * * * * * * * * * * * * * * * * * * * * * * * * * * 二 引脚介绍   ?CS:电路选择端,低电平有效; ????SO?:串行数
                您可能关注的文档
最近下载
- 整本书阅读《平凡的世界》同步练习(含解析)中职语文高教版(2023)基础模块上册.docx VIP
- 异位妊娠病人术后护理.pptx
- 高教版中职语文基础模块 上册第四单元整本书阅读《平凡的世界》阅读指导教学设计.docx VIP
- 苏教版高中化学必修第一册全册教学课件.pptx
- 高中理综高三模拟高考(全国Ⅱ卷)实战演练卷——新疆高考模拟3月卷理科综合能力.doc VIP
- 关于加强金属非金属地下矿山外包工程指导意见.doc VIP
- 关于加强金属非金属地下矿山外包工程安全管理的若干规定.docx VIP
- 主新闻中心介绍.doc VIP
- 2023-2024学年江苏省南京市玄武区九年级(上)英语期中试题和答案.pdf VIP
- GoPro Cameras HERO13 Black Product Manuals 中文简体说明书用户手册.pdf
 原创力文档
原创力文档 
                        

文档评论(0)