完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近,我正在研究Xilinx的VC707,它采用了aPCA9548A芯片。
PCA9548A连接到微型IIC,它的8个通道连接不同的设备,如eeprom,HDMI编解码器。 我的问题是: PCA9548A 7位IIC地址为0x74。 然后处理器访问它并写入0b0010_0000到控制寄存器,它启用第5个通道(第0到第7个通道)。 在通道5中连接到PCA9548A的器件有7位IIC地址为0x39,它是一个HDMI编解码器。 启用PCA9548A通道5后,HDMI编解码器只能通过IIC地址0x39进行读写,对吗? 我的意思是现在可以看到PCA9548A对HDMI编解码器是“透明的”。 它工作,因为HDMI代码c直接连接到IIC总线0x39的处理器。 我理解对吗? 希望有PCA9548A经验的人帮我确认一下。 非常感谢。 以上来自于谷歌翻译 以下为原文 Recently, I am working on VC707 from Xilinx which adopts a PCA9548A chip. The PCA9548A connected to the microblaze IIC, the 8 channels of it connect with different devices like eeprom, HDMI codec. My question is: the PCA9548A 7 bits IIC address is 0x74. Then processor access it and wrote 0b0010_0000 to control register, which enable the 5th channel (0th-7th channel). The device which connected to PCA9548A in channel 5, has 7 bits IIC address is 0x39, and it is a HDMI codec. After the PCA9548A channel 5 is enabled, the HDMI codec can be read and write just through IIC address 0x39, right? I mean now the PCA9548A can be seen is "transparent" to HDMI codec. It works as HDMI code c is directly connected to Processor with IIC bus 0x39. Do I understand right? Hope someone who has experience in PCA9548A can help me confirm this. Thanks very much. |
|
相关推荐
8个回答
|
|
对,那是正确的。
------您是否尝试在Google中输入问题? 如果没有,你应该在发布之前。太多结果? 尝试添加网站:www.xilinx.com 在原帖中查看解决方案 以上来自于谷歌翻译 以下为原文 Yes, that is correct.------Have you tried typing your question into Google? If not you should before posting. Too many results? Try adding site:www.xilinx.comView solution in original post |
|
|
|
对,那是正确的。
------您是否尝试在Google中输入问题? 如果没有,你应该在发布之前。太多结果? 尝试添加网站:www.xilinx.com 以上来自于谷歌翻译 以下为原文 Yes, that is correct.------Have you tried typing your question into Google? If not you should before posting. Too many results? Try adding site:www.xilinx.com |
|
|
|
|
|
|
|
你好mcgett / buddha1987,
我正在使用IIC Switch PCA9548A并将2个i2c设备(EEPROM,温度传感器)连接到Switch。 我正在尝试以下序列写入EEPROM: 步骤1: StartBit + BYTE1 + BYTE2 + StopBit BYTE1:HUBDEVADDR +写位 BYTE2:0x01:选择EEPROM从通道 第2步:StartBit + BYTE1 + BYTE2 + BYTE3 + StopBit BYTE1:EEPROM DEVICEADDR + W. BYTE2:EEPROM REG OFFSET BYTE3:数据 同样从EEPROM读取: 步骤1,步骤2(没有Byte3),然后 第3步 StartBit + BYTE1 + BYTE2 + BYTE3 + StopBit BYTE1:EEPROM DEVICEADDR + R. BYTE2:EEPROM REG OFFSET BYTE3:没有字节 通过这种方式,我无法与EEPROM通信。 请帮助& 如果我的操作顺序不正确,请纠正我。 提前致谢。 以上来自于谷歌翻译 以下为原文 hi mcgett/buddha1987, I'm using IIC Switch PCA9548A and connected 2 i2c devices (EEPROM , Temperature sensor) to Switch. I'm trying the below sequence to Write to EEPROM : Step 1: StartBit + BYTE1 + BYTE2 + StopBit BYTE1 : HUBDEVADDR + Write bit BYTE2 : 0x01 : Selects EEPROM Slave channel Step 2: StartBit + BYTE1 + BYTE2 + BYTE3 + StopBit BYTE1 : EEPROM DEVICEADDR + W BYTE2 : EEPROM REG OFFSET BYTE3 : DATA Similarly Reading from EEPROM : Step1 , Step 2 (without Byte3) , then Step 3 StartBit + BYTE1 + BYTE2 + BYTE3 + StopBit BYTE1 : EEPROM DEVICEADDR + R BYTE2 : EEPROM REG OFFSET BYTE3 : NO OF Bytes By doing this way i'm unable to communicate with EEPROM. Please help & correct me if my operation sequence is incorrect. Thanks In Advance. |
|
|
|
嗨manikumar086,你使用VC707?
如果是,您可以下载VC707 BIST设计以查看IIC演示项目。 我还列出了访问EEPROM的步骤,下面列出的所有IIC地址都是7位,没有写/读位。 这是因为我使用Xilinx API进行读写。 转到0x74(PCA9548a)2。 写入0x74值0b00001000(这是8位,将值放入PCA9548a的控制寄存器,然后完成swtich配置)3。 转到0x54以读取和写入EEPROMHope这个帮助。 以上来自于谷歌翻译 以下为原文 Hi manikumar086, r u using VC707? If yes, you can download the VC707 BIST design to see the IIC demo project . I also list the steps to access the EEPROM, all the IIC address I listed below are 7 bits without write/read bit. This is because I use Xilinx API to read and write. 1. go to 0x74 (PCA9548a) 2. write to 0x74 the value 0b00001000 (this is 8 bits, the value is put into control register of PCA9548a, then swtich configuration done) 3. go to 0x54 to read and write from or to EEPROM Hope this help. |
|
|
|
嗨buddha8787,谢谢你的快速回复。
你的回答肯定对我有帮助。 我正在使用这个(iic开关)进行自定义项目,Xilinx Virtex6 FPGA和Microblaze处理器。 以上来自于谷歌翻译 以下为原文 hi buddha1987 , thanks for your quick reply. Your answer surely helped me. I'm using this(iic switch) for a custom project, Xilinx Virtex6 FPGA with Microblaze Processor. |
|
|
|
你好,
我找到了这篇文章,当我遇到类似的问题时,我想在这里发布我的疑惑并继续讨论。 在我的情况下,我有一个FMC子卡,托管DAC和ADC通道,我可以通过I2C控制。 在我的团队中,我们有两个人在工作,一个人负责通过XPS生成固件,我负责软件应用程序。 为了澄清一点,我想做的第一个问题是:I2C总线开关应该作为AXI总线上的器件出现,或者是因为存在I2C主器件而已经是系统的一部分 在设计中? 接下来,我想澄清一下有关I2C总线上从器件寻址的另一点。 VC707的用户手册指出I2C总线开关的器件地址为0x74(0111_0100)。 我不清楚的是用户手册第49页的从设备寻址。 例如,FMC地址似乎完全取决于运营商,我如何获得VC707的这些信息? 为了查找更多细节,我检查了PCA9458A的数据表,并且声明slace地址由固定部分“0111”和树地址位组成。 但是,遵循此说明与用户手册显示的内容相冲突。 一旦这个疑问被填满,我想我可以使用低级函数XIic_Send(I2C_Master_baseaddr,0x74,slave_chan_address,1,Options),对吗? BR, 乔瓦尼 以上来自于谷歌翻译 以下为原文 Hello, I have found this post, and as I am running into a similar problem I would like to post here my doubts and go on with the discussion here. In my case I have an FMC daughtercard hosting a DAC and an ADC channel, which I can control via I2C. In my team we are two people working, one takes care of the generation of the firmware via XPS, and I take care of the software application. The first question which I would like to do in order to clarifiy a fist point is: the I2C Bus switch, should appear as a device on the AXI bus, or is it something which is already part of the system since an I2C master is present in the design? Just to follow, I would like to clarify another point concerning the addressing of the slave devices on the I2C Bus. The user manual of the VC707 states that the device address for the I2C Bus Switch is 0x74 (0111_0100). What is not clear to me is the addressing of the slave devices at page 49 of the user manual. For instance, the FMC address seems like completely depending on the carrier, how can I get such information for the VC707? In order to look for more details I have checked the datasheet of the PCA9458A, and there is stated that the slace addresses are tipically made of a fixed part "0111" and tree address bits. But following this addressing is in conflict with what the user manual is showing. Once this doubt is filled, I suppose that I could just use the low level function XIic_Send(I2C_Master_baseaddr, 0x74, slave_chan_address, 1, Options), am I right? BR, Giovanni |
|
|
|
你好,
我只是说道,在看了I2C总线开关的数据表之后,我已经解决了奥术问题。 所以现在问题是我在配置总线开关时总是出错...在FMC1输出路径上转发SDA / SCL。 XIic_Send(IIC_MASTER_ADDR,0x74,0x02,1,XST_STOP); 刚刚失败并退出该计划。 任何想法为什么会这样? 总线交换机是否应该在固件项目内实现,或者这是不必要的? 我在哪里可以找到BIST这个设计的例子? 以上来自于谷歌翻译 以下为原文 Hello, I´m just dropping a line to say that after watching at the datasheet of the I2C Bus Switch, I have solved the arcane. So now the problem is that i anyway get an error when configuring the bus switch....to forward SDA/SCL on the FMC1 output path. XIic_Send(IIC_MASTER_ADDR, 0x74, 0x02, 1, XST_STOP); Just fails and exits from the program. Any Idea why this is happening? Should the Bus Switch being instanciated inside the firmware project or this is unnecessary? Where can I find the BIST with an example of this design? |
|
|
|
只有小组成员才能发言,加入小组>>
2416 浏览 7 评论
2821 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2292 浏览 9 评论
3372 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2459 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
1146浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
582浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
448浏览 1评论
2003浏览 0评论
727浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 17:18 , Processed in 1.467819 second(s), Total 91, Slave 74 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号