tms320lf2407考试_tms320lf2407 开发环境_tms320lf2407(93)

电脑杂谈  发布时间:2017-01-30 03:04:38  来源:网络整理

unsigned char cKey;

asm(" setc INTM"); /* 关中断,进行关键设置时不允许发生中断,以免干扰 */

*WDCR=0x6f;

哈尔滨工业大学——DSP 原理与应用实验指导书

III-47

*WDKEY=0x5555;

*WDKEY=0xaaaa; /* 关闭看门狗中断 */

*SCSR1=0x81fe; /* 打开所有外设,设置时钟频率40MHz */

(*MCRB)=0;

port8000=0; // 初始化ICETEK-CTR

port8000=0x80;

port8000=0;

port8007=0; // 关闭东西方向的交通灯

port8007=0x40; // 关闭南北方向的交通灯

port8007=0x0c1;

uPort8000=port8002; // 清键盘缓冲区

for ( nCount=0;nCount<8;nCount++ )

{

ledbuf[nCount]=0x0ff; // 显示为空白

ledx[nCount]=(nCount<<4); // 生成显示列控制字

}

RefreshLEDArray();

nCount=nCursorCount=0;

for (;;)

{

nScanCode=port8001;

nScanCode&=0x0ff;

uPort8000=port8002;

if ( nScanCode!=0 && nScanCode!=0x0ff )

{

if ( nScanCode==SCANCODE_Enter ) break;

哈尔滨工业大学——DSP 原理与应用实验指导书

III-48

else

{

cKey=ConvertScanToChar(nScanCode);

if ( cKey!=0 )

{

nKeyCode=cKey-0;

SetLEDArray(nKeyCode);

}

}

}

Delay(16);

nCursorCount++; nCursorCount%=4;

if ( nCursorCount==0 ) ledbuf[7]^=0x80;

}

for ( nCount=0;nCount<8;nCount++ )

{

ledbuf[nCount]=0x0ff; // 显示为空白

ledx[nCount]=(nCount<<4); // 生成显示列控制字

}

RefreshLEDArray();

exit(0);

}

void Delay(unsigned int nDelay)

{

int ii,jj,kk=0;

for ( ii=0;ii<nDelay;ii++ )

{

for ( jj=0;jj<64;jj++ )

哈尔滨工业大学——DSP 原理与应用实验指导书

III-49

{

RefreshLEDArray();

kk++;

}

}

}

void RefreshLEDArray()

{

int i;

for ( i=0;i<8;i++ )

{

port8000=ledx[i];

port8005=ledbuf[i];

}

}

void SetLEDArray(int nNumber)

{

int i;

for ( i=0;i<8;i++ )

ledbuf[i]=~ledkey[nNumber][7-i];

}

char ConvertScanToChar(unsigned char cScanCode)


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-29489-93.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 席夏冰
      席夏冰

      对自己定位清晰的boy

    热点图片
    拼命载入中...