新聞中心

max7219的顯示程序

作者: 時(shí)間:2016-11-18 來(lái)源:網(wǎng)絡(luò) 收藏
#include

#include
#define uchar unsigned char
sbit DIN=P2^0;
sbit CLK=P2^1;
sbit LOAD=P2^2;
uchar a,b,c,d,e,f,g,h;
////////*******************************************///////////////
void send(uchar add,uchar dat); //發(fā)送16字節(jié)子函數(shù)
void intcom();
void delay(void);
void time(void);
///********************************/////////////////

本文引用地址:http://butianyuan.cn/article/201611/315785.htm

void send(uchar add,uchar dat) //發(fā)送16字節(jié)子函數(shù)
{
uchar ADS, i;
uchar j;
LOAD=0; i=0; //使能信號(hào)低電平有效
while(i<16)
{
if(i<8){ADS=add;}
else {ADS=dat;}
for(j=8;j>=1;j--)
{
DIN=ADS&0x80;
ADS=ADS<<1;
CLK=1;
CLK=0;
}
i=i+8;
}
LOAD=1;
}
//***************************以下為初使化函數(shù)**********************************/////
void intcom()
{
send(0x0c,0x01); ////初始化MAX7219
send(0x0b,0x07); //掃描LED的個(gè)數(shù)
send(0x0a,0x09); //控制亮度也可以硬件來(lái)控制D3~D0
send(0x09,0xff); //對(duì)每一個(gè)位進(jìn)行選擇1:BCD碼,0:直接顯示
}


//////************延時(shí)函數(shù)**********************///////////////
void delay(void)
{uchar i,j;
for(i=0;i<10;i++)
for(j=0;j<10;j++)
;
}
///////////////////////***********************************************/////////
void time(void)
{

send(0x01,a); //在八個(gè)數(shù)碼管上顯示1-8,帶小數(shù)點(diǎn)顯示
send(0x02,b); //例如:0x82,8為小數(shù)點(diǎn),2為顯示的數(shù)
send(0x03,c);
send(0x04,d);
send(0x05,e);
send(0x06,f);
send(0x07,g);
send(0x08,h);

}
/***************以下為主函數(shù)*********************///////////////
void main()
{intcom();//初使化
for(a=0;a<10;a++)
for(b=0;b<10;b++)
for(c=0;c<10;c++)
for(d=0;d<10;d++)
for(e=0;e<10;e++)
for(f=0;f<10;f++)
for(g=0;g<10;g++)
for(h=0;h<10;h++)
{time();
delay();
}
}



關(guān)鍵詞: max7219顯示程

評(píng)論


技術(shù)專區(qū)

關(guān)閉