voidISR_Ep1out(void) interrupt 0
{
BYTE CountNumber;
switch( EP1OUTBUF[0] )
{
…
case 0xBE: switch( EP1OUTBUF[1] )
{
case 0xE0: inioutput( EP1OUTBUF[2] ); //按 NAT9914 要求先初始化
…
for( CountNumber = 0; CountNumber < EP1OUTBUF[3]; CountNumber++)
outa( EP1OUTBUF[4 + CountNumber] ); //通过 NAT 9914 的数据
//输出寄存器将数据送走,其中要查询 BO 置位情况
break;
case 0xE1: inioutput( EP1OUTBUF[2] );
…
for(CountNumber = 0; CountNumber < EP1OUTBUF[3]; CountNumber++)
{
if( CountNumber != ( EP1OUTBUF[3]-1 ) )
outa( EP1OUTBUF[4 + CountNumber] );
else
{
mcu_writebyte(REG3,0x08);
//随最后一个字节发放送字符串结束标志.
…
}
}