Design Store

GPIO Pin Expansion Using I2C Bus Interface (AN 494)  

CategoryDesign Example
NameGPIO Pin Expansion Using I2C Bus Interface (AN 494)
DescriptionIn some cases, it may be required to have access to the GPIO pins from a relatively long PCB trace path within the system (such as in the two different parts of a clamshell cell phone). Because the I2C interface is a two-wire system, the design provides multiple input and output pins at the remote end with just a common two-wire trace. This provides increased design flexibility and also adds to the physical compactness of the entire system. It also enables smaller packaging and a reduced pin count.

Devices such as fan controllers, LED status displays, and status indicators can be easily connected and controlled via the general purpose output pins. Similarly, devices such as reset pins and push button switches can be easily coupled to the general purpose inputs provided on the FPGA to serve various applications.
Operating SystemNone
IP Core
IP CoreHeading
FamilyMAX 10
GPIO Pin Expansion Using I2C Bus Interface (Application Note 494)GPIO Pin Expansion Using I2C Bus Interface (Application Note 494)
MAX 10 Device DocumentationMAX 10 device documentation, including the device handbook, device pin-outs, and pin connection guidelines.
Development KitNon Kit Specific MAX 10 Design Examples
Installation Package Download

Note: After downloading the design example, you must prepare the design template. The file you downloaded is of the form of a <project>.par file which contains a compressed version of your design files (similar to a .qar file) and metadata describing the project. The combination of this information is what constitutes a <project>.par file. In releases 16.0 or newer, you can simply double click on the <project>.par file and Quartus will launch that project.

The second means to bring up the project template is through the New Project Wizard (File -> New Project Wizard). After entering the project name and folder on the first panel, the second panel will ask you to specify an empty project or project template. Select project template. You will see a list of Design Templates projects that you have loaded prior as well as various "Baseline Pinout Designs" that contain the pinout and settings for a variety of development kits. If you don't see your design template in the list, click on the link that states install the Design Templates circled below:

Browse to the <project>.par file you downloaded, click next, followed by Finish, and your design template will be installed and displayed in the Project Navigator pane in Quartus.

Note: When a design is stored in the Design Store as a design template, it has been previously regression tested against the stated version of Quartus software. The regression ensures the design template passes analysis/synthesis/fitting/assembly steps in the Quartus design flow.

At the command-line, type the following command:

quartus_sh --platform_install –package <project directory>/AN494_MAX10.par

Once the process completes, then type:

quartus_sh --platform –name AN494_MAX10

Total Downloads56 (From 17 May 2016 to 24 Mar 2017)
Quartus II Version Download Quartus II v16.0

Image 2

Last updated on May 17, 2016, 2:15 p.m.