?? rddsp.c
字號:
#include <SST89V564.H>
#include <ABSACC.H>
extern wdt(void);
extern unsigned char xdata sdata[255];
extern unsigned char xdata TXLen;
extern bit TX;
extern rdDSP(void)
{
unsigned char rbuf,counter;
bit ER;
unsigned int j;
//"i" is the counter for Cyc.
//"rbuf" is the receiveing buffer for receiveing data from DSP.
wdt();
counter = 0;
ER = 0;
TX = 0;
//write the HPIA(the read address)
XBYTE[0xe4ff]=0x79;//the higher 8bit of the address.
//HR/W=0;HCNT1=1;HCNT0=0;HBIL=0.
XBYTE[0xe5ff]=0x80;//The lower 8bit of the address.
//HR/W=0;HCNT1=1;HCNT0=0;HBIL=1.
rbuf = 0xff;
while(rbuf!=0x00)
{
j=XBYTE[0xeaff];//HR/W=1;HCNT1=0;HCNT0=1;HBIL=0.The higher 8-bit.
rbuf=XBYTE[0xebff];//HR/W=1;HCNT1=0;HCNT0=1;HBIL=1.The lower 8-bit.
sdata[counter++]=rbuf; //Send data.
if (counter >= 255){ER = 1;break;}
}
XBYTE[0xe0ff]=0x08; //HPIC=0x08.
//HR/W=0;HCNT1=0;HCNT0=0;HBIL=0.
XBYTE[0xe1ff]=0x08; //HR/W=0;HCNT1=0;HCNT0=0;HBIL=1.
if (ER == 0)
{
TXLen = counter-1;
TX = 1;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -