Hola Y MUCHAS gracias Syspic, yop creo que todos te lo agradecen, bueno ahora continuando con el proyecto como dije anteriormente yo no manejo compilardor basic( tengo idea pero no es suficiente), en cambio si estoy manejando PIC C, y obviamente lo voy a realizar en C, bueno tengo algunas dudas sobre el codigo que dejaste en las primeras páginas, o es que no sera el completo?, pero aqui van:
Define LOADER_USED 1 "Esto si que ni idea Con esto se indica al compilador que se usa dowloader
Define OSC 20 "defines el oscildor a 20mhz
OPTION_REG.7=0 " que significa esto? resistencias portb conectadas
ADCON1=6 " y esto bueno tengo idea pero sería mejor una aclaración
E/S digitales en porta creo recordar
Err var PORTE.2 : low Err " pin 2 pto E creo. #define Err PORTE.2
Int var PORTC.4 : low Int "pin 4 pto C #define Int PORTC.4
wsave var byte $20 system " (?)
ssave var byte bank0 system " bacnco 0supongo(system?) Esto se usa para salvar registroa al entrar en la interrupcion , en c ni idea
LenTexto var byte "(nombre de la vaiable LenTexto de tipo byte correcto?)
PaqTexto var byte[42] "Cadena Array
bufferRX var bit " un bit? Bit , short en c ?
ERROR var byte bank0 system " banderas de errores de recepcion
Entradas_A var byte bank0 system " estado de entradas del porta
IndiceAgenda con 1 " Aqui si eh nada, como entiende esto el compilador que "manejas. IndiceAgenda es una constante con valor 1
pause 50 (Esto ya esta definido 50 ms,? en una libreria o algo asi? Delayms(50); en c creo
Cuando mandamos las tramas:
"-------------------------------------------------------------
PhoneStatus: " Phone Status
" 1E-00-0C-04-00-06-00-01-00-01-01-40-13-42(esto no concuerda con lo de abajo, en fin solo es corregirla , pero me pregunto si tu lo compilaste asi y ademas te funciono?, (o sera que descargue el archivo correcto?) si , funcionava aunque no corresponda
"-------------------------------------------------------------
TRAMA[0]=$1E:TRAMA[1]=$00:TRAMA[2]=$0C:TRAMA[3]=$D1
TRAMA[4]=$00:TRAMA[5]=$07:TRAMA[6]=$00:TRAMA[7]=$01
TRAMA[8]=$00:TRAMA[9]=$03:TRAMA[10]=$00:TRAMA[11]=$01
TRAMA[12]=$60:TRAMA[13]=$00:TRAMA[14]=$72:TRAMA[15]=$D5
en esta otra parte
TEXTO[c]="r":c=c+1:TEXTO[c]="a":c=c+1:TEXTO[c]="d":c=c+1:TEXTO[c]="a":c=c+1
TEXTO[c]="s":c=c+1:TEXTO[c]="=":c=c+1
n_alto con "1"(que significa esto, que efecto tiene en el programa, no lo entiendo)
n_alto es una constante con el valor "1" osea 0x31
"Bueno y esto, tenemos la variable entradas_A y luego estas revisandi cada bit, el compilador que manejas ya lo entiende?)
if Entradas_A.0=1 then TEXTO[c]=n_alto : c=c+1 if (Entradas_A.0==1){ TEXTO[c]=n_alto ; c++;}
if Entradas_A.1=1 then TEXTO[c]=n_alto : c=c+1
¿return " ok
sal_PideNumero :
endif
?
"-----------------------------------------------------
BautRate: " usart 115200 bps , parity None , 8 bits
"-----------------------------------------------------
En esta parte en vez de txreg es (TXSTA verdad?) asi funcionava
movwf TXREG
movwf RCSTA
Umna última duda, que operacion realiza(|) TRAMA = TRAMA | $F0 esto fuerza la TRAMA para que quede asi %1111????
TE agradezco de antemano por la ayudota que me estas dando, bueno y si alguien del foro lo puede responder estare agradecio.
Gracias .