blog-eletrogate-logo-desktop blog-eletrogate-logo-mobile
  • Categorias
    • Voltar
    • INICIANTES
    • INTERMEDIÁRIOS
    • AVANÇADOS
    • divide
    • Automação Residencial
    • Componentes Eletrônicos
    • Impressão 3D
    • IoT
    • Modelagem 3D
    • Módulos Wifi
    • Por trás da tecnologia
    • Projetos
    • Raspberry Pi
    • Robótica
    • Sensores
    • Shields
    • Sistemas Operacionais
    • Tipos de Arduino
    • Tutoriais
  • Apostilas
  • Quem Somos
  • Seja um redator
  • Trabalhe Conosco
    • Categorias
      • Voltar
      • INICIANTES
      • INTERMEDIÁRIOS
      • AVANÇADOS
      • divide
      • Automação Residencial
      • Componentes Eletrônicos
      • Impressão 3D
      • IoT
      • Modelagem 3D
      • Módulos Wifi
      • Por trás da tecnologia
      • Projetos
      • Raspberry Pi
      • Robótica
      • Sensores
      • Shields
      • Sistemas Operacionais
      • Tipos de Arduino
      • Tutoriais
    • Apostilas
    • Quem Somos
    • Seja um redator
    • Trabalhe Conosco
Loja Eletrogate
voltar
  • Sobre a Linguagem C
  • MikroC
  • Como instalar o MikroC
  • Primeiros passos no MikroC
  • Primeiro Código no MikroC
  • Conclusão
  • Sobre o Autor
Tutoriais

Primeiros passos com MikroC / Parte 2

Eletrogate 13 de janeiro de 2022Atualizado em: 06 abr 2022

Sobre a Linguagem C

Embora existam diferentes linguagens de programação, como HTML, CSS, Java, C e Python, todas possuem uma característica em comum: permitir o controle ou a manipulação de um ambiente ou objeto virtual. A linguagem C é uma das bases da programação, estando em quase tudo que usamos, principalmente em microcontroladores.


MikroC

Para interagir com o PIC da maneira adequada, é necessário informar a ele o que desejamos que ele faça. Felizmente, é possível fazer essa comunicação por meio de diversos softwares, como o CCS ou MikroC. O segundo sendo o utilizado neste tutorial por ser gratuito. Iremos aprender passo a passo a como instala-lo e como criar seu primeiro código nesse compilador.


Como instalar o MikroC

Para instalar o software, basta entrar nesse link. Ele o encaminha ao site oficial da MikroC, que disponibiliza de forma gratuita o software.

Após entrar, já encontramos a opção de download de forma fácil. Basta clicar no ícone para que o download seja iniciado instantaneamente.

Logo depois, no canto inferior esquerdo irá aparecer um arquivo. Devemos abrir este arquivo ou selecionar a seta e, então, a opção abrir.

Quando o arquivo for aberto, você será encaminhado ao explorador de arquivos. Lá haverá a opção de downloads que contém o arquivo que foi instalado. Com esse arquivo ainda não é possível acessar o software, antes devemos extrair para uma pasta clicando com lado direito do mouse encima do arquivo e selecionado a opção “extrair tudo”.

Logo após, irá aparecer a opção do local para o qual serão extraídas as informações contidas no arquivo. Então, quando selecionada a opção “procurar”, será possível escolher o local desejado para fazer o armazenamento do instalador que está dentro do arquivo comprimido

Após terminar de extrair, o instalador irá ficar disponível no local escolhido e bastarão dois clicks para que a instalação do software seja iniciada.

Agora, basta clicar no botão NEXT para prosseguir pelas etapas de confirmações da instalação.

Em seguida, é apresentado o termo de contrato da licença. Após ler, caso discorde do termo, não será possível continuar a instalação. Ao concordar, é preciso selecionar a opção “I accept the terms of the license agreement”, que significa que você aceita os termos.

Já aqui é oferecido a opção de instalar em todas contas do computador ou apenas em uma conta caso haja mais de uma.

O mikroC oferece recursos extras à aplicação principal. Recomendamos que todas as opções oferecidas nesta etapa da instalação sejam selecionadas, como ilustrado na imagem a baixo.

Essa etapa nos permite selecionar o local de armazenamento do mikroC. Basta clicar no botão Browse, que vai possibilitar que você escolha por onde o software poderá ser acessado após ser instalado.

Em seguida, já se inicia a instalação.

Quando finalizado, você terá acesso a uma pasta com informações e ferramentas pertinentes ao mikroC, instalador, para caso precise o reinstalar, e, principalmente, compilador mikroC. Para abrir o software, basta clicar nele duas vezes com o botão esquerdo do mouse.


Primeiros passos no MikroC

O mikroC possui diversos recursos internos que facilitam o desenvolvimento de projetos. A imagem abaixo mostra a tela inicial do compilador. Primeiro, iremos aprender a criar um arquivo para escrever nosso código inicial e, logo após, iremos abordar alguns dos recursos mais utilizados.

 

Na “Start Page” temos a opção “NEW Project”, que, como já diz seu nome, cria um novo projeto. Já a outra opção, “OPEN PROJECT”, permite abrir projetos antigos ou inacabados. Iremos iniciar um projeto novo, portanto, devemos clicar em new Project, escolher a opção de standard Project e, então, clicar em “next”.

Nesta tela são solicitadas algumas informações básicas do projeto.

Project name – espaço reservado para colocar o nome do projeto. Não pode conter espaços, números ou Caracteres.

Project folder – local para escolher onde o projeto vai ficar salvo. Basta apertar “Browse” e selecionar a pasta desejada.

Device name – neste campo, ao se apertar a seta apontando para baixo no canto direito, é aberta uma lista de modelos de PIC, dentre os quais deve-se escolher aquele que será utilizado no projeto.

Device clock – nessa área, deve-se preencher a frequência de clock que será utilizada no projeto.

Na ultima etapa da criação do projeto, é possível incluir arquivos, como headers, neste.

Após o termino da etapa da criação do projeto, você será encaminhando para o arquivo no qual o código deve ser desenvolvido, circulado em vermelho com o traço grosso. Nesta tela, na barra de ferramentas, encontram-se as opções de projeto -circuladas em laranja, as opções de arquivo -circuladas em azul, as opções de compilação -circuladas em vermelho e as utilidades -circuladas em verde.

Como dito anteriormente, abordaremos as informações básicas para desenvolver seu primeiro projeto. Portanto, podemos ver, em VIEW, dois recursos de extrema importância: library manager, que nos possibilita visualizar e ativar as bibliotecas que o mikroC possui, como a ADC INT e LCD INT e a opção “ASSEMBLY”, que permite a visualização do código compilado a partir do código em C.

A aba “PROJECT” permite que o usuário gerencie o projeto aberto e crie ou abra um novo projeto. Já em “Edit Project”, é possível editar informações como para qual modelo de PIC o código está sendo escrito, qual tipo de build deve ser montado a partir do código, se será permitida optimização que envolva alocação dinâmica de memória e parâmetros relacionados aos registradores de configuração, como o tipo de oscilador utilizado e se haverá proteção de memória.

À primeira vista temos que alterar apenas dois parâmetros, portanto iremos detalhar apenas eles no momento, mas os demais também são importantes em projetos específicos avançados. Primeiro conferimos ao lado direito se o pic está contente com o que estamos usando e se a frequência dele também esteja, agora no lado esquerdo temos na primeira opção o parâmetro oscillater selection, que possibilita a escolha do tipo de oscilador que vai ser usado. Em situações comum e simulações geralmente usamos a opção da imagem a baixo, que faz o acionamento do oscilador interno do pic16f628a. claro essa é uma que pode variar de acordo com o projeto, mas sempre tem que estar coerente esse parâmetro com o circuito. Também temos o a opção R5/MCLR/VPP PIN FUNCTION que é necessário desabilitar quando não for utilizar o MCLR maste clear no circuito final, Caso ao contrario o projeto não funcionara. Agora se for utilizar apenas habilite.

Para os exemplos iniciais desta série de tutoriais, somente dois parâmetros, além da seleção do micro e da frequência de oscilação, devem ter seus valores alterados do padrão. No campo “Oscillator Selection” é definido o tipo de oscilador que será usado junto ao microcontrolador neste projeto. Em nosso caso, será utilizado o oscilador interno do componente, então, deve-se alterar o valor para qualquer um dos INTOSC. “RA5/MCLR/VPP Pin Function”, por sua vez, é o campo no qual se define a função do pino de MCLR. Para nossos exemplos iniciais, tal parâmetro deve ser passado para “disabled”, transformando o pino em I/O digital.

