|
EA=0;
kxp=xp
EA=1;
sndurt(0xFF&(kxp>>8));
sndurt(0xFF&kxp);
вот так не помогло от ереси избавиться.
выдает 02 11
вместо 02 3E
блин а механизм стал правильно работать...
вот и думай после...
void sndurt(char dat) {
bufout[pob+pol]=dat;
ES = 0;
pol++;
ES = 1;
if(trnsstp==1){TI=1;}
}
...........
//-----
if( (TI) | ((trnsstp==1)&(scmd==1)) ){
TI = 0;
if(scmd==1){SBUF=cmd; cmd=0; scmd=0;}else{
if(pol>0){SBUF = bufout[pob]; pob = (boln-1)&(pob+1); pol--; trnsstp=0;}else{trnsstp=1;}
}//if cmd
}
}
E-mail: info@telesys.ru