I'm using a LPC313x based linux board (Embedded Artists). I see in the LPC3141 DS that the I/O can be either 1.8 or 3.3V. How/where can I set the voltage level in Linux? Is the input somehow automatic? and the output?

I assume the procedure is similar to other boards..


You don't give details about the board, but my assumption is that certain peripherals (Flash or SDRAM) on it will require 3.3V (or, less likely, 1.8V) and that the I/O voltage is therefore fixed at that level.

The "Embedded Artists" site says that after purchase of a board the schematics can be downloaded. Doesn't the power section give you an answer?

If you want to connect a 1.8V sensor it's better to run the sensor at 1.8V and use a level shifter between the sensor and the microcontroller if it has a digital output. Changing all I/O voltage may cause your memory not to work anymore. The sensor probably has a serial interface, requiring limited hardware for the interface. For a single line the Fairchild FXLP34 may be suitable.

FXLP34 pinout

This document describes how to interface between different supply voltages. It's written for interfacing between 3V and 5V, but a number of principles can also be used for other voltages.

|improve this answer|||||
  • 1
    \$\begingroup\$ I think it's ridiculous to prevent people from downloading the schematics of a board. I've been looking for an SBC lately, and this one is off the list already because I don't know what it has and doesn't have. \$\endgroup\$ – Kevin Vermeer Jul 25 '11 at 20:15
  • \$\begingroup\$ @stevenvh To be able to use a 1.8V I/O sensor chip \$\endgroup\$ – stef Jul 26 '11 at 9:48
  • \$\begingroup\$ @stef: what's the sensor? digital, analog, serial bus? \$\endgroup\$ – Federico Russo Jul 26 '11 at 10:15
  • \$\begingroup\$ @Kevin - I've known worse. Manufacturers who required registration with 50 fields of details to download an ordinary component datasheet. I usually try to avoid them, since I don't believe they will offer good support. \$\endgroup\$ – stevenvh Jul 26 '11 at 13:16
  • \$\begingroup\$ For fast prototyping, do you suggest using a voltage divider made with resistances? I am using it on I2C lines, at 400kHz \$\endgroup\$ – stef Jul 26 '11 at 14:32

You need to go to your manufacturer and get the manual. The chip may or may not dictate the complete API. Generally, there is some memory location which, if you write it it, turns on the pin. But as you note, if there are two potential voltages, that might be fixed by the board maker, or software controlled.

To give you an example, on an ARM-9 board (TS-7200) you have to first write to one location, which sets up the page you are writing to, then write to the location. It's 3 or 5 lines in C, and it's not dictated solely by the CPU. You'd better have the model number of the board too, because even for the manufacturer, it could be different per board.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.