<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > c語(yǔ)言模塊化編程的方法

c語(yǔ)言模塊化編程的方法

作者: 時(shí)間:2012-09-15 來(lái)源:網(wǎng)絡(luò ) 收藏

模塊化設計原則:
第一步:創(chuàng )建頭文件(源文件與頭文件同名如delay.c與delay.h)
第二步:防止重復包含處理
在.h文件里加入
#ifndefXXXX
#defineXXXX
.......
#endif

例如:
#ifndef_DELAY_H__
#define_DELAY_H__
.......
#endif
第三步: 代碼封裝(內部調用【.h封裝外部調用的部分】)
封裝成函數或者宏定義以便提高可讀性和可修改文件,盡量少用或者不用全局變量
第四步:使用源文件
.c文件添加到文件中
實(shí)例:
delay.h文件

#ifndef __DELAY_H__
#define __DELAY_H__
#define uchar unsingned char
#define uint unsigned int
void delay50us(uint t);
void delay50ms(uint t);
#endif

delay.c文件
#includereg52.h>
#include"實(shí)例.h"
void delayus(uint t)//延時(shí)函數
{ uint j;
for(;t>0;t--)
for(j=6245;j>0;j--);


}
void delayms(uint t)//延時(shí)函數
{ uint j;
for(;t>0;t--)
for(j=6245;j>0;j--);


}
數碼管.h文件

#ifndef __DELAY_H__
#define __DELAY_H__
#define"實(shí)例.h"
#define uint unsigned int
void dispaytable(uchar *p);
void dispayt(uchar num0,uchar num1,uchar num2,uchar num3,uchar num4,uchar num5,uchar num6,uchar num7,);
#endif

數碼管.c文件
#include"數碼管.h"
#include"模塊化編程實(shí)例.h"
unsigned char code smg_du[]={0xfe,0xfd,0xfb,0xf7,0xef,0xbf,0x7f};
unsigned char code smg_we[]={0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00};
void display_table(uchar *p)
{
uchar i;
foe(i=0;i8;i++)
{
P1=smg_du[*p];
P2=smg_we[i];
delay_50us(20);
}
}
void display(uchar num0,uchar num1,uchar num2,uchar num3,uchar num4,uchar num5,uchar num6,uchar num7,)
{
P1=smg_du[mun0];
P2=smg_we[0];
delay_50us(20);

P1=smg_du[mun1];
P2=smg_we[1];
delay_50us(20);

P1=smg_du[mun2];
P2=smg_we[2];
delay_50us(20);

P1=smg_du[mun3];
P2=smg_we[3];
delay_50us(20);

P1=smg_du[mun4];
P2=smg_we[4];
delay_50us(20);

P1=smg_du[mun5];
P2=smg_we[5];
delay_50us(20);

P1=smg_du[mun6];
P2=smg_we[6];
delay_50us(20);

P1=smg_du[mun7];
P2=smg_we[7];
delay_50us(20);

}


mian.c文件
#include"數碼管.h"
#includereg52.h>
#include"模塊化編程實(shí)例.h"
sbit rst=P3^6;
unsigned char table[]={2,3,4,5,6,7,8,9};
void main()
{
rst=0;
while(1)
{ display_tale(table);
}
}

pid控制相關(guān)文章:pid控制原理


c語(yǔ)言相關(guān)文章:c語(yǔ)言教程




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>