Você está na página 1de 1

Exemplo de conexo da CUSCOPIC ao PC usando a RS232

Este programa ir permitir a conexo da CUSCOPiC ao PC via porta serial. uma proposta bastante simples. Quando, no terminal remoto, forem pressionadas as teclas 1, 2, 3 ou 4, os pinos dos rels (E0 e E1) sero acionados ou desativados. Quando, na estao CUSCOPiC, for acionada ou desativada a chave do pino D0, ser enviada uma mensagem ao terminal. Observe, no programa abaixo, as linhas em negrito.
#include <16f877.h> // identifica microcontrolador alvo #use delay (clock=20000000) // <- define cristal para 20Mhz. Para outros valores, mude e recompile. #include <cuscostdio.h> // inclui biblioteca de funes do projeto CUSCOPiC #use RS232(baud=9600, parity=N, bits=8, xmit=PIN_C6,rcv=PIN_C7) // configura serial // serial configurada para velocidade de 9600 bps // sem paridade, 8 bits /* Objetivo do programa: Quando D0 mudar de estado, ser enviada mensagem para o terminal. Quando for recebido do terminal os valores 1 e 2, liga os rels (E0 e E1). Quando for recebido do terminal os valores 3 e 4, desliga os rels (E0 e E1). */ void main() // funo principal { char x; short vlr_d0_ant = 1; while(1) // lao infinito { printf("\n\rCUSCOPIC\n\r"); // envia mensagem ao terminal while(1) { if (kbhit()) // se houver caractere no buffer de entrada da serial ... { x = getchar(); // busca caractere da serial switch(x) // escolhe x { case '1' : output_high(PIN_E0); break; case '2' : output_low (PIN_E0); break; case '3' : output_high(PIN_E1); break; case '4' : output_low (PIN_E1); break; } } if (input(PIN_D0) != vlr_d0_ant) // SE ESTADO DO PINO MUDOU ... { if (input(PIN_D0)) printf("\n\rD0 ativado."); // MANDA MENSAGEM else printf("\n\rD0 desativado."); vlr_d0_ant = input(PIN_D0); // REGISTRA NOVO ESTADO DO PINO } } } }

Executar este programa. Conectar o cabo serial estao (verificar jumpers p/ posio RS232) Rodar programa HYPER TERMINAL, do MS Windows, ou algum programa similar. Configurar conforme tela ao lado. Com a CUSCOPiC em modo de execuo, a cada tecla pressionada, surgiro avisos no terminal quando o boto D0 for pressionado / liberado.

Projeto CUSCOPiC Daniel Corteletti Novembro de 2008

Você também pode gostar