Mudanças entre as edições de "Projeto Gateway Wifi - BTLE - Versão 2"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 24: Linha 24:
 
| 2
 
| 2
 
| [http://wiki.sj.ifsc.edu.br/index.php/Projeto_Gateway_Wifi_-_BTLE_-_Vers%C3%A3o_2#Comunica.C3.A7.C3.A3o_via_Radio Comunicação via Radio]
 
| [http://wiki.sj.ifsc.edu.br/index.php/Projeto_Gateway_Wifi_-_BTLE_-_Vers%C3%A3o_2#Comunica.C3.A7.C3.A3o_via_Radio Comunicação via Radio]
 +
| Agosto
 +
|-
 +
| 3
 +
| [http://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Gateway_Wifi_-_BTLE_-_Vers%C3%A3o_2#Comunica.C3.A7.C3.A3o_via_Softdevice Comunicação via Softdevice]
 
| Agosto
 
| Agosto
 
|}
 
|}

Edição das 15h07min de 27 de agosto de 2014

Bolsista

Nome: Thiago Werner Curso: Engenharia de Telecomunicações/6ª Fase

Local e Horário de Trabalho

Local de Trabalho

Os trabalhos da bolsa serão realizados na sala de Monitoria ou no labIC1.

Horários

GradeFINAL1.png

Plano de Trabalho

ETAPA Atividades Período
1 Kit de Desenvolvimento Agosto
2 Comunicação via Radio Agosto
3 Comunicação via Softdevice Agosto

Kit de Desenvolvimento

O material é composto por duas placas, são elas: PCA10000 e a PCA10001. Ambas tem o mesmo processador, Cortex M0. A sua desenvolvedora (Nordic Semicondutores) nos fornece ao comprarmos o Kit uma Key, que serve para obtermos o material necessário para desenvolvermos projetos com o Kit. O processo de investigação da Key foi demorado, contudo utilizei o rápido suporte da Nordic para obter a Key. No mesmo dia que fiz o ticket no site da Nordic a equipe de suporte respondeu com todos os dados que eu precisava para efetuar os downloads em seu site.

Dentre os diversos materiais que tive acesso, os mais importantes foram: nAN-29, Manual Reference e o User Guide.

nAN-29

Este documento nos fornece um passo-a-passo para programar as placas do Kit utilizando o software Eclipse. No entanto, este documento foi escrito no ano de 2013, e por isso alguns comandos que ele dá como instrução talvez não existam, ou existam similares. Com isso, a procura por download de ferramentas do ano anterior em seus sites de desenvolvedor são essenciais. Apesar disso, uma dificuldade que ainda me impossibilita de ao menos utilizar o debugger do Eclipse é o fato de um erro ocorrer: "The binary file is not found", porém algumas aplicações consigo ainda compilar. nAN-29 Download

Manual Reference

No Manual Reference temos uma descrição sobre todos os componentes do microcontrolador, o que é muito interessante para adquirirmos conhecimento sobre as memórias, registradores e todo o processo da máquina de estado do Radio. Manual Reference Download

User Guide

O Evaluation User Guide nos trás um manual para instalação do nRFgo Studio e do IDE Keil. O nRFgo Studio é a ferramenta que a Nordic nos oferece para embarcar os programas nas placas do Kit. Já o Keil, é o software que a Nordic nos recomenda para fazer debugger e editar e compilar os projetos que quisermos embarcar nas placas. Lembrando que, arquivos .c editamos no Keil, já arquivos .hex frutos da compilação no Keil são utilizados pelo nRFgo Studio. User Guide Download

Comunicação via Radio

Utilizando o software Keil para compilação de código e a ferramenta da nRFgo Studio a implementação do exemplo "Radio Led Example" foi bem sucedida. Para este experimento utilizamos as duas placas do Kit de Desenvolvimento nRF51822 para comunicação via rádio entre elas.

Na placa PCA10001 foi implementado a função de recepção (Rx) e na PCA10000 a de transmissão (Tx). A razão pela qual foi adotada esta distribuição foi que a PCA10001 tem muito mais recursos em sua periferia (como leds, botões, e etc), já a PCA10000 apenas tem a comunicação rádio e sua entrada USB. Contudo, a transmissão via rádio para a PCA10001 deve ser feita através de um comando feito pelo usuário, e para isso foi necessário a utilização do programa Termite Terminal, que emula um terminal UART na porta USB do ambiente de trabalho. Com ele devemos configurar o "Baud Rate" para 38700 e selecionar adequadamente a porta que a PCA10000 está conectada no computador.

Para efetuar o experimento, o usuário deve escrever '1' ou '0' no terminal do Termite, o que corresponde na transmissão de um packet que aciona o "LED_1" ou "LED_0" respectivamente na PCA10001. Contudo, no código fornecido originalmente pela Nordic as linhas de configuração dos LEDs do arquivo de recepção à ser embarcado na PCA10001 está com erros, veja: Original:

      switch(packet[0])
      {
        case '0':
          nrf_gpio_pin_set(LED0);
          nrf_gpio_pin_clear(LED1);
          break;

        case '1':
          nrf_gpio_pin_set(LED1);
          nrf_gpio_pin_clear(LED0);
          break;
      }

Correto:

      switch(packet[0])
      {
        case '0':
          nrf_gpio_pin_set(LED_0);
          nrf_gpio_pin_clear(LED_1);
          break;

        case '1':
          nrf_gpio_pin_set(LED_1);
          nrf_gpio_pin_clear(LED_0);
          break;
      }

Sendo assim, os links para acesso aos arquivos do exemplo estão aqui:

Rx_PCA10001

Tx PCA10000

Comunicação via Softdevice

Referências