mirror of
http://159.75.139.228:3000/terry/TBooks.git
synced 2025-01-06 06:43:40 +00:00
添加嵌入式编程规范文档
This commit is contained in:
parent
f3e659bb43
commit
cdc752eee6
@ -1,7 +1,62 @@
|
|||||||
# 嵌入式编程规范
|
# 嵌入式编程规范
|
||||||
|
|
||||||
## 一. 基本规范
|
## 一. 基本规范
|
||||||
1. 使用C99标准
|
### 1.空格的使用
|
||||||
2. 不适用Tab,只用空格;每个缩进使用四个空格,关键字和左括号之间使用一个空格
|
1. 不适用Tab,只用空格;每个缩进使用四个空格,
|
||||||
3.
|
2. 关键字和左括号之间使用一个空格,函数名和括号之间不要空格
|
||||||
4.
|
3. 操作符前后加空格,逗号后面加空格;比如:` a + b = 10; `
|
||||||
|
### 2.命名规则
|
||||||
|
1. 尽量只使用小写字母,第二个单词开始首字母大写,尽量不用数字和缩写
|
||||||
|
2. 全局变量使用p_前缀开头,全局函数用L_开头
|
||||||
|
|
||||||
|
### 3.编写风格
|
||||||
|
1. 花括号总与关键字在同一行,比如:
|
||||||
|
```c
|
||||||
|
int i;
|
||||||
|
for (i = 0; i < 5; ++i) {
|
||||||
|
nop();
|
||||||
|
}
|
||||||
|
```
|
||||||
|
2. 模块文件对外尽量只暴露全局函数,减少跨文件全局变量,必须要用的时候extern在头文件引出
|
||||||
|
|
||||||
|
3. 注释风格
|
||||||
|
* 文件头用块注释,例如
|
||||||
|
```c
|
||||||
|
/**********************************************************
|
||||||
|
* 文件名:main.c
|
||||||
|
* 功能:功能测试
|
||||||
|
* 器件型号:FT61F02X
|
||||||
|
* 振荡器:内部RC 16MHz/2T
|
||||||
|
* Memory: Flash 2KX14b, EEPROM 256X8b, SRAM 128X8b
|
||||||
|
* 引脚定义:
|
||||||
|
* ----------------
|
||||||
|
* VDD-----------|1(VDD) (GND)16|------------GND
|
||||||
|
* NC------------|2(RA7) (PA0)15|-------------nc
|
||||||
|
* NC------------|3(PA6) (PA1)14|-------------NC
|
||||||
|
* NC------------|4(PA5) (PA2)13|--------IIC_SDA
|
||||||
|
* NC------------|5(PC3) (PA3)12|-------------NC
|
||||||
|
* NC------------|6(PC2) (PC0)11|-------------NC
|
||||||
|
* IIC_SCL-------|7(PA4) (PC1)10|-------------NC
|
||||||
|
* NC------------|8(PC5) (PC4)09|-------------NC
|
||||||
|
* ----------------
|
||||||
|
* FT61F023 SOP16
|
||||||
|
*说明:
|
||||||
|
* 1.PA2--SCL /PA3--SDA /PC1--GPIO /PA4--XSHUT
|
||||||
|
* 2.PC4--TX / PC0--RX
|
||||||
|
* 3.PC2--Motor / PC3--BZ
|
||||||
|
* 4.PA6/PA7 -- LEDS
|
||||||
|
**********************************************************/
|
||||||
|
```
|
||||||
|
* 函数使用块注释,类似如下
|
||||||
|
```c
|
||||||
|
/************
|
||||||
|
* 函数名称
|
||||||
|
* 函数描述
|
||||||
|
* 参数及返回值说明
|
||||||
|
* 注意事项
|
||||||
|
************/
|
||||||
|
```
|
||||||
|
* 句子用行注释,如下
|
||||||
|
```c
|
||||||
|
//这是一个注释
|
||||||
|
```
|
||||||
|
Loading…
Reference in New Issue
Block a user