introdução - conhecendo o mikroc

15
_________________________________________ MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais... www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598 O compilador mikroC O mikroC é um compilador desenvolvido e comercializado pela empresa MikroElektronika (www.mikroe.com). Se consiste em um sistema integrado de desenvolvimento (IDE) para os sistema operacional Windows e suporta toda a linha de microcontroladores PIC (séries PIC12, PIC14, PIC16, PIC18, PIC24, dsPIC30 e dsPIC33). Existem duas versões do mikroC, para série 8 bits (PIC12, 16 e 18) e outra versão para 16 bits (PIC24, dsPIC30 e dsPIC33) . Os PICs da estinta série 14 e 17, além dos microcontroladores da UBICOM/SCENIX (SX), não são suportados por esta versão do compilador. Integrado ao compilador mikroC, temos diversas ferramentas que nos auxiliam no desenvolvimento de aplicações, tais como: emuladores de Terminal Serial, GLCD gráficos, displays de 7 segmentos, EEPROM, Terminarl USB e TCP/IP, etc. Temos também a opção de utilizar o debugador de código na própria IDE. Vejamos agora as principais caracteristicas do compilador em estudo: Grande facilidade na elaboração de programas Grande eficiência no código gerado; Grande diversidade de funções e bibliotecas para controle dos mais variados tipos de dispositivos, fato que o torna um dos mais práticos compiladores C para microcontroladores PIC nos dias atuais. Grande portabilidade de código de entre os diversos microcontroladores PIC, ou seja, é muito fácil adaptar um programa escrito em C para outro microcontroladore de outra série PIC. O mikroC possui seu próprio debugger que é comercializado pelo fabricante. O mikroC não suporta debugger no MPLAB da Microchip. Padrão ANSI-C. O mikroC não é um software gratuito, ele é comercializado pelo seu fabricante por poucos dólares. A versão demo que iremos utilizar no desenvolvimento do nosso curso permite criarmos programas de no máximo 2kbyte de memória de programa. Ultrapassando esse limite, é necessário adquirir a versão completa (full). Nota: A empresa MicroGenios Soluções Eletrônica Ltda (www.microgenios.com.br ) comercializa no Brasil esse compilador e suas ferramentas. Maiores informações acesse o site informado. Um dos maiores benefícios dos compiladores da Mikroelektronika são suas extensas bibliotecas. O mikroC possui diversas bibliotecas de funções prontas para o tratamento dos mais variados dispositivos. Acompanhe: Bibliotecas de Funções do mikroC

Upload: itamarjr

Post on 28-Oct-2015

184 views

Category:

Documents


20 download

TRANSCRIPT

Page 1: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

O compilador mikroC O mikroC é um compilador desenvolvido e comercializado pela empresa MikroElektronika (www.mikroe.com). Se consiste em um sistema integrado de desenvolvimento (IDE) para os sistema operacional Windows e suporta toda a linha de microcontroladores PIC (séries PIC12, PIC14, PIC16, PIC18, PIC24, dsPIC30 e dsPIC33). Existem duas versões do mikroC, para série 8 bits (PIC12, 16 e 18) e outra versão para 16 bits (PIC24, dsPIC30 e dsPIC33) . Os PICs da estinta série 14 e 17, além dos microcontroladores da UBICOM/SCENIX (SX), não são suportados por esta versão do compilador. Integrado ao compilador mikroC, temos diversas ferramentas que nos auxiliam no desenvolvimento de aplicações, tais como: emuladores de Terminal Serial, GLCD gráficos, displays de 7 segmentos, EEPROM, Terminarl USB e TCP/IP, etc. Temos também a opção de utilizar o debugador de código na própria IDE. Vejamos agora as principais caracteristicas do compilador em estudo: • Grande facilidade na elaboração de programas • Grande eficiência no código gerado; • Grande diversidade de funções e bibliotecas para controle dos mais variados tipos de dispositivos, fato que o torna um dos mais práticos compiladores C para microcontroladores PIC nos dias atuais. • Grande portabilidade de código de entre os diversos microcontroladores PIC, ou seja, é muito fácil adaptar um programa escrito em C para outro microcontroladore de outra série PIC. • O mikroC possui seu próprio debugger que é comercializado pelo fabricante. O mikroC não suporta debugger no MPLAB da Microchip. • Padrão ANSI-C. O mikroC não é um software gratuito, ele é comercializado pelo seu fabricante por poucos dólares. A versão demo que iremos utilizar no desenvolvimento do nosso curso permite criarmos programas de no máximo 2kbyte de memória de programa. Ultrapassando esse limite, é necessário adquirir a versão completa (full). Nota: A empresa MicroGenios Soluções Eletrônica Ltda (www.microgenios.com.br) comercializa no Brasil esse compilador e suas ferramentas. Maiores informações acesse o site informado. Um dos maiores benefícios dos compiladores da Mikroelektronika são suas extensas bibliotecas. O mikroC possui diversas bibliotecas de funções prontas para o tratamento dos mais variados dispositivos. Acompanhe:

Bibliotecas de Funções do mikroC

Page 2: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

• ADC Library

• CAN Library

• CANSPI Library

• Compact Flash Library

• EEPROM Library

• Ethernet Library

• SPI Ethernet Library

• Flash Memory Library

• Graphic LCD Library

• T6963C Graphic LCD Library

• I²C Library

• Keypad Library

• LCD Library

• LCD Custom Library

• LCD8 Library

• Manchester Code Library

• Multi Media Card Library

• OneWire Library

Miscellaneous Libraries

• Conversions Library

• Trigonometry Library

• sprint Library

• Setjmp Library

• Time Library

• PS/2 Library

• PWM Library

• RS-485 Library

• Software I²C Library

• Software SPI Library

• Software UART Library

• Sound Library

• SPI Library

• USART Library

• USB HID Library

• Util Library

• SPI Graphic LCD Library

• Port Expander Library

• SPI LCD Library

• SPI LCD8 Library

• SPI T6963C Graphic LCD Library

Standard ANSI C Libraries

• ANSI C Ctype Library

• ANSI C Math Library

• ANSI C Stdlib Library

• ANSI C String Library

Conhecendo as ferramentas do mikroC Vamos conhecer nosso compilador mikroC. Baixe a versão de demostração do compilador mikroC em seu computador através do site do fabricante: (www.mikroe.com) Após a instalação do compilador, é visualizado um ícone na área de trabalho denominado mikroC. Clique duas vezes nesse ícone que o programa começa a ser carregado e apresenta a seguinte tela:

Page 3: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 01 - O compilador mikroC

Nosso compilador trabalha com a concepção de criação de projeto. Necessáriamente devemos criar um projeto para cada aplicação que venhamos a desenvolver, caso contrário não será possível compilar nosso programa.

Criação de um projeto no mikroC Para criarmos uma aplicações no mikroC é muito fácil, acompanhe o modelo passo a passo:

Page 4: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

1- Abra o mikroC e vá ao menu Project > New Project.

Figura 1.1

2- Aparecerá a seguinte tela de configuração do projeto

Page 5: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 1.2 – Painel de configuração de projeto no mikroC Em Project Name, digite o nome do seu projeto, em Project Path, notique a pasta do projeto. O preenchimento de Description, é o campo onde você poderá informar a descrição do seu projeto, seu preenchimento é opcional. Em Device, escolha o microcontrolador aplicado no projeto, em nosso caso o PIC18F452. No campo Clock, informe a velocidade de clock do oscilador utilizado no projeto. Em Devide Flag, ajuste os configurantions bits do microcontrolador, que informam como o microcontrolador deve operar. Com ele é possível alterar o tipo de oscilador utilizado pelo projeto, assim como se vai usar o watchdog ou acionar a proteção contra leitura do chip. Esses bits são conhecidos como "fusíveis".

Estudaremos mais detalhado a função de cada um dos fusíveis mais adiante em nosso curso; Após ter configurado todos os parâmentros e campos, basta clicar no botão ok para salvar seu projeto. Pronto, nosso projeto está pronto e podemos inserir os códigos do programa no editor. Conhecendo o ambiente mikroC Observe o ambiente mikroC na figura abaixo: O compilador mikroC permite o desenvolvimento rápido de aplicações complexas graças aos recursos do editor avançado Code Editor. Além disso, é permitido utilizar as bibliotecas incluídas na linguagem para aumentar a velocidade e a facilidade de desenvolvimento dos projetos como comunicação serial, displays, aquisição de dados, memória, etc.

O mikroC também gera comentários, código em assembly e código compilado em arquivo .HEX. Integrado ao compilador, temos um debugador para testes do programa no ambiente.

Code Editor (editor de código)

O editor de código do compilador mikroC oferece grandes auxílios no desenvolvimentos de projetos. Alguns aspectos desse editor são:

• Sintaxe ajustável • Assistentes de parâmetros • Código modelo • Autocorreção para tipos comuns • Função para saltos de linhas. • Assistentes de códigos

Code Assistant (assistente de código)

O Assistente de código é uma excelente ferramenta disponível no mikroC, pois o programador não precisa editar todo o código e ainda por cima analisa o formato da constução do comando;

Page 6: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 1.3 – Code assistant

Para acioná-lo, digite as primeiras letras e pressione CTRL + SPACE que aparecerá uma janela informando os comandos associados às letras digitadas.

Parameter Assistant (assistente de parâmetro)

O assistente de parâmetro é usado para auxiliar o programador a redigitar alguns parâmetros do programa;

Para acioná-lo, basta pressionar as teclas CTRL + SHIFT + SPACE. Auto Correct (correção automática)

O compilador mikroC possui a opção de correção automática, corrigindo erros de sintaxe cometido pelo programador. Para corrigir os palavras é necessário que você adicione as palavras corretas e erradas através do menu Tools > Preferences > Auto Correct. As palavras erradas serão substituídas pelas palavras corretas desde que estejam registradas no menu > Auto Correct.

Comment / Uncomment (Comentar / não comentar)

Através dessa função você poderá facilmente adicionar linhas ou blocos de comentários no seu programa. Basta clicar com o mouse no ícone Comment / Uncomment do Code Toolbar.

Goto Line (vá para linha)

Page 7: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Essa opção é aplicada para saltar de uma linha do editor de código para outra. Basta pressionar as teclas de atalho CTRL + G que aparecerá uma caixa onde deverá ser inserida o número da linha que deseja saltar.

Figura 1.4

Messages Window (janela de mensagens) Nos casos de erros encontrados durante a compilação, o compilador reporta o erro e não gera o arquivo .hex. Além disso, o Message Window informa o tamanho do código de programa (ROM) gerado pelo sistema, assim como a memória de dados (RAM) usada pelo programa. Para visualizar a janela de mensagens, vá em View > Messages.

Figura 1.5 - Janela de mensagens

Procedures List (Lista de procedimentos) Para visualizar a lista de todos os procedimentos utilizados pelo compilador, selecione View > Procedures List pelo menu ou prossione CTRL + L no teclado.

Project Setup Em Project Setup podemos alterar as configurações dos projetos criado no mikroC. Para acessá-lo pressione Project > Edit Project.

Ferramentas Integradas USART Terminal

O mikroC possui uma excelente ferramenta para recepção e envio de dados seriais via RS232, o Comunication Terminal (terminal de comunicação). Para acessá-lo, clique no menu Tools > USART Terminal ou no ícone terminal que fica na Toolbar.

Page 8: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 1.6 – Terminal Serial

Para configurá-lo é muito fácil e simples; basta escolher a porta de comunicação serial através do Settings Com Port, definir a velocidade de comunicação em Settings Baud, os bits de dados e a paridade. Após este procedimento, clique em Connect COM para que a porta seja aberta. Todos os caracteres recebidos e enviados serão mostrados na caixa de texto maior da janela. Para enviar algum dado, basta digitá-lo na caixa de texto ao lado do botão send e pressionar send.

ASCII Chart (Caractere ASCII)

Esta ferramenta do mikroC disponibiliza a tabela ASCII Standart, tabela esta muito útil para trabalhar com strings, displays etc.

Podemos acessá-la através do menu Tools > ASCII Chart.

Page 9: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 1.7 - Tabela ASCII

Seven Segment Display Decoder (Decodificador de 7 segmentos)

O decodificador de 7 segmentos é uma ferramenta simples que permite descobrir os valores decimais ou hexadecimais correspondente ao dígito do display desejado. Basta clicar com o mouse na imagem do display para visualizar os valores em cátodo e ânodo comum. Esta ferramenta é muito importante quando acionamos displays de 7 segmentos por varredura.

Page 10: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 1.8 - Seven Segment Display Decoder

Graphic LCD Bitmap Generator (gerador de imagem para LCD Gráfico)

Esta ferramenta do mikroC gera código hex. de uma imagem BMP para utilizar em display gráficos.

Page 11: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 1.9 - Graphic LCD Bitmap Generator

Sua utilização é muito simples, permite que utilizemos LCD's gráficos com controladores T6963C e com Drives KS0108. Basta clicar no botão Load BMP Picture para carregar a imagem BMP.

Debugger

É possível debugar o programa compilado através do próprio mikroC. O uso do debugador é muito importante para certos aplicativos, pois evita a necessidade de gravar um programa em uma placa de teste. Para ativar o Debugador, vá em Run > Start Debugger.

Figura 2.0 – Modo Debugger do MikroC – necessário mikroICD

Através do debugador você poderá testar o funcionamento lógico do seu programa, podendo visualizar todos os registradores, variáveis, funções entre outras.

Janelas de estatísticas

Após a compilação do programa, é possivel ter acesso à janela de estatísticas que nos informa o tamanho do código gerado, tamanho das rotinas, posições ocupadas pelas variáveis, memória de programa e dados, etc. Para visualizá-la, clique em View > View Statistics.

Page 12: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Figura 2.1 – Janela de estatística

Note que a janela de estatísticas é composta por seis abas. A primeira informa o tamanho de RAM e ROM usadas pelo programa.

Informa o tamanho das rotinas utilizadas no programa

Informa os endereços de início e término de cada rotina do programa

Page 13: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Informa com maiores detalhes os endereços, tamanho das rotinas compiladas do projeto.

Informa todos os endereços das variáveis na RAM, os SFR's e os GPRS.

Informa nosso programa C convertido em Assembly pelo compilador.

Criando nosso primeiro programa no mikroC 1º. O primeiro passo é abrir o mikroC; 2º. Acesse o menu Project > New Project... 3º. No menu New Project, preencha o painel de configuração conforme valores seguintes:

• Project Name: PISCA_PISCA • Project Path : (escolha uma pasta no seu pc) • Description: Deixar em branco • Device: P18F452 • Clock: 008.000000 • Oscilador -> HS (definimos o tipo de oscilador utilizado no projeto) • Watchdog -> OFF (Watchdog timer desligado) • LVP -> OFF (Low Voltagem Programming - desligado) • Brown Out -> OFF (Brown-out desligado) • Debugger -> OFF (modo debugger desabilitado)

4º. Clique no botão OK para salvar as configurações do projeto.

Page 14: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

Pronto agora estamos pronto para começar a escrever nosso programa em nosso editor. Para exemplificar copie e cole o programa seguinte na sua tela de edição do mikroC. Nosso programa: /*'****************************************//**********************************

'MicroGenios | MicroControladores *

'Site: www.microgenios.com.br *

'Autor: Fernando Simplicio de Sousa *

' ***************************************//**********************************

'Programa exemplo: PISCA_PISCA.c

'Cristal: 8MHz - modo HS *

'Microcontrolador PIC18F452 Microchip *

'Tools: Kit PICgenios PIC18F Módulo Profissional MicroGenios

'Configuração: DIP1 - Chave O9 -ON

'****************************************//**********************************

'Objetivo:

'Este simples programa inverte todo os pinos do PORTD em intervalos

'de 1 segundo

'****************************************//**********************************/

void main(){ //'função principal do programa

trisd = 0; //'configura portd como saida

portd = 0; //'zera todos os pinos do portd

while(1){

portd = 0B11111111; //'seta todos os pinos do PORTD

delay_ms(1000); //'delay de 1 segundo

portd = 0; //'zera todo o portd

delay_ms(1000); //'delay de 1 segundo

}

}

5º. Salve seu programa através do ícone salvar na barra de ferramentas do mikroC e pressione o ícone

Build Project , localizado na barra de ferramenta superior , ou pressione as teclas de atalho CTRL + F9 para compilar seu programa;

Figura 2.2 – mikroC compilando nosso programa

Page 15: Introdução - Conhecendo o MikroC

_________________________________________

MicroGenios – Treinamentos, Kits de desenvolvimento e muito mais...

www.microgenios.com.br | www.portalwebaula.com.br (11) 5084-4518 | 3384-5598

6º. Ao finalizar a compilação do nosso programa, deverá aparecer na janela de mensagens do editor uma mensagem de Sucesso de compilação. Caso apresente algum erro, verifique seu programa.

Figura 2.3 – Sucesso na compilação do programa

Pronto, seu projeto foi criado e compilado com sucesso; O compilador mikroC gerou na compilação o arquivo .HEX, é este arquivo que deverá ser gravado no microcontrolador PIC.

Resultado da compilação do programa: PISCA_PISCA.hex :1000000004EF00F0FFFFFFFF956A836AFF0E836E27

:100010000B0E0C6EFF0E0B6EFF0E0A6E0C2E01D037

:1000200007D00B2E01D003D00A2EFED7FAD7F6D771

:10003000330E0B6EFF0E0A6E0B2E01D003D00A2E6C

:10004000FED7FAD7880E0A6E0A2EFED7836A0B0EE9

:100050000C6EFF0E0B6EFF0E0A6E0C2E01D007D039

:100060000B2E01D003D00A2EFED7FAD7F6D7330EC7

:100070000B6EFF0E0A6E0B2E01D003D00A2EFED798

:10008000FAD7880E0A6E0A2EFED7C0D7FFD7FFFF19

:0200000400F00A

:10000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00

:10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0

:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0

:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0

:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0

:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0

:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0

:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90

:10008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80

:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70

:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60

:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50

:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40

:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30

:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20

:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10

:020000040030CA

:0E000000FFFAFFFEFFFFFAFFFFFFFFFFFFFF0B

:00000001FF