你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 5790|回复: 11

stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

[复制链接]

7

主题

39

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2012-8-10 10:44:50 | 显示全部楼层 |阅读模式
rt,两片直连,怎么设定从机的iic地址呢 ?哪里看啊,手册上没找到啊
<
回复

使用道具 举报

2

主题

240

回帖

0

蝴蝶豆

中级会员

最后登录
2020-8-11
发表于 2012-8-10 13:41:36 | 显示全部楼层

RE:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

这个地址,我的理解是需要你自己用软件设置,不过好像ST的那个有一个寄存器吧,但是我没有看到,我是用软件方式自己设置的.
回复 支持 反对

使用道具 举报

7

主题

39

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
 楼主| 发表于 2012-8-10 16:12:37 | 显示全部楼层

回复:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

回复第 2 楼 于2012-08-10 13:41:36发表:
这个地址,我的理解是需要你自己用软件设置,不过好像ST的那个有一个寄存器吧,但是我没有看到,我是用软件方式自己设置的. 

我查了很多资料上都说,具备iic构造的器件都自带连到总线上的地址,不过手册上没找到,也没看到你说的那个寄存器
软件方式自己怎么设置呢? 自己随便给个暗号,两边对上就行么?
回复 支持 反对

使用道具 举报

24

主题

591

回帖

0

蝴蝶豆

中级会员

最后登录
2020-12-2
发表于 2012-8-13 21:09:26 | 显示全部楼层

RE:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

你说的是器件的唯一地址吗?如果是主从地址应该是自己定义的。
回复 支持 反对

使用道具 举报

48

主题

209

回帖

0

蝴蝶豆

金牌会员

最后登录
1970-1-1
发表于 2012-8-14 09:11:37 | 显示全部楼层

回复:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

I2C器件的地址就是  存储器的管教A0 A1 A2,拉高或者置低。读写操作的时候把地址加在命令里就可以了!
回复 支持 反对

使用道具 举报

7

主题

62

回帖

0

蝴蝶豆

新手上路

最后登录
2020-6-1
发表于 2012-8-14 17:48:08 | 显示全部楼层

RE:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

这个地址是自己设定的吧,
00074   /* I2C1 configuration: SMBus Host ------------------------------------------*/
00075   I2C_InitStructure.I2C_Mode = I2C_Mode_SMBusHost;
00076   I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2;
00077   I2C_InitStructure.I2C_OwnAddress1 = I2C1_SLAVE_ADDRESS7;
00078   I2C_InitStructure.I2C_Ack = I2C_Ack_Enable;
00079   I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
00080   I2C_InitStructure.I2C_ClockSpeed = ClockSpeed;
00081   I2C_Init(I2C1, &amp;I2C_InitStructure);
00082
00083   /* I2C2 configuration: SMBus Device ----------------------------------------*/
00084   I2C_InitStructure.I2C_Mode = I2C_Mode_SMBusDevice;
00085   I2C_InitStructure.I2C_OwnAddress1 = I2C2_SLAVE_ADDRESS7;
00086   I2C_Init(I2C2, &amp;I2C_InitStructure);
00087
00088   /* Enable I2C2 ARP */
00089   I2C_ARPCmd(I2C2, ENABLE);
结构体里面写的很清楚哦
回复 支持 反对

使用道具 举报

0

主题

15

回帖

0

蝴蝶豆

新手上路

最后登录
2019-2-20
发表于 2012-8-18 10:45:36 | 显示全部楼层

RE:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

关于硬件和软件定义的问题,I2C器件出厂时必须自带地址,要不然还要标准有啥用,不过有的是自身芯片固定好了,因为集成在MCU内部了,有的有几个引脚出来专门规定地址范围,选址,你通过给这几个引脚硬件规定0|1,排列组合来确定,程序所能做的就是自身设为主机或从机,如果是主机的话,那就选择从机的地址与之通信!6楼程序说的都很清楚了,你试试看看,不行的话看需要配置硬件接口不需要...
回复 支持 反对

使用道具 举报

7

主题

39

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
 楼主| 发表于 2012-8-23 11:51:52 | 显示全部楼层

回复:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

回复第 6 楼 于2012-08-14 17:48:08发表:
这个地址是自己设定的吧,
00074 /* I2C1 configuration: SMBus Host ------------------------------------------*/
00075 I2C_InitStructure.I2C_Mode = I2C_Mode_SMBusHost;
00076 I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2;
00077 I2C_InitStructure.I2C_OwnAddress1 = I2C1_SLAVE_ADDRESS7;
00078 I2C_InitStructure.I2C_Ack = I2C_Ack_Enable;
00079 I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
00080 I2C_InitStructure.I2C_ClockSpeed = ClockSpeed;
00081 I2C_Init(I2C1, &amp;I2C_InitStructure);
00082
00083 /* I2C2 configuration: SMBus Device ----------------------------------------*/
00084 I2C_InitStructure.I2C_Mode = I2C_Mode_SMBusDevice;
00085 I2C_InitStructure.I2C_OwnAddress1 = I2C2_SLAVE_ADDRESS7;
00086 I2C_Init(I2C2, &amp;I2C_InitStructure);
00087
00088 /* Enable I2C2 ARP */
00089 I2C_ARPCmd(I2C2, ENABLE);
结构体里面写的很清楚哦 

谢谢,给新手讲解的很详细。我主要是想问,那个slave address7 怎么定义。是自己随便设置,还是按照器件本身自带的。自带的话,107的板子我没找到,我现在在做2块107板子的通信
回复 支持 反对

使用道具 举报

7

主题

39

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
 楼主| 发表于 2012-8-23 11:51:52 | 显示全部楼层

回复:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

回复第 6 楼 于2012-08-14 17:48:08发表:
这个地址是自己设定的吧,
00074 /* I2C1 configuration: SMBus Host ------------------------------------------*/
00075 I2C_InitStructure.I2C_Mode = I2C_Mode_SMBusHost;
00076 I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2;
00077 I2C_InitStructure.I2C_OwnAddress1 = I2C1_SLAVE_ADDRESS7;
00078 I2C_InitStructure.I2C_Ack = I2C_Ack_Enable;
00079 I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
00080 I2C_InitStructure.I2C_ClockSpeed = ClockSpeed;
00081 I2C_Init(I2C1, &amp;I2C_InitStructure);
00082
00083 /* I2C2 configuration: SMBus Device ----------------------------------------*/
00084 I2C_InitStructure.I2C_Mode = I2C_Mode_SMBusDevice;
00085 I2C_InitStructure.I2C_OwnAddress1 = I2C2_SLAVE_ADDRESS7;
00086 I2C_Init(I2C2, &amp;I2C_InitStructure);
00087
00088 /* Enable I2C2 ARP */
00089 I2C_ARPCmd(I2C2, ENABLE);
结构体里面写的很清楚哦 

谢谢,给新手讲解的很详细。我主要是想问,那个slave address7 怎么定义。是自己随便设置,还是按照器件本身自带的。自带的话,107的板子我没找到,我现在在做2块107板子的通信
回复 支持 反对

使用道具 举报

7

主题

39

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
 楼主| 发表于 2012-8-23 11:52:54 | 显示全部楼层

回复:stm32f107互联型的iic器件地址是多少啊?【悬赏问答】

回复第 4 楼 于2012-08-13 21:09:26发表:
你说的是器件的唯一地址吗?如果是主从地址应该是自己定义的。 

谢谢,现在也是这样解决的。随便设置了2个值,两边对上暗号就行了
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版