merged AI doc, some new pages
This commit is contained in:
@@ -1,9 +1,8 @@
|
||||
/*! \file pispi.h
|
||||
* \ingroup IO
|
||||
* \~\brief
|
||||
* \~english SPI device
|
||||
* \~russian Устройство SPI
|
||||
*/
|
||||
//! \~\file pispi.h
|
||||
//! \~\ingroup IO
|
||||
//! \~\brief
|
||||
//! \~english SPI device wrapper
|
||||
//! \~russian Обертка над SPI-устройством
|
||||
/*
|
||||
PIP - Platform Independent Primitives
|
||||
SPI
|
||||
@@ -29,37 +28,76 @@
|
||||
#include "piiodevice.h"
|
||||
|
||||
|
||||
//! \~\ingroup IO
|
||||
//! \~\brief
|
||||
//! \~english SPI device with configurable speed, word size and clock mode.
|
||||
//! \~russian SPI-устройство с настраиваемыми скоростью, размером слова и режимом тактирования.
|
||||
//! \~\details
|
||||
//! \~english Data is exchanged through \a write(), and received bytes are accumulated for subsequent \a read() calls.
|
||||
//! \~russian Обмен выполняется через \a write(), а принятые байты накапливаются для последующих вызовов \a read().
|
||||
class PIP_EXPORT PISPI: public PIIODevice {
|
||||
PIIODEVICE(PISPI, "spi");
|
||||
|
||||
public:
|
||||
//! \~english Constructs an SPI device for "path" with transfer speed "speed_hz".
|
||||
//! \~russian Создает SPI-устройство для "path" со скоростью обмена "speed_hz".
|
||||
explicit PISPI(const PIString & path = PIString(), uint speed_hz = 1000000, PIIODevice::DeviceMode mode = PIIODevice::ReadWrite);
|
||||
|
||||
//! \~english Destroys the SPI device.
|
||||
//! \~russian Уничтожает SPI-устройство.
|
||||
virtual ~PISPI();
|
||||
|
||||
//! \brief Parameters of PISPI
|
||||
//! \~english SPI mode flags.
|
||||
//! \~russian Флаги режима SPI.
|
||||
enum Parameters {
|
||||
ClockInverse /*! SPI clk polarity control*/ = 0x1,
|
||||
ClockPhaseShift /*! SPI clk phase control */ = 0x2,
|
||||
ClockInverse = 0x1 /*! \~english Invert clock polarity \~russian Инвертировать полярность тактового сигнала */,
|
||||
ClockPhaseShift = 0x2 /*! \~english Shift sampling phase \~russian Сдвинуть фазу выборки */,
|
||||
};
|
||||
|
||||
//! \~english Sets SPI clock speed in hertz.
|
||||
//! \~russian Устанавливает частоту SPI в герцах.
|
||||
//! \~\details
|
||||
//! \~english Configures the SPI clock frequency. The actual frequency may be rounded to the nearest supported value by the hardware.
|
||||
//! \~russian Настраивает частоту тактового сигнала SPI. Фактическая частота может быть округлена до ближайшего поддерживаемого значения
|
||||
//! оборудованием.
|
||||
//! \~\sa speed()
|
||||
void setSpeed(uint speed_hz);
|
||||
|
||||
//! \~english Returns SPI clock speed in hertz.
|
||||
//! \~russian Возвращает частоту SPI в герцах.
|
||||
//! \~\sa setSpeed()
|
||||
uint speed() const { return spi_speed; }
|
||||
|
||||
//! \~english Sets bits per transferred word.
|
||||
//! \~russian Устанавливает количество бит в передаваемом слове.
|
||||
//! \~\sa bits()
|
||||
void setBits(uchar bits = 8);
|
||||
|
||||
//! \~english Returns bits per transferred word.
|
||||
//! \~russian Возвращает количество бит в передаваемом слове.
|
||||
uchar bits() const { return spi_bits; }
|
||||
|
||||
//! Set parameters to "parameters_"
|
||||
//! \~english Replaces all SPI mode flags with "parameters_".
|
||||
//! \~russian Полностью заменяет набор флагов режима SPI на "parameters_".
|
||||
void setParameters(PIFlags<PISPI::Parameters> parameters_) { spi_mode = (int)parameters_; }
|
||||
|
||||
//! Set parameter "parameter" to "on" state
|
||||
//! \~english Enables or disables a single SPI mode flag.
|
||||
//! \~russian Включает или выключает отдельный флаг режима SPI.
|
||||
//! \~\sa isParameterSet()
|
||||
void setParameter(PISPI::Parameters parameter, bool on = true);
|
||||
|
||||
//! Returns if parameter "parameter" is set
|
||||
//! \~english Returns whether SPI mode flag "parameter" is enabled.
|
||||
//! \~russian Возвращает, включен ли флаг режима SPI "parameter".
|
||||
//! \~\sa setParameter()
|
||||
bool isParameterSet(PISPI::Parameters parameter) const;
|
||||
|
||||
//! Returns parameters
|
||||
//! \~english Returns current SPI mode flags.
|
||||
//! \~russian Возвращает текущие флаги режима SPI.
|
||||
//! \~\sa setParameters()
|
||||
PIFlags<PISPI::Parameters> parameters() const { return spi_mode; }
|
||||
|
||||
//! \~english Returns how many received bytes are buffered for \a read().
|
||||
//! \~russian Возвращает количество принятых байт, буферизованных для \a read().
|
||||
ssize_t bytesAvailable() const override;
|
||||
|
||||
protected:
|
||||
|
||||
Reference in New Issue
Block a user