This repository has been archived on 2023-07-17. You can view files and clone it, but cannot push or open issues or pull requests.
bl_mcu_sdk/docs/source/api_reference/peripherals/dac.rst

163 lines
2.8 KiB
ReStructuredText
Raw Normal View History

DAC
=============
Macros
------------
dac sampling frequence
^^^^^^^^^^^^^^^^^^^^^^^^^
dac 采样频率可以选择 32K、16K、8K512K 只有 dma 模式下才可以使用。
.. code-block:: c
:linenos:
#define DAC_SAMPLING_FREQ_32K 0
#define DAC_SAMPLING_FREQ_16K 1
#define DAC_SAMPLING_FREQ_8K 3
#define DAC_SAMPLING_FREQ_512K 4
dac channel
^^^^^^^^^^^^^^^^^^^^^^^^^
博流系列芯片 dac 通道共两组A 通道和 B 通道。
.. code-block:: c
:linenos:
#define DAC_CHANNEL_A (1 << 0)
#define DAC_CHANNEL_B (1 << 1)
Structs
------------
Functions
------------
bflb_dac_init
^^^^^^^^^^^^^^^^^^^^
说明: 初始化 dac。dac 使用之前需要开启 dac ip 时钟、设置 dac 时钟源和分频值、选择使用的 gpio 为 analog 模式。
.. code-block:: c
:linenos:
void bflb_dac_init(struct bflb_device_s *dev, uint8_t frequence);
.. list-table::
:widths: 10 10
:header-rows: 1
* - parameter
- description
* - dev
- 设备句柄
* - frequence
- 采样率
bflb_dac_deinit
^^^^^^^^^^^^^^^^^^^^
说明: 反初始化 dac。
.. code-block:: c
:linenos:
void bflb_dac_deinit(struct bflb_device_s *dev);
.. list-table::
:widths: 10 10
:header-rows: 1
* - parameter
- description
* - dev
- 设备句柄
bflb_dac_link_txdma
^^^^^^^^^^^^^^^^^^^^^^^^^^^
说明: dac dma 开关使能。
.. code-block:: c
:linenos:
void bflb_dac_link_txdma(struct bflb_device_s *dev, bool enable);
.. list-table::
:widths: 10 10
:header-rows: 1
* - parameter
- description
* - dev
- 设备句柄
* - enable
- 是否使能 dma
bflb_dac_channel_enable
^^^^^^^^^^^^^^^^^^^^^^^^^^^
说明: dac 通道使能。
.. code-block:: c
:linenos:
void bflb_dac_channel_enable(struct bflb_device_s *dev, uint8_t ch);
.. list-table::
:widths: 10 10
:header-rows: 1
* - parameter
- description
* - dev
- 设备句柄
* - ch
- 通道,多个通道之间使用 | 连接
bflb_dac_channel_disable
^^^^^^^^^^^^^^^^^^^^^^^^^^^
说明: dac 通道关闭。
.. code-block:: c
:linenos:
void bflb_dac_channel_disable(struct bflb_device_s *dev, uint8_t ch);
.. list-table::
:widths: 10 10
:header-rows: 1
* - parameter
- description
* - dev
- 设备句柄
* - ch
- 通道,多个通道之间使用 | 连接
bflb_dac_set_value
^^^^^^^^^^^^^^^^^^^^^^^^^^^
说明: 更改 dac 通道值。
.. code-block:: c
:linenos:
void bflb_dac_set_value(struct bflb_device_s *dev, uint8_t ch, uint16_t value);
.. list-table::
:widths: 10 10
:header-rows: 1
* - parameter
- description
* - dev
- 设备句柄
* - ch
- 通道,多个通道之间使用 | 连接
* - value
- 通道值