Pin pic

Disponível somente no TrabalhosFeitos
  • Páginas : 120 (29787 palavras )
  • Download(s) : 0
  • Publicado : 21 de março de 2012
Ler documento completo
Amostra do texto
APOSTILA DE MICROCONTROLADORES PIC E PEFIFÉRICOS
www.tinyurl.com/SanUSB

APOSTILA DE
MICROCONTROLADORES
PIC E PERIFÉRICOS

Sandro Jucá

APOSTILA DE MICROCONTROLADORES PIC E PEFIFÉRICOS

1. INTRODUÇÃO
Um microcontrolador é um sistema computacional completo, no qual estão incluídos
internamente uma CPU (Central Processor Unit), memórias RAM (dados), flash (programa) e
E2PROM, pinosde I/O (Input/Output), além de outros periféricos internos, tais como,
osciladores, canal USB, interface serial assíncrona USART, módulos de temporização e
conversores A/D, entre outros, integrados em um mesmo componente (chip).

O microcontrolador PIC® (Periferal Interface Controler), da Microchip Technology Inc.
(empresa de grande porte, em Arizona, nos Estados Unidos da América), possui umaboa
diversidade de recursos, capacidades de processamento, custo e flexibilidade de aplicações.

1.1. ASSEMBLY X LINGUAGEM C

A principal diferença entre uma linguagem montada (como assembly) e a linguagem de
programação C está na forma como o programa objeto (HEX) é gerado. Em assembly, o processo
usado é a montagem, portanto devemos utilizar um MONTADOR (assembler), enquanto que emlinguagem C o programa é compilado. A compilação é um processo mais complexo do que a
montagem. Na montagem, uma linha de instrução é traduzida para uma instrução em código de
máquina. Já em uma linguagem de programação, não existem linhas de instrução, e sim estruturas
de linguagem e expressões. Uma estrutura pode ser condicional, incondicional, de repetição, etc...
As expressões podem envolveroperandos e operadores mais complexos. Neste caso, geralmente,
a locação dos registros de dados da RAM é feita pelo próprio compilador. Por isso, existe a
preocupação, por paret do compilador, de demonstrar, após a compilação, o percentual de

2

APOSTILA DE MICROCONTROLADORES PIC E PEFIFÉRICOS

memória RAM ocupado, pois neste caso é relevante, tendo em vista que cada variável pode
ocuparaté 8 bytes (tipo double).

Para edição e montagem (geração do código HEX) de um programa em assembly, os
softwares mais utilizados são o MPASMWIN (mais simples) e o MPLAB. Para edição e
compilação em linguagem C (geração do código HEX), o programa mais utilizado é o PIC C
Compiler CCS®.

Os microcontroladores PIC possuem apenas 35 instruções em assembly para a família de
12 bits (PIC12)e 14 bits (PIC16), descritas nas tabelas abaixo, e 77 instruções para a família de
16 bits (PIC18). A tabela abaixo mostra algumas instruções em assembly.

3

APOSTILA DE MICROCONTROLADORES PIC E PEFIFÉRICOS

Como pode ser visto, a família PIC16F (14 bits com aproximadamente 35 instruções) não
possui uma instrução em assembly que realize multiplicação ou divisão de dois operandos, o quecuriosamente é presente na linguagem assembly da família MCS51 (256 instruções que
satisfazem a maioria das aplicações industriais). Portanto, para realizar uma multiplicação, é
necessário realizar somas sucessivas, ou seja, em vez de multiplicar uma variável por outra,
realizar somas de uma variável em uma terceira área de memória, tantas vezes quando for o valor
da segunda variável. (X * 5 =X + X + X + X + X).

Mas em linguagem C é possível se utilizar o operador de multiplicação (*), de forma
simples e prática. Ao compilar, a linguagem gerada irá converter a multiplicação em somas
sucessivas sem que o programador se preocupe com isso.

1.2.

VANTAGENS

X

DESVANTAGENS

DA

LINGUAGEM

C

PARA

MICROCONTROLADORES

- O compilador C irá realizar o processo detradução, permitindo uma programação mais
amigável e mais fácil para desenvolvimento de aplicações mais complexas como, por exemplo,
uso do canal USB e aplicações com o protocolo I2C.
4

APOSTILA DE MICROCONTROLADORES PIC E PEFIFÉRICOS

- A linguagem C permite maior portabilidade, uma vez que um mesmo programa pode ser
recompilado para um microcontrolador diferente, com o mínimo de...
tracking img