Estou tentando fazer da maneira que é feito em ASM.
- Código: Selecionar todos
void main() {
TRISA = 0b00000000; //TUDO COMO SAIDA
TRISB = 0b00000011;
//INTCON
GIE = 0; //CHAVE GERAL DESLIGADA
PEIE = 0; //DESABILITADA INT. DE PERIFERICOS
T0IE = 1; //INT. DE TIMER0 HABILITADA
INTE = 1; //INT. DE GPIO2 HABILITADA
RBIE = 0; //DESABILITADA INT. DE MUDANCA EM PORTB
T0IF = 1; //FLAG DA INT. DE TIMER0
INTF = 0; //FLAG DA INT. DE GPIO2
RBIF = 0; //FLAG DA INT. DE MUDANCA EM GPIO
//OPTION_REG
RBPU = 1; //PULL UP DESABILITADO
INTEDG = 1; //0 BORDA DE SUBIDA 1 BORDA DE DESCIDA
T0CS = 0; //TIMER0 INCREMENTADO PELO CLOCK
T0SE = 1; //NAO USADO
PSA = 0; //PRESCALER NO TIMER0
PS2 = 0;
PS1 = 0;
PS0 = 1; // 1:4
//CMCON
C2OUT = 0; //VIN < VOUT
C1OUT = 0; //VIN < VOUT
C1INV = 0; //SAIDA NAO INVERTIDA
C2INV = 0; //SAIDA NAO INVERTIDA
CIS = 0; //VIN- LIGADA NO CIN-
CM2 = 1;
CM1 = 1;
CM0 = 1; //COMPARADOR DESLIGADO
//CONFIGURAÇÃO DA USART
TX9 = 0; //TRANSMISSÃO EM 8 BITS
TXEN = 1; //TRANSMISSÃO HABILIATADA
SYNC = 0; //TRANSMISSÃO ASSÍNCRONA
BRGH = 0; //BAIXA VELOCIDADE
SPBRG = 129; //2400 Bps
SPEN = 1; //HABILITA TX E RX
while(1) {
TXEN = 1; //HABILITA TRANSMISSÃO SERIAL
TXREG = 10; //CARREGA DADO A SER ENVIADO
while(!TXIF); //AGUARDA TRANSFERIR DADO PARA TSR
while(!TRMT); //ESPERA ACABAR DE ENVIAR
DelayMs(10); //ESPERA 10mS
}
}
Agradeço a todos que visitaram o tópico e que deram idéias e opiniões.
Muito obrigado
Abraço