woensdag 9 april 2008

We have finally gotten the graphical display to work on the sunspot, at first we used a software implementation on the d0-d3 ports. Althoug this setup worked, the speed of the IO-ports was to slow to animate anything on the display.

After talking to someone at sun, we discovered that there is a hardware i2c support on the sunspot but it is not connected to the EDemoBoard. So we measured allmost all the pins on the processor board wilst running a programm wich toggled the port state every second and finally fond the two i2c ports.

Next we soldered two wire to the ports and connected them to our display, we used two 1.8k resistors to pull the lines to a logic 1 wich is required by the i2c protocol.

The image to the right displays the two spots that need to be soldered to use the hardware i2c.

the code needed to drive the i2c hardware is:

try {
            i2c = new AT91_I2C(Spot.getInstance().getAT91_PIO(IAT91_PIO.PIOA), 25,26);
        } catch (IOException ex) {
            ex.printStackTrace();
        }

Below is a short movie demonstration a maze game using the display and the hardware i2c
the sourcecode of this app can be downloaded here

1 reacties:

Julien zei

Hi,

I'm so happy to find your blog. I also would like to use the I2C bus on the SunSpots but I need it to be fast enough. I've seen that there was an I2C bus on the connector from the motherboard to the daugtherboard but it's not connected anymore on the daughterboard. Anyway, is it the same one as the one you discovered? What speed did you reached through this way? Could it be possible to get more infos and maybe a bigger image than the one provided on your blog (RS link is dead)?

Thank you very much !