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

查看: 5789|回复: 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, &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, &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, &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, &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, &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, &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管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版