Você está na página 1de 19

Aula 3 - Introduo Programao

de Microcontroladores

Engenharia Eltrica/Computao
Microcontroladores e Microprocessadores
Fernando Rocha

Tpicos
Linguagens e Compiladores
Assistente de Criao de Programas (Wizard)

Estrutura de um programa em C (PICC CCS )


Comandos de controle de programa.
Comandos de entrada e sada digital (I/O).

Linguagens e Compiladores
Assembly
MPLAB

C
MikroC, CCS PICC, Hitech PICC, MPLAB C18

Basic
MikroBasic

Diagrama de blocos
Flowcode

Linguagem C
Linguagem de programao de uso geral
desenvolvida no incio da dcada de 70.

Programao procedural
imperativo) .

(paradigma

Especificao das etapas que um programa


deve seguir para alcanar um estado
desejado.
Chamadas a subrotinas (funes).

Vrias outras linguagens de programao


foram baseadas na linguagem C.
Uma das linguagens mais utilizadas de
todos os tempos.

Linguagem C

Linguagem C
Arquivo de cdigo (Source Code)
terminado com a extenso .c
contm a implementao do cdigo
compilado gerando um arquivo .o

Arquivo de cabealho (Header File)


terminado com a extenso .h
contm apenas defines e prottipos
no compilado

Linguagem C
Comentrios:
Uma linha:
Bloco:

//comentario
/* comentario */

Estrutura de um programa em C (PICC CCS )


Bibliotecas
Headers
Defines

Cdigo executado
durante as
interrupes

Funo Principal
Ponto de partida
do programa

Linguagem C
Tipos de dados:
Toda informao que inserida num computador
armazenada em formato binrio
Cada tipo de informao contm uma quantidade
diferente de bits
Cada bit pode representar informaes diferentes,
mesmo dentro de uma mesma varivel

Tipos de dados (CCS PicC)


C Standard Type

Default Type

short

int1

char

unsigned int8

int

int8

long

int16

long long

int32

float

float32

Tipo

Tamanho

Unsigned

int1

1 bit

0a1

int8

8 bit

0 a 255

int16

16 bit

0 a 65535

int32

32 bit

0 a 4294967295

float32

32 bit

Signed
N/A
-128 a 127

-32768 a 32767
-2147483648 a 2147483647

-1.5 x 1045 a 3.4 x 1038

Comandos de controle de programa


If

if (expr)
stmt-1;
[else
stmt-2;]

Switch

switch (cmd) {
case 0:printf("cmd 0");
break;
case 1:printf("cmd 1");
break;
default:printf("bad cmd");
break; }

Comandos de controle de programa


For

for (i=1;i<=10;++i)
printf("%u\r\n",i);

While

while (get_rtcc()!=0)
putc('n');

Do-While

do {
putc(c=getc());
} while (c!=0);

O Loop Infinito
Os sistemas embarcados geralmente executam uma
mesma tarefa, de maneira repetitiva, durante todo o seu
funcionamento.
Cdigo principal colocado dentro de um loop infinito:

Linguagens e Compiladores
Compilador PICC da Empresa CCS
Programao em C com funes simplificada e
otimizadas para os perifricos do microcontrolador
PIC.

Assistente de Criao de Programas (Wizard)


O compilador PICC possui um assistente para a
criao de programas, que facilita o processo de
criao de um programa, configurando o
microcontrolador e os perifricos.
Opes de configurao do microcontrolador
Device: microcontrolador a ser utilizado.
Oscilator Frequency: frequencia do oscilador do
PIC (interno ou externo).

Assistente de Criao de Programas (Wizard)


Tipo de oscilador: dependente do
microcontrolador .
Opes de segurana em hardware:

Power-Up Timer
Brown-Out Reset
Watchdog Timer
Porta de Reset

Configuraes de Hardware

Assistente de Criao de Programas (Wizard)

Comandos de entrada e sada digital


set_tris_x(value)

Define o valor do registro de direo das portas de E/S. O valor 1 define


a porta como entrada e 0 como sada.

output_high(pin)

Coloca o pino informado em nivel lgico 1 (alto).

output_low(pin)

Coloca o pino informado em nivel lgico 0 (baixo).

output_toggle(pin)

Inverte o estado do pino informado.

input(pin)

Retorna o estado do pino informado.

Dvidas?

fernandorocha@logatti.edu.br