[docs] update doc

This commit is contained in:
jzlv 2021-07-16 16:43:39 +08:00
parent ee237e8197
commit a703cb54ff
74 changed files with 74 additions and 128 deletions

View file

@ -107,26 +107,16 @@ API 概述
**device_register** **device_register**
^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
``device_register`` 用于设备的注册,将设备信息注册到链表当中。 ``device_register`` 用于设备标准驱动的注册,将设备信息注册到链表当中。
.. code-block:: C .. code-block:: C
int device_register(struct device *dev, const char *name, uint16_t flag); int device_register(struct device *dev, const char *name);
- dev 设备句柄。 - dev 设备句柄。
- name 设备名称。 - name 设备名称。
- flag 设备的读写属性
- return 返回错误码0 表示注册成功,其他表示错误。 - return 返回错误码0 表示注册成功,其他表示错误。
``flag`` 可以写入以下参数,表示:**只读**、**只写**、**可读可写**。
.. code-block:: C
#define DEVICE_OFLAG_RDONLY 0x1000 /* 以只读方式打开设备 */
#define DEVICE_OFLAG_WRONLY 0x2000 /* 以只写方式打开设备 */
#define DEVICE_OFLAG_RDWR 0x3000 /* 以读写方式打开设备 */
**device_unregister** **device_unregister**
^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^

View file

