Zynq-7020 has 2 I2c controllers, Can anybody please tell how many peripherals can be controlled from a single controller.
Thank you
Zynq-7020 has 2 I2c controllers, Can anybody please tell how many peripherals can be controlled from a single controller.
Thank you
Hi arjunbk09,
In looking at UG585, the Zynq-7000 Technical Reference Manual, it appears that the I2C controller is capable of addressing in 7-bit or 10-bit mode as a bus master.
http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
Theoretically, this should allow you to access well over 100 devices on the bus. The reality is that you are limited to the configurable address space of the devices that you wish to add to the bus. Take a look at this article for a better explanation:
http://en.wikipedia.org/wiki/I%C2%B2C
From the article: "The assignment of slave addresses is one weakness of Iu00B2C. Seven bits is too few to prevent address collisions between the many thousands of available devices, and manufacturers rarely dedicate enough pins to configure the full slave address used on a given board. Three pins is typical, giving only eight choices of slave address. While some devices can set multiple address bits per pin, e.g., by using a spare internal ADC channel to sense one of eight ranges set by an external voltage divider, usually each pin controls one address bit. Manufacturers may provide pins to configure a few low order bits of the address and arbitrarily set the higher order bits to some value based on the model. This limits the number of devices of that model which may be present on the same bus to some low number, typically between two and eight. That partially addresses the issue of address collisions between different vendors. Ten-bit Iu00B2C addresses are not yet widely used, and many host operating systems don't support them..."
Hopefully this provides some insight into this topic.
Regards,
-Kevin
Thank you
I'm new to ZED board. i have to connect my accelerometer (1TG MPU 6050) to the ZED board through the I2C protocol.
If it is possible ?? If it is possible how to connect it? please anyone help me
Hello Gayathrivlsi,
Yes you can, please refer to the below post.
http://zedboard.org/content/mpu6050i2c-based
--Josh
Sir, I referred the link that you have sent. I am new to SDK. I dont know how to start with SDK. Is there any possible way to do I2C interface between 1TG MPU 6050 with the Zynq 7000 board other than SDK?
Thanks in advance
Hello Gayathrivlsi,
I am sure there is another tool you could use to interface I2C to your PMOD, however I believe using Xilinx SDK is the easiest since you are using a Zynq Device. I am going to suggest you go through our Developing Zynq Software Speedway we offer. By then end of it you will be familiar with how to operate SDK.
--Josh
If I am using xilinx SDK tool to interface accelerometer to ZYNQ board , do I have to write the program ?
If yes, in which language I have to write the program? or else the tool itself can generate the program?
Hello Gayathrivlsi,
SDK will not automatically create the program for you. However there is template code for initializing I2C at C:\Xilinx\SDK\2016.2\data\embeddedsw\XilinxProcessorIPLib\drivers\iicps_v3_2 which is accessible after installing SDK. The programing language is C.
--Josh
If i am using vivado tool. How do I have to do i2c interface between acceleometer (1TG MPU 6050) and zynq 7000 board ?
Thanks in advance