Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
tla2528.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2026 Leica Geosystems AG
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12
13#ifndef ZEPHYR_INCLUDE_DRIVERS_MFD_TLA2528_H
14#define ZEPHYR_INCLUDE_DRIVERS_MFD_TLA2528_H
15
16#include <zephyr/device.h>
17#include <zephyr/sys/mutex.h>
19
20#include <stdint.h>
21
29
48
58
68int tla2528_register_write(const struct device *dev, enum tla2528_reg reg, uint8_t data);
69
79int tla2528_register_read(const struct device *dev, enum tla2528_reg reg, uint8_t *data);
80
92int tla2528_register_set_bits(const struct device *dev, enum tla2528_reg reg, uint8_t bits);
93
105int tla2528_register_clear_bits(const struct device *dev, enum tla2528_reg reg, uint8_t bits);
106
115int tla2528_read_adc_data(const struct device *dev, uint16_t *data);
116
124struct k_mutex *tla2528_get_lock(const struct device *dev);
125
127
128#endif /* ZEPHYR_INCLUDE_DRIVERS_MFD_TLA2528_H */
int tla2528_register_write(const struct device *dev, enum tla2528_reg reg, uint8_t data)
write a specific register of the TLA2528
int tla2528_register_clear_bits(const struct device *dev, enum tla2528_reg reg, uint8_t bits)
clear specific bits in a register of the TLA2528
int tla2528_register_set_bits(const struct device *dev, enum tla2528_reg reg, uint8_t bits)
set specific bits in a register of the TLA2528
tla2528_general_cfg
Bit mapping for the GENERAL_CFG register of the TLA2528.
Definition tla2528.h:52
int tla2528_read_adc_data(const struct device *dev, uint16_t *data)
read a sample of ADC data from the TLA2528
struct k_mutex * tla2528_get_lock(const struct device *dev)
get the mutex lock for the TLA2528
int tla2528_register_read(const struct device *dev, enum tla2528_reg reg, uint8_t *data)
read a specific register of the TLA2528
tla2528_reg
TLA2528 Register mapping.
Definition tla2528.h:33
@ TLA2528_CH_RST
Reset all channels to analog mode.
Definition tla2528.h:54
@ TLA2528_CNVST
Start conversion.
Definition tla2528.h:53
@ TLA2528_CAL
Calibrate ADC offset.
Definition tla2528.h:55
@ TLA2528_RST
Soft-reset all registers.
Definition tla2528.h:56
@ TLA2528_GPI_VALUE
GPIO input value register.
Definition tla2528.h:43
@ TLA2528_CHANNEL_SEL
ADC Channel selection register.
Definition tla2528.h:45
@ TLA2528_GENERAL_CFG
General configuration register.
Definition tla2528.h:35
@ TLA2528_GPO_DRIVE_CFG
GPIO output drive configuration register.
Definition tla2528.h:41
@ TLA2528_GPO_VALUE
GPIO output value register.
Definition tla2528.h:42
@ TLA2528_SYSTEM_STATUS
System status register.
Definition tla2528.h:34
@ TLA2528_SEQUENCE_CFG
ADC Sequence configuration register.
Definition tla2528.h:44
@ TLA2528_AUTO_SEQ_CH_SEL
ADC sequence channel selection register.
Definition tla2528.h:46
@ TLA2528_GPIO_CFG
GPIO configuration register.
Definition tla2528.h:40
@ TLA2528_OPMODE_CFG
Operation mode configuration register.
Definition tla2528.h:38
@ TLA2528_DATA_CFG
Data configuration register.
Definition tla2528.h:36
@ TLA2528_OSR_CFG
Oversampling configuration register.
Definition tla2528.h:37
@ TLA2528_PIN_CFG
Pin configuration register.
Definition tla2528.h:39
#define BIT(n)
Unsigned integer with bit position n set (signed in assembly language).
Definition util_macro.h:44
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
Kernel mutex structure.
Definition kernel.h:3572
Macro utilities.