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

📄 key.c

📁 基于tms320f2812dsp芯片的用c语言实现键盘输入的c语言源程序
💻 C
字号:
#include "DSP281x_Device.h"     // DSP281x Headerfile Include File
#include "DSP281x_Examples.h"   // DSP281x Examples Include File
#include "f2812a.h"

#define CTRLED (*(unsigned int *)0x108004) // port8004
#define MCTRKEY (*(unsigned int *)0x108005)  // port8005
#define CTRCLKEY (*(unsigned int *)0x108006) // port8006
#define CTRSTATUS (*(unsigned int *)0x108000) //port8000
#define CTRGR (*(unsigned int *)0x108000)

unsigned int uWork1,uWork2,nWork,w;
unsigned int ccc[8]={0x0,0x2,0x4,0x8,0x10,0x20,0x40,0x80};

void mydelay(unsigned int nDelay);

void main(void)
{
    int i;
   InitSysCtrl();
   uWork1=0;
   uWork2=0;
   nWork=0;
   CTRLED=0xff;
   CTRGR=0;
   w=1;
   for(i=0;i<8;i++)
   {
     CTRLED=~ccc[i];
     mydelay(32);
   }
   
    CTRLED=0x0;
	while(w)
	{
	    mydelay(32);
	    CTRLED=0;
	    mydelay(32);
	    for(;;)
	    {
		    uWork1=MCTRKEY;
		    CTRCLKEY=0;
		    asm(" nop ");
		    uWork2=MCTRKEY;
		    CTRCLKEY=0;
		    if(uWork1==uWork2&&uWork1!=0)
		    {		
		        nWork|=uWork1;
		        CTRLED=nWork;
		    }
		    if(nWork==65535)  
		    {  CTRLED=0xffff;
		       nWork=0;
		       uWork1=0;
		       uWork2=0;
		       mydelay(400);
		       CTRLED=0;
		       break;
		    }
		    
		}

	}
	exit(0);
	
} 	

void mydelay(unsigned int nDelay)
{
	int ii,jj,kk=0;
	for ( ii=0;ii<nDelay;ii++ )
	{
		for ( jj=0;jj<1024;jj++ )
		{
			kk++;
		}
	}
}

⌨️ 快捷键说明

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