针对上一篇文章的主程序,如果想把和数码管有关的单独放在一个文件里应该怎么做呢?
要写一个.c文件和一个.h文件,名字要一样,只是后缀不一样
.c文件
把主程序里关于数码管的相关代码剪贴到.c里
#include "absacc.h"
void delaySMG(unsigned int t)
{
while(t--);
}
void displaySMGbit(unsigned char pos,unsigned char dat) //第pos个数码管显示数字dat
{
XBYTE[0xe000]=0xff;
XBYTE[0xc000]=0x01<<pos;
XBYTE[0xe000]=dat;
}
void displayall(unsigned char dat)
{
XBYTE[0xe000]=0xff;
XBYTE[0xe000]=dat;
}
.h文件
#ifndef SMG #define SMG
//.c文件里的函数拿过来
#endif? //固定的模式
#ifndef SMG
#define SMG
//设置成常量,不会占用ROM区
code unsigned char SMGNoDot_CA[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x90,0x90}; //无小数点
code unsigned char SMGDot_CA[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}; //显示小数点
void delaySMG(unsigned int t);
void displaySMGbit(unsigned char pos,unsigned char dat);
void displayall(unsigned char dat);
#endif
最后要记得把.c文件添加到项目里面,不然会找不到无法识别
|