Os compiladores em geral costumam tem uma opção de verificar o código para garantir que a linguagem está dentro das regras do compilador e também a opção de carregada o código para o microcontrolador. O mikroC não é diferente, a função build disponibiliza para gente a opção BUILD que faz uma varredura e aponto os erros se houver algum no código e a opção build + program que permite enviar o código para o gravador de pic.

Na aba “build” estão as opções relacionadas à compilação do código. A primeira opção, “Build”, compila o código principal e gera o arquivo definido em “Build Type” (na janela “Edit Project”). “Rebuild All Sources” recompila todos os arquivos do projeto. Por último, “Build + Program”, além de compilar o código, faz a programação deste no microcontrolador, se estiver conectado.

A aba “Tools” apresenta ferramentas e utilidades que buscam facilitar o desenvolvimento e a depuração dos projetos. “Ascii chart” disponibiliza a tabela ASCII visualmente, “GLCD Bitmap Editor” e “LCD Custom Character” oferecem apoio para a criação de figuras e caracteres especiais em LCD’s, “Seven Segment Editor” facilita a codificação para interface com displays de sete segmentos e “Options” permite a modificação da interface de trabalho do software.

Em “help” se encontram o manual do software e links para fóruns e comunidades a ele relacionados.

Dentro da opção HELP temos 4 tópicos, primeiro é o sumario, ele possui a mesma função que um sumario comum de artigos, relatórios e entre outros. Aqui podemos estudar desde a informação mais básica até a mais completa sobre o PIC. Para acessar as informações basta busca entre as pastas disponíveis e quando achar seleciona ela que será aberta ao lado como na imagem a baixo.

Na janela “Help”, há 4 tópicos. No primeiro, “Sumário”, a documentação acerca do software está organizada em pastas e subpastas que agrupam assuntos relacionados.

Em “índice”, as mesmas informações estão dispostas em formato de lista organizada em ordem alfabética.

Em “pesquisar” é possível filtrar o conteúdo do manual de acordo com as palavras informadas no campo.

Por ultimo, “favoritos” dá acesso agilizado às referências mais visitadas no manual.

 


Primeiro Código no MikroC

Este simples código realiza, por meio da manipulação de registradores, a mudança do estado de um pino a cada segundo.

A tabela a seguir, retirada do datasheet do componente, mostra os registradores associados à I/O A:

Nos microcontroladores PIC de 8 bits, os registradores TRISX têm a função de definir o sentido de dados das portas às quais se referem. Assim, a instrução “TRISA = 0b00000000;” faz com que todas as portas do grupo A sejam definidas como saídas digitais. Cada bit deste registrador diz respeito a uma porta do grupo, de tal forma que se, por exemplo, o bit 5 fosse colocado em nível alto (TRISA = 00100000), a porta A5 se tornaria entrada digital.

O registrador CMCON controla os comparadores analógicos. Atribuir o valor 7 a ele faz com que todas as entradas analógicas sejam desativadas.

Os registradores PORTX definem o valor lógico de uma porta digital. A instrução “PORTX.BN = 0”, aplica nível lógico baixo na porta N do conjunto X. Então, por exemplo, a linha “PORTA.B0 = 0;”, faz com que o pino RA0 apresente nível lógico baixo.

void main()// PRINCIPAL FUNÇÃO EM UM CÓDIGO C
{// INICIO DO CODIGO
    TRISA = 0b00000000; // CONFIGURA TODO O PORTA COMO SAÍDA
     CMCON = 7;// DESATIVA TODOS OS COMPARADORES
      PORTA.B0 = 0; // ATRIBUI O VALOR NO BIT0 DO PORTA
     
while(1)//FUNÇÃO DE LOOP EM UM CÓDIGO C 
  {

   PORTA.B0 = 1; // ATRIBUI O VALOR NO BIT0 DO PORTA
   Delay_ms(1000); // ESPERA 1 SEGUNDO 
   PORTA.B0 = 0; // ATRIBUI O VALOR NO BIT0 DO PORTA
   Delay_ms(1000); // ESPERA 1 SEGUNDO
  }
}

Obrigado por acompanhar o tutorial até este ponto. Na próxima parte, mostraremos como carregar o programa no componente físico. Até lá!


Conclusão

