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

📄 key_7279.c

📁 5402DSP程序设计语言
💻 C
字号:
extern void InitC5402(void);
extern void InitMcBSP0(void);
extern void ms_delay(int);
extern void send_0(void);
extern void send_1(void);
extern void send_2(void);
extern void send_end(void);
extern void INT3_ISR(void);
void send_byte( unsigned char out_byte);
void write7279(unsigned int cmd,unsigned int dta);
void long_delay(void);
void short_delay(void);
interrupt void key_int();
/***********************************************************************
** Main Function Program
***********************************************************************/
#define CMD_RESET 0xa4
#define CMD_TEST  0xbf
#define DECODE0 0x80
#define DECODE1 0xc8
#define CMD_READ 0x15
#define UNDECODE 0x90
#define RTL_CYCLE 0xa3
#define RTR_CYCLE 0xa2
#define RTL_UNCYL 0xa1
#define RTR_UNCYL 0xa0
#define ACTCTL 0x98
#define SEGON 0xe0
#define SEGOFF 0xc0
#define BLINKCTL 0X88
#define INPUT   0x111

unsigned int byteout;
char a,b;
void main(void)
{	unsigned char i;
    unsigned char j;
	InitC5402();  
	InitMcBSP0();
	ms_delay(25);
	send_byte(CMD_TEST);
    long_delay();
	send_byte(CMD_RESET);
	long_delay();


    for(i=0;i<16;i++)
	  {
    
	  write7279(DECODE0,i);
	  long_delay();
       send_byte(RTL_UNCYL);
	  long_delay();
      }
      long_delay();
	  
    for(i=16;i>0;i--)
	  {
      
	  write7279(DECODE0+7,i);
	  long_delay();
      send_byte(RTR_UNCYL);
	  long_delay();
      }
      long_delay();
      
      while(1)
      {;}
}



void send_byte( unsigned char out_byte)
{
	unsigned char i;
	send_0();
	for(i=0;i<8;i++)
	{
		if(out_byte&0x80)
		{
			send_1();

		}
		else
		{
			send_2();
		}
		out_byte=out_byte*2;
	}
}

void write7279(unsigned int cmd,unsigned int dta)
{
	unsigned char i;
	unsigned int cmddata;
    asm(" NOP ");
    asm(" NOP ");
    asm(" NOP ");
	dta=(dta&0x00ff);
    asm(" NOP ");
    asm(" NOP ");
    asm(" NOP ");
	cmddata=((cmd<<8)|dta);
	asm(" NOP ");
    asm(" NOP ");
    asm(" NOP ");
	send_0();
for (i=0;i<16;i++)
{
	if(cmddata&0x8000)
	{
		send_1();
	}
	else 
	{
		send_2();
	}
	cmddata=cmddata*2;
}
	send_end();
}
void long_delay(void)
{
	unsigned char i,j;
	for (i=0;i<0xfff;i++)
	{
		for(j=0;j<0x50;j++)
		{}
	}

}
void short_delay(void)
{
    unsigned char i,j;
	for(i=0;i<0x10;i++)
	{  for(j=0;j<0x100;j++)
	{}
	}
}
interrupt void key_int()
{
	unsigned int key_a;
	asm(" NOP ");
    INT3_ISR();
	asm(" NOP ");
	asm(" NOP ");
	asm(" NOP ");
    key_a=*(unsigned *)0x15;
	asm(" NOP ");
	asm(" NOP ");
	asm(" NOP ");
	send_byte(RTL_UNCYL);
	write7279(DECODE0,key_a);
	if(key_a==0xf)
	{
		main();
	}

   
}

⌨️ 快捷键说明

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