Home    Bloggers    Messages    Webinars    Resources   
Tw  |  Fb  |  In  |  Rss
Adam Taylor

Ask Adam: UART, SPI, I2C & More

Adam Taylor
Page 1 / 2   >   >>
deepika
deepika
2/25/2013 7:54:12 AM
User Rank
Beginner
Re: I2C or SPI
Yes the output would be through VGA only in bit file format and the data rate of the camera is 30fps with resolution of 640*480. I am thinking of proceeding like this. The camera module through SPI will store a 16bit word(2 pixels) in the FPGA and from here the data will be sent to the DDRAM. Now the VGA can access the data or the pixels drom the DDRAM trrough the FPGA. I hope I am in the right direction.

50%
50%
Adam Taylor
Adam Taylor
2/24/2013 12:46:54 PM
User Rank
Blogger
Re: I2C or SPI
Yeah thats fine, have fun 

50%
50%
JezmoSSL
JezmoSSL
2/24/2013 12:46:01 PM
User Rank
Blogger
Re: I2C or SPI
Ok I'll call you tomorrow about lunchtime if that's ok now,got to go out tonight

50%
50%
Adam Taylor
Adam Taylor
2/24/2013 12:39:47 PM
User Rank
Blogger
Re: I2C or SPI
Sorry mate been meaning to all day honest

Just tried and left an answer phone message with my number 

50%
50%
JezmoSSL
JezmoSSL
2/24/2013 12:35:04 PM
User Rank
Blogger
Re: I2C or SPI
So Adam 

are you gonna give me a bell about this design west thingy ?

50%
50%
Adam Taylor
Adam Taylor
2/24/2013 12:06:02 PM
User Rank
Blogger
Re: I2C or SPI
You will need to use the FX2 connector to connect to your camera and create the I2C or SPI interface in the FPGA connected to these pins. 

You will also need to consider data rates of the camera output, how long it will take to store it in the DDR and how you will want to output it I presume via the VGA output. 

What is the resolution of the camera and the format of the output?

 

50%
50%
deepika
deepika
2/24/2013 11:52:10 AM
User Rank
Beginner
I2C or SPI
I am interfacing a  camera module on my Spartan 3AN board. I need to store the images or pixel frames to the DDR2 SDRAM memory. Can I interface the camera with the board using SPI or I2C is the only option. In this particular spartan kit I2C is user for voltage regulation so how can I use it as an interface? Please guide

50%
50%
eteam00
eteam00
9/18/2012 2:36:08 PM
User Rank
Guru
some links and references
From the Xilinx Users Forum New Users Forum README thread:

Common Interfaces and FPGA techniques:

I2C basics
  link#1 link#2 code examples   I2C spec Rev 4
  wiki articles: I2C  SMBus  MDIO  SPD  EDID

SPI (serial peripheral interface) basics
  Wiki article  fpga4fun tutorial  the 'other' SPI

async serial/UART
  wiki async serial article  wiki RS-232 article 
  wiki ASCII codes article   find code

high-speed async serial, using USB-serial bridge  thread#1

-- Bob Elkind

100%
0%
Duane Benson
Duane Benson
8/16/2012 2:40:41 AM
User Rank
Blogger
Re: SPI Daisy chain configuration
Brian - Pretty clever. I can see how that would work.

50%
50%
Brian
Brian
8/15/2012 5:11:29 PM
User Rank
Guru
Re: SPI Daisy chain configuration
 

@Duane: instead of "reinventing the wheel" to explain it, I searched online for some AppNotes that I have referenced in the past.  I am including a Maxim AppNote link and the pertinent text.  It seems to be the most concise.  (We don't want these comments to become a blog :-)

Please note that not ALL SPI devices (slaves) include daisy-chain capability - so, you will need to check the datasheets.

Maxim reference, Daisy-Chaining SPI Devices, then scroll down to "How Daisy-Chaining Is Accomplished" to see the reference figures, etc.  Here's the relevant information:

In a daisy-chained system, SLAVE 1 receives data directly from the microcontroller. This data is clocked into SLAVE 1's internal shift register. As long as active-low CS remains low, this data propagates through to SLAVE 1's DOUT output. DOUT of SLAVE 1 goes into DIN of SLAVE 2, so the data is clocked into SLAVE 2's internal shift register as the data appears on SLAVE 1's DOUT output. Just as SLAVE 2 receives its data from SLAVE 1, the microcontroller can simultaneously send another command to SLAVE 1. This new command overwrites the previous data in SLAVE 1's shift register. As long as active-low CS remains low, the data propagates through the entire daisy-chain until each of the slave devices has received its appropriate command. The command loaded into each slave's shift register executes on the rising edge of active-low CS.

In addition, here is the Wikipedia reference, Daisy chain SPI configuration.  Brief, but also explains it.

I hope this helps!

 

50%
50%
Page 1 / 2   >   >>
More Blogs from Adam Taylor
Here we discover how to use the XADC (Xilinx Analog-to-Digital Convertor) in the Zynq All Programmable SoC to read the chip's internal temperature and voltage parameters and output them over an RS-232 link.
Now it's time to consider how we can implement and use the Xilinx Analog to Digital Convertor (XADC) within a Zynq All Programmable SoC-based system.
The Zynq All Programmable SoC comes equipped with programmable analog capabilities that can be used in a wide variety of applications, including defense, industrial, and automotive systems.
This is the blog we've all been waiting for – the point where we finally create our very first, standalone, "bare metal" Zynq application!
In the case of a real-world use model, we want to store our software program and configuration bitstream in nonvolatile memory and configure the device after the power comes on.
flash poll
follow us on twitter
follow Xilinx on twitter
like us on facebook
like Xilinx on facebook
All Programmable Planet     About Us     Contact Us     Help     Register     Twitter     Facebook     RSS