Tutorial para projeto e utilização de uma placa baseada em processador da família MSP430.

Os requisitos básicos a serem cumpridos pela placa a ser desenvolvida são listados a seguir:

  • possuir um chip de Real Time Clock (RTC);
  • possuir um sensor de temperatura;
  • possuir uma porta de comunicação serial;
  • possuir um processador para realizar a leitura do RTC, amostragens de temperatura (do sensor de temperatura), e envio das informações via porta serial para o mundo exterior.

Para atender esses requisitos, os seguintes esquemáticos foram projetados:

Essa pré-definição foi realizada, visando facilitar as etapas iniciais do projeto, e acelerar o processo de busca e aquisição dos componentes.


I – Seleção e aquisição dos componentes

Os componentes a serem utilizados estão listados nos esquemáticos do circuito base, e do circuito de comunicação. A primeira atividade consiste em preparar uma lista com todos os componentes a serem adquiridos. Alguns componentes a serem adquiridos são:

  • CPU => MSP430F1232IDW, 16-bit Ultra-Low-Power Microcontroller, 8kB Flash, 256B RAM, 10 bit ADC, 1 USART.
  • RTC (relógio/calendário) => BQ32000DR – RTC com interface I2C, compatível com DS1338.
  • Sensor de Temperatura => TMP75AIDR – Interface I2C/SMBus
  • Regulador de Tensão => LM3940IT – 3.3/NOPB-1A Low Dropout Regulator for 5V to 3.3V Conversion

Entrar no site da Texas Instruments, fazer um cadastro, selecionar os componentes desejados, e solicitar amostras. Em 72 horas estará recebendo os componentes em casa (ou no endereço fornecido, sem custo algum.

IMPORTANTE!!! Para cada pedido é possível solicitar APENAS 5 unidades de cada componente. Assim, a turma precisará se organizar visando compartilhar os pedidos. Por exemplo, no caso de uma turma com 18 alunos, e considerando o desenvolvimento do trabalho em duplas, bastaria três alunos da turma realizar a solicitação dos samples da Texas.

Comprar na Farnell Newark FT232RL, o chip conversor de USB para UART para gravar o firmware no MSP430.

Identificar os demais componentes necessários (resistores, capacitores, LEDs, conectores, barras de pinos, …), e procurar outros fornecedores.


II – Desenvolvimento das placas

Utilizando como base os esquemáticos fornecidos, cada grupo deverá projetar sua própria placa. Pode ser desenvolvida apenas uma placa com o MSP430, periféricos e programador, ou podem ser desenvolvidas duas placas, uma com o programador, e outra com o MSP430 e periféricos.

Os grupos podem selecionar a ferramenta de projeto que acharem mais adequada (ex. Eagle, Altium, Orcad, …). Um tutorial do Eagle interessante esta’ disponivel na pagina da disciplina: [Tutorial Eagle].

As etapas de um projeto PCB (Printed Circuit Board) são as seguintes:

  1. Entrada do esquemático (schematic capture) utilizando uma ferramenta de EDA (Electronic Design Automation), que pode ser o Orcad, Eagle, …
  2. Definição do tamanho da placa, de acordo com a quantidade de componentes, número de camadas da placa, entre outros.
  3. Definição do número de camadas da placa.
  4. Posicionamento dos componentes na placa, considerando as necessidades de alimentação, entre outros.
  5. Roteamento.
  6. Geração do arquivo a ser utilizado na fabricação (Gerber file), geração de arquivos de teste e net lists.
  7. Envio do arquivo Gerber e também das informações de furação (Drill) para o fabricante do PCB. A placa em questão possui baixa complexidade, e pode ser fabricada no lab. na UFSC pelos próprios grupos.
  8. Utilizar os dados de posicionamento para montar a placa (soldar os componentes) – também pode ser terceirizado.
  9. Uso das net lists e dados de teste para a verificação e testes elétricos do PCB.

III – Teste das placas

  1. O primeiro teste a ser realizado é a inspeção. Trata-se de uma inspeção visual, utilizando o esquemático e o layout como referência.
  2. Com a placa ainda sem alimentação, deve ser utilizado um multimetro para identificar possíveis fontes de mal contato, sendo identificados circuitos abertos e fechados indevidamente.
  3. Com a placa alimentada, utilizar um multimetro para identificação das tensões esperadas em vários pontos do circuito. Um osciloscópio pode ser utilizado para identificar se o sinal de clock está chegando no microprocessador (e outros componentes), conforme o esperado.
  4. Compilar o programa teste.c (ou o pisca LED) utilizando o Makefile disponível para cada um dos exemplos. Os arquivos Makefile executam os seguintes comandos:
    • msp430-gcc -Os -mmcu=msp430x2619 -o teste.elf teste.c
    • msp430-objdump -DS teste.elf > teste.lst
    • msp430-objcopy -O ihex teste.elf teste.hex
  5. Gravar o programa de teste na placa com o msp430-bsl (a partir do Makefile), utilizando o FT232 (com a respectiva placa), uma vez que esse esquemático não suporta JTAG:
    • msp430-bsl –invert-reset –invert-test -c16 -ep -r teste.elf
  6. Em caso de problemas na gravação, voltar para o passo 1 dessas dicas de teste da placa.
  7. Em caso de sucesso na gravação, mas o programa não apresenta o funcionamento esperado, as melhores ferramentas para depuração são o osciloscópio, e o analisador lógico.

IV – Recursos disponíveis

A placa a ser desenvolvida será utilizada no trabalho final da disciplina, que consiste em um sistema em C++ a ser executada em um kit de prototipação disponível no laboratório.

A aplicação da placa a ser desenvolvida poderá ser desenvolvida em C ou assembly, e podem ser aproveitados códigos fontes disponibilizados na página da disciplina.

Os seguintes recursos estão disponíveis para os alunos:


Ultima atualização: 12 de agosto de 2015.