3588|6

35

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

TMS320F28027 I2C [复制链接]

TMS320F28027 LAUNCHPAD 在看TI给的I2C的例程时,其I2C模块的初始化设置为从接受模式,这是为什么呢,求大神解答


void I2CA_Init(void)

{

   // Initialize I2C

   I2caRegs.I2CSAR = 0x0050;        // Slave address - EEPROM control code



   // I2CCLK = SYSCLK/(I2CPSC+1)

   #if (CPU_FRQ_40MHZ||CPU_FRQ_50MHZ)

     I2caRegs.I2CPSC.all = 4;       // Prescaler - need 7-12 Mhz on module clk

   #endif



   #if (CPU_FRQ_60MHZ)

     I2caRegs.I2CPSC.all = 6;       // Prescaler - need 7-12 Mhz on module clk

   #endif

   I2caRegs.I2CCLKL = 10;           // NOTE: must be non zero

   I2caRegs.I2CCLKH = 5;            // NOTE: must be non zero

   I2caRegs.I2CIER.all = 0x24;      // Enable SCD & ARDY interrupts

                                     //SCD:检测到停止条件中断:在I2C总线上检测到停止条件

                                     //ARDY:寄存器访问准备好中断:由于先前编程的地址、

                                       // 数据以及命令值已经被使用,I2C模块寄存器准备好被访问。

   I2caRegs.I2CMDR.all = 0x0020;    // Take I2C out of reset

                                    // Stop I2C when suspended

                                //NACKMOD=0,FREE=0中断产生时IIC停止运行,STT=0不产生开始位,

                                        //STP=0不产生停止位,MST=0从模式,TRX=0接收模式,XA=0 七位地址模式,RM=0不重复,DLB=0无回来

                                        //IRS=1使能I2C模块,STB=0模块未处在开始字节模式,FDF=0自由数据格式被禁止

                                        //注意:TRX决定AT24C1024设备地址中的R/W,这里R/W=1读数据

   I2caRegs.I2CFFTX.all = 0x6000;   // Enable FIFO mode and TXFIFO

   I2caRegs.I2CFFRX.all = 0x2040;   // Enable RXFIFO, clear RXFFINT,



   return;

}

最新回复

哦哦,iic我是自己写的。 状态机的话可以随意定义。  详情 回复 发表于 2015-6-7 13:45
 
点赞 关注

回复
举报

667

帖子

3

TA的资源

版主

沙发
 
1.这是初始化程序,确实配置的是从模式接受;

2.但是在发送函数中,会配置成主模式发送。

仔细看一下哈。

点评

对对,在发送函数中配置的是主模式发送,TI关于I2C的程序看着好难理解,设置了很多状态标识  详情 回复 发表于 2015-6-2 15:01
 
 

回复

35

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
nemo1991 发表于 2015-6-2 09:39
1.这是初始化程序,确实配置的是从模式接受;

2.但是在发送函数中,会配置成主模式发送。

仔细看一下哈。

对对,在发送函数中配置的是主模式发送,TI关于I2C的程序看着好难理解,设置了很多状态标识

点评

耐心点。  详情 回复 发表于 2015-6-3 21:52
 
 
 

回复

667

帖子

3

TA的资源

版主

4
 
the_wanted 发表于 2015-6-2 15:01
对对,在发送函数中配置的是主模式发送,TI关于I2C的程序看着好难理解,设置了很多状态标识

耐心点。

点评

您好,想问一下您,在TI I2C例程中的状态标志是怎样进行设置的呢,感谢您  详情 回复 发表于 2015-6-7 11:23
 
 
 

回复

35

帖子

0

TA的资源

一粒金砂(中级)

5
 

您好,想问一下您,在TI I2C例程中的状态标志是怎样进行设置的呢,感谢您

QQ截图20150607112434.png (29.16 KB, 下载次数: 0)

QQ截图20150607112434.png

点评

哦哦,iic我是自己写的。 状态机的话可以随意定义。  详情 回复 发表于 2015-6-7 13:45
 
 
 

回复

667

帖子

3

TA的资源

版主

6
 
the_wanted 发表于 2015-6-7 11:23
您好,想问一下您,在TI I2C例程中的状态标志是怎样进行设置的呢,感谢您

哦哦,iic我是自己写的。
状态机的话可以随意定义。

点评

也就是说 这些状态宏定义后面的16进制数是随意定义的么?  详情 回复 发表于 2015-6-7 16:21
 
 
 

回复

35

帖子

0

TA的资源

一粒金砂(中级)

7
 
nemo1991 发表于 2015-6-7 13:45
哦哦,iic我是自己写的。
状态机的话可以随意定义。

也就是说 这些状态宏定义后面的16进制数是随意定义的么?
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表