历史上的今天
返回首页

历史上的今天

今天是:2025年06月13日(星期五)

正在发生

2020年06月13日 | 单片机模拟 IIC 总线与 EEPROM(AT24C02)通信

2020-06-13 来源:eefocus

数据有效性:

起始和终止信号时序:

设备地址:

写字节时序:

读数据时序:

函数模拟 IIC 总线 时序:


/**************************************/

/******模拟I2C总线操作函数*************/

/**************************************/

//延时函数

void Delay()

{ ; ; }

//初始化

void I2C_Init()

{

SDA = 1;

SCL = 1;

}

//起始信号

void I2C_Start()

{

SDA = 1;

Delay();

SCL = 1;

Delay();

SDA = 0;

Delay();

}

//终止信号

void I2C_Stop()

{

SDA = 0;

Delay();

SCL = 1;

Delay();

SDA = 1;

Delay();

}

//应答信号

void I2C_Acknowledge()

{

unsigned char i;

SCL = 1;

Delay();

while((SDA == 1) && (i<250)){ //在一定时间内等待应答信号

i++;

}

SCL = 0;

Delay();

}

//写一个字节

void I2C_WriteByte(unsigned char Data)

{

unsigned char i,temp;

temp = Data;

SCL = 0;

Delay();

for(i = 0;i < 8;i++){

temp = temp<<1;

SDA = CY;     //CY为PSW寄存器的溢出位

Delay();

SCL = 1;

Delay();

SCL = 0;

Delay();

}

SDA = 1;

Delay();

}

//读一个字节

unsigned char I2C_ReadByte()

{

unsigned char i,temp,Data;

SCL = 0;

Delay();

SDA = 1;

Delay();

for(i = 0;i < 8;i++){

SCL = 1;

Delay();

temp = SDA;

Data = (Data<<1)|temp;

SCL = 0;

Delay();

}

return Data;

}

//在特定位置写一个字节数据

void I2C_WriteByteAt(unsigned char address,unsigned char Data)

{

I2C_Init();

I2C_Start();

I2C_WriteByte(0xa0);//写器件地址,最后一位表示数据方向

I2C_Acknowledge();

I2C_WriteByte(address);//写存储地址

I2C_Acknowledge();

I2C_WriteByte(Data);//写数据

I2C_Acknowledge();

I2C_Stop();

}

//从特定位置读一个字节数据

unsigned char I2C_ReadByteAt(unsigned char address)

{

unsigned char Data;

I2C_Init();

I2C_Start();

I2C_WriteByte(0xa0);//写器件地址,最后一位表示数据方向

I2C_Acknowledge();

I2C_WriteByte(address);//写存储地址

I2C_Acknowledge();

I2C_Start();

I2C_WriteByte(0xa1);//再次写器件地址,注意改变数据方向

I2C_Acknowledge();

Data = I2C_ReadByte();//读数据

I2C_Stop();

return Data;

}

推荐阅读

史海拾趣

骏晔科技(DreamLNK)公司的发展小趣事

骏晔科技在无线通讯模块领域一直寻求创新。2019年,公司与硬之城达成战略合作,推出了高性能的FSK双向收发模块。这款模块采用了最新的FSK调制技术,极大地提高了数据传输的稳定性和效率。通过这一创新,骏晔科技在物联网设备通讯领域取得了显著的市场份额增长。

风华邦科(FH-BK)公司的发展小趣事

在电子科技领域,FlyWin集团不断投入研发资源,致力于新技术的开发与应用。公司成立了专门的研发团队,专注于人工智能、物联网等前沿技术的探索。通过不断的技术创新,FlyWin成功推出了一系列具有自主知识产权的电子产品,如智能传感器、物联网解决方案等。这些产品不仅提升了公司的市场竞争力,也为公司的长远发展提供了强大的技术支撑。

Chip Quik公司的发展小趣事

在不断发展壮大的过程中,Chip Quik公司始终注重品牌建设和持续创新。公司加大了对研发部门的投入,不断推出新技术和新产品,以满足市场的不断变化。同时,公司还通过加强品牌宣传和推广,提高了品牌知名度和美誉度,为公司的长远发展奠定了坚实的基础。

这些故事虽然基于假设和一般性的行业趋势,但它们可以反映出一家电子行业中类似公司可能经历的发展路径和挑战。希望这些故事能够为您了解Chip Quik公司或其他电子行业公司的发展提供一定的参考。

Hirose Electric公司的发展小趣事