Concluímos aqui a segunda parte dessa série de posts sobre a família de microcontroladores PIC, com ênfase no PIC16F628A. No próximo post da série, você aprenderá a carregar o código desenvolvido no componente físico.

Um forte abraço e até a próxima!


Sobre o Autor

 


João Vitor
@v_ribeiro_v

Sou uma pessoa extremamente curiosa, acredito que viver é muito mais do que simplesmente aceitar as coisas com elas são. Por isso iniciei meus estudos nessa área de eletrônica para ir mais a fundo nesse mundo de tecnologia que nos consome cada dia mais.


Eletrogate

13 de janeiro de 2022 Atualizado em: 06 abr 2022

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Módulos Wifi

Placa de Desenvolvimento Arduino Uno WiFi

Eletrogate24 de maio de 2022

Neste post, você conhecerá uma placa que une o melhor das baseadas em ESP8266 com o melhor da família de placas baseadas no ATmega328p: a Uno WiFi.

Módulos Wifi

Placa de Desenvolvimento Arduino Uno WiFi

Eletrogate24 de maio de 2022

Neste post, você conhecerá uma placa que une o melhor das baseadas em ESP8266 com o melhor da família de placas baseadas no ATmega328p: a Uno WiFi.

Projetos

Radar/Sonar Ultrassônico para seus Projetos

Eletrogate19 de maio de 2022

Neste projeto, iremos construir um Radar (‘Radio Detection And Ranging’) ultrassônico com a Arduino e o software Processing. Iremos usar o conhecimento em programação com o sensor ultrassônico no Arduino obtido no post “Sensor Ultrassônico HC-SR04 com Arduino”.

Projetos

Radar/Sonar Ultrassônico para seus Projetos

Eletrogate19 de maio de 2022

Neste projeto, iremos construir um Radar (‘Radio Detection And Ranging’) ultrassônico com a Arduino e o software Processing. Iremos usar o conhecimento em programação com o sensor ultrassônico no Arduino obtido no post “Sensor Ultrassônico HC-SR04 com Arduino”.

Projetos

Levitação Ultrassônica com Arduino

Eletrogate17 de maio de 2022

Não é nenhuma varinha mágica ou encantamento como “Wingardium Leviosa” que você vai precisar para esse projeto. Com um Arduino, um driver de motor ponte H e um sensor de distância ultrassônico HC-SR04 você consegue criar uma máquina capaz de fazer objetos levitarem.

Projetos

Levitação Ultrassônica com Arduino

Eletrogate17 de maio de 2022

Não é nenhuma varinha mágica ou encantamento como “Wingardium Leviosa” que você vai precisar para esse projeto. Com um Arduino, um driver de motor ponte H e um sensor de distância ultrassônico HC-SR04 você consegue criar uma máquina capaz de fazer objetos levitarem.

Modelagem 3D

Conheça o Tinkercad

Eletrogate12 de maio de 2022

Se você já pensou em criar um projeto eletrônico, mas não tinha os componentes necessários e queria fazer um teste antes, este post foi feito pra você! Neste post, iremos conhecer a plataforma Tinkercad. Através dela, você poderá testar projetos, circuitos eletrônicos, códigos, criar designs 3D e muito mais.

Modelagem 3D

Conheça o Tinkercad

Eletrogate12 de maio de 2022

Se você já pensou em criar um projeto eletrônico, mas não tinha os componentes necessários e queria fazer um teste antes, este post foi feito pra você! Neste post, iremos conhecer a plataforma Tinkercad. Através dela, você poderá testar projetos, circuitos eletrônicos, códigos, criar designs 3D e muito mais.

Eletrogate Robô

Cadastre-se e fique por
dentro de novidades!

blog-eletrogate-logo-footer

Rua Rio de Janeiro, 441 - Sala 1301
Centro - Belo Horizonte/MG
CEP 30160-041
*Não temos atendimento físico

ANWAR SLEIMAN HACHOUCHE - ME
CNPJ: 18.917.521/0001-73

Atendimento

(31) 3142-3800

contato@eletrogate.com


Seg a Sex - das 8h às 17h

Institucional

  • Apostilas
  • Quem Somos
  • Privacidade
  • Seja um Redator
  • Trabalhe Conosco

Nos acompanhe

Facebook Instagram Youtube

© ELETROGATE 2022 - Todos os direitos reservados. Termos de uso e Política de privacidade.