位置:51电子网 » 电子资讯 » 行业动态

单片机知识结构特点

发布时间:2019/3/12 10:41:33 访问次数:49434


ats-21f-176-c2-r

pushpin™散热器组件

散热性能

air velocity  -  lfm(m / s)100

(0.5)

200

(1.0)

300

(1.5)

400

(2.0)

500

(2.5)

600

(3.0)

700

(3.5)

热阻

°c / w



51电子网公益库存:
MT46H32M32LFCM-75IT
MT46H64M16LFBF-5IT:B
MT52L512M32D2PF-107WT:B
MT6167A/B
MT48H16M32LFB5-6IT:C
N25Q256A13EF840E
NAND04GW3B2BN6
NT5CB128M16IP-EK
NT5CB256M16CP-DI
NT5CB256M16CP-EK
OZ9982GN
W9425G6KH-5
XC6SLX100T-2FGG484C
XC6SLX100T-2FGG484I
XC6SLX100T-3FGG484C
XC6SLX100T-3FGG484I
YMU810-CZE2
XC7VX485T-2FFG1930C
W25Q256FVFIG
STGB7NC60HDT4
USB3300-EZK
THGBMFG6C1LBAIL


1)h文件作用

1 方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明;

http://xiangxing.51dzw.com


2 提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h)。

2)h文件里应该有什么

常量,结构,类型定义,函数,变量申明。3)h文件不应该有什么

变量定义, 函数定义。

4)extern问题

对于变量需要extern;

对于函数不需要因为函数的缺省状态是extern的.如果一个函数要改变为只在文件内可见,加static。

5)include包含问题

虽然申明和类型定义可以重复,不过推荐使用条件编译。

http://xiangxing.51dzw.com

#ifndef _filename_h,

#define _filename_h

……

#endif

6)应该在那儿包含h文件

在需要的地方.比如某个提供接口的h文件仅仅被1.c文件需要,那么就在1.c文件里包含。

编写的程序一般会有.h文件和相对应的.c文件,.h文件是声明所用,.c文件是其函数实现部分。在调用时只要包含.h文件即可,我们没有听说过#include "delay.c"这类的程序,同ats-21f时也不提倡使用这个形式。

在delay.h文件中: //对调用的函数声明

#ifndef __delay_h__

#define __delay_h__

extern void delayms(unsigned int n);

#endif

在delay.c文件中: //函数实现部分

#include

//for crystal 11.0592m

void delayms(unsigned int n)http://xiangxing.51dzw.com

{

unsigned int i,j;

for(j=n;j>0;j--)

for(i=112;i>0;i--);

}

在主程序main.c中

#include //在主程序包含.h文件,不能包含.c文

……

上述方法仍然要求每建立一个工程就需要把对应的头文件复制到工程的文件夹里,这样看来仍然是比较麻烦的,这时还有另外一中方法就是将做好的头文件放在一个文件夹中,然后将这个文件夹整体拷贝到..keilc51inc下面,以后若需要使用某个头文件,就如使用keil自带的头文件一样方便了,在主函数mani()之前有一句#include 就可以在main()中使用其中的函数了。(原创 小魁说事)


ats-21f-176-c2-r

pushpin™散热器组件

散热性能

air velocity  -  lfm(m / s)100

(0.5)

200

(1.0)

300

(1.5)

400

(2.0)

500

(2.5)

600

(3.0)

700

(3.5)

热阻

°c / w



51电子网公益库存:
MT46H32M32LFCM-75IT
MT46H64M16LFBF-5IT:B
MT52L512M32D2PF-107WT:B
MT6167A/B
MT48H16M32LFB5-6IT:C
N25Q256A13EF840E
NAND04GW3B2BN6
NT5CB128M16IP-EK
NT5CB256M16CP-DI
NT5CB256M16CP-EK
OZ9982GN
W9425G6KH-5
XC6SLX100T-2FGG484C
XC6SLX100T-2FGG484I
XC6SLX100T-3FGG484C
XC6SLX100T-3FGG484I
YMU810-CZE2
XC7VX485T-2FFG1930C
W25Q256FVFIG
STGB7NC60HDT4
USB3300-EZK
THGBMFG6C1LBAIL


1)h文件作用

1 方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明;

http://xiangxing.51dzw.com


2 提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h)。

2)h文件里应该有什么

常量,结构,类型定义,函数,变量申明。3)h文件不应该有什么

变量定义, 函数定义。

4)extern问题

对于变量需要extern;

对于函数不需要因为函数的缺省状态是extern的.如果一个函数要改变为只在文件内可见,加static。

5)include包含问题

虽然申明和类型定义可以重复,不过推荐使用条件编译。

http://xiangxing.51dzw.com

#ifndef _filename_h,

#define _filename_h

……

#endif

6)应该在那儿包含h文件

在需要的地方.比如某个提供接口的h文件仅仅被1.c文件需要,那么就在1.c文件里包含。

编写的程序一般会有.h文件和相对应的.c文件,.h文件是声明所用,.c文件是其函数实现部分。在调用时只要包含.h文件即可,我们没有听说过#include "delay.c"这类的程序,同ats-21f时也不提倡使用这个形式。

在delay.h文件中: //对调用的函数声明

#ifndef __delay_h__

#define __delay_h__

extern void delayms(unsigned int n);

#endif

在delay.c文件中: //函数实现部分

#include

//for crystal 11.0592m

void delayms(unsigned int n)http://xiangxing.51dzw.com

{

unsigned int i,j;

for(j=n;j>0;j--)

for(i=112;i>0;i--);

}

在主程序main.c中

#include //在主程序包含.h文件,不能包含.c文

……

上述方法仍然要求每建立一个工程就需要把对应的头文件复制到工程的文件夹里,这样看来仍然是比较麻烦的,这时还有另外一中方法就是将做好的头文件放在一个文件夹中,然后将这个文件夹整体拷贝到..keilc51inc下面,以后若需要使用某个头文件,就如使用keil自带的头文件一样方便了,在主函数mani()之前有一句#include 就可以在main()中使用其中的函数了。(原创 小魁说事)

热门点击

推荐电子资讯

Chrome 31:iOS版发布
iOS版Chrome 31主要更新:   “Au... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式