随着市场的反馈和技术的不断进步,Chip Quik公司对初始产品进行了多次优化。公司不断改进焊接材料的性能,提高焊接速度和稳定性,同时降低操作难度。这些改进使得Chip Quik的产品在电子维修领域获得了更广泛的应用,公司也逐渐扩大了市场份额。

Califia Lighting公司的发展小趣事

Califia Lighting深知品质是企业生存和发展的关键。因此,公司建立了严格的质量管理体系,从原材料采购到产品生产、检验、包装等各个环节都进行严格把关。同时,公司还注重客户服务和售后支持,及时解决客户在使用过程中遇到的问题,赢得了客户的信赖和好评。

EDAC公司的发展小趣事

面对数字化浪潮的冲击,ECS-D公司积极拥抱数字化转型,通过引入先进的信息技术和智能化设备,提升企业的运营效率和创新能力。公司建立了数字化管理平台,实现了生产、销售、财务等各个环节的信息化管理。同时,ECS-D公司还加强了对员工的数字化培训和教育,提升员工的数字化素养和创新能力。这些数字化转型的举措使ECS-D公司在激烈的市场竞争中保持了领先地位,也为公司的未来发展奠定了坚实的基础。

以上五个故事均以ECS公司的发展为主题,分别从不同角度描述了这些公司在电子行业中的成长历程和成功经验。这些故事旨在展示ECS公司如何通过技术创新、全球化战略、品质管理、绿色环保理念和数字化转型等方式实现持续发展和壮大。

问答坊 | AI 解惑

制造业环境适合RFID实时数据应用的一些领域

[摘要]制造业的生产环节最有利实时数据的应用。因为制造商如果想真正改进工艺流程,就必须更好掌握生产现场发生的情况,以及管理层系统如何应对的情况。 \"Research and Markets\"刊物宣布在他们提供的报道中增添Real-time Data in Manufacturing ...…

查看全部问答>

做USBCAN中发现的问题。

我最近在做USB转CAN过程中发现USB通讯速度受主机的影响很大,我已经把单片机的RAM全部用来做FIFO了,但还是在主机比较忙时还是会出现丢包现像。如果我不进行电脑操作,通讯到2700包/秒也不会丢包,但只要我进行操作(开IE,开窗口)就会出现不同程度 ...…

查看全部问答>

Altium Designer Winter 09

请问Altium Designer Winter 09是怎样安装的.请把步骤告知,谢谢!…

查看全部问答>

智能小车部分电路集

本帖最后由 paulhyde 于 2014-9-15 04:23 编辑 智能小车部分电路集  …

查看全部问答>

PSDSoft Express软件生成的编程文件obj格式解析

各位好:     最近用到PSDSoft Express软件,其生成的编程文件obj中,包含:PLD映射,SRAM数据,EPROM数据,不知如何划分!因为编程PSD501芯片要用到这个文件.   另外,发现此软件生成的项目中,在生成obj文件之前,会自动 ...…

查看全部问答>

arm linux掉电保护问题

arm上安装的是linux系统,外存是flash和sd卡,正常工作时需要频繁访问sd卡。 在系统意外掉电时,经常发生sd卡错误的问题,在下次重新启动时,系统会检查到sd卡错误,并将sd卡自动设置为只读权限,这个问题有人能帮我想想办法么?? sd卡错误的原 ...…

查看全部问答>

最热门的嵌入式软件开发!

中国3G时代即将到来,社会对3G嵌入式软件人才的渴求使3G人才已经成为业界关注“3G软环境”的焦点之一。目前,我国的3G核心人才仅有不足万人,而且基本上都被几大运营商和设备厂商所掌握。广大手持端设备制造商所急需的嵌入式开发人才、软件开发商所 ...…

查看全部问答>

谁有TCPMP的文档或知道其组织结构

TCPMP的代码找到是找到了.可以,看了半天,没看懂.... 一点文档说明都没有.先请给位大人们..指点一下.... 只要能实现自动往playlist里面添加我想播放的文件即可. 找了半天没找到在那里...谢谢了…

查看全部问答>

同济大学软件学院——嵌入式操作系统培训公开课即将开课了

同济软件培训基地——微软嵌入式华东地区唯一授权中心     微软 WinCE 公开课程 尊敬的阁下:     当一个软件企业的嵌入式开发从无到有,或者当企业已有项目的投入,但发现项目进展缓慢,如何解决开发人员技术和资源的不 ...…

查看全部问答>

CortexM0菜鸟首日封

下载 (57.91 KB) 2010-7-6 02:11 …

查看全部问答>