@ -79,17 +79,16 @@ ADC 设备接口
ADC 设备接口全部遵循标准设备驱动管理层提供的接口。 ADC 设备接口全部遵循标准设备驱动管理层提供的接口。
**ADC_register** **adc_register**
^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^
``adc_register`` 用来注册 ADC 设备标准驱动接口,在注册之前需要打开对应 ADC 设备的宏定义。例如定义宏 ``BSP_USING_ADC0`` 方可使用 ``ADC0`` 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 ``ADC0`` 设备。 ``adc_register`` 用来注册 ADC 设备标准驱动接口,在注册之前需要打开对应 ADC 设备的宏定义。例如定义宏 ``BSP_USING_ADC0`` 方可使用 ``ADC0`` 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 ``ADC0`` 设备。
.. code-block:: C .. code-block:: C
int ADC_register(enum ADC_index_type index, const char *name, uint16_t flag); int adc_register(enum ADC_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名
- flag 默认可读可写属性 - flag 默认可读可写属性
``index`` 用来选择 ADC 设备配置,一个 index 对应一个 ADC 设备配置,比如 ``ADC0_INDEX`` 对应 ``ADC0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 ADC 设备配置,一个 index 对应一个 ADC 设备配置,比如 ``ADC0_INDEX`` 对应 ``ADC0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -217,11 +217,10 @@ DMA 设备接口全部遵循标准设备驱动管理层提供的接口。并且
.. code-block:: C .. code-block:: C
int dma_register(enum dma_index_type index, const char *name, uint16_t flag); int dma_register(enum dma_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 DMA 设备某个通道的配置,一个 index 对应一个 DMA 设备的一个通道配置,比如 ``DMA_CH0_INDEX`` 对应 DMA 通道0 配置,``index`` 有如下可选类型 ``index`` 用来选择 DMA 设备某个通道的配置,一个 index 对应一个 DMA 设备的一个通道配置,比如 ``DMA_CH0_INDEX`` 对应 DMA 通道0 配置,``index`` 有如下可选类型

View file

@ -75,11 +75,10 @@ I2C 设备标准接口当前仅使用 ``device_open`` , 并提供标准的数据
.. code-block:: C .. code-block:: C
int i2c_register(enum i2c_index_type index, const char *name, uint16_t flag); int i2c_register(enum i2c_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 I2C 设备,一个 index 对应一个 I2C 设备配置,比如 ``I2C0_INDEX`` 对应 ``I2C0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 I2C 设备,一个 index 对应一个 I2C 设备配置,比如 ``I2C0_INDEX`` 对应 ``I2C0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -144,11 +144,10 @@ I2S 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int i2s_register(enum i2s_index_type index, const char *name, uint16_t flag); int i2s_register(enum i2s_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 I2S 设备配置,一个 index 对应一个 I2S 设备配置,比如 ``I2S0_INDEX`` 对应 ``I2S0_CONFIG`` 配置。index 有如下可选类型 ``index`` 用来选择 I2S 设备配置,一个 index 对应一个 I2S 设备配置,比如 ``I2S0_INDEX`` 对应 ``I2S0_CONFIG`` 配置。index 有如下可选类型

View file

@ -94,11 +94,10 @@ PWM 设备接口全部遵循标准设备驱动管理层提供的接口。并且
.. code-block:: C .. code-block:: C
int pwm_register(enum pwm_index_type index, const char *name, uint16_t flag); int pwm_register(enum pwm_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 PWM 设备某个通道的配置,一个 index 对应一个 PWM 设备的一个通道配置,比如 ``PWM_CH0_INDEX`` 对应 PWM 通道0 配置,``index`` 有如下可选类型 ``index`` 用来选择 PWM 设备某个通道的配置,一个 index 对应一个 PWM 设备的一个通道配置,比如 ``PWM_CH0_INDEX`` 对应 PWM 通道0 配置,``index`` 有如下可选类型

View file

@ -137,11 +137,10 @@ SPI 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int spi_register(enum spi_index_type index, const char *name, uint16_t flag); int spi_register(enum spi_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 SPI 设备配置,一个 index 对应一个 SPI 设备配置,比如 ``SPI0_INDEX`` 对应 ``SPI0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 SPI 设备配置,一个 index 对应一个 SPI 设备配置,比如 ``SPI0_INDEX`` 对应 ``SPI0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -124,11 +124,10 @@ TIMER 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int timer_register(enum timer_index_type index, const char *name, uint16_t flag); int timer_register(enum timer_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 TIMER 设备配置,一个 index 对应一个 TIMER 设备配置,比如 ``TIMER_CH0_INDEX`` 对应 ``TIMER_CH0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 TIMER 设备配置,一个 index 对应一个 TIMER 设备配置,比如 ``TIMER_CH0_INDEX`` 对应 ``TIMER_CH0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -125,11 +125,10 @@ UART 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int uart_register(enum uart_index_type index, const char *name, uint16_t flag); int uart_register(enum uart_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 UART 设备配置,一个 index 对应一个 UART 设备配置,比如 ``UART0_INDEX`` 对应 ``UART0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 UART 设备配置,一个 index 对应一个 UART 设备配置,比如 ``UART0_INDEX`` 对应 ``UART0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -81,11 +81,10 @@ USB 设备接口遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int usb_dc_register(enum usb_index_type index, const char *name, uint16_t flag); int usb_dc_register(enum usb_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
- return 错误码0表示成功其他表示失败 - return 错误码0表示成功其他表示失败
**device_open** **device_open**

View file

@ -42,7 +42,7 @@ USB DEVICE 控制器接口
struct device *usb_dc_init(void) struct device *usb_dc_init(void)
{ {
usb_dc_register(USB_INDEX, "usb", DEVICE_OFLAG_RDWR); usb_dc_register(USB_INDEX, "usb");
usb = device_find("usb"); usb = device_find("usb");
device_set_callback(usb, usb_dc_event_callback); device_set_callback(usb, usb_dc_event_callback);
device_open(usb, 0); device_open(usb, 0);

View file

@ -77,7 +77,7 @@ shell 移植到串口
.. code-block:: C .. code-block:: C
:linenos: :linenos:
uart_register(board_get_debug_uart_index(), "debug_log", DEVICE_OFLAG_RDWR); uart_register(board_get_debug_uart_index(), "debug_log");
struct device *uart = device_find("debug_log"); struct device *uart = device_find("debug_log");
if (uart) if (uart)

View file

@ -38,7 +38,7 @@ DMA - RAM间数据搬运
.. code-block:: C .. code-block:: C
:linenos: :linenos:
dma_register(DMA0_CH0_INDEX, "DMA", DEVICE_OFLAG_RDWR); dma_register(DMA0_CH0_INDEX, "DMA");
struct device *dma = device_find("DMA"); struct device *dma = device_find("DMA");

View file

@ -33,7 +33,7 @@ I2C - AT24CXX 读写
#define CONFIG_GPIO11_FUNC GPIO_FUN_I2C #define CONFIG_GPIO11_FUNC GPIO_FUN_I2C
#define CONFIG_GPIO16_FUNC GPIO_FUN_I2C #define CONFIG_GPIO16_FUNC GPIO_FUN_I2C
- 配置 ``I2C`` 设备复用引脚,见 ``bsp/board/bl706_iot/peripheral_config.h`` - 配置 ``I2C`` 设备复用引脚,见 ``bsp/board/bl706_iot/pinmux_config.h``
.. code-block:: C .. code-block:: C
:linenos: :linenos:
@ -56,7 +56,7 @@ I2C - AT24CXX 读写
.. code-block:: C .. code-block:: C
:linenos: :linenos:
i2c_register(I2C0_INDEX, "i2c", DEVICE_OFLAG_RDWR); i2c_register(I2C0_INDEX, "i2c");
struct device *i2c0 = device_find("i2c"); struct device *i2c0 = device_find("i2c");
if (i2c0) if (i2c0)

View file

@ -59,7 +59,7 @@ PWM - 呼吸灯
.. code-block:: C .. code-block:: C
:linenos: :linenos:
pwm_register(PWM_CH2_INDEX, "led_breath", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH2_INDEX, "led_breath");
struct device *led_breath = device_find("led_breath"); struct device *led_breath = device_find("led_breath");

View file

@ -151,10 +151,10 @@ PWM - 驱动步进电机
.. code-block:: C .. code-block:: C
:linenos: :linenos:
pwm_register(PWM_CH0_INDEX, "motor_ch0", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH0_INDEX, "motor_ch0");
pwm_register(PWM_CH1_INDEX, "motor_ch1", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH1_INDEX, "motor_ch1");
pwm_register(PWM_CH2_INDEX, "motor_ch2", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH2_INDEX, "motor_ch2");
pwm_register(PWM_CH3_INDEX, "motor_ch3", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH3_INDEX, "motor_ch3");
motor_ch0 = device_find("motor_ch0"); motor_ch0 = device_find("motor_ch0");
motor_ch1 = device_find("motor_ch1"); motor_ch1 = device_find("motor_ch1");

View file

@ -80,7 +80,7 @@ SPI - TFT LCD 显示
device_close(spi0); device_close(spi0);
} }
else{ else{
spi_register(SPI0_INDEX,"spi0",DEVICE_OFLAG_RDWR); spi_register(SPI0_INDEX,"spi0");
spi0 = device_find("spi0"); spi0 = device_find("spi0");
} }
if(spi0) if(spi0)

View file

@ -67,7 +67,7 @@ UART - 数据自收发
.. code-block:: C .. code-block:: C
:linenos: :linenos:
uart_register(board_get_debug_uart_index(), "debug_log", DEVICE_OFLAG_RDWR); uart_register(board_get_debug_uart_index(), "debug_log");
struct device *uart = device_find("debug_log"); struct device *uart = device_find("debug_log");
if (uart) if (uart)

View file

@ -303,22 +303,15 @@
<h2><span class="section-number">1.3. </span>设备驱动管理层标准接口<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2> <h2><span class="section-number">1.3. </span>设备驱动管理层标准接口<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<div class="section" id="device-register"> <div class="section" id="device-register">
<h3><span class="section-number">1.3.1. </span><strong>device_register</strong><a class="headerlink" href="#device-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">1.3.1. </span><strong>device_register</strong><a class="headerlink" href="#device-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">device_register</span></code> 用于设备的注册,将设备信息注册到链表当中。</p> <p><code class="docutils literal notranslate"><span class="pre">device_register</span></code> 用于设备标准驱动的注册,将设备信息注册到链表当中。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">device_register</span><span class="p">(</span><span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">device_register</span><span class="p">(</span><span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>dev 设备句柄。</p></li> <li><p>dev 设备句柄。</p></li>
<li><p>name 设备名称。</p></li> <li><p>name 设备名称。</p></li>
<li><p>flag 设备的读写属性</p></li>
<li><p>return 返回错误码0 表示注册成功,其他表示错误。</p></li> <li><p>return 返回错误码0 表示注册成功,其他表示错误。</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">flag</span></code> 可以写入以下参数,表示:<strong>只读</strong><strong>只写</strong><strong>可读可写</strong></p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="cp">#define DEVICE_OFLAG_RDONLY 0x1000 </span><span class="cm">/* 以只读方式打开设备 */</span><span class="cp"></span>
<span class="cp">#define DEVICE_OFLAG_WRONLY 0x2000 </span><span class="cm">/* 以只写方式打开设备 */</span><span class="cp"></span>
<span class="cp">#define DEVICE_OFLAG_RDWR 0x3000 </span><span class="cm">/* 以读写方式打开设备 */</span><span class="cp"></span>
</pre></div>
</div>
</div> </div>
<div class="section" id="device-unregister"> <div class="section" id="device-unregister">
<h3><span class="section-number">1.3.2. </span><strong>device_unregister</strong><a class="headerlink" href="#device-unregister" title="永久链接至标题"></a></h3> <h3><span class="section-number">1.3.2. </span><strong>device_unregister</strong><a class="headerlink" href="#device-unregister" title="永久链接至标题"></a></h3>

View file

@ -116,7 +116,7 @@
<li class="toctree-l3"><a class="reference internal" href="#id2">3.9.2. ADC 设备结构体定义</a></li> <li class="toctree-l3"><a class="reference internal" href="#id2">3.9.2. ADC 设备结构体定义</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">3.9.3. ADC 设备参数配置表</a></li> <li class="toctree-l3"><a class="reference internal" href="#id3">3.9.3. ADC 设备参数配置表</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">3.9.4. ADC 设备接口</a><ul> <li class="toctree-l3"><a class="reference internal" href="#id4">3.9.4. ADC 设备接口</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#adc-register">3.9.4.1. <strong>ADC_register</strong></a></li> <li class="toctree-l4"><a class="reference internal" href="#adc-register">3.9.4.1. <strong>adc_register</strong></a></li>
<li class="toctree-l4"><a class="reference internal" href="#device-open">3.9.4.2. <strong>device_open</strong></a></li> <li class="toctree-l4"><a class="reference internal" href="#device-open">3.9.4.2. <strong>device_open</strong></a></li>
<li class="toctree-l4"><a class="reference internal" href="#device-close">3.9.4.3. <strong>device_close</strong></a></li> <li class="toctree-l4"><a class="reference internal" href="#device-close">3.9.4.3. <strong>device_close</strong></a></li>
<li class="toctree-l4"><a class="reference internal" href="#device-control">3.9.4.4. <strong>device_control</strong></a></li> <li class="toctree-l4"><a class="reference internal" href="#device-control">3.9.4.4. <strong>device_control</strong></a></li>
@ -304,14 +304,13 @@
<h2><span class="section-number">3.9.4. </span>ADC 设备接口<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2> <h2><span class="section-number">3.9.4. </span>ADC 设备接口<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<p>ADC 设备接口全部遵循标准设备驱动管理层提供的接口。</p> <p>ADC 设备接口全部遵循标准设备驱动管理层提供的接口。</p>
<div class="section" id="adc-register"> <div class="section" id="adc-register">
<h3><span class="section-number">3.9.4.1. </span><strong>ADC_register</strong><a class="headerlink" href="#adc-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.9.4.1. </span><strong>adc_register</strong><a class="headerlink" href="#adc-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">adc_register</span></code> 用来注册 ADC 设备标准驱动接口,在注册之前需要打开对应 ADC 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_ADC0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">ADC0</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">ADC0</span></code> 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">adc_register</span></code> 用来注册 ADC 设备标准驱动接口,在注册之前需要打开对应 ADC 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_ADC0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">ADC0</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">ADC0</span></code> 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">ADC_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">ADC_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">adc_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">ADC_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li> <li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 ADC 设备配置,一个 index 对应一个 ADC 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">ADC0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">ADC0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 ADC 设备配置,一个 index 对应一个 ADC 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">ADC0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">ADC0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>

View file

@ -424,13 +424,12 @@
<div class="section" id="dma-register"> <div class="section" id="dma-register">
<h3><span class="section-number">3.5.4.1. </span><strong>dma_register</strong><a class="headerlink" href="#dma-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.5.4.1. </span><strong>dma_register</strong><a class="headerlink" href="#dma-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">dma_register</span></code> 用来注册 DMA 设备标准驱动接口,在注册之前需要打开对应 DMA 设备的通道宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_DMA_CH0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">DMA</span></code> 设备的 0 通道,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">DMA</span></code> 设备的 0 通道。</p> <p><code class="docutils literal notranslate"><span class="pre">dma_register</span></code> 用来注册 DMA 设备标准驱动接口,在注册之前需要打开对应 DMA 设备的通道宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_DMA_CH0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">DMA</span></code> 设备的 0 通道,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">DMA</span></code> 设备的 0 通道。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">dma_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">dma_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">dma_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">dma_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 DMA 设备某个通道的配置,一个 index 对应一个 DMA 设备的一个通道配置,比如 <code class="docutils literal notranslate"><span class="pre">DMA_CH0_INDEX</span></code> 对应 DMA 通道0 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 DMA 设备某个通道的配置,一个 index 对应一个 DMA 设备的一个通道配置,比如 <code class="docutils literal notranslate"><span class="pre">DMA_CH0_INDEX</span></code> 对应 DMA 通道0 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">dma_index_type</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">dma_index_type</span>

View file

@ -289,13 +289,12 @@
<div class="section" id="i2c-register"> <div class="section" id="i2c-register">
<h3><span class="section-number">3.6.4.1. </span><strong>i2c_register</strong><a class="headerlink" href="#i2c-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.6.4.1. </span><strong>i2c_register</strong><a class="headerlink" href="#i2c-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">i2c_register</span></code> 用来注册 I2C 设备标准驱动接口,在注册之前需要打开对应 I2C 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_I2C0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">I2C0</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">I2C0</span></code> 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">i2c_register</span></code> 用来注册 I2C 设备标准驱动接口,在注册之前需要打开对应 I2C 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_I2C0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">I2C0</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">I2C0</span></code> 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">i2c_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">i2c_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">i2c_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">i2c_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 I2C 设备,一个 index 对应一个 I2C 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">I2C0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">I2C0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 I2C 设备,一个 index 对应一个 I2C 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">I2C0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">I2C0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">i2c_index_type</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">i2c_index_type</span>

View file

@ -354,13 +354,12 @@
<div class="section" id="i2s-register"> <div class="section" id="i2s-register">
<h3><span class="section-number">3.7.4.1. </span><strong>i2s_register</strong><a class="headerlink" href="#i2s-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.7.4.1. </span><strong>i2s_register</strong><a class="headerlink" href="#i2s-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">i2s_register</span></code> 用来注册 I2S 标准驱动接口,在注册之前需要打开对应 I2S 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_I2S0</span></code> 方可使用 I2S0 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 I2S 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">i2s_register</span></code> 用来注册 I2S 标准驱动接口,在注册之前需要打开对应 I2S 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_I2S0</span></code> 方可使用 I2S0 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 I2S 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">i2s_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">i2s_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">i2s_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">i2s_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 I2S 设备配置,一个 index 对应一个 I2S 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">I2S0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">I2S0_CONFIG</span></code> 配置。index 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 I2S 设备配置,一个 index 对应一个 I2S 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">I2S0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">I2S0_CONFIG</span></code> 配置。index 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">i2s_index_type</span> <span class="p">{</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">i2s_index_type</span> <span class="p">{</span>

View file

@ -321,13 +321,12 @@
<div class="section" id="pwm-register"> <div class="section" id="pwm-register">
<h3><span class="section-number">3.4.4.1. </span><strong>pwm_register</strong><a class="headerlink" href="#pwm-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.4.4.1. </span><strong>pwm_register</strong><a class="headerlink" href="#pwm-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">pwm_register</span></code> 用来注册 PWM 设备的一个通道的标准驱动接口,在注册之前需要打开对应 PWM 设备某个通道的宏定义,例如定义 <code class="docutils literal notranslate"><span class="pre">BSP_USING_PWM_CH0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">PWM</span></code> 通道0 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 PWM 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">pwm_register</span></code> 用来注册 PWM 设备的一个通道的标准驱动接口,在注册之前需要打开对应 PWM 设备某个通道的宏定义,例如定义 <code class="docutils literal notranslate"><span class="pre">BSP_USING_PWM_CH0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">PWM</span></code> 通道0 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 PWM 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">pwm_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">pwm_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">pwm_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">pwm_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 PWM 设备某个通道的配置,一个 index 对应一个 PWM 设备的一个通道配置,比如 <code class="docutils literal notranslate"><span class="pre">PWM_CH0_INDEX</span></code> 对应 PWM 通道0 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 PWM 设备某个通道的配置,一个 index 对应一个 PWM 设备的一个通道配置,比如 <code class="docutils literal notranslate"><span class="pre">PWM_CH0_INDEX</span></code> 对应 PWM 通道0 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">pwm_index_type</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">pwm_index_type</span>

View file

@ -348,13 +348,12 @@ SDI数据输入、SDO数据输出、SCLK时钟、CS片选
<div class="section" id="spi-register"> <div class="section" id="spi-register">
<h3><span class="section-number">3.8.4.1. </span><strong>spi_register</strong><a class="headerlink" href="#spi-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.8.4.1. </span><strong>spi_register</strong><a class="headerlink" href="#spi-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">spi_register</span></code> 用来注册 SPI 设备标准驱动接口,在注册之前需要打开对应 SPI 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_SPI0</span></code> 方可使用 SPI0 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 SPI 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">spi_register</span></code> 用来注册 SPI 设备标准驱动接口,在注册之前需要打开对应 SPI 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_SPI0</span></code> 方可使用 SPI0 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 SPI 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">spi_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">spi_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">spi_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">spi_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 SPI 设备配置,一个 index 对应一个 SPI 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">SPI0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">SPI0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 SPI 设备配置,一个 index 对应一个 SPI 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">SPI0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">SPI0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">spi_index_type</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">spi_index_type</span>

View file

@ -335,13 +335,12 @@
<div class="section" id="timer-register"> <div class="section" id="timer-register">
<h3><span class="section-number">3.11.4.1. </span><strong>timer_register</strong><a class="headerlink" href="#timer-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.11.4.1. </span><strong>timer_register</strong><a class="headerlink" href="#timer-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">timer_register</span></code> 用来注册 TIMER 设备标准驱动接口,在注册之前需要打开对应 TIMER 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_TIMER_CH0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_INDEX</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_INDEX</span></code> 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">timer_register</span></code> 用来注册 TIMER 设备标准驱动接口,在注册之前需要打开对应 TIMER 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_TIMER_CH0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_INDEX</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_INDEX</span></code> 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">timer_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">timer_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">timer_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">timer_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 TIMER 设备配置,一个 index 对应一个 TIMER 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 TIMER 设备配置,一个 index 对应一个 TIMER 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">TIMER_CH0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">timer_index_type</span> <span class="p">{</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">timer_index_type</span> <span class="p">{</span>

View file

@ -339,13 +339,12 @@
<div class="section" id="uart-register"> <div class="section" id="uart-register">
<h3><span class="section-number">3.3.4.1. </span><strong>uart_register</strong><a class="headerlink" href="#uart-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.3.4.1. </span><strong>uart_register</strong><a class="headerlink" href="#uart-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">uart_register</span></code> 用来注册 UART 设备标准驱动接口,在注册之前需要打开对应 UART 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_UART0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">UART0</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">UART0</span></code> 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">uart_register</span></code> 用来注册 UART 设备标准驱动接口,在注册之前需要打开对应 UART 设备的宏定义。例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_UART0</span></code> 方可使用 <code class="docutils literal notranslate"><span class="pre">UART0</span></code> 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 <code class="docutils literal notranslate"><span class="pre">UART0</span></code> 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">uart_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">uart_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">uart_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">uart_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
</ul> </ul>
<p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 UART 设备配置,一个 index 对应一个 UART 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">UART0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">UART0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p> <p><code class="docutils literal notranslate"><span class="pre">index</span></code> 用来选择 UART 设备配置,一个 index 对应一个 UART 设备配置,比如 <code class="docutils literal notranslate"><span class="pre">UART0_INDEX</span></code> 对应 <code class="docutils literal notranslate"><span class="pre">UART0_CONFIG</span></code> 配置,<code class="docutils literal notranslate"><span class="pre">index</span></code> 有如下可选类型</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">uart_index_type</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">uart_index_type</span>

View file

@ -307,13 +307,12 @@
<div class="section" id="usb-dc-register"> <div class="section" id="usb-dc-register">
<h3><span class="section-number">3.12.3.1. </span><strong>usb_dc_register</strong><a class="headerlink" href="#usb-dc-register" title="永久链接至标题"></a></h3> <h3><span class="section-number">3.12.3.1. </span><strong>usb_dc_register</strong><a class="headerlink" href="#usb-dc-register" title="永久链接至标题"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">usb_dc_register</span></code> 用来注册 USB 设备标准驱动接口,在注册之前需要打开对应 USB 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_USB</span></code> 方可使用 USB 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 USB 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">usb_dc_register</span></code> 用来注册 USB 设备标准驱动接口,在注册之前需要打开对应 USB 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_USB</span></code> 方可使用 USB 设备。注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 USB 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">usb_dc_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">usb_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="kt">uint16_t</span> <span class="n">flag</span><span class="p">);</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">usb_dc_register</span><span class="p">(</span><span class="k">enum</span> <span class="n">usb_index_type</span> <span class="n">index</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">name</span><span class="p">);</span>
</pre></div> </pre></div>
</div> </div>
<ul class="simple"> <ul class="simple">
<li><p>index 要注册的设备索引</p></li> <li><p>index 要注册的设备索引</p></li>
<li><p>name 为注册的设备命名</p></li> <li><p>name 为注册的设备命名</p></li>
<li><p>flag 默认可读可写属性</p></li>
<li><p>return 错误码0表示成功其他表示失败</p></li> <li><p>return 错误码0表示成功其他表示失败</p></li>
</ul> </ul>
</div> </div>

View file

@ -260,7 +260,7 @@
<p><code class="docutils literal notranslate"><span class="pre">usb_dc_init</span></code> 用来注册 USB 设备和初始化 USB 硬件相关寄存器,注册 usb 中断回调函数。在注册之前需要打开对应 USB 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_USB</span></code> 方可使用 USB 设备。</p> <p><code class="docutils literal notranslate"><span class="pre">usb_dc_init</span></code> 用来注册 USB 设备和初始化 USB 硬件相关寄存器,注册 usb 中断回调函数。在注册之前需要打开对应 USB 设备的宏定义,例如定义宏 <code class="docutils literal notranslate"><span class="pre">BSP_USING_USB</span></code> 方可使用 USB 设备。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">usb_dc_init</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span> <div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">usb_dc_init</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span>
<span class="p">{</span> <span class="p">{</span>
<span class="n">usb_dc_register</span><span class="p">(</span><span class="n">USB_INDEX</span><span class="p">,</span> <span class="s">&quot;usb&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="n">usb_dc_register</span><span class="p">(</span><span class="n">USB_INDEX</span><span class="p">,</span> <span class="s">&quot;usb&quot;</span><span class="p">);</span>
<span class="n">usb</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;usb&quot;</span><span class="p">);</span> <span class="n">usb</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;usb&quot;</span><span class="p">);</span>
<span class="n">device_set_callback</span><span class="p">(</span><span class="n">usb</span><span class="p">,</span> <span class="n">usb_dc_event_callback</span><span class="p">);</span> <span class="n">device_set_callback</span><span class="p">(</span><span class="n">usb</span><span class="p">,</span> <span class="n">usb_dc_event_callback</span><span class="p">);</span>
<span class="n">device_open</span><span class="p">(</span><span class="n">usb</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span> <span class="n">device_open</span><span class="p">(</span><span class="n">usb</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>

View file

@ -296,7 +296,7 @@
<span class="normal">6</span> <span class="normal">6</span>
<span class="normal">7</span> <span class="normal">7</span>
<span class="normal">8</span> <span class="normal">8</span>
<span class="normal">9</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span> <span class="n">uart_register</span><span class="p">(</span><span class="n">board_get_debug_uart_index</span><span class="p">(),</span> <span class="s">&quot;debug_log&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="normal">9</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span> <span class="n">uart_register</span><span class="p">(</span><span class="n">board_get_debug_uart_index</span><span class="p">(),</span> <span class="s">&quot;debug_log&quot;</span><span class="p">);</span>
<span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">uart</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;debug_log&quot;</span><span class="p">);</span> <span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">uart</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;debug_log&quot;</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">uart</span><span class="p">)</span> <span class="k">if</span> <span class="p">(</span><span class="n">uart</span><span class="p">)</span>

View file

@ -264,7 +264,7 @@
<span class="normal"> 7</span> <span class="normal"> 7</span>
<span class="normal"> 8</span> <span class="normal"> 8</span>
<span class="normal"> 9</span> <span class="normal"> 9</span>
<span class="normal">10</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">dma_register</span><span class="p">(</span><span class="n">DMA0_CH0_INDEX</span><span class="p">,</span> <span class="s">&quot;DMA&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="normal">10</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">dma_register</span><span class="p">(</span><span class="n">DMA0_CH0_INDEX</span><span class="p">,</span> <span class="s">&quot;DMA&quot;</span><span class="p">);</span>
<span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">dma</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;DMA&quot;</span><span class="p">);</span> <span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">dma</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;DMA&quot;</span><span class="p">);</span>

View file

@ -236,7 +236,7 @@
</pre></div> </pre></div>
</td></tr></table></div> </td></tr></table></div>
<ul class="simple"> <ul class="simple">
<li><p>配置 <code class="docutils literal notranslate"><span class="pre">I2C</span></code> 设备复用引脚,见 <code class="docutils literal notranslate"><span class="pre">bsp/board/bl706_iot/peripheral_config.h</span></code></p></li> <li><p>配置 <code class="docutils literal notranslate"><span class="pre">I2C</span></code> 设备复用引脚,见 <code class="docutils literal notranslate"><span class="pre">bsp/board/bl706_iot/pinmux_config.h</span></code></p></li>
</ul> </ul>
<div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span> <div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span> <span class="normal"> 2</span>
@ -273,7 +273,7 @@
<span class="normal">5</span> <span class="normal">5</span>
<span class="normal">6</span> <span class="normal">6</span>
<span class="normal">7</span> <span class="normal">7</span>
<span class="normal">8</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">i2c_register</span><span class="p">(</span><span class="n">I2C0_INDEX</span><span class="p">,</span> <span class="s">&quot;i2c&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="normal">8</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">i2c_register</span><span class="p">(</span><span class="n">I2C0_INDEX</span><span class="p">,</span> <span class="s">&quot;i2c&quot;</span><span class="p">);</span>
<span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">i2c0</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;i2c&quot;</span><span class="p">);</span> <span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">i2c0</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;i2c&quot;</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">i2c0</span><span class="p">)</span> <span class="k">if</span> <span class="p">(</span><span class="n">i2c0</span><span class="p">)</span>

View file

@ -282,7 +282,7 @@
<span class="normal"> 8</span> <span class="normal"> 8</span>
<span class="normal"> 9</span> <span class="normal"> 9</span>
<span class="normal">10</span> <span class="normal">10</span>
<span class="normal">11</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH2_INDEX</span><span class="p">,</span> <span class="s">&quot;led_breath&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="normal">11</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH2_INDEX</span><span class="p">,</span> <span class="s">&quot;led_breath&quot;</span><span class="p">);</span>
<span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">led_breath</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;led_breath&quot;</span><span class="p">);</span> <span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">led_breath</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;led_breath&quot;</span><span class="p">);</span>

View file

@ -445,10 +445,10 @@
<span class="normal">36</span> <span class="normal">36</span>
<span class="normal">37</span> <span class="normal">37</span>
<span class="normal">38</span> <span class="normal">38</span>
<span class="normal">39</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH0_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch0&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="normal">39</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH0_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch0&quot;</span><span class="p">);</span>
<span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH1_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch1&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH1_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch1&quot;</span><span class="p">);</span>
<span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH2_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch2&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH2_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch2&quot;</span><span class="p">);</span>
<span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH3_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch3&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="n">pwm_register</span><span class="p">(</span><span class="n">PWM_CH3_INDEX</span><span class="p">,</span> <span class="s">&quot;motor_ch3&quot;</span><span class="p">);</span>
<span class="n">motor_ch0</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;motor_ch0&quot;</span><span class="p">);</span> <span class="n">motor_ch0</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;motor_ch0&quot;</span><span class="p">);</span>
<span class="n">motor_ch1</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;motor_ch1&quot;</span><span class="p">);</span> <span class="n">motor_ch1</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;motor_ch1&quot;</span><span class="p">);</span>

View file

@ -314,7 +314,7 @@
<span class="n">device_close</span><span class="p">(</span><span class="n">spi0</span><span class="p">);</span> <span class="n">device_close</span><span class="p">(</span><span class="n">spi0</span><span class="p">);</span>
<span class="p">}</span> <span class="p">}</span>
<span class="k">else</span><span class="p">{</span> <span class="k">else</span><span class="p">{</span>
<span class="n">spi_register</span><span class="p">(</span><span class="n">SPI0_INDEX</span><span class="p">,</span><span class="s">&quot;spi0&quot;</span><span class="p">,</span><span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="n">spi_register</span><span class="p">(</span><span class="n">SPI0_INDEX</span><span class="p">,</span><span class="s">&quot;spi0&quot;</span><span class="p">);</span>
<span class="n">spi0</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;spi0&quot;</span><span class="p">);</span> <span class="n">spi0</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;spi0&quot;</span><span class="p">);</span>
<span class="p">}</span> <span class="p">}</span>
<span class="k">if</span><span class="p">(</span><span class="n">spi0</span><span class="p">)</span> <span class="k">if</span><span class="p">(</span><span class="n">spi0</span><span class="p">)</span>

