[doc] update readme and rst

This commit is contained in:
jzlv 2022-12-07 10:19:27 +08:00
parent 3f480f087b
commit 4cdef3164f
65 changed files with 2435 additions and 640 deletions

View file

@ -1,89 +1,83 @@
DAC - 正弦波
====================
本 demo 主要介绍基于 DAC 生成正弦波。
硬件连接
-----------------------------
不同芯片 DAC Channel A 对应的 GPIO 口如下表所示:
.. table:: GPIO 口
:widths: 30, 30, 40
:width: 80%
:align: center
+----------------+-----------+---------------------------+
| 名称 | 芯片型号 | GPIO |
+================+===========+===========================+
| DAC Channel A | BL702 | GPIO 11 |
+ +-----------+---------------------------+
| | BL616 | GPIO 3 |
+----------------+-----------+---------------------------+
软件实现
-----------------------------
更详细的代码请参考 ``examples/peripherals/dac/dac_polling``
.. code-block:: C
:linenos:
board_init();
- ``board_init`` 中会开启 dac 外设
.. code-block:: C
:linenos:
board_dac_gpio_init();
- 配置相关引脚为 `DAC` 功能
.. code-block:: C
:linenos:
dac = bflb_device_get_by_name("dac");
bflb_dac_init(dac, DAC_SAMPLING_FREQ_32K);
- 获取 `dac` 句柄,并初始化 dac时钟配置为 32K
.. code-block:: C
:linenos:
bflb_dac_channel_enable(dac, DAC_CHANNEL_A);
- 配置 dac 通道信息,当前使用的 A 通道
.. code-block:: C
:linenos:
for (uint16_t i = 0; i < sizeof(SIN_LIST) / sizeof(uint16_t); i++) {
bflb_dac_set_value(dac, DAC_CHANNEL_A, SIN_LIST[i]);
bflb_mtimer_delay_us(100);
}
- 调用 ``bflb_dac_set_value(dac, DAC_CHANNEL_A, SIN_LIST[i])`` ,将需要转换的数据通过通道 A 输出
编译和烧录
-----------------------------
- **命令行编译**
.. code-block:: bash
:linenos:
$ cd <sdk_path>/examples/peripherals/dac/dac_polling
$ make CHIP=blxxx BOARD=blxxx_dk
.. note:: blxxx为所使用的芯片型号以bl616为例编译命令为make CHIP=bl616 BOARD=bl616_dk
- **烧录**
详见 :ref:`bl_dev_cube`
实验现象
-----------------------------
DAC Channel A 对应的 GPIO 输出正弦波。
DAC - poll
====================
本 demo 主要介绍基于 DAC 轮询模式生成正弦波。
硬件连接
-----------------------------
本 demo 使用到的 gpio 如下表:
.. table:: GPIO 口
:widths: 30, 30, 40
:width: 80%
:align: center
+----------------+-----------+---------------------------+
| 名称 | 芯片型号 | GPIO |
+================+===========+===========================+
| DAC Channel A | BL702 | GPIO 11 |
+ +-----------+---------------------------+
| | BL616 | GPIO 3 |
+----------------+-----------+---------------------------+
软件实现
-----------------------------
更详细的代码请参考 **examples/peripherals/dac/dac_polling**
.. code-block:: C
:linenos:
board_init();
- ``board_init`` 中会开启 DAC IP 时钟,并选择 DAC 时钟源和分频。
.. code-block:: C
:linenos:
board_dac_gpio_init();
- 配置相关引脚为 `DAC` 功能
.. code-block:: C
:linenos:
dac = bflb_device_get_by_name("dac");
bflb_dac_init(dac, DAC_SAMPLING_FREQ_32K);
- 获取 `dac` 句柄,并初始化 dac 频率为 32K
.. code-block:: C
:linenos:
bflb_dac_channel_enable(dac, DAC_CHANNEL_A);
- 配置 dac 通道信息,当前使用的 A 通道
.. code-block:: C
:linenos:
for (uint16_t i = 0; i < sizeof(SIN_LIST) / sizeof(uint16_t); i++) {
bflb_dac_set_value(dac, DAC_CHANNEL_A, SIN_LIST[i]);
bflb_mtimer_delay_us(100);
}
- 调用 ``bflb_dac_set_value(dac, DAC_CHANNEL_A, SIN_LIST[i])`` ,将需要转换的数据通过通道 A 输出
编译和烧录
-----------------------------
- **命令行编译**
参考 :ref:`linux_cmd` 或者 :ref:`windows_cmd`
- **烧录**
参考 :ref:`bl_dev_cube`
实验现象
-----------------------------
DAC Channel A 对应的 GPIO 输出正弦波。

View file

@ -1,8 +1,8 @@
=======================
DAC 示例
=======================
.. toctree::
:maxdepth: 1
DAC - 生成正弦波 <dac_polling>
====
DAC
====
.. toctree::
:maxdepth: 1
DAC - poll <dac_polling>