En el mensaje anterior se me olvido pegar el programa del 16F627, el de la comunicación, para que vean como la estoy haciendo, aqui va:
'Definimos el Oscilador
DEFINE OSC 4
'Se incluye libreria para comunicación serial
Include "modedefs.bas"
TXPIC VAR PORTB.7 'Para decirle al 16F873 que esta listo para recibir datos
RXPIC VAR PORTB.6 'Para recibir los datos del 16F873
TRANS1 VAR PORTB.3 'Para saber si hay que enviar datos al 16F873
TX VAR PORTB.2 'Para enviar datos al PC
RX VAR PORTB.1 'Para recibir datos del PC
TRANS2 VAR PORTA.1 'Para controlar la transmisión por medio del DS75176
CONT var byte 'Para almacenar el número de Bytes a enviar
UNIDAD1 VAR BYTE 'Donde se van a guardar los datos recibidos del PC
UNIDAD2 VAR BYTE
UNIDAD3 VAR BYTE
UNIDAD4 VAR BYTE
UNIDAD5 VAR BYTE
UNIDAD6 VAR BYTE
UNIT1 VAR BYTE 'Donde se van a guardar los datos recibidos del 16F873
UNIT2 VAR BYTE
UNIT3 VAR BYTE
UNIT4 VAR BYTE
UNIT5 VAR BYTE
UNIT6 VAR BYTE
UNIT7 VAR BYTE
UNIT8 VAR BYTE
'****************** PROGRAMA ************************************
TRISB = %01111011
TRISA = %111101
PORTA = 0:PORTB = 0
CONT = 7
unidad1=0:unidad2=0:unidad3=0:unidad4=0:unidad5=0:unidad6=0
uniT1=0:uniT2=0:uniT3=0:uniT4=0:uniT5=0:uniT6=0:uniT7=0:uniT8=0
'RECEPCIÓN Y ENVIO DE DATOS DESDE Y HACIA EL PC
SER_UNI2:
IF TRANS1 = 1 THEN
gosub SER_UNI1
endif
LOW TRANS2
SERIN2 RX,84,1000,SER_UNI2,[UNIDAD1]
SERIN2 RX,84,1000,SER_UNI2,[UNIDAD2]
SERIN2 RX,84,1000,SER_UNI2,[UNIDAD3]
SERIN2 RX,84,1000,SER_UNI2,[UNIDAD4]
SERIN2 RX,84,1000,SER_UNI2,[UNIDAD5]
SERIN2 RX,84,1000,SER_UNI2,[UNIDAD6]
IF UNIDAD1 = UNIT1 THEN
high TX 'Para que salga bien la primer línea de la tx.
HIGH TRANS2
SEROUT2 TX,84,[UNIDAD1,UNIDAD2,CONT,UNIT2,UNIT3,UNIT4,_
UNIT5,UNIT6,UNIT7,UNIT8]
LOW TRANS2
GOTO SER_UNI2
else
unidad1=0:unidad2=0:unidad3=0:unidad4=0:unidad5=0:unidad6=0
GOTO SER_UNI2
ENDIF
'RECEPCIÓN DE DATOS QUE VIENEN DEL 16F873
SER_UNI1:
HIGH TXPIC
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT1]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT2]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT3]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT4]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT5]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT6]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT7]
SERIN2 RXPIC,84,1000,SER_UNI2,[UNIT8]
LOW TXPIC
return