I2C Slave Address Configuration Using External Pull-Up Resistors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In serial bus systems like the I2C bus, identical slave devices cannot be individually accessed if they share the same fixed address, leading to the need for unique addresses, which can increase device complexity and cost, especially when using chip select or enable pins, or multiplexers.
Innovation Solution
A device with a storage device and circuitry to configure a configurable portion of its bus address, using a comparator circuit to determine the state of an output connected to an external pull-up resistor, allowing each device to set a unique sub-address when connected to a serial bus with other devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If chip select or enable pins are used to differentiate identical slave devices, then unique device identification is achieved, but device complexity and cost increase
Solution Approach 1:
The patent extracts the address configuration function from the main device circuitry and implements it through external passive components (pull-up resistors) connected to I/O pins. This separates the identification mechanism from the core device functionality, avoiding internal complexity while achieving unique addressing.
Solution Approach 2:
The patent introduces external pull-up resistors as intermediary elements that mediate between the device's I/O pins and the power supply. These resistors create voltage level differences during power-up that encode address information, providing unique identification without requiring complex internal circuitry.
2Adaptability or versatility
If multiplexers are used to select multiple devices with the same bus address, then device selection is enabled, but board space requirements and cost increase
Solution Approach 1:
The patent removes the need for external multiplexer components by extracting the address selection function and implementing it through the devices' own I/O pins and external passive resistors. This eliminates the need for additional multiplexer ICs and reduces board space.
Solution Approach 2:
Each slave device independently configures its own address using its I/O pins and external pull-up resistors during power-up. The devices self-identify without requiring external multiplexer control logic, reducing overall system complexity and board space.
3Reliability
If DIP switches or jumper block connectors are used to set address bits, then unique addressing is achieved, but manufacturing complexity increases
Solution Approach 1:
The patent replaces mechanical address setting methods (DIP switches and jumper blocks) with an electrical solution using I/O pins and pull-up resistors. The address configuration is achieved through voltage level detection during power-up rather than mechanical switch positions, simplifying manufacturing and assembly.
Solution Approach 2:
The patent changes the address configuration parameter from mechanical switch states to electrical voltage levels. During power-up, the presence or absence of pull-up resistors creates distinct voltage levels on I/O pins that encode address information, enabling unique addressing through electrical parameters rather than mechanical configurations.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
Enables individual access to identical slave devices on a serial bus without additional hardware, reducing complexity and cost by configuring a unique sub-address during power-up or a predetermined time interval, ensuring proper bus operation.
Implementation Method 1
The comparator circuit has a comparator circuit output to provide the state at a first logic level when the output is connected to an external pull-up resistor and at a second logic level when the output is not connected to an external pull-up resistor
Data Source
AI summary
A mechanism for assigning unique addresses to identical devices attached to a serial bus is presented. Each device has at least one output and is provided with a storage device to provide a configurable portion of a bus address having a fixed portion and a configurable portion. The device is further provided with circuitry, coupled to the storage device and the output, to determine a state of the output and use the state to configure the configurable portion. Once the configurable portion is configured, the bus address uniquely identifies the device. Such configuration allows more than one such device to be coupled to the same serial bus, e.g., an I2C bus.


