diff --git a/boards/shields/lmp90100_evb/Kconfig.defconfig b/boards/shields/lmp90100_evb/Kconfig.defconfig new file mode 100644 index 00000000000..e7488e55cb6 --- /dev/null +++ b/boards/shields/lmp90100_evb/Kconfig.defconfig @@ -0,0 +1,29 @@ +# Copyright (c) 2019 Vestas Wind Systems A/S +# SPDX-License-Identifier: Apache-2.0 + +if SHIELD_LMP90100_EVB + +if ADC + +config SPI + default y + +config ADC_LMP90XXX + default y + +config ADC_LMP90XXX_GPIO + default y + +endif # ADC + +if EEPROM + +config I2C + default y + +config EEPROM_AT24 + default y + +endif # EEPROM + +endif # SHIELD_LMP90100_EVB diff --git a/boards/shields/lmp90100_evb/Kconfig.shield b/boards/shields/lmp90100_evb/Kconfig.shield new file mode 100644 index 00000000000..c48aec9efe0 --- /dev/null +++ b/boards/shields/lmp90100_evb/Kconfig.shield @@ -0,0 +1,5 @@ +# Copyright (c) 2019 Vestas Wind Systems A/S +# SPDX-License-Identifier: Apache-2.0 + +config SHIELD_LMP90100_EVB + def_bool $(shields_list_contains,lmp90100_evb) diff --git a/boards/shields/lmp90100_evb/doc/index.rst b/boards/shields/lmp90100_evb/doc/index.rst new file mode 100644 index 00000000000..1e55d8dc4f0 --- /dev/null +++ b/boards/shields/lmp90100_evb/doc/index.rst @@ -0,0 +1,57 @@ +.. _lmp90100_evb_shield: + +LMP90100 Sensor AFE Evaluation Board +#################################### + +Overview +******** + +The Texas Instruments LMP90100 Sensor AFE Evaluation Board (EVB) is a +development kit for the TI LMP90xxx series of analog sensor frontends. + +.. figure:: ./lmp90100eb_lmp90100eb.jpg + :width: 640px + :align: center + :alt: LMP90100 EVB + + LMP90100 EVB (Credit: Texas Instruments) + +Requirements +************ + +This shield can only be used with a development board that provides a +configuration for Arduino connectors and defines a node alias for the +SPI interface (see :ref:`shields` for more details). + +The SPIO connector pins on the LMP90100 EVB can be connected to the +Arduino headers of the development board using jumper wires. + +For more information about interfacing the LMP90xxx series and the +LMP90100 EVB in particular, see these TI documents: + +- `LMP90100 Sensor AFE Evaluation Board User's Guide`_ +- `LMP90100 Multi-Channel, Low Power 24-Bit Sensor AFE`_ + +Samples +******* + +Zephyr RTOS includes one sample targeting the LMP90100 EVB: + +* :ref:`lmp90100_evb_rtd_sample` + +Programming +*********** + +Set ``-DSHIELD=lmp90100_evb`` when you invoke ``west build``. For example: + +.. zephyr-app-commands:: + :zephyr-app: samples/shields/lmp90100_evb/thermocouple + :board: frdm_k64f + :shield: lmp90100_evb + :goals: build + +.. _LMP90100 Sensor AFE Evaluation Board User's Guide: + http://www.ti.com/lit/pdf/snau028 + +.. _LMP90100 Multi-Channel, Low Power 24-Bit Sensor AFE: + http://www.ti.com/product/LMP90100 diff --git a/boards/shields/lmp90100_evb/doc/lmp90100eb_lmp90100eb.jpg b/boards/shields/lmp90100_evb/doc/lmp90100eb_lmp90100eb.jpg new file mode 100644 index 00000000000..97556660235 Binary files /dev/null and b/boards/shields/lmp90100_evb/doc/lmp90100eb_lmp90100eb.jpg differ diff --git a/boards/shields/lmp90100_evb/lmp90100_evb.overlay b/boards/shields/lmp90100_evb/lmp90100_evb.overlay new file mode 100644 index 00000000000..a16bc942e2a --- /dev/null +++ b/boards/shields/lmp90100_evb/lmp90100_evb.overlay @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2019 Vestas Wind Systems A/S + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&arduino_spi { + status = "okay"; + + lmp90100: lmp90100@0 { + compatible = "ti,lmp90100"; + reg = <0x0>; + spi-max-frequency = <1000000>; + label = "LMP90100"; + /* Uncomment to use IRQ instead of polling: */ + /* drdyb-gpios = <&arduino_header 15 GPIO_INT_ACTIVE_LOW>; */ + #io-channel-cells = <2>; + + gpio { + compatible = "ti,lmp90xxx-gpio"; + gpio-controller; + label = "LMP90100_GPIO"; + #gpio-cells = <2>; + }; + }; +}; + +&arduino_i2c { + status = "okay"; + + eeprom0: eeprom@57 { + compatible = "atmel,at24"; + reg = <0x57>; + label = "EEPROM_LMP90100_EVB"; + size = <256>; + pagesize = <8>; + address-width = <8>; + timeout = <5>; + }; +};