Using EMIF expansion port as digital output

David Valencia October 27, 20107 comments Coded in C for the TI C67x

This is a simple example of how to use the EMIF expansion (labeled as Memory Expansion on the board) as a 32-bit wide parallel digital output.

Here is a picture of the board:



The usage of this port as an output port is not originally supported, as it is designed to be used with a specially designed daughterboard. These pins MUST be connected to 3.3V digital buffers, like the 74HC245 or similar buffer.

/*      David Valencia at

        This example shows how to use the External Memory Interface
        expansion port of Spectrum Digital DSK6713 card as
        a set of digital imputs
        The use of buffer ICs is mandatory, as these pins can't deliver
        too much current        */

#define OUTPUT 0xA0000000  // EMIF ADDRESS (updated 3/11/2010)

int *output = (int*)OUTPUT; // Declare a pointer to EMIF's address

void main()
        // To see how the value is written to the EMIF pins,
        // you may prefer to run the program step-by-step

        // Write a 32-bit digital value to the pins
        *output = 0x48120A00; // Test value