View file

@ -287,7 +287,7 @@
<span class="normal">6</span> <span class="normal">6</span>
<span class="normal">7</span> <span class="normal">7</span>
<span class="normal">8</span> <span class="normal">8</span>
<span class="normal">9</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span> <span class="n">uart_register</span><span class="p">(</span><span class="n">board_get_debug_uart_index</span><span class="p">(),</span> <span class="s">&quot;debug_log&quot;</span><span class="p">,</span> <span class="n">DEVICE_OFLAG_RDWR</span><span class="p">);</span> <span class="normal">9</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span> <span class="n">uart_register</span><span class="p">(</span><span class="n">board_get_debug_uart_index</span><span class="p">(),</span> <span class="s">&quot;debug_log&quot;</span><span class="p">);</span>
<span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">uart</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;debug_log&quot;</span><span class="p">);</span> <span class="k">struct</span> <span class="nc">device</span> <span class="o">*</span><span class="n">uart</span> <span class="o">=</span> <span class="n">device_find</span><span class="p">(</span><span class="s">&quot;debug_log&quot;</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">uart</span><span class="p">)</span> <span class="k">if</span> <span class="p">(</span><span class="n">uart</span><span class="p">)</span>

File diff suppressed because one or more lines are too long

View file

@ -107,26 +107,16 @@ API 概述
**device_register** **device_register**
^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
``device_register`` 用于设备的注册,将设备信息注册到链表当中。 ``device_register`` 用于设备标准驱动的注册,将设备信息注册到链表当中。
.. code-block:: C .. code-block:: C
int device_register(struct device *dev, const char *name, uint16_t flag); int device_register(struct device *dev, const char *name);
- dev 设备句柄。 - dev 设备句柄。
- name 设备名称。 - name 设备名称。
- flag 设备的读写属性
- return 返回错误码0 表示注册成功,其他表示错误。 - return 返回错误码0 表示注册成功,其他表示错误。
``flag`` 可以写入以下参数,表示:**只读****只写****可读可写**
.. code-block:: C
#define DEVICE_OFLAG_RDONLY 0x1000 /* 以只读方式打开设备 */
#define DEVICE_OFLAG_WRONLY 0x2000 /* 以只写方式打开设备 */
#define DEVICE_OFLAG_RDWR 0x3000 /* 以读写方式打开设备 */
**device_unregister** **device_unregister**
^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^

View file

@ -79,17 +79,16 @@ ADC 设备接口
ADC 设备接口全部遵循标准设备驱动管理层提供的接口。 ADC 设备接口全部遵循标准设备驱动管理层提供的接口。
**ADC_register** **adc_register**
^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^
``adc_register`` 用来注册 ADC 设备标准驱动接口,在注册之前需要打开对应 ADC 设备的宏定义。例如定义宏 ``BSP_USING_ADC0`` 方可使用 ``ADC0`` 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 ``ADC0`` 设备。 ``adc_register`` 用来注册 ADC 设备标准驱动接口,在注册之前需要打开对应 ADC 设备的宏定义。例如定义宏 ``BSP_USING_ADC0`` 方可使用 ``ADC0`` 设备,注册完成以后才可以使用其他接口,如果没有定义宏,则无法使用 ``ADC0`` 设备。
.. code-block:: C .. code-block:: C
int ADC_register(enum ADC_index_type index, const char *name, uint16_t flag); int adc_register(enum ADC_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名
- flag 默认可读可写属性 - flag 默认可读可写属性
``index`` 用来选择 ADC 设备配置,一个 index 对应一个 ADC 设备配置,比如 ``ADC0_INDEX`` 对应 ``ADC0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 ADC 设备配置,一个 index 对应一个 ADC 设备配置,比如 ``ADC0_INDEX`` 对应 ``ADC0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -217,11 +217,10 @@ DMA 设备接口全部遵循标准设备驱动管理层提供的接口。并且
.. code-block:: C .. code-block:: C
int dma_register(enum dma_index_type index, const char *name, uint16_t flag); int dma_register(enum dma_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 DMA 设备某个通道的配置,一个 index 对应一个 DMA 设备的一个通道配置,比如 ``DMA_CH0_INDEX`` 对应 DMA 通道0 配置,``index`` 有如下可选类型 ``index`` 用来选择 DMA 设备某个通道的配置,一个 index 对应一个 DMA 设备的一个通道配置,比如 ``DMA_CH0_INDEX`` 对应 DMA 通道0 配置,``index`` 有如下可选类型

View file

@ -75,11 +75,10 @@ I2C 设备标准接口当前仅使用 ``device_open`` , 并提供标准的数据
.. code-block:: C .. code-block:: C
int i2c_register(enum i2c_index_type index, const char *name, uint16_t flag); int i2c_register(enum i2c_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 I2C 设备,一个 index 对应一个 I2C 设备配置,比如 ``I2C0_INDEX`` 对应 ``I2C0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 I2C 设备,一个 index 对应一个 I2C 设备配置,比如 ``I2C0_INDEX`` 对应 ``I2C0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -144,11 +144,10 @@ I2S 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int i2s_register(enum i2s_index_type index, const char *name, uint16_t flag); int i2s_register(enum i2s_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 I2S 设备配置,一个 index 对应一个 I2S 设备配置,比如 ``I2S0_INDEX`` 对应 ``I2S0_CONFIG`` 配置。index 有如下可选类型 ``index`` 用来选择 I2S 设备配置,一个 index 对应一个 I2S 设备配置,比如 ``I2S0_INDEX`` 对应 ``I2S0_CONFIG`` 配置。index 有如下可选类型

View file

@ -94,11 +94,10 @@ PWM 设备接口全部遵循标准设备驱动管理层提供的接口。并且
.. code-block:: C .. code-block:: C
int pwm_register(enum pwm_index_type index, const char *name, uint16_t flag); int pwm_register(enum pwm_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 PWM 设备某个通道的配置,一个 index 对应一个 PWM 设备的一个通道配置,比如 ``PWM_CH0_INDEX`` 对应 PWM 通道0 配置,``index`` 有如下可选类型 ``index`` 用来选择 PWM 设备某个通道的配置,一个 index 对应一个 PWM 设备的一个通道配置,比如 ``PWM_CH0_INDEX`` 对应 PWM 通道0 配置,``index`` 有如下可选类型

View file

@ -137,11 +137,10 @@ SPI 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int spi_register(enum spi_index_type index, const char *name, uint16_t flag); int spi_register(enum spi_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 SPI 设备配置,一个 index 对应一个 SPI 设备配置,比如 ``SPI0_INDEX`` 对应 ``SPI0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 SPI 设备配置,一个 index 对应一个 SPI 设备配置,比如 ``SPI0_INDEX`` 对应 ``SPI0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -124,11 +124,10 @@ TIMER 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int timer_register(enum timer_index_type index, const char *name, uint16_t flag); int timer_register(enum timer_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 TIMER 设备配置,一个 index 对应一个 TIMER 设备配置,比如 ``TIMER_CH0_INDEX`` 对应 ``TIMER_CH0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 TIMER 设备配置,一个 index 对应一个 TIMER 设备配置,比如 ``TIMER_CH0_INDEX`` 对应 ``TIMER_CH0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -125,11 +125,10 @@ UART 设备接口全部遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int uart_register(enum uart_index_type index, const char *name, uint16_t flag); int uart_register(enum uart_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
``index`` 用来选择 UART 设备配置,一个 index 对应一个 UART 设备配置,比如 ``UART0_INDEX`` 对应 ``UART0_CONFIG`` 配置,``index`` 有如下可选类型 ``index`` 用来选择 UART 设备配置,一个 index 对应一个 UART 设备配置,比如 ``UART0_INDEX`` 对应 ``UART0_CONFIG`` 配置,``index`` 有如下可选类型

View file

@ -81,11 +81,10 @@ USB 设备接口遵循标准设备驱动管理层提供的接口。
.. code-block:: C .. code-block:: C
int usb_dc_register(enum usb_index_type index, const char *name, uint16_t flag); int usb_dc_register(enum usb_index_type index, const char *name);
- index 要注册的设备索引 - index 要注册的设备索引
- name 为注册的设备命名 - name 为注册的设备命名
- flag 默认可读可写属性
- return 错误码0表示成功其他表示失败 - return 错误码0表示成功其他表示失败
**device_open** **device_open**

View file

@ -42,7 +42,7 @@ USB DEVICE 控制器接口
struct device *usb_dc_init(void) struct device *usb_dc_init(void)
{ {
usb_dc_register(USB_INDEX, "usb", DEVICE_OFLAG_RDWR); usb_dc_register(USB_INDEX, "usb");
usb = device_find("usb"); usb = device_find("usb");
device_set_callback(usb, usb_dc_event_callback); device_set_callback(usb, usb_dc_event_callback);
device_open(usb, 0); device_open(usb, 0);

View file

@ -77,7 +77,7 @@ shell 移植到串口
.. code-block:: C .. code-block:: C
:linenos: :linenos:
uart_register(board_get_debug_uart_index(), "debug_log", DEVICE_OFLAG_RDWR); uart_register(board_get_debug_uart_index(), "debug_log");
struct device *uart = device_find("debug_log"); struct device *uart = device_find("debug_log");
if (uart) if (uart)

View file

@ -38,7 +38,7 @@ DMA - RAM间数据搬运
.. code-block:: C .. code-block:: C
:linenos: :linenos:
dma_register(DMA0_CH0_INDEX, "DMA", DEVICE_OFLAG_RDWR); dma_register(DMA0_CH0_INDEX, "DMA");
struct device *dma = device_find("DMA"); struct device *dma = device_find("DMA");

View file

@ -33,7 +33,7 @@ I2C - AT24CXX 读写
#define CONFIG_GPIO11_FUNC GPIO_FUN_I2C #define CONFIG_GPIO11_FUNC GPIO_FUN_I2C
#define CONFIG_GPIO16_FUNC GPIO_FUN_I2C #define CONFIG_GPIO16_FUNC GPIO_FUN_I2C
- 配置 ``I2C`` 设备复用引脚,见 ``bsp/board/bl706_iot/peripheral_config.h`` - 配置 ``I2C`` 设备复用引脚,见 ``bsp/board/bl706_iot/pinmux_config.h``
.. code-block:: C .. code-block:: C
:linenos: :linenos:
@ -56,7 +56,7 @@ I2C - AT24CXX 读写
.. code-block:: C .. code-block:: C
:linenos: :linenos:
i2c_register(I2C0_INDEX, "i2c", DEVICE_OFLAG_RDWR); i2c_register(I2C0_INDEX, "i2c");
struct device *i2c0 = device_find("i2c"); struct device *i2c0 = device_find("i2c");
if (i2c0) if (i2c0)

View file

@ -59,7 +59,7 @@ PWM - 呼吸灯
.. code-block:: C .. code-block:: C
:linenos: :linenos:
pwm_register(PWM_CH2_INDEX, "led_breath", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH2_INDEX, "led_breath");
struct device *led_breath = device_find("led_breath"); struct device *led_breath = device_find("led_breath");

View file

@ -151,10 +151,10 @@ PWM - 驱动步进电机
.. code-block:: C .. code-block:: C
:linenos: :linenos:
pwm_register(PWM_CH0_INDEX, "motor_ch0", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH0_INDEX, "motor_ch0");
pwm_register(PWM_CH1_INDEX, "motor_ch1", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH1_INDEX, "motor_ch1");
pwm_register(PWM_CH2_INDEX, "motor_ch2", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH2_INDEX, "motor_ch2");
pwm_register(PWM_CH3_INDEX, "motor_ch3", DEVICE_OFLAG_RDWR); pwm_register(PWM_CH3_INDEX, "motor_ch3");
motor_ch0 = device_find("motor_ch0"); motor_ch0 = device_find("motor_ch0");
motor_ch1 = device_find("motor_ch1"); motor_ch1 = device_find("motor_ch1");

View file

@ -80,7 +80,7 @@ SPI - TFT LCD 显示
device_close(spi0); device_close(spi0);
} }
else{ else{
spi_register(SPI0_INDEX,"spi0",DEVICE_OFLAG_RDWR); spi_register(SPI0_INDEX,"spi0");
spi0 = device_find("spi0"); spi0 = device_find("spi0");
} }
if(spi0) if(spi0)

View file

@ -67,7 +67,7 @@ UART - 数据自收发
.. code-block:: C .. code-block:: C
:linenos: :linenos:
uart_register(board_get_debug_uart_index(), "debug_log", DEVICE_OFLAG_RDWR); uart_register(board_get_debug_uart_index(), "debug_log");
struct device *uart = device_find("debug_log"); struct device *uart = device_find("debug_log");
if (uart) if (uart)