extern int ddr_cfg_wr(unsigned int ddr, unsigned int addr, unsigned int val); extern unsigned int ddr_cfg_rd(unsigned int ddr, unsigned int addr);
时间: 2023-11-27 22:44:13 浏览: 164
这是两个函数的声明。第一个函数是ddr_cfg_wr,它接受三个无符号整数参数:ddr,addr和val,并返回一个整数。第二个函数是ddr_cfg_rd,它接受两个无符号整数参数:ddr和addr,并返回一个无符号整数。这些函数可能是用于配置和读取DDR(双数据率)存储器的相关设置。具体的实现代码可能在其他地方定义。
相关问题
解释下面这段代码#ifndef _CFG_SET_H_ #define _CFG_SET_H_ extern int cfg_Set_Volume(int Volume);/*������С*/ extern int cfg_Set_Brilliance_control(int Brilliance_control);/*��������*/ extern int cfg_Set_Daily(char Daily);/*���Գ�ν*/ extern int cfg_Set_Web(int Web);/*��������*/ extern int cfg_Set_Timing(int Timing);/*������ʽ*/ extern int cfg_Set_default(); #endif /*_CFG_SET_H_*/
这段代码是一个头文件,以宏定义的方式防止多次包含。它声明了一些函数的外部接口,这些函数分别用于设置不同的配置项,如音量、亮度、每日任务、网络设置和定时设置。其中,cfg_Set_default() 函数是用于将所有配置项恢复为默认值的函数。这些函数的具体实现应该定义在其他的源代码文件中,而这个头文件只是提供了这些函数的声明,以便其他的源代码文件可以使用它们。
extern unsigned int crc,length;
在这个代码片段中,`extern` 关键字用于声明变量而不在当前作用域中定义。`unsigned int` 表示这是一个无符号整型变量,`crc` 和 `length` 分别是两个独立的变量。这意味着这两个变量在当前函数或者文件之外的地方已经被声明,并且它们的值可以在其他地方通过引用的方式获取或修改。
当你在一个函数内部看到 `extern` 声明的变量时,说明这些变量实际上是全局变量或在别的函数中定义的。当需要在当前文件中访问这些变量的时候,就需要先在合适的位置提供外部变量的定义(通常是在同名文件的顶部或者其他相关文件里)。
比如,在另一个包含 `crc` 和 `length` 定义的 .h 文件中可能会有这样的内容:
```c
extern unsigned int crc;
extern unsigned int length;
```
然后在需要使用这些变量的.c文件中引入这个.h文件:
```c
#include "my_header.h"
// 在这里可以使用已声明的crc和length
unsigned int my_function() {
//...
crc = compute_crc(data, length); // 使用extern声明的变量
}
```
阅读全文