Instalação de ambiente de desenvolvimento para a série NXP LPC111x



Documentos relacionados
TCI S5-USB. Cabo de Programação STEP5 - USB. Manual de Instalação

Procedimentos para Reinstalação do Sisloc

1 Code::Blocks Criação de projetos

CONFIGURADOR DO PAINEL FP1 v 1.3

Nota de Aula: Utilização da IDE Code::Blocks

O Primeiro Programa em Visual Studio.net

Manual Equipamento ST10 Flasher Rev. 1

Manual de Atualização Versão

Visão Geral sobre o tutorial de Utilização de

Instalando o plugin CDT 4.0

TCI 7200-U USB-PPI Cable

PASSO A PASSO COMO CRIAR UM NOVO PROJETO EM SCHEMATIC NO SOFTWARE QUARTUS II

Simulador do Processador Neander T&D-Bench Simulator Manual do Usuário. por Júlio César Maccali. revisado por Prof. Christian Zambenedetti

TCI 322. Conversor de Interface USB para RS422/RS485. Manual de Instalação

Parallels Plesk Panel 11 Tour prático do Produto para Proprietários de Website

Guia para Atualização do Firmware AM-310

Manual de Instalação

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Nota de Aplicação. Utilizando os recursos de segurança dos controladores HI. HI Tecnologia. Documento de acesso público

Tutorial de Auxílio. figura 1.0 programa de gravação

Eberhardt Comércio e Assist. Técnica. Ltda.

LINEAR EQUIPAMENTOS RUA SÃO JORGE, TELEFONE: SÃO CAETANO DO SUL - SP - CEP

Procedimento de Atualização - ONECLICK

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS

O cursor se torna vermelho e uma Paleta de Edição contendo as instruções mais utilizadas é apresentada.

A idéia hardware sugerida é colocar a placa entre o PC e o microcontrolador, conforme mostrado no esquema abaixo.

ÍNDICE 1. INTRODUÇÃO DESCRIÇÃO DO PICKIT Ligação da porta USB LEDs de estado Botão... 5

Token SafeNet Authentication Cliente 8.3 (x32 e x64)

Soluções de Acessibilidade. VLibras - Desktop. Manual de Instalação da Ferramenta. Microsoft Windows R. Núcleo de Pesquisa e Extensão / LAViD

Procedimentos para Instalação do Sisloc

STK (Start Kit DARUMA) Primeiro contato com a Impressora Fiscal, a ECF chegou e agora?

MANUAL DE INSTALAÇÃO DO SES CLIENT

Programação de Periféricos

Instalando software MÉDICO Online no servidor

MANIFESTAÇÃO DO DESTINATÁRIO

Para que o NSBASIC funcione corretamente em seu computador, você deve garantir que o mesmo tenha as seguintes características:

3.a Aula Prática Projeto de Circuitos Sequenciais com FPGA. Projeto e simulação de um gerador de frequência

1. Instalação do Remessa Q Prof Trabalhando com o Remessa Q Prof Botão Opções e suas Funcionalidades Aba Título...

CONFIGURAÇÃO SISTEMA OPERACIONAL WINDOWS 7

COMO INSTALAR O CATÁLOGO

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

CONFIGURAÇÃO MINIMA EXIGIDA:

SCD 912. Dispositivo de comunicação e armazenamento. Apresentação. Dados Técnicos. Conexões

Guia de instalação UEG Linux LTS

Manual do Assinador de Documentos

TUTORIAL INCORPORANDO A BIBLIOTECA DO ARDUINO AO ECLIPSE

Sistemas Embarcados:

Configurando as opções de gravação de seu GPS

Gerenciador de Conteúdo Magellan 2.0

MANUAL DE INSTALAÇÃO DO SOFTWARE NETCONTROL

Manual de Instalação do Servidor Orion Phoenix Versão Novembro/2010

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

CONFIGURANDO O WINDOWS 7. Conhecer algumas funcionalidades do software VMware Player e do sistema operacional

Comunicação Serial com o AVR ATMEGA8

MANUAL GDS TOUCH. Versão: 1.0 Direitos reservados.

Shop Control 8 Pocket. Guia do usuário

Escritório Virtual Administrativo

Boletim Técnico R&D 03/08 CARACTERÍSTICAS DO DRIVER MPC6006L 14 de março de 2008

Eclipse com c++11 e boost Etapa 1- Download da IDE Eclipse c++ e configuração do MinGW

Thunder Pro II Gold Edition Manual de operações v 8.7 Rev:b

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I

Guia Rápido LINKER SAT REV. 2.1 MAI / 2015

O protocolo I2C. Fig. 1 Diagrama em blocos e pinos do circuito integrado PT2313.

TUTORIAL INSTALAÇÃO DA ROTINA 2075 NO LINUX

Sistemas Embarcados. Introdução aos sistemas embarcados

Sumário GERAL... 3 INSTALAÇÃO... 3 UTILIZANDO O MINI DVR USB ST Opções de Segurança Gravando as Imagens...13 ESPECIFICAÇÕES TÉCNICAS

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

Profibus View - Software de Parametrização de Equipamentos Profibus PA

Considerações a serem feitas antes da implantação.

GERAÇÃO DE NOTA FISCAL PAULISTA BEMATECH RESTEQ RESOLVE TECNOLOGIA BEMATECH 1

Obs: É necessário utilizar um computador com sistema operacional Windows 7.

Emulador Emul2100 com porta virtual

Atualização de Software para comandos Efka

Manual de Administração

Gravação da quantidade de expostos por grupo homogêneo

SISTEMA DE PRODUTOS E SERVIÇOS CERTIFICADOS MÓDULO DO CERTIFICADOR

Madis Rodbel Soluções de Ponto e Acesso Ltda.

Token SafeNet Authentication Cliente 8.3 (x32 e x64)

STK (Start Kit DARUMA) Utilizando conversor Serial/Ethernet com Mini-Impressora DR600/DR700.

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE - UFRN DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA DIMAP

Manual Resumido PR Master. Versão

3.1) Baixe os arquivos necessários para preparação neste link:

GUIA DE INSTALAÇÃO E CONFIGURAÇÃO. POSTGRESQL Versão 8.3

Procedimento para Atualização do DDFinance

CONFIGURAÇÕES PARA ENVIO DE ARQUIVO XML E PDF POR

Como atualizar o firmware da central AMT 4010 SMART e do acessório XEG 4000 SMART através do Software BootloaderWizard App

Manual de Instalação. SafeSign Standard (Para MAC OS 10.7)

Curso Básico Sistema EMBI

COMO GERAR UM ARQUIVO NÃO IDENTIFICADO NO TABWIN

Manual de instalação Token/Cartão criptográfico no Windows AC Soluti - Goiânia. Versão 1.0 de 22 de Janeiro de Classificação: Corporativo

Placa Acessório Modem Impacta

Guia Sphinx: instalação, reposição e renovação

Saída do sistema do Servidor FTP do Capture Pro Software

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

GUIA DE INSTALAÇÃO PARA DRIVER DE COMUNICAÇÃO USB Versão 2.0 IF ST120 IF ST200 IF ST 2000 IF ST 2500

Cartilha da Nota Fiscal Eletrônica do Hábil Empresarial Profissional 7.0. Obrigado por usar nosso software! Koinonia Software Ltda.

BACKUP ONLINE PASSOS PARA CONFIGURAÇÃO INICIAL DO PRODUTO

Transcrição:

UNIFEI Universidade Federal de Itajubá IESTI - Instituto de Engenharia de Sistemas e Tecnologia da Informação ELT031 Aprendizado Baseado em Projeto I Instalação de ambiente de desenvolvimento para a série NXP LPC111x Prof. Rodrigo de Paula Rodrigues 10 de Setembro de 2014 A série LPC111x A série LPC111x faz parte série de microcontroladores ARM LPC11xx. Esta série, fornecida pela NXP Semiconductros N.V, emprega um núcleo de processamento ARM em uma arquitetura Cortex-M0. Dentre as aplicações de destino para a série LPC111x, estão as que requerem baixo consumo, baixa quantidade de pinos em uma estrutura que proporcione poder de processamento superior aos processadores de 8 bits cotados para as mesmas aplicações. LPC111x Instalação de ambiente de desenvolvimento 1/16

Conteúdo 1. Recursos necessários... 3 2. Instalação do ambiente EmBlocks... 4 3. Instalação do programador serial FlashMagic... 5 4. Criação de projetos no EmBlocks... 6 5. Implementação do programa embarcado... 12 6. Programação do dispositivo por meio do carregador de arranque serial... 14 7. Programa de exemplo: pisca LED... 16 LPC111x Instalação de ambiente de desenvolvimento 2/16

1. Recursos necessários - Ambiente de desenvolvimento EmBlocks, versão 2.20 (www.emblocks.org); - Programador serial FlashMagic, versão 8.18 (http://www.flashmagictool.com/); - Ponta de depuração SWD (JTAG) J-Link (para o caso de depuração em tempo real). Opções de instalação Os microcontroladores ARM da série LPC11x podem ser programados tanto por meio de sua interface SWD (JTAG) quanto por meio de um carregador de arranque (bootloader). A interface SWD permite tanto a programação do dispositivo quanto a depuração do código, mas exige, para tanto, um circuito programador externo no padrão SWD. Já para a programação por meio de seu carregador de arranque, apenas um conexão serial (RS232, UART) e um software de programação serial compatível são necessários. Opções de instalação em função da necessidade de programação: - programação do dispositivo por meio de seu carregador de arranque: EmBlocks + FlashMagic; - programação e depuração do dispositivo: EmBlocks + J-Link. LPC111x Instalação de ambiente de desenvolvimento 3/16

2. Instalação do ambiente EmBlocks O ambiente de desenvolvimento integrado EmBlocks é uma ótima opção de desenvolvimento livre para a plafatormas ARM Cortex (NXP e ST, principalmente). Ele incorpora o compilador ARM GCC (bare metal) e possui suporte às pontas de depuração JTAG J-Link e ST-Link, dentre muitos outros bons recursos e funcionalidades. Passos para efetuar a instalação: a) Execute o arquivo de instalação EmBlocks_2.20.exe; b) No passo relativo à escolha de componentes, selecione o tipo Custom e, na opção de compiladores, mantenha apenas o ArmGCC EmBlocks Embedded selecionado. Mantenha todas as demais opções selecionadas (Contributions, Default install e Plugins); c) Para os passos seguintes, opte pelas opções apresentadas pela interface e prossiga até finalizar a instalação. LPC111x Instalação de ambiente de desenvolvimento 4/16

3. Instalação do programador serial FlashMagic Um programador serial é necessário para efetuar a programação do microcontroladores da série LPC111x por meio de seu carregador de arranque (bootloader). Caso a programação seja efetuada por meio de circuito JTAG (J-Link), não é necessário instalar o programador serial. a) Execute o arquivo de instalação FlashMagic.exe; b) Seguir as opções padrão apresentadas pela interface até finalizar a instalação. LPC111x Instalação de ambiente de desenvolvimento 5/16

4. Criação de projetos no EmBlocks Os passos para a criação de projetos no ambiente EmBlocks são os seguintes: a) Com o ambiente de desenvolvimento aberto, selecione a opção File > New > Project no menu de opções; b) Na interface de escolha da categoria do projeto, opte por NXP-ARM. c) Na interface seguinte, simplesmente prossiga. LPC111x Instalação de ambiente de desenvolvimento 6/16

d) Selecione um título (1), caminho (2) e nome do arquivo de projeto (3) para o projeto em criação. e) Para a seleção do compilador associado ao projeto, mantenha as opções no padrão apresentado pela interface. LPC111x Instalação de ambiente de desenvolvimento 7/16

f) Efetua a escolha da série como LPC111x (1) e marque ambas as opções Create hex file (.hex) e Set device settings at target level (2). Ao fim, clique no botão Finish. g) Na interface que se abre, na aba Target settings, marque a opção Run to main( ) para ambos os perfis Debug e Release. LPC111x Instalação de ambiente de desenvolvimento 8/16

h) Se não for utilizar um circuito de depuração SWD J-Link, então salte para o item j). Já se for fazê-lo, prossiga até a aba GDB Server e realize as seleções segundo a figura seguinte. Ao fim, clique sobre o botão Settings >>. É necessário realizar as operações especificados neste item para ambos os perfis Debug e Release. i) Na interface de configuração do circuito SWD (JTAG), na aba Settings, realize as seleções listadas abaixo. Ao fim, clique sobre o botão Ok para fechar a interface e então no botão Ok da interface que se manteve aberta. a. Device: selecione o modelo do microcontrolador LPC111x em uso (ex: LPC1114/102); b. Interface: SWD; c. Jtag speed: 500; d. Auto speed: não selecione; e. Reset type: 0; f. Load program: selecione; g. Flash download: selecione; h. Flash breakpoint: selecione; i. Execute from RAM: não selecione. LPC111x Instalação de ambiente de desenvolvimento 9/16

j) No painel de arquivos de projeto, encontre o arquivo startup_lpc111x.s e o remova do projeto. Este é um arquivo presente no modelo de projetos para a arquitetura ARM que não é necessário para o compilador com o qual trabalhamos. k) Ainda no painel de arquivos de projeto, selecione o arquivo gcc_arm.ld. Este é um arquivo de linker que precisa refletir a quantidade de memória RAM e ROM presente no microcontrolador selecionado para o projeto. Abra tal arquivo para edição e procure, ao seu início, dela diretiva MEMORY. LPC111x Instalação de ambiente de desenvolvimento 10/16

Altere tal diretiva para refletir a quantidade de memória de seu dispositivo. Como exemplo, as diretiva memory apresentada na figura abaixo foi atualizada para refletir a memória do dispositivo LPC1114/102. Os informações necessárias para tal atualização constam no mapa de memória presente na folha de dados da série LPC111x (LPC111X.pdf). Nas figuras abaixo o arquivo gcc_arm.ld é modificado de forma a refletir a memória do dispositivo LPC1114/102. A figura que contém o mapa de memória foi retirada da folha de dados do dispositivo. Salve a atualização realizada no arquivo gcc_arm.ldd. Pronto! A partir deste ponto, o desenvolvimento pode ser iniciado. LPC111x Instalação de ambiente de desenvolvimento 11/16

5. Implementação do programa embarcado O projeto criado pelo ambiente EmBlocks segue um padrão chamado CMSIS. Este padrão é sugerido pela ARM e contém todos os arquivos necessários para se configurar a operação inicial de um dispositivo ARM, cobrindo, dentre outras coisas, a estipulação de fontes dos sinais de sincronismos do núcleo e de periféricos (clock, temporizadores e afins) como também inicializa recursos como a posição de pilhas de dados e direciona vetores de interrupções. Respeitando-se o padrão CMSIS, o projeto criado possui a relação de arquivos presente na tabela abaixo. Arquivo Source\Src\ main.c system_lpc11xx.c Headers\Inc\ LPC11xx.h power_profiles.h system_lpc11xx.h ASM Sources\Src\ startup_armcm0.s Others\ gcc_arm.ld readme.txt Função/aplicação Código-fonte para a aplicação a ser desenvolvida Rotinas de inicialização do dispositivo Definições de registradores e afins do dispositivo Definições de perfis de consume de energia Definições relativas às rotinas de inicialização Rotinas de inicialização em baixo nível Arquivo de definições para o linker Arquivo de informações sobre o linker Para implementar o programa embarcado a ser desenvolvimento, utilize o arquivo principal de chamadas, o main.c e, quando necessário, implemente arquivos adendos para tornar o desenvolvimento modular, mais organizado e funcional. Os demais arquivos presentes na estrutura do projeto são utilizados para se configurar a operação básica do dispositivo. Dentre eles, os arquivos LPC11xx.h e system_lpc11xx.h possuem todas as definições dos registradores e rotinas de inicialização básica do microcontrolador, respectivamente. Em especial, o arquivo system_lpc11xx.c, que assim como os anteriores respeitam o padrão citado, possui a implementação das rotinas de inicialização básica do microcontrolador: SystemInit e LPC111x Instalação de ambiente de desenvolvimento 12/16

SystemCoreClockUpdate. A rotina SystemInit é chamada após um evento de reinício (reset) e mesmo antes da chamada à rotina main() pois, em respeito ao padrão CMSIS, está atrelada do vetor de reset do dispositivo (vide arquivo em assembly startup_armcm0.s). Para compilar um programa desenvolvido e mesmo gerar arquivos de gravação e depuração do código relacionado, acesse as opções presentes na barra de acesso rápido. Uma descrição das ações é apresentada na figura subseqüente. Após uma compilação, os resultados e possíveis erros podem ser acessados no painel Build messages, localizado na porção inferior da interface do ambiente de desenvolvimento. Para saber mais sobre o padrão CMSIS e entender como configurar a operação inicial do dispositivo, acesse o endereço http://www.arm.com/products/processors/cortex-m/cortex-microcontroller-softwareinterface-standard.php. Para obter mais informações sobre a programação da série LPC111x, consulte o documento LPC111x/LPC11Cxx User manual (UM10398). LPC111x Instalação de ambiente de desenvolvimento 13/16

6. Programação do dispositivo por meio do carregador de arranque serial Para utilizar o carregador de arranque da série LPC111x, é necessário que seu circuito de aplicação disponibilize conexão ao periférico serial do microcontrolador que possua um botão de reinício (reset), e que haja alguma forma de alternar o nível lógico em um pino do microcontrolador relacionado à operação de seu carregador de arranque, geralmente o pino PIO0_1. Mais informações sobre o carregador de arranque da série LPC111x podem ser obtidas no documento LPC111x/LPC11Cxx User manual (UM10398). Uma vez compilado e gerado o arquivo de gravação do aplicativo embarcado (arquivo.hex relativo ao projeto desenvolvimento), os passos para programação do dispositivo por meio de seu carregador de arranque são os seguintes: a) Abra o aplicativo FlashMagic e o configure da seguinte forma: a. Área 1 (Step 1): i. Selecione o modelo de microcontrolador utilizado (ex: LPC1114/102); ii. Selecione a porta serial (COM Port), no computador, conectada ao circuito do LPC111x; iii. Estipule a taxa de transferência (Baud Rate) para 57600; iv. Selecione a interface como None (ISP) ; v. Estipule a freqüência do oscilador para 12 MHz. b. Área 2(Step 2): i. Marque a opção Erase all Flash+Code RD Prot. c. Área 3(Step 3): i. Selecione o arquivo.hex a ser programado no microcontrolador; d. Área 4(Step 4): i. Marque apenas a opção Verify after programming. LPC111x Instalação de ambiente de desenvolvimento 14/16

b) Com a interface devidamente configurada para gravação, aplique nível lógico baixo ao pino de controle do carregador de arranque do microcontrolador (PIO0_1) e aplique um sinal de reinício (pulso negativo no pino de reset) ao microcontrolador; c) Neste momento, inicie o processo de gravação por meio do botão Start na área Step 5 do FlashMagic; d) Após certo tempo, deve surgir na interface do FlashMagic um sinal de fim e de sucesso da operação de gravação; e) Uma vez finalizada a operação de gravação com sucesso, para que o microcontrolador possa executar o programa gravado é necessário que um sinal de nível lógico alto seja estipulado no controle do carregador de arranque do microcontrolador (PI0_1) e um novo sinal de reinício (pulso negativo no pino de reset) seja aplicado ao microcontrolador. LPC111x Instalação de ambiente de desenvolvimento 15/16

7. Programa de exemplo: pisca LED O seguinte trecho de programa é um exemplo de arquivo main.c que faz com que o pino PT0_3 de um microcontrolador da série LPC111x tenha seu estado lógico alternado continuamente. Por ele, pode-se verificar como é configurada a direção de tal como saída e como seu estado lógico de saída pode ser acessado e alterado. Todos os demais parâmetros são configurados pela rotina SystemInit presente no arquivo system_lpc11xx.c pertencente ao projeto. main.c /* ** ** Main.c ** ** **********************************************************************/ /* Last committed: $Revision: 00 $ Last changed by: $Author: $ Last changed date: $Date: $ ID: $Id: $ **********************************************************************/ #include <LPC11xx.h> /* LPC11xx Peripheral Registers */ #include "system_lpc11xx.h" #define LED_PORT LPC_GPIO0 #define LED_PIN 3 int main(void) { unsigned int x; // Configurar o pino PT0_3 como saída LED_PORT->DIR = (1 << LED_PIN); while (1) { }; // Alternar o nível lógico no pino PT0_3 LED_PORT->DATA ^= (1 << LED_PIN); // Gerar um pequeno atraso para simular um "delay" for( x = 0; x < 0x002fffff; x++); } return 0; LPC111x Instalação de ambiente de desenvolvimento 16/16