mirror of
https://git.rtems.org/rtems-docs/
synced 2025-05-15 02:57:55 +08:00
shell: Document i2c and spi commands.
This commit is contained in:
parent
265bee75ec
commit
171bbe096f
@ -44,6 +44,14 @@ The RTEMS shell has the following general commands:
|
|||||||
|
|
||||||
- rtc_ - RTC driver configuration
|
- rtc_ - RTC driver configuration
|
||||||
|
|
||||||
|
- i2cdetect_ - detect I2C devices
|
||||||
|
|
||||||
|
- i2cget_ - get data from an EEPROM like I2C device
|
||||||
|
|
||||||
|
- i2cset_ - write data to an EEPROM like I2C device
|
||||||
|
|
||||||
|
- spi_ - read and write simple data to an SPI bus
|
||||||
|
|
||||||
- exit_ - alias for logoff command
|
- exit_ - alias for logoff command
|
||||||
|
|
||||||
Commands
|
Commands
|
||||||
@ -1179,6 +1187,213 @@ CONFIGURATION:
|
|||||||
|
|
||||||
\clearpage
|
\clearpage
|
||||||
|
|
||||||
|
.. _i2cdetect:
|
||||||
|
|
||||||
|
i2cdetect - detect I2C devices
|
||||||
|
------------------------------
|
||||||
|
.. index:: i2cdetect
|
||||||
|
|
||||||
|
SYNOPSYS:
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
i2cdetect <I2C_BUS>
|
||||||
|
|
||||||
|
.. index:: CONFIGURE_SHELL_NO_COMMAND_I2CDETECT
|
||||||
|
.. index:: CONFIGURE_SHELL_COMMAND_I2CDETECT
|
||||||
|
|
||||||
|
DESCRIPTION:
|
||||||
|
Tries to detect I2C devices connected to the I2C bus. To do that, write
|
||||||
|
requests with the length of 0 are used.
|
||||||
|
|
||||||
|
WARNING: This might confuse some I2C devices, so please use it only if you
|
||||||
|
know what you are doing.
|
||||||
|
|
||||||
|
The command supports a ``-h`` option to get usage details.
|
||||||
|
|
||||||
|
The command works only with I2C bus drivers that use the Linux-Style API.
|
||||||
|
|
||||||
|
EXAMPLES:
|
||||||
|
The following is an example where two I2C devices are detected. One on 0x1a
|
||||||
|
and one on 0x1f:
|
||||||
|
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
SHLL [/] # i2cdetect /dev/i2c1
|
||||||
|
x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
|
||||||
|
0x -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
1x -- -- -- -- -- -- -- -- -- -- 1a -- -- -- -- 1f
|
||||||
|
2x -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
3x -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
4x -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
5x -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
6x -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
7x -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
|
SHLL [/] #
|
||||||
|
|
||||||
|
CONFIGURATION:
|
||||||
|
This command is included in the default shell command set. When building a
|
||||||
|
custom command set, define ``CONFIGURE_SHELL_COMMAND_I2CDETECT`` to have
|
||||||
|
this command included.
|
||||||
|
|
||||||
|
This command can be excluded from the shell command set by defining
|
||||||
|
``CONFIGURE_SHELL_NO_COMMAND_I2CDETECT`` when all shell commands have been
|
||||||
|
configured.
|
||||||
|
|
||||||
|
.. raw:: latex
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
|
.. _i2cget:
|
||||||
|
|
||||||
|
i2cget - get data from an EEPROM like I2C device
|
||||||
|
------------------------------------------------
|
||||||
|
.. index:: i2cget
|
||||||
|
|
||||||
|
SYNOPSYS:
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
i2cget <I2C_BUS> <CHIP-ADDRESS> <DATA-ADDRESS> [<NR-BYTES>]
|
||||||
|
|
||||||
|
.. index:: CONFIGURE_SHELL_NO_COMMAND_I2CGET
|
||||||
|
.. index:: CONFIGURE_SHELL_COMMAND_I2CGET
|
||||||
|
|
||||||
|
DESCRIPTION:
|
||||||
|
Get one or multiple bytes from an EEPROM like I2C device. If <NR-BYTES> is
|
||||||
|
not given the command defaults to reading one byte. If you read multiple
|
||||||
|
bytes (<NR-BYTES> given and bigger then 1) the read will be done in one
|
||||||
|
single request. An auto incrementing register pointer is assumed.
|
||||||
|
|
||||||
|
The command supports a ``-h`` option to get usage details.
|
||||||
|
|
||||||
|
All numbers can be entered in decimal form (normal digits; e.g. 16),
|
||||||
|
hexadecimal form (with 0x prefix; e.g. 0x10) or octal form (with a leading
|
||||||
|
zero; e.g. 020).
|
||||||
|
|
||||||
|
The command works only with I2C bus drivers that use the Linux-Style API.
|
||||||
|
|
||||||
|
EXAMPLES:
|
||||||
|
The following is an example how to read a one byte register at 0xd from the
|
||||||
|
I2C device at 0x1f:
|
||||||
|
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
SHLL [/] # i2cget /dev/i2c1 0x1f 0x0d
|
||||||
|
0xc7
|
||||||
|
SHLL [/] #
|
||||||
|
|
||||||
|
CONFIGURATION:
|
||||||
|
This command is included in the default shell command set. When building a
|
||||||
|
custom command set, define ``CONFIGURE_SHELL_COMMAND_I2CGET`` to have this
|
||||||
|
command included.
|
||||||
|
|
||||||
|
This command can be excluded from the shell command set by defining
|
||||||
|
``CONFIGURE_SHELL_NO_COMMAND_I2CGET`` when all shell commands have been
|
||||||
|
configured.
|
||||||
|
|
||||||
|
.. raw:: latex
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
|
.. _i2cset:
|
||||||
|
|
||||||
|
i2cset - write data to an EEPROM like I2C device
|
||||||
|
------------------------------------------------
|
||||||
|
.. index:: i2cset
|
||||||
|
|
||||||
|
SYNOPSYS:
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
i2cset <I2C_BUS> <CHIP-ADDRESS> <DATA-ADDRESS> <VALUE> [<VALUE> [...]]
|
||||||
|
|
||||||
|
.. index:: CONFIGURE_SHELL_NO_COMMAND_I2CSET
|
||||||
|
.. index:: CONFIGURE_SHELL_COMMAND_I2CSET
|
||||||
|
|
||||||
|
DESCRIPTION:
|
||||||
|
Write one or multiple bytes to an EEPROM like I2C device. If you write
|
||||||
|
multiple bytes (multiple <VALUE> given) the write will be done in one single
|
||||||
|
request. An auto incrementing register pointer is assumed.
|
||||||
|
|
||||||
|
The command supports a ``-h`` option to get usage details.
|
||||||
|
|
||||||
|
All numbers can be entered in decimal form (normal digits; e.g. 16),
|
||||||
|
hexadecimal form (with 0x prefix; e.g. 0x10) or octal form (with a leading
|
||||||
|
zero; e.g. 020).
|
||||||
|
|
||||||
|
The command works only with I2C bus drivers that use the Linux-Style API.
|
||||||
|
|
||||||
|
EXAMPLES:
|
||||||
|
The following is an example how to write one byte of 0x00 to the register at
|
||||||
|
0x11 of the I2C device at 0x1f:
|
||||||
|
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
SHLL [/] # i2cset /dev/i2c1 0x1f 0x11 0x00
|
||||||
|
SHLL [/] #
|
||||||
|
|
||||||
|
CONFIGURATION:
|
||||||
|
This command is included in the default shell command set. When building a
|
||||||
|
custom command set, define ``CONFIGURE_SHELL_COMMAND_I2CSET`` to have this
|
||||||
|
command included.
|
||||||
|
|
||||||
|
This command can be excluded from the shell command set by defining
|
||||||
|
``CONFIGURE_SHELL_NO_COMMAND_I2CSET`` when all shell commands have been
|
||||||
|
configured.
|
||||||
|
|
||||||
|
.. raw:: latex
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
|
.. _spi:
|
||||||
|
|
||||||
|
spi - read and write simple data to an SPI bus
|
||||||
|
----------------------------------------------
|
||||||
|
.. index:: spi
|
||||||
|
|
||||||
|
SYNOPSYS:
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
spi [-loh] [-c <cs>] [-s <speed>] [-m <mode>] <SPI_BUS> xx [xx [..]]
|
||||||
|
|
||||||
|
.. index:: CONFIGURE_SHELL_NO_COMMAND_SPI
|
||||||
|
.. index:: CONFIGURE_SHELL_COMMAND_SPI
|
||||||
|
|
||||||
|
DESCRIPTION:
|
||||||
|
Write data to an SPI bus and read the responses.
|
||||||
|
|
||||||
|
The command supports a ``-h`` option to get usage details.
|
||||||
|
|
||||||
|
The data bytes (``xx`` in the SYNOPSIS) are in hexadecimal form (e.g.
|
||||||
|
``0x10`` or ``10`` both have a value of decimal 16). This allows longer
|
||||||
|
hex strings before the shell input limit is reached. All other numbers can
|
||||||
|
be entered in decimal form (normal digits; e.g. 16), hexadecimal form (with
|
||||||
|
0x prefix; e.g. 0x10) or octal form (with a leading zero; e.g. 020).
|
||||||
|
|
||||||
|
The command works only with SPI bus drivers that use the Linux-Style API.
|
||||||
|
|
||||||
|
EXAMPLES:
|
||||||
|
The following is an example how to write multiple bytes (0x4a 0x4b 0x4c) to
|
||||||
|
the bus. The response is 0xa1 0xa2 0xa3 in this case. Chip select 1 will be
|
||||||
|
used.
|
||||||
|
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
SHLL [/] # spi /dev/spi1 -c 1 4a 4b 4c
|
||||||
|
received: a1 a2 a3
|
||||||
|
SHLL [/] #
|
||||||
|
|
||||||
|
CONFIGURATION:
|
||||||
|
This command is included in the default shell command set. When building a
|
||||||
|
custom command set, define ``CONFIGURE_SHELL_COMMAND_SPI`` to have this
|
||||||
|
command included.
|
||||||
|
|
||||||
|
This command can be excluded from the shell command set by defining
|
||||||
|
``CONFIGURE_SHELL_NO_COMMAND_SPI`` when all shell commands have been
|
||||||
|
configured.
|
||||||
|
|
||||||
|
.. raw:: latex
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
.. _exit:
|
.. _exit:
|
||||||
|
|
||||||
exit - exit the shell
|
exit - exit the shell
|
||||||
|
Loading…
x
Reference in New Issue
Block a user