• Nenhum resultado encontrado

KIT NXP FREEDOM FRDM KL25Z

N/A
N/A
Protected

Academic year: 2021

Share "KIT NXP FREEDOM FRDM KL25Z"

Copied!
28
0
0

Texto

(1)

KL25Z

KIT NXP FREEDOM FRDM – KL25Z

PSI 3212 – LABORATÓRIO DE CIRCUITOS ELÉTRICOS AUTOR : LUCAS DE ANDRADE BOTH

(2)

• Este manual tem como objetivo mostrar aos alunos todas as etapas necessárias para a programação do microcontrolador FRDM - KL25Z.

• Existem diversas plataformas de desenvolvimento de programas para o FRDM – KL25Z. Este manual terá como foco o acesso ao MBED, plataforma projetada pela ARM.

• O MBED foi escolhido por ser de simples acesso e gratuito. As pré-configurações necessárias para o desenvolvimento de programas são mínimas, o que facilita a aprendizagem e o trabalho.

• Ao final deste documento o aluno deverá saber como entrar na plataforma MBED e utilizar a sua estrutura de programação.

MANUAL DE PRIMEIROS PASSOS PARA PROGRAMAÇÃO DO FRDM -KL25Z

(3)

1.1 Plataforma de desenvolvimento

• O MBED é um compilador virtual, exigindo assim que o usuário tenha acesso a internet enquanto constrói o código do programa.

• A sua linguagem de programação é basicamente C/C++, com pequenas variações. • Seu esquema de programação assemelha-se ao CodeBlocks.

• Para ter acesso ao MBED, acesse o site abaixo:

(4)

• O link anterior dá acesso a seguinte página.

(5)
(6)
(7)

• Após o cadastro, o sistema entrará automaticamente na conta do usuário.

• Caso isso não ocorra, verifique na caixa de entrada do e-mail cadastrado a mensagem do site do MBED, como a mostrada abaixo.

• Clique no link indicado pela seta, e o sistema entrará automaticamente na conta cadastrada.

(8)
(9)

• Antes de criar qualquer programa, é necessário selecionar o dispositivo correto para o qual o programa será baixado.

(10)
(11)

• Na aba “Boards”, selecione o respectivo microcontrolador. No nosso caso, é FRDM-KL25Z.

(12)
(13)

• O site dará a resposta “Platform FRDM-KL25Z is now added to your account!”. • Clique em “Open mbed Compiler”.

(14)

• O site abrirá uma nova aba e sugerirá a criação de um novo programa.

• Escolha o nome do programa em “Program Name” e, em seguida, clique em “OK”.

(15)

• Perceba que na aba “My Programs” aparecerá o novo programa criado.

(16)

• Perceba que, a princípio, já existe um código pronto como mostra a figura abaixo. Esse programa faz com que o “LED1” (neste caso o led vermelho) pisque em um intervalo de 0.2 segundos.

(17)
(18)
(19)

• Com o cabo USB-Mini, conecte uma das extremidades ao computador e a outra à entrada OpenSDA do microcontrolador, como mostrado na figura abaixo.

• Lembrete: Para evitar possíveis confusões, lembre-se que a entrada que oferece comunicação serial entre o microcontrolador e o computador é a mais próxima ao LED (indicado na figura com a seta).

(20)

• Na pasta “downloads”, clique com o botão direito sobre o programa baixado. Clique em “Enviar para” e selecione FRDM-KL25Z, como mostrado na figura.

(21)

• Reinicie o microcontrolador através do botão localizado entre os conectores USB.

• Após todos esses processos, você verá que o led vermelho do microcontrolador ficará piscando, como era esperado.

(22)

1.2 Como usar os pinos do FRDM-KL25Z e o MBED

• O FRDM-KL25Z possui vários pinos com diversas funcionalidades, como pode ser visto abaixo.

• A mais importante, e que será muito utilizada no projeto da disciplina, é classificada como “Analog In”.

• Ela é responsável por receber sinais analógicos, na faixa de 0 até 3.3V, e convertê-los em sinais digitais que podem ser interpretados pelo microcontrolador.

(23)

• Para declarar um pino como entrada “Analog In” basta seguir o exemplo da figura.

• O usuário deve digitar “AnalogIn”, declarar um nome para esta entrada (no caso do exemplo é ain0) e declarar qual o respectivo pino, sendo este último entre parêntesis.

• Atenção: Nunca esqueça de incluir a biblioteca “mbed.h”. Ela é responsável pelo reconhecimento dos pinos de entrada e saída.

(24)

e o “GND”.

• O “P3V3” funciona como uma fonte de tensão contínua, fornecendo 3.3V de saída para o circuito.

• O “GND” é o terra/ground do microcontrolador, que realiza a referência do circuito. • Tanto para o “P3V3” quanto para o “GND” não é necessário fazer a declaração no script

do programa, como foi feito para as entradas “Analog In”.

• ATENÇÃO: é extremamente importante que durante a construção e testes do projeto, o grupo coloque na mesma referência todos os equipamentos, como microcontrolador, gerador de funções e fonte de tensão contínua. Conecte todos os “GNDs” em um único ponto.

GND P3V3

(25)

1.3 Funções importantes da biblioteca “mbed.h”

• O ambiente do MBED também proporciona algumas facilidades que não são muito usadas em compiladores de C/C++, como CodeBlocks e Eclipse.

• A primeira delas é a função “wait”. Quando o usuário chama esta função a CPU do microcontrolador entrará em um loop esperando o tempo requerido, em segundos, para realizar a próxima linha de código.

• Abaixo segue um exemplo de como usar esse artifício. Perceba que toda a vez que o programa realiza a função “wait(0.5)”, o led vermelho ficará acesso ou apagado por 0.5 segundos.

(26)

é usado para configurar uma interrupção recorrente para chamar uma outra função definida pelo usuário repetidamente a uma taxa específica.

• Além disso, o “Ticker” não entra em um loop como o “wait”, mas permite que dois processos ocorram concomitantemente dentro do microcontrolador.

• Abaixo é mostrado como o “Ticker” pode ser usado.

• Perceba que é necessário declarar um objeto do tipo “Ticker” (linha 3).

• Na linha 13, o “Ticker” é ativado por meio de “.attach” e os respectivos parâmetros. Veja que a função “void flip” será executada a cada 2.0 segundos, mudando a variável “led2”.

(27)

• Uma forma de imprimir um vetor ou variável, por meio do emulador serial, é seguindo o exemplo abaixo.

• É necessário criar um objeto do tipo “Serial” com os referidos parâmetros, como mostrado na linha 3.

• Para que a informação seja impressa é necessário seguir a linha 9. O objeto vem acompanhado de “.printf” e dentro do parêntesis a informação.

• Nas linhas 10, 11 e 12 são mostradas as formas de como imprimir valores do tipo “int”, “float” e “double”, respectivamente.

• Para que os valores sejam impressos de forma a facilitar a visualização, usa-se “\n\r”. • “\n” serve para que a próxima informação que será impressa venha na linha abaixo. • “\r” serve para que a próxima informação que será impressa venha alinhada à

esquerda.

• ATENÇÃO: Para que a comunicação serial funcione adequadamente é necessário instalar certos Drivers. Para isso, vide arquivo “Comunicação Serial”.

(28)

// Mede dois sinais #include "mbed.h"

//#include "math.h" // Descomente esta linha caso queira usar funções como sin(x) Ticker flipper;

AnalogIn ain0(PTB0); AnalogIn ain1(PTB1); DigitalOut myled(LED1);

int aux2 = 0; // Variavel auxiliar, para indicar quando realizar uma amostragem void flip() {

aux2 = !aux2; }

int main()

{ // valor mínimo de ts: ~0.0001 (10 kHz)

int contador = 0, tamanho=1000; // Tamanho dos vetores de amostras. float ts = 0.0001, sinal0[tamanho], sinal1[tamanho];

myled = 0; // Acende led

flipper.attach(&flip, ts); // chama a funcao flip apos ts segundos while(contador<tamanho) {

if(aux2 == 1){

sinal0[contador] = ain0; // lê sinais analógicos de dois canais sinal1[contador] = ain1;

aux2 = 0; contador++; }

}

flipper.detach(); /* para o ticker */ myled = 1; // Apaga led quando termina

// Coloque aqui o seu programa para tratamento dos dados. }

Nascimento.

• Ele utiliza todas as funções e artifícios descritos anteriormente para fazer a aquisição de dois sinais analógicos a cada 100 µs.

Referências

Documentos relacionados

Corograpliiu, Col de Estados de Geografia Humana e Regional; Instituto de A lta C ultura; Centro da Estudos Geográficos da Faculdade de Letras de Lisboa.. RODRIGUES,

Paradoxalmente, diante desta evidência, os escolares relataram que o Sistema de Frequência Modulada não está sendo usado com frequência no ambiente escolar, mesmo

A vida, para estas autoras, tornou-se mais “individual” numa época que o Martin Albrow (1997. In: The global age. Stadford: Standford Univ. Press apud CALHEIROS e PAIVA, 2001)

A segunda contribuição é explicitar que a aplicação desse método, mesmo que tratando de um recorte específico no processo histórico de formação para o trabalho simples e

analisados na avaliação de títulos e, não serão pontuados para a classificação e resultado final do candidato. 3.15 Em caso de empate, terá prioridade o candidato que

De uma forma geral, os resultados deste estudo demonstraram que (i) tanto destrímanos como sinistrómanos obtiveram melhores resultados quan- do o estímulo se deslocava no plano

Qualquer divulgação, utilização, disseminação ou reprodução (total ou parcial) desta mensagem ou das informações nela contidas é proibida e estará sujeita às penas da

Das pesquisas já desenvolvidas cujo tema é justamente o ensino da Quí- mica, merece destaque um trabalho apresentado em 2010 na 7ª Semana de Licenciatura