By - - 0 Comments 573 visualizações

Olá pessoal. Neste post trago o primeiro projeto em linguagem C para micro controlador Pic. Trata-se de um simples Olá Mundo! com um led, afinal tudo sempre tem um começo! O IDE utilizado é o mikroC Pro v3.80 da  mikroElektronika1.

mikroCpro

Para nosso pequeno projeto, a versão demo atende perfeitamente.  Ela compila qualquer programa até 2K de código por tempo indeterminado! Como nosso projeto é muito simples (< 1K), atenderá perfeitamente. O mikroC, possui diversas bibliotecas prontas para uso. Uma desvantagem nele é que tais bibliotecas são de código “fechado”. Portanto devemos nos conformar com o “utilize-as” já estão prontas!. Porém algumas vantagens:

  • Muito rápido o desenvolvimento.
  • Ajuda a compreender o hardware do pic, pois todos os registradores são chamados pelos próprios nomes, idênticos ao datasheet. Fantástico isto, com um pouco de tempo, o usuário terá condições de utilizar blocos programados diretamente em Assembly, onde seja requerido precisão em bases de tempo, mudanças rápidas nos registradores, etc.
  • O uso deste ambiente vem crescendo cada vez mais. Já existem empresas com material disponível em português Br.

Você pode fazer o download2. Como todo IDE, é difícil ter de aprender os comandos e outras coisas mais. Para quem migra do CCS por exemplo, tenho certeza que fica uma “pilha” tentando entender com o mikroC funciona. A lógica é a mesma coisa, porém menos “complicado” depois de familiarizarmos com o ambiente. O projeto aqui exposto com o micro controlador PIC16F628A, já está pronto junto do arquivo para simulação no Proteus 7.

LedProteus

O código é bem comentado, e permite aos iniciantes entender o funcionamento. Por hora, não é o escopo do post iniciar um “projeto do zero”. Ficará para um próximo onde aplicaremos a nossa placa de entradas e saídas3. O código desenvolvido é simples acende um led ligado no pino B0 e pode ser executado de duas formas distintas:

  • Ao ligar uma pausa de 3 segundos inicial, pisca com intervalo de 1 segundo 10 x, pausa de 3 segundos e assim enquanto houver alimentação.
  • Ao ligar uma pausa de 3 segundos inicial, acende por 1 segundo e pausa por 3 segundos … enquanto houver alimentação.

Os arquivos já estão com a primeira opção acima compilado. Ao executar no Proteus aguarde a pausa inicial de 3 segundos. Se quiser testar a segunda, siga os passos dentro do próprio código. Para quem desejar montar no protoboard, basta uma fonte de 5Vcc, as ligações como vista no simulador e adicionar o GND ao pino 5, a VCC ao pino 14. O botão serve para resetar o micro controlador.  Não é necessário o capacitor e botão de reset. Sem o resistor de 10K, o circuito não entra em funcionamento. Como podemos ver, o oscilador utilizado é o interno sem saída de clock à 4Mhz. Apesar de não termos precisão no tempo(afinal o oscilador interno é um arranjo RC) os pinos 15 e 16 destinados ao cristal estão liberados e podem ser utilizados como I/O. Para ver as configs iniciais, abra o arquivo PrimeiroProjeto.mcppi  e pressione CTRL + SHIFT + E. Aos iniciantes que não sabem como gravar o micro controlador, recomendo este post: Gravador de Micro controladores Pic4. Segue os arquivos compactados para download: Projeto com MikroC e PIC16F628A (441) Caso algum de nossos leitores realizar a montagem em protoboard e quiser nos enviar uma foto, a mesma será publicada abaixo, junto aos devidos créditos. Até à próxima!