cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Observer
Observer
381 Views
Registered: ‎03-24-2019

IIC lockup on ArtyS7-50 Rev B with Pmod Hygro

Hi all,

I'm attempting to get a simple I2C demo running using an ArtyS7-50 and a Pmod Hygro.

Vitis / Vivado 2020.1.1

It seems the I2C bus is hanging on initialisation of the Hygro unit -

		/*
		 * Clear the latched interrupt
		 * status for the bus not busy bit which must be done while
		 * the bus is busy
		 */
		StatusReg = XIic_ReadReg(BaseAddress,  XIIC_SR_REG_OFFSET);
		while ((StatusReg & XIIC_SR_BUS_BUSY_MASK) == 0) {
			StatusReg = XIic_ReadReg(BaseAddress,
						  XIIC_SR_REG_OFFSET);
		}

 I've seen other people fix this by increasing the inertial_delay parameter for the I2C driver, but I am using the stock standard AXI_I2C_LITE as part of a Microblaze design.

Can anyone offer advice as to how to fix this as I am still learning!

Thanks,

Chris

0 Kudos
Reply
3 Replies
Moderator
Moderator
231 Views
Registered: ‎04-09-2019

Hi,

can you please use dynamic flow and check it once.

Regards,

Venu

0 Kudos
Reply
Observer
Observer
198 Views
Registered: ‎03-24-2019

Hi, I'm not familiar with dynamic flow. Are you able to elaborate a little?

0 Kudos
Reply
Moderator
Moderator
179 Views
Registered: ‎04-09-2019

0 Kudos
Reply