久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

c語言模塊化編程的方法

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2010年08月29日   【字體:

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

例如:
#ifndef_DELAY_H__
#define_DELAY_H__
.......
#endif
第三步: 代碼封裝(內部調用【.h封裝外部調用的部分】)
    封裝成函數(shù)或者宏定義以便提高可讀性和可修改文件,盡量少用或者不用全局變量
第四步:使用源文件
.c文件添加到文件中
模塊化編程實例:
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文件
#include<reg52.h>
#include"模塊化編程實例.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--);
 
 
 }
數(shù)碼管.h文件

#ifndef __DELAY_H__
#define __DELAY_H__
#define"模塊化編程實例.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

數(shù)碼管.c文件
#include"數(shù)碼管.h"
#include"模塊化編程實例.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;i<8;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"數(shù)碼管.h"
#include<reg52.h>
#include"模塊化編程實例.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);
 }
}
 

關閉窗口

相關文章

主站蜘蛛池模板: 男人天堂网址 | 日韩精品一区在线 | 国产日韩一区二区 | 成人黄色电影免费 | 成人免费片 | 人人亚洲 | 999久久久| 亚洲网站在线观看 | 成人性生交大片免费看r链接 | 亚洲手机在线 | 婷婷99| 欧美a级成人淫片免费看 | 日本一区二区电影 | 国产在线一区二区三区 | 日韩精品在线免费观看 | 在线看h| 久久一区二区三区四区五区 | 精品久久久久久久久久久 | 一级免费视频 | 国产激情视频在线 | 青青草在线视频免费观看 | 欧美日韩在线观看视频 | 精品av | 日韩电影在线 | 一区二区在线 | 视频一区二区三区在线观看 | 毛片在线免费播放 | 亚洲自拍偷拍视频 | 亚洲精品久久久 | 日韩欧美国产一区二区三区 | 国产99久久久国产精品 | 久久久久一区二区三区四区 | 91久久精品国产免费一区 | 高清国产一区二区 | 国产色黄 | 91精品久久久久久综合五月天 | 颜色网站在线观看 | 久久免费精品 | 国产在线二区 | 老司机深夜福利网站 | 超碰导航 |