⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 max7221.h

📁 共阳数码管驱动芯片7221的初始化
💻 H
字号:
#ifndef Max7221_C51_DEFINE_2003_8_31_ZY_YKB_1
#define Max7221_C51_DEFINE_2003_8_31_ZY_YKB_1

#define word unsigned int 
#define byte unsigned char

//========管脚定义==========================
sbit Clk = P0^2;
sbit CS  = P0^1;
sbit Din = P0^0;
//==========================================
void Delaylms(word delay)
{
	word i,j;
	for(i=0;i<delay;i++)
	for(j=0;j<120;j++);

}
//==========================================
void WriteMax7221(byte Address,byte DisplayData)
{
	byte i;
	CS=0;
	for(i=0;i<8;i++)
	{
		Clk = 0;
		Din = (Address&(0x80>>i))? 1:0;
		_nop_();
		_nop_();
		Clk=1;
		_nop_();
		_nop_();	
	}
	for(i=0;i<8;i++)
	{
		Clk = 0;
		Din = (DisplayData&(0x80>>i))? 1:0;
		_nop_();
		_nop_();
		Clk=1;
		_nop_();
		_nop_();	
	}
	CS=1;

}

byte code FreeDecodeTab[]={0x7E,0x30,0x6D,0x79,0x33,0x5B,0x5F,0x70,    // 0--7
                          0x7F,0x7B,0x77,0x1F,0x4E,0x3D,0x4F,0x47,0x80};		// 8--f	  

byte code FreeDecodeTabPoints[]={0xFE,0xB0,0xED,0xF9,0xB3,0xDB,0xDF,0xF0,
                          0xFF,0xFB,0xF7,0x9F,0xCE,0xBD,0xCF,0xC7};


byte BitsData[9]={11,5,6,7,8,1,2,3,4};		//软件处理,0无效,从1开始对应

void InitialMax7221(void)
{
        WriteMax7221(0x0A,0x07);        //亮度地址0AH,0x00~0x0F,0x0F最亮
        WriteMax7221(0x0B,0x07);        //扫描LED个数地址0BH,0x00~0x07,最多扫描8个数码管
        WriteMax7221(0x0C,0x01);        //工作模式地址0x0C. 0x00:ShutDown;0x01:Normal
        WriteMax7221(0x09,0xff);        //编码模式地址0x09. 0x00~0xFF:哪一位为1,哪一位就支持编码
	//WriteMax7221(0x09,0x00);	//自由编码
}


void Set_Max7221(word bits,word num)					// 设置7221的显示,
{
	WriteMax7221(BitsData[bits],num);
}
void Normal_Clear_Max7221()						//清除所有显示正常模式
{ 
	byte i=1;
	for(i=1;i<9;i++)Set_Max7221(i,15);
}
void Free_Clear_Max7221()						//清除所有显示自由编码模式
{ 
	byte i=1;
	for(i=1;i<9;i++)Set_Max7221(i,0x00);
}
/*
main()
{
InitialMax7221();
while(1)
	{
	WriteMax7221(1,1);
	WriteMax7221(2,2);
	WriteMax7221(3,3);
	WriteMax7221(4,4);
	WriteMax7221(5,5);
	WriteMax7221(6,6);
	WriteMax7221(7,7);
	WriteMax7221(8,8);//显示12345678
	}
}
*/
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -