Emakefun DM11 Arduino 库 1.0.4
载入中...
搜索中...
未找到
em::Dm11类 参考

DM11是使用I2C协议驱动4路PWM从而驱动2路电机的模块,默认I2C地址为0x15。 更多...

#include <dm11.h>

Public 类型

enum  ErrorCode : uint32_t {
  kOK = 0 , kI2cDataTooLongToFitInTransmitBuffer = 1 , kI2cReceivedNackOnTransmitOfAddress = 2 , kI2cReceivedNackOnTransmitOfData = 3 ,
  kI2cOtherError = 4 , kI2cTimeout = 5 , kInvalidParameter = 6 , kUnknownError = 7
}
 错误码。 更多...
 
enum  PwmChannel : uint8_t {
  kPwmChannel0 = 0 , kPwmChannel1 = 1 , kPwmChannel2 = 2 , kPwmChannel3 = 3 ,
  kPwmChannelNum = 4
}
 PWM通道。 更多...
 

Public 成员函数

 Dm11 (const uint8_t i2c_address=kDefaultI2cAddress, TwoWire &wire=Wire)
 构造函数,指定 I2C 地址和 TwoWire 对象。
 
 Dm11 (TwoWire &wire)
 构造函数,使用默认 I2C 地址和指定的 TwoWire 对象。
 
ErrorCode Init (const uint16_t frequency_hz=1000)
 初始化函数。
 
ErrorCode PwmDuty (const PwmChannel pwm_channel, uint16_t duty)
 设置指定通道的 PWM 占空比。
 

静态 Public 属性

static constexpr uint8_t kDefaultI2cAddress = 0x15
 默认I2C地址。
 
static constexpr uint16_t kMinFrequencyHz = 1
 最小PWM波频率。
 
static constexpr uint16_t kMaxFrequencyHz = 10000
 最大PWM波频率。
 
static constexpr uint16_t kMaxPwmDuty = 4095
 最大PWM占空比。
 

详细描述

DM11是使用I2C协议驱动4路PWM从而驱动2路电机的模块,默认I2C地址为0x15。

示例
motor_forward_backward.ino.

在文件 dm11.h26 行定义.

成员枚举类型说明

◆ ErrorCode

enum em::Dm11::ErrorCode : uint32_t

错误码。

枚举值
kOK 

成功。

kI2cDataTooLongToFitInTransmitBuffer 

I2C数据太长,无法装入传输缓冲区。

kI2cReceivedNackOnTransmitOfAddress 

在I2C发送地址时收到NACK。

kI2cReceivedNackOnTransmitOfData 

在I2C发送数据时收到NACK。

kI2cOtherError 

其他I2C错误。

kI2cTimeout 

I2C通讯超时。

kInvalidParameter 

参数错误。

kUnknownError 

未知错误。

在文件 dm11.h78 行定义.

◆ PwmChannel

enum em::Dm11::PwmChannel : uint8_t

PWM通道。

枚举值
kPwmChannel0 

PWM通道0。

kPwmChannel1 

PWM通道1。

kPwmChannel2 

PWM通道2。

kPwmChannel3 

PWM通道3。

kPwmChannelNum 

PWM通道数。

在文件 dm11.h170 行定义.

构造及析构函数说明

◆ Dm11() [1/2]

em::Dm11::Dm11 ( const uint8_t i2c_address = kDefaultI2cAddress,
TwoWire & wire = Wire )
explicit

构造函数,指定 I2C 地址和 TwoWire 对象。

参数
i2c_addressI2C 地址,默认为 kDefaultI2cAddress
wireTwoWire 对象引用,默认为 Wire。

在文件 dm11.cpp19 行定义.

◆ Dm11() [2/2]

em::Dm11::Dm11 ( TwoWire & wire)
inlineexplicit

构造函数,使用默认 I2C 地址和指定的 TwoWire 对象。

参数
wireTwoWire 对象引用。

在文件 dm11.h242 行定义.

成员函数说明

◆ Init()

Dm11::ErrorCode em::Dm11::Init ( const uint16_t frequency_hz = 1000)

初始化函数。

参数
[in]frequency_hzPWM波频率,单位HZ,范围:1 ~ 10000,默认为1000。
返回
返回值请参考 ErrorCode
示例
motor_forward_backward.ino.

在文件 dm11.cpp22 行定义.

◆ PwmDuty()

Dm11::ErrorCode em::Dm11::PwmDuty ( const PwmChannel pwm_channel,
uint16_t duty )

设置指定通道的 PWM 占空比。

参数
[in]pwm_channelPWM通道,参考 PwmChannel
[in]dutyPWM占空比,范围:0 ~ 4095。
返回
返回值请参考 ErrorCode

在文件 dm11.cpp42 行定义.

类成员变量说明

◆ kDefaultI2cAddress

uint8_t em::Dm11::kDefaultI2cAddress = 0x15
staticconstexpr

默认I2C地址。

在文件 dm11.h36 行定义.

◆ kMaxFrequencyHz

uint16_t em::Dm11::kMaxFrequencyHz = 10000
staticconstexpr

最大PWM波频率。

在文件 dm11.h56 行定义.

◆ kMaxPwmDuty

uint16_t em::Dm11::kMaxPwmDuty = 4095
staticconstexpr

最大PWM占空比。

在文件 dm11.h66 行定义.

◆ kMinFrequencyHz

uint16_t em::Dm11::kMinFrequencyHz = 1
staticconstexpr

最小PWM波频率。

在文件 dm11.h46 行定义.


该类的文档由以下文件生成: