Primeiros passos com a MPLAB Xpress PIC16F15376 Evaluation Board

Conheça a MPLAB Xpress PIC16F15376 Evaluation Board e aprenda os primeiros passos para programação usando a ferramenta online MPLAB Xpress IDE.
MPLAB Xpress PIC16F15376

A Microchip lançou no início deste ano uma promoção para envio de placas MPLAB Xpress PIC16F15376 Evaluation Board. Foram enviadas diversas placas, de forma gratuíta, para que as pessoas interessadas possam explorar a ferramenta  MPLAB Xpress IDE. Neste artigo vamos conhecer a placa e aprender os primeiros passos para programação usando a ferramenta online da Microchip.

A MPLAB Xpress PIC16F15376 Evaluation Board

Ainda não há muita informação sobre a placa na internet e infelizmente a Microchip não disponibiliza o datasheet da placa. Ela possui form factor para fácil uso em protoboard, conforme exibido na figura a seguir:

Uso no protoboard
Figura 1 – Uso no protoboard

Assim como a primeira MPLAB Xpress Evaluation Board, essa também traz integrado um circuito de programação, que foi construído com um PIC16F1454, o qual possui USB integrada. Esse microcontrolador é responsável pela interface de programação entre o computador e o microcontrolador alvo da placa. Para indicação de status há um LED RGB.

Também há na placa um regulador de tensão de 3V3, o MCP1703. A tensão de funcionamento da placa pode ser selecionada através de jumpers.

O microcontrolador alvo da placa, o PIC16F15376 possui as seguintes características:

  • Memória de programa de 28 KB;
  • Velocidade da CPU Speed de 8 MIPS;
  • Memória RAM de 2048 B;
  • Comunicação Serial: 2-UART, 2-SPI, 2-I2C;
  • Periférico de Capture/Compare/PWM: 2 Input Capture, 2 CCP;
  • Timers: 1 x 8-bit, 2 x 16-bit;
  • ADC: 35 ch, 10-bit;
  • Tensão de operação: 1.8 a 5.5 V;
  • 40 Pinos.

E diversos outros recursos. Confira todos os detalhes dessa família de microcontroladores aqui.

Criando um projeto no MPLAB Xpress

Para usar o MPLAB® Xpress Cloud-Based IDE é muito simples, o primeiro passo é acessar o site da plataforma.

Clique em Get Started NOW!

Acessando o MPLAB Xpress IDE
Figura 2 – Acessando o MPLAB Xpress IDE

Após o login, será aberta a IDE:

IDE aberta pela primeira vez
Figura 3 – IDE aberta pela primeira vez

Vamos criar um novo projeto, para isso acesse: File>New Project:

Criando um novo projeto
Figura 4 – Criando um novo projeto

Para nosso exemplo vamos criar um projeto Standalone. Após a seleção, conforme figura abaixo, clique em Next:

Selecionando o tipo de projeto Standalone
Figura 5 – Selecionando o tipo de projeto Standalone

O próximo passo é escolher o microcontrolador alvo. Vamos escolher o PIC16F15376 usado nessa MPLAB Xpress Evaluation Board, conforme figura a seguir:

Selecionando o microcontrolador
Figura 6 – Selecionando o microcontrolador

Por fim, vamos dar um nome ao nosso projeto. Após inserir o nome, clique em Finish:

Nomeando o projeto
Figura 7 – Nomeando o projeto

Será exibida a tela do projeto, conforme figura abaixo:

IDE com o projeto criado
Figura 8 – IDE com o projeto criado

Para iniciar o MCC é só clicar no ícone na barra de ferramentas:

Ícone do MCC
Figura 9 – Ícone do MCC

Será exibida uma tela com a opção de Download. Se for a primeira vez, baixe o MCC.

Download do MCC
Figura 10 – Download do MCC

Após o download execute a aplicação e insira a senha exibida no passo 2, quando for solicitada.

Inserindo a senha para o MCC
Figura 11 – Inserindo a senha para o MCC

Será aberta uma nova janela com o MCC:

MCC aberto pela primeira vez
Figura 12 – MCC aberto pela primeira vez

Vamos configurar o sistema da seguinte forma:

  • Oscillator select: HFINTOSC;
  • HF Internal Clock: 4MHz;
  • Clock divider: 4;
  • Low Voltage Programming: Enable;
  • Watchdog Timer Enable: WDT disabled, SWDTEN is ignored;
Configuração do sistema
Figura 13 – Configuração do sistema

Agora, selecione o pin Module para a configuração dos pinos:

Configuração dos pinos de I/Os
Figura 14 – Configuração dos pinos de I/Os

A placa não possui um LED para uso geral, assim, vamos ligar um LED ao pino RB0:

Configuração do pino RB0
Figura 15 – Configuração do pino RB0

No MCC, selecionamos o pino RB0 como Output e desmarcamos a opção Analog. Você também nomear esse pino para facilitar na hora da codificação.

Por fim, selecione a opção Generate para criar o código para a aplicação:

Gerando o código da aplicação
Figura 16 – Gerando o código da aplicação

É importante que seja mantido o MPLAB® Xpress Cloud-Based IDE aberto para a correta geração de código pelo MCC.

Após alguns instantes, será exibida uma mensagem de fim de geração de código:

Geração de código completada
Figura 17 – Geração de código completada

Acessando o MPLAB Xpress IDE notamos a inclusão dos arquivos gerados no projeto:

Arquivos gerados pelo MCC
Figura 18 – Arquivos gerados pelo MCC

Para nossa aplicação, vamos inverter o estado do LED ligado ao pino RB0 em intervalos de 1 segundo. Para isso vamos apenas inserir as linhas a seguir no loop principal no arquivo main.c:

Código para piscar o LED em intervalos de 1 segundo
Figura 19  – Código para piscar o LED em intervalos de 1 segundo

 

Feito isso, para compilar o projeto é só clicar no ícone do “martelo”. Ao final da compilação será exibida uma mensagem na aba Output. O ícone e resultado da compilação são exibidos na imagem a seguir:

Compilação e resultado
Figura 20 – Compilação e resultado

Agora, verifique se a MPLAB Xpress Evaluation Board está conectada ao computador. Além de verificar o LED (status da alimentação) está aceso, verifique também se a placa foi reconhecida pelo computador como um mass storage:

MPLAB Xpress Evaluation Board reconhecida como um Mass Storage
Figura 21 – MPLAB Xpress Evaluation Board reconhecida como um Mass Storage

Para gerar o arquivo .hex que será gravado no microcontrolador alvo da MPLAB Xpress Evaluation Board é só clicar no ícone Make and Program Device:

Gerando o arquivo .hex
Figura 22 – Gerando o arquivo .hex

Será iniciado o download do arquivo. Você pode salvar em uma pasta separada, ou salvar direto na placa, conforme figura a seguir:

Download do .hex para a placa
Figura 23 – Download do .hex para a placa

Você pode acessar o exemplo desenvolvido neste artigo, neste link.

Aproveite para abrir outros exemplos na IDE e estudar a implementação. Caso tenha alguma dúvida, deixe seu comentário abaixo.

Referências

Figura 1 – https://static.transim.com/img/32017/4de877bca51b4db2a989457570d3bb63-z74pb.jpg

Notificações
Notificar
guest
12 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Sergio Henrique Oliveira Moraes
20/04/2021 19:26

Olá, muito interessante o artigo!!
Não estou conseguindo conectar minha placa ao PC, ela não é reconhecida, saberia me dizer o que pode ser ?

Sergio Henrique Oliveira Moraes
Sergio
Reply to  Fábio Souza
22/04/2021 18:41

Sabe me informar qual driver devo baixar ? Antes ela funcionava perfeitamente e não precisei instalar drivers.

Rodrigo Fonseca
Rodrigo Fonseca
20/04/2020 18:03
Robson Manzoli dos Santos
Robson Manzoli dos Santos
15/10/2019 08:57

Bom dia Fabio. Por acaso vocês tem algum exemplo pronto usando as funções geradas pelo periférico i2c neste pic ?

Robson Manzoli dos Santos
Robson Manzoli Dos Santos
21/08/2017 16:11

Boa tarde!
Eu consegui essa placa pela promoção.
E parabéns pelo passo a passo detalhado, gostaria de ter visto isso antes de ficar futucando.
Vi que postou o exemplo no site da MPLAB.
Recentemente adquiri duas placas de LCD (uma Oled 128×32 I2C SSD1306 e a outra Nokia 5110 84×48 Philips PCD8544 interface SPI). Encontrei uns códigos para comunicar o PIC aos displays, porém não tive sucesso.
Vc tem algum projeto ou material que possa fornecer/indicar?

Fabio_Souza_Embarcados
Fabio_Souza_Embarcados
Reply to  Robson Manzoli Dos Santos
22/08/2017 13:09

Olá Robson, para o OLED você pode usar esse exemplo:
https://www.embarcados.com.br/display-oled-na-mplab-xpress-board/

para o nokia, acho que esse exemplo pode te ajudar: http://www.toughdev.com/content/2011/03/interfacing-nokia-3510i-and-5110-lcd-with-pic-microcontroller/

Se tiver alguma dificuldade, pode entrar em contato comigo.

Abraços,

Robson Manzoli dos Santos
Robson Manzoli Dos Santos
Reply to  Fabio_Souza_Embarcados
23/08/2017 10:17

Beleza, dei uma estudada e surgiram dúvidas rsr
te mandei um e-mail.
abraços.

Valdir Gomes
Valdir Gomes
05/08/2017 10:23

Bom dia!

Como posso adquirir esta placa?

Fabio_Souza_Embarcados
Fabio_Souza_Embarcados
Reply to  Valdir Gomes
05/08/2017 17:47

Olá Valdir, essa placa foi enviada em uma promoção feita pela Microchip no inicio do ano: http://www.microchip.com/promo/pic16f15386-form-promo

Não sei se ainda está valendo essa promoção.

Jonathan De Oliveira
Jonathan
25/06/2017 10:30

Bom dia Fabio, estou com uma dúvida com relação a esta tensão de operação, você comentou que poderia ser alterada por jumpers, porém não identifiquei estes jumpers . Poderia me ajudar?

Fabio_Souza_Embarcados
Fabio_Souza_Embarcados
Reply to  Jonathan
26/06/2017 08:56

Bom dia Jonathan. Há dois jumpers(jumper com solda) com as marcações: 5V e 3V3. Na minha placa o Jumper 3V3 está fechado. Caso você queira trabalhar com 5V, deve abrir o jumper de 3v3 e fechar o de 5V, usando um ferro de solda. Abraços

WEBINAR

Visão Computacional para a redução de erros em processos manuais

DATA: 23/09 ÀS 17:00 H