Tutorial 0 - Kinetis SDK (KSDK) - Introdução - Preparando o ambiente

Document created by Denis Shimizu Employee on Jun 16, 2015Last modified by Denis Shimizu Employee on Jun 16, 2015
Version 3Show Document
  • View in full screen mode

Bom dia,pessoal!

 

   O assunto do momento é o mundo do Internet-of-Things e nessa série de tutoriais vamos aprender a utilizar a placa FRDM-K64F da Freescale como um ponto de partida para sua aplicação usando o pacote de software Kinetis Software Development Kit. Esta é uma excelente placa para iniciar os primeiros projetos para IoT por possuir conectividade USB, Ethernet, núcleo ARM Cortex-M4 e um belíssimo conjunto de periféricos.

   O procedimento a ser mostrado nesta série é muito parecido para outros microcontroladores suportados pelo KSDK.

 

Introduçao ao KSDK

 

   O Kinetis Software Development Kit (Não confundir com KSDK com KDS,que é a IDE de desenvolvimento da Freescale) é um pacote de softwares reunidos para facilitar o desenvolvimento com os microcontroladores ARM da Freescale. Ele é compatível com várias IDEs e compiladores do mercado como IAR,KEIL, GCC e KDS e possui dentro dele:

 

- Bibliotecas de acesso a periféricos com funções chamáveis em linguagem C - I/Os, ADC, UART, Timers, DAC , etc.

- Pilhas TCP/IP ( RTCS - proprietária da Freescale e LwIP), e dentro do RTCS inúmeros protocolos como HTTP, TELNET, SMTP e SNMP

- Pilha USB - suporte a USB Host e Device nas classes Mass Storage (Acesso a pen drives e SD Card), HID (Mouse, teclado) e CDC (Interface USB-Serial)

- RTOS - MQX, uCOS e FreeRTOS - embora não seja obrigatório utilizar sistema operacional com o KSDK, é possível utilizar os softwares bareboard, ou seja, sem sistema operacional

- Biblioteca de funções matemáticas CMSIS - instruções trigonométricas, de operações de matrizes, e outras.

- Exemplos, exemplos, exemplos

- Documentação de tudo que foi citado acima

 

     Em resumo, o KSDK é um pacote para obter todo o software de apoio necessário para começar uma aplicação para o Kinetis.

     * O KSDK não tem suporte à série de microcotroladores Kinetis E. Para esta família, recomendo olhar o FRDM-KEXX Driver Library Package, disponível na aba Downloads da página da Freedom do Kinetis E.

 

Se preparando para começar - Software

 

     A primeira coisa a se fazer é baixar o KSDK e a IDE de sua preferência. Neste tutorial,vamos abordar tanto o KDS (Kinetis Design Studio), uma opção estável, que não possui os mesmos recursos de debug poderosos como profiling, tracing, que ferramentas pagas como a IAR Systems fornece, porém é gratuito para qualquer tamanho de código, quanto o Embedded Workbench da IAR.

    Links para download dos programas necessários:

 

KSDK

     - KSDK versão 1.2 - www.freescale.com/ksdk ou neste link

 

IDEs (escolher)

     - KDS versão 3.0 - gratuito em - www.freescale.com/kds ou neste link

     ou

     - IAR - há uma versão de avaliação por tempo limitado - www.iar.com ou neste link

 

     Após instalar o KSDK, a pasta do KSDK 1.2 terá a seguinte estrutura:

 

     A pasta doc é uma das pastas mais importantes.Ela possui toda documentação referente aos softwares do KSDK , exceto quanto aos sistemas operacionais. O manual das funções de acessos aos periféricos é um dos documentos mais importantes, e se localiza no caminho: C:\Freescale\KSDK_1.2.0\doc\Kinetis_SDK_v.1.2.0_API_Reference_Manual.html

     A pasta examples também é uma pasta muito importante, pois tem muitos exemplos para cada placa suportada pelo KSDK, inclusive a FRDM-K64F, para várias IDEs.

     As pastas platform,lib, rtos, usb, middleware, são importantes pois possuem os arquivos fonte da estrutura do KSDK necessárias para cada projeto.

 

*Importante: Todo projeto que utiliza o KSDK precisa ter sua plataforma KSDK compilada primeiro. O projeto dessa plataforma encontra-se na pasta lib, mas falaremos sobre isso nos próximos tutoriais.

 

Se preparando para começar - Hardware

 

Iremos utilizar neste tutorial a placa Freeescale Fredom Platform FRDM-K64F , embora o procedimento para outras placas Freedom sejam bastante semelhantes.

 

Nas placas Freedom, existe uma interface em hardware para fazer a gravação e debug do microcontrolador-alvo, no qual foi batizada de OpenSDA Interface.Este circuito se baseia em um MCU adicional, da própria Freescale, que possui um software específico para a tarefa.

 

E aí entra a nossa primeira tarefa.Quando a Freescale escolheu pela interface OpenSDA na primeira placa Freedom, surgiu a pergunta: Que empresa parceira da Freescale desenvolveria o software do gravador e debug que seriam inclusos nas placas Freedom? A respota foi: Qualquer uma. Assim, fabricantes como P&E Microcomputer Systems, SEGGER, e também projetos abertos como USBDM puderam criar suas próprias versões de firmware que podem ser baixados na placa e assim podem mostrar suas vantagens particulares de cada ferramenta, dando a escolha final ao usuário. Neste tutorial utilizaremos a versão de Open SDA da Segger.

 

Os passos para atualizar a placa são:

 

Passo 1: Baixar o firmware image do Open SDA em wwww.segger.com/opensda.html. A versão correta para o FRDM-K64F é a V2 e não a 2.1

* muitos usuários possuem a placa FRDM-KL25Z, a primeira Freedom a ser lançada.Quem quiser brincar com esta placa, a versão correta é a OpenSDA (não a 2 nem a 2.1)

 

Passo 2: Descompactar o conteúdo do arquivo .zip

 

Passo 3: Ligue a placa através do conector identificado como SDA enquanto mantém o botão RESET pressionado

 

 

Passo 4: Solte o botão de reset. O LED verde deverá começar a piscar (Cerca de 1Hz)

 

Passo 5: O PC irá enumerar a placa como um disco USB:

 

 

Passo 6: Copie (Arraste e solte) o arquivo JLink_OpenSDA_V2.bin para o disco Bootloader recém-criado.

 

Passo 7: Após a cópia o LED deverá piscar mais rápido (Como 5Hz)

 

Passo 8: Desligue a placa da porta USB e conecte-a novamente.

 

Passo 9: Novos drivers serão instalados e o dispositivo será mostrado como sendo um J-Link

 

 

Pronto!Agora você está pronto para começar sua primeira aplicação com o KSDK.Mas isso será tópico do próximo tutorial. Até lá! =)

Attachments

    Outcomes