收藏 分享(赏)

I2C总线芯片AT24C02程序设计(精简版).pdf

上传人:a****2 文档编号:3041237 上传时间:2024-01-18 格式:PDF 页数:5 大小:94.18KB
下载 相关 举报
I2C总线芯片AT24C02程序设计(精简版).pdf_第1页
第1页 / 共5页
I2C总线芯片AT24C02程序设计(精简版).pdf_第2页
第2页 / 共5页
I2C总线芯片AT24C02程序设计(精简版).pdf_第3页
第3页 / 共5页
I2C总线芯片AT24C02程序设计(精简版).pdf_第4页
第4页 / 共5页
I2C总线芯片AT24C02程序设计(精简版).pdf_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、I I2 2C C 总线芯片总线芯片 AT24C02AT24C02 程序设计(精简版)程序设计(精简版)#include#define uchar unsigned charsbit sda=P20;sbit scl=P21;uchar a;void delay()/延时函数;void start()/开始信号sda=1;delay();scl=1;delay();sda=0;delay();void stop()/停止sda=0;delay();scl=1;delay();sda=1;delay();void respons()/应答,在数据传送 8 位后,等待或者发送一个应答信号uchar

2、 i;scl=1;delay();while(sda=1)&(i250)i+;scl=0;delay();void init()/初始化函数,拉高 sda 和 scl 两条总线sda=1;scl=1;/*/*根据数据有效性规则,读写数据时必须将 SCL 拉高,然后送入或读出数据,完毕后再将SCL 拉低*/*/void write_byte(uchar date)/写一字节,将 date 写入 AT24C02 中uchar i;scl=0;for(i=0;i8;i+)date=date1;sda=CY;/将要送入数据送入 sdascl=1;/scl 拉高准备写数据delay();scl=0;/s

3、cl 拉低数据写完毕delay();uchar read_byte()/读取一字节,从 AT24C02 中读取一个字节uchar i,k;for(i=0;i8;i+)scl=1;/scl 拉高准备读数据delay();k=(k0;a-)for(b=100;b0;b-);/*/*读出与写入数据时必须严格遵守时序要求*/*/void write_add(uchar address,uchar date)/向 AT24C02 中写数据start();write_byte(0 xa0);respons();write_byte(address);respons();write_byte(date);r

4、espons();stop();uchar read_add(uchar address)/从 AT24C02 中读出数据uchar date;start();write_byte(0 xa0);respons();write_byte(address);respons();start();write_byte(0 xa1);respons();date=read_byte();stop();return date;void main()init();/初始化 AT24C02write_add(23,0 x55);/在 23 地址处写入数据 0 x55;delay1(100);P1=read_add(23);/读出地址为 23 处的数据while(1);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用范文 > 工作总结

copyright@ 2008-2023 wnwk.com网站版权所有

经营许可证编号:浙ICP备2024059924号-2