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

📄 msp430_7219.c

📁 本程序运用MSP430单片机实现了代功耗模式下数字时钟,用MAX7219驱动8位7段LED显示,能精确显示"时","分","钞".
💻 C
字号:
/*****************************************


******************************************/
#include<msp430x16x.h>
#include"MSP430_7219.H"

void WriteMax7221(unsigned char add,unsigned char dat)  
{
   unsigned char ASD,i,j,k;
   MAX7221DIR |=0xE0;
   CS_L;
   i=0;
   while(i<16)
     {
	    if(i<8){ASD=add;}		 //小于8的时候取地址
		else   {ASD=dat;}	     //大于8的时候取数据
		for(j=8;j>=1;j--)
		  {
		    if(ASD&0x80)
		      {
		       DIN_H;
		      }
		    else   
		      {
		       DIN_L;
		      }
		    ASD=ASD<<1;
		    CLK_H;
		    for(k=10;k>0;k--);
		    CLK_L;
		  }
		i=i+8;
	 }
   CS_H;
}

void InitialMax7221(void)
{
	WriteMax7221(0x0A,0x02);	//亮度地址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(0x0F,0x00);        //Code B decode for digits XXXXXXX0 
}


void Max7219_Write_Led(unsigned char *p)	//8位数码管程序*P为数据入口
{
	unsigned char i;
	for(i=1;i<=8;i++)
	{
	WriteMax7221(i,p[i-1]);
        }
}

⌨️ 快捷键说明

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