自己的一些理解:
(1) @defgroup是用於定義一些分組
(2) @addtogroup 用於把它所包含的分組添加到某個分組裏面去,可以嵌套添加
基於STM32的Doxygen使用簡明手冊
爲了能使代碼能夠被Doxygen識別,必須遵循Doxygen的書寫規則。註釋必須以/**打頭,以*/結束。
一、添加類型
1、 添加首頁(mainpage):
格式:
/**
\mainpage RIOM DSP Software Library
*
* <b>Introduction</b>
*
* This user manual describes the CMSIS DSP software library
*/
關鍵字:
\mainpage
描述:
用以顯示在首頁中,一般用於對整個工程進行描述。
2、 添加define分組(defgroup):
格式:
/** @defgroup ZHM2
* @{
*/
#define XXX YYY
/**
* @}
*/
關鍵字:
@defgroup name
@{
@}
描述:
定義一個define分組,用以顯示在生成的文件中,一般多出現在.h文件中。
3、 添加到分組(addtogroup)
格式:
/** @addtogroup STM32F2xx_StdPeriph_Driver
* @{
*/
XXXX
/**
* @}
*/
關鍵字:
@addtogroup name
@{
@}
描述:
把一些東西添加到某個分組中去,該分組可以定義在其他文件下,Doxygen會自動搜索該分組,然後將需要添加的添加到該分組。可以進行跨文件關聯。
通過addtogroup可以形成樹結構,如果原來不存在該分組,它會自動新建該分組,然後添加到該分組。
4、 文件註釋:
格式:
/**
******************************************************************************
* @file main.c
* @author ZhengHangming
* @version V1.0.0
* @date 04/16/2012
* @brief This file provides all the detail functions.
******************************************************************************
* @copy
*
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*
* <h2><center>© COPYRIGHT 2010 STMicroelectronics</center></h2>
*/
關鍵字:
@file:文件名,xx.c; zz.h等
@author:作者
@version:版本號
@date:日期
@brief:簡介
@copy/@attention:詳細描述
描述:
用以說明整個文件的各種信息。
5、 函數註釋:
格式:
/**
* @brief Enables or disables the specified DAC channel.
* @param DAC_Channel: The selected DAC channel.
* This parameter can be one of the following values:
* @arg DAC_Channel_1: DAC Channel1 selected
* @arg DAC_Channel_2: DAC Channel2 selected
* @param NewState: new state of the DAC channel.
* This parameter can be: ENABLE or DISABLE.
* @note When the DAC channel is enabled the trigger source can no more be modified.
* @retval None
*/
關鍵字:
@brief:對函數簡要描述
@param:參數說明,以’:’作爲參數結束標誌;
@arg:參數裏面可選擇參量列舉,對於可數情況可進行參量列舉,同樣以’:’作爲參數結束標誌;
@note:註釋,配合brief一起使用可以達到很好的註釋效果;
@retval:返回值說明。
描述:
對函數體進行說明,包括功能,參數和返回值。
二、字體段落操作
編號 |
功能 |
格式 |
描述 |
1 |
<b>****</b> |
以<b>開頭,以</b>結束。 |
用以將段落或者字體加粗 |
2 |
<h2>***</h2> |
以<h2>開頭,以</h2>結束 |
段落加粗加大 |
3 |
<center>***</center> |
以<center >開頭,以</center >結束 |
段落居中 |
4 |
@verbatim***@endverbatim |
以@verbatim開頭,以@endverbatim結束 |
用於建立一個框,來說明整個文件或者函數的功能。 |
|
|
|
|
|
|
|
|
三、特殊符號添加:
編號 |
代碼 |
效果 |
說明 |
1 |
© |
© |
版權標誌 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
四、.c和.h的常用規範:
1、 .c文件開頭定義一些常用規範如下所示。
/* Includes ------------------------------------------------------------------*/
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/
最後加一個copyright。
2、 .h文件開頭的一些常用規範如下所示:
/* Define to prevent recursive inclusion -------------------------------------*/
/* Includes ------------------------------------------------------------------*/
/* Exported types ------------------------------------------------------------*/
/* Exported constants --------------------------------------------------------*/
/* Exported macro ------------------------------------------------------------*/
/* Exported functions --------------------------------------------------------*/
最後加一個copyright。