Para construção do sistema embarcado, foram utilizados micro-controladores da série PIC da Microchip, pois são muito populares - são fáceis de encontrar no mercado nacional a preço relativamente baixo em comparação a outros micro-controladores.
Os micro-controladores PIC (Peripheral Interface Controller) dispõem internamente de uma CPU (Unidade Central de Processamento) que controla todas as funções realizadas pelo sistema. A CPU também possui: memória de programa PROM (memória programável somente de leitura), memória RAM (memória de acesso aleatório), dentre outros.
Os PIC’s podem ser programados em linguagem mnemônica (assembly) ou usando compiladores de linguagem de alto nível (Pascal, C, Basic) que geram um código em formato hexadecimal (Intel Hex Format ou linguagem de máquina) que são usados para serem gravados na memória de programa desses dispositivos. Para tal procedimento, utiliza-se um hardware especial (gravador) acoplado a um PC.
Protocolo de Comunicação
A comunicação entre os módulos é feita utilizando o protocolo RS232 (também conhecido por EIA RS-232C) que é um padrão para troca serial de dados binários entre um DTE (terminal de dados, de Data Terminal Equipment) e um DCE (comunicador de dados, de Data Communication Equipment). É comumente usado nas portas seriais dos PC’s (Personal Computer – computador pesoal).
No protocolo de comunicação RS-232, caracteres são enviados um a um como um conjunto de bits. A codificação mais comumente usada é o "start-stop assíncrono" que usa um bit de início, seguido por sete ou oito bits de dados, possivelmente um bit de paridade, e um ou dois bits de parada sendo, então, necessários 10 bits para enviar um único caractere. Tal fato acarreta a necessidade em dividir por um fator de dez a taxa de transmissão para obter a velocidade de transmissão. A comunicação serial pode ser:
Síncrona: onde existe um canal de transmissão de dados e um canal de sincronismo, usado para mostrar ao receptor onde começa e onde termina cada conjunto de dados que está sendo transmitido pelo canal de dados;
Assíncrona: o mesmo canal que transmite os dados é também utilizado para a transmissão de sinais para identificar o início e o término do conjunto de dados.
Um ponto importante na especificação de um enlace serial é a velocidade de transferência de dados. A velocidade de uma interface serial é dada normalmente em bits por segundo, ou bauds. Por isto na literatura normalmente se encontrarão especificações do tipo 9600 bps, N, 8, 1 o que significa 9600 bauds (bits por segundo), sem paridade, oito bits de dados e 1 stop bit.
Existem diversos "padrões" que são chamados de RS-232, mas na verdade não o são. TTL RS-232 usa +5V para alto e 0V para baixo. CMOS RS-232 usa +3,3V para alto e 0V para baixo. Muitos CI’s (circuitos integrados) utilizam níveis TTL ou CMOS. Portanto, para conectar um equipamento digital a uma interface RS232, é preciso transformar os níveis TTL (0 a 5 volts) em RS232 e vice-versa. Isto é realizado por conversores de nível. Neste projeto, optou-se pelo MAX232 da Maxim por ser simples de usar e haver vasta bibliografia disponível na internet.
Módulos Embarcados
CCS PIC C Compiler
Para o desenvolvimento do sistema embarcado foi utilizado o CCS PIC C Compiler da CCS INFO por disponibilizar farta biblioteca de funções pré-definidas. Os programas desenvolvidos neste compilador são codificados na linguagem “C” podendo também introduzir algumas instruções em assembly.
O principal motivo pela escolha da linguagem C é que a preocupação está na programação da aplicação, ao invés de ser focada no hardware que normalmente temos que lidar quando programamos em assembly. Isso ocorre porque o compilador assume para si tarefas como o controle e a localização das variáveis, operações matemáticas e lógicas, verificação da memória, entre outros.
Gravador DIY K149
Para realizar a gravação dos sistemas desenvolvidos nos micro-controladores foi utilizado o gravador DIY K149-A da DIY Electronics. Este tipo de gravador é compatível com diversos micro-controladores PIC desde a série 10F até a série 18F. O gravador é um equipamento projetado de acordo com as características do micro-controlador. Optou-se por este modelo por ter um preço acessível e possuir interface USB (Universal Serial Bus) permitindo a gravação de modo mais rápido.
Simulador Proteus
Todos os circuitos eletrônicos desenvolvidos foram projetados e simulados utilizado o software Proteus. Esta é uma suíte que agrega um ambiente de simulação de circuitos eletrônicos chamado ISIS e possui um programa para desenho de circuito impresso chamado Ares Professional.