 
         
         
         
         
        
            全文预览已结束            
        
        下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
            #include/AT24C08读取、写入/extner void delay ms(unsigned int);/extnern void read I2C(unsigned char * ram address,unsigned char rom address,unsigned char bytes);/extnern void write I2C(unsigned char * ram address,unsigned char rom address,unsigned char bytes);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *# define writevice address0x A0/写入设备地址# define readvceaddress0xa1/读取器地址/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *sbit SCL=P1 0;/I2C时钟线SCLsbit sda=P1 1;/I2C数据线SDAsbit dog=P3 7;/程序执行标志和数据读写正确标志/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *void delay unsigned int number(ms)/延迟子例程,延迟大小取决于运行频率和number值Unsigned char tempfor(;号码!=0;Number -,DOG=!DOG)/循环,DOG用于输出状态信号for(temp=112;Temp!=0;Temp - )/空循环/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Void Start()/启动信号子程序SDA=1;DelayMs(1);/延迟SCL=1;DelayMs(1);SDA=0;DelayMs(1);SCL=0;DelayMs(1);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Void Stop()/关机信号子程序SCL=0;DelayMs(1);SDA=0;DelayMs(1);SCL=1;DelayMs(1);SDA=1;DelayMs(1);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Void Ack()/发送响应占位符程序SDA=0;DelayMs(1);SCL=1;DelayMs(1);SCL=0;DelayMs(1);SDA=1;DelayMs(1);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *发送Void noacck ()/非响应座位程序SDA=1;DelayMs(1);SCL=1;DelayMs(1);SCL=0;DelayMs(1);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Bit TestAck()/响应位检查子程序位错误位;SDA=1;DelayMs(1);SCL=1;DelayMs(1);ErrorBit=SDA/读取数据线的响应状态DelayMs(1);SCL=0;DelayMs(1);return(error bit);/返回响应状态。0是正常响应信号,1是非响应信号/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *编写bit write 8 bit(unsigned charinput)/字节数据子程序/input是要发送的数据Unsigned char tempfor(temp=8;Temp!=0;Temp - )/循环移动,按位发送数据Sda=(位)(input0x 80);/获取数据的最高位DelayMs(1);SCL=1;DelayMs(1);SCL=0;DelayMs(1);Input=input1/向左一个字符return 1;/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *void write I2C(unsigned char * wdata,unsigned char rom address,unsigned char number)写入n字节数据子程序start();/开始write 8 bit(WriteDeviceAddress);/写入设备的寻址地址TestAck();/确认响应write 8 bit(rom address);/写入I2C设备内部数据存储的第一个地址TestAck();/确认响应for(;号码!=0;Number-()/循环,逐字节发送write 8 bit(* Wdata);/1字节写入TestAck();/确认响应Wdata/指针增加,指向以下数据stop();/停止DelayMs(10);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *读取Unsigned char Read8Bit()/单字节数据子程序Unsigned char temp,rbyte=0;for(temp=8;Temp!=0;Temp - )/循环,逐字节读取数据SCL=1;DelayMs(1);Rbyte=rbyte1/向左一个字符DelayMs(1);rbyte=rbyte |(unsigned char)(sda);/数据线SDA中的数据保存在rbyte的最小位中SCL=0;DelayMs(1);return(rbyte);/返回读取的字节数据/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *void read I2C(unsigned char * ram address,unsigned char rom address,unsigned char bytes)读取n字节数据子程序start();/开始write 8 bit(WriteDeviceAddress);/写入设备的寻址地址TestAck();/确认响应write 8 bit(rom address);/第一个地址,用于写入I2C设备的内部数据TestAck();/确认响应start();/重新启动write 8 bit(readdvice address);/写入读取设备的寻址地址TestAck();/确认响应While(bytes!=1)/字节数据循环读取* ram address=read 8 bit();/读取字节ack();/响应RamAddress/地址指针增量bytes-;/减少要读取的数据数* ram address=read 8 bit();/读取最后一个字节数据no ack();/无响应stop();/停止Void main()Unsigned char write byte 8=0xc0,0x34,0x12,0x11,0x22,0x01,0x00,0x 00 ;/需要写入的8字节USB数据IDunsigned char reabyte8;/用于存储读取的8字节数据Unsigned char * addw/写入数据指针操作Unsigned char * addr/读取数据指针行为unsigned char I;unsigned char ok=0;bit write=1;/读取和写入旗标DOG=0;While(1)如果If(write=1)/write=1,则执行写入和读取操作Addw=writeByte/写入地址映射Addr=readByte/读取地址映射WriteI2C(ad        
    温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 预决算实训周总结
- 酒店员工形象设计培训
- 2025版中医学常见症状及护理技巧
- 2025版脑瘫常见症状及康复护理技术
- 食品营养课畜禽类
- 账号分析评估讲解
- 青光眼手术术后康复规范
- 记忆的习惯和方法
- 如何教基层员工手机拍照技巧培训
- 鼠标手常见症状及护理方案
- 餐饮行业人力资源管理-招聘、培训和留住员工
- 建筑企业税收调研报告及政策解析
- 2025比亚迪供应商审核自查表
- 人教PEP版四年级英语上册 Unit 2 My friends 单元测试卷(含答案含听力原文)
- 仓库岗位晋升方案模板(3篇)
- 国家管网施工安全培训课件
- 国开2025年秋季《形势与政策》大作业答案
- 2025年生态环境综合行政执法考试参考题库(附答案)
- 2025年福建省公开遴选公务员笔试试题及答案解析(综合类)
- 2025-2030中国匹克球市场前景预判与未来发展形势分析报告
- HGT22818-2022橡胶工厂综合监控系统设计规范
 
            
评论
0/150
提交评论