SlideShare a Scribd company logo
1 of 4
Download to read offline
25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC.
http://kb.elipse.com.br/pt-br/questions/4563/__print 1/4
Este artigo também está disponível para visualização online em http://kb.elipse.com.br/pt-br/questions/4563/
Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC.
1. Introdução
Este artigo mostra como comunicar com o microcontrolador PIC16F877A utlizando a placa CuscoPIC. Para
isto, utilizaremos o driver ASCII para comunicar via Serial/Serial (RS232/RS232).
Primeiramente, deve-se programar o microcontrolador utilizando a porta paralela, e então passar o
bootloader para que a placa habilite a porta RS232. (O site da CuscoPIC apresenta os passos para a
gravação do bootloader).
Em seguida, na programação do controlador, pode-se utilizar o programador MPLab, software próprio da
Microchip, fabricante do PIC16F877A.
2. Programação
O programa utilizado neste exemplo funciona de modo a ler os valores vindo da serial do computador.
void main() // função principal
{
char x,y, linha[17];
signed long aux;
int index;
while(1) // laço infinito
{
if (!kbhit()) continue;
x = getch();
if (x == 'A') { //Testa valor vindo do supervisório
aux = AD(0); //Passa o valor do potenciômetro para uma variável "aux"
printf("%04li", aux); //Imprime no display o valor do potenciômetro
} else if (x == 'B') { //Testa valor vindo do supervisório
output_d(y); //Escreve o valor de "y" na saída D
if (y) y=0; else y=128; //Se "y" for igual a "0", recebe o valor "128"
} else if (x == 'C') { //Testa valor vindo do supervisório
index=0; //Configura o vetor para o display
do {
linha[index]=getch();
index++;
} while(linha[index-1]);
lcd_gotoxy(1,2);
printf(lcd_putc,"SLIDER=%s", linha); //Imprime no display "Slider=" o
valor vindo do slider do supervisório.
}
}
}
3. Configuração
Após compilar e gravar o programa na CuscoPIC, deve-se configurar o supervisório, seja ele o Elipse
SCADA ou o Elipse E3. No exemplo abaixo, a configuração foi desenvolvida no Elipse SCADA, mas
também é válida para o Elipse E3.
1. Adicione o driver ASCII no projeto.
25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC.
http://kb.elipse.com.br/pt-br/questions/4563/__print 2/4
2. Configure os extras do driver com os comandos TX e RX (escrita e leitura) da serial.
Obs.: É possível configurar o tipo de informação a ser lida pelo driver como o exemplo do comando "C"
descrito na programação no microcontrolador, no caso C%4u/h00 (sendo % - símbolo identificador de
campo variável; 4- número de caracteres; u- decimal sem sinal; e /00- caractere especial em formato
hexadecimal de dois dígitos). Todas as possibilidades para esta configuração encontram-se no manual do
driver, no capítulo Configuração dos Comandos ASCII.
3. Configure o meio físico de conexão (Physical Layer) como serial e preencha os dados conforme as
informações dados pelo desenvolvedor da placa.
25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC.
http://kb.elipse.com.br/pt-br/questions/4563/__print 3/4
4. Insira e configure os tags conforme o ID configurado nos extras do driver e o parâmetro desejado,
seja ele de leitura e/ou escrita. Para maiores informações dos parâmetros de leitura e escrita, ver o
capítulo Referência de Tags do manual do driver.
Exemplos de configuração de tags:
N1 = 0; N2 = 3; N3 = 0; N4 = 0
Tag de leitura e escrita (N1=0); utilizando o comando de índice 3 (N2 = 3); com o índice da variável em 0
(N3 = 0); e sem Offset na mensagem (N4 = 0).
25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC.
http://kb.elipse.com.br/pt-br/questions/4563/__print 4/4
N1 = 1; N2 = 4; N3 = 0; N4 = 0
Tag que lê ou escreve os valores dos campos variáveis de TX antes de enviar um comando (N1 = 1);
utilizando o comando de índice 4 (N2 = 4); com o índice da variável em 0 (N3 = 0); e padrão 0 no N4 (N4
= 0).
N1 = 4; N2 = 4; N3 = 0; N4 = 0
Tag que envia uma pergunta ao microcontrolador (N1 = 4); utilizando o comando de índice 4 (N2 = 4);
padrão 0 no N3 (N3 = 0); e padrão 0 no N4 (N4 = 0).
5. Após configurados os tags, configure as telas conforme desejado.
4. Considerações Finais
É possível comunicar com um equipamento microcontrolado utilizando o driver ASCII, desde que ele
tenha suporte a escrita e leitura de mensagens com o supervisório pela porta RS232. Estas mensagens
são configuradas anteriormente no programa do microcontrolador.

More Related Content

Viewers also liked

Esquema receptor century usr1700 cópia
Esquema receptor century usr1700   cópiaEsquema receptor century usr1700   cópia
Esquema receptor century usr1700 cópiaOlney joner
 
Apostila pic-c
Apostila pic-cApostila pic-c
Apostila pic-cjlconrado
 
Sistema De Comunicação Bluetooth Usando Microcontrolador PIC
Sistema De Comunicação Bluetooth Usando Microcontrolador PICSistema De Comunicação Bluetooth Usando Microcontrolador PIC
Sistema De Comunicação Bluetooth Usando Microcontrolador PICDavidson Fellipe
 
Esquema receptor century usr1700 cópia
Esquema receptor century usr1700   cópiaEsquema receptor century usr1700   cópia
Esquema receptor century usr1700 cópiaOlney joner
 
Interpretação textual
Interpretação textualInterpretação textual
Interpretação textualNeuma Matos
 
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)Miguel Angel Corona Lòpez
 
Aula de física movimento, repouso, velocidade média
Aula de física  movimento, repouso, velocidade médiaAula de física  movimento, repouso, velocidade média
Aula de física movimento, repouso, velocidade médialuam1969
 
132 formulas de fisica rc
132 formulas de fisica rc132 formulas de fisica rc
132 formulas de fisica rcRobson7575
 

Viewers also liked (14)

Esquema receptor century usr1700 cópia
Esquema receptor century usr1700   cópiaEsquema receptor century usr1700   cópia
Esquema receptor century usr1700 cópia
 
Física cinemática
Física cinemáticaFísica cinemática
Física cinemática
 
Apostila pic-c
Apostila pic-cApostila pic-c
Apostila pic-c
 
Fisica maria teresa
Fisica maria teresaFisica maria teresa
Fisica maria teresa
 
Fórmulas de Cinemática
Fórmulas de CinemáticaFórmulas de Cinemática
Fórmulas de Cinemática
 
Queda livre
Queda  livre Queda  livre
Queda livre
 
Sistema De Comunicação Bluetooth Usando Microcontrolador PIC
Sistema De Comunicação Bluetooth Usando Microcontrolador PICSistema De Comunicação Bluetooth Usando Microcontrolador PIC
Sistema De Comunicação Bluetooth Usando Microcontrolador PIC
 
Esquema receptor century usr1700 cópia
Esquema receptor century usr1700   cópiaEsquema receptor century usr1700   cópia
Esquema receptor century usr1700 cópia
 
Interpretação textual
Interpretação textualInterpretação textual
Interpretação textual
 
Curso de-mcu-proteus
Curso de-mcu-proteusCurso de-mcu-proteus
Curso de-mcu-proteus
 
Aula 2
Aula 2Aula 2
Aula 2
 
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
 
Aula de física movimento, repouso, velocidade média
Aula de física  movimento, repouso, velocidade médiaAula de física  movimento, repouso, velocidade média
Aula de física movimento, repouso, velocidade média
 
132 formulas de fisica rc
132 formulas de fisica rc132 formulas de fisica rc
132 formulas de fisica rc
 

Similar to Cpic

Microcontroladores PIC.pptx
Microcontroladores PIC.pptxMicrocontroladores PIC.pptx
Microcontroladores PIC.pptxfmtpereira
 
Microcontroladores pic
Microcontroladores picMicrocontroladores pic
Microcontroladores picCesar Prim
 
10 apostila microcontroladores
10  apostila microcontroladores10  apostila microcontroladores
10 apostila microcontroladoresAlyson Cavalcante
 
201728 22259 manual_picgenios
201728 22259 manual_picgenios201728 22259 manual_picgenios
201728 22259 manual_picgeniosBárbara Gama
 
001 A 010 Material Auxiliar Para Curso AvançAdo Ii Msp430
001 A 010   Material Auxiliar Para Curso AvançAdo Ii Msp430001 A 010   Material Auxiliar Para Curso AvançAdo Ii Msp430
001 A 010 Material Auxiliar Para Curso AvançAdo Ii Msp430Texas Instruments
 
Arquiteturas_risc_e_cisc
Arquiteturas_risc_e_ciscArquiteturas_risc_e_cisc
Arquiteturas_risc_e_ciscBruno Dias
 
Apostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançadoApostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançadoClaudio Arkan
 
Desenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcadosDesenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcadosRodrigo Almeida
 
Processador CISC RISC SET de instruções
Processador CISC RISC SET de instruçõesProcessador CISC RISC SET de instruções
Processador CISC RISC SET de instruçõesCarlos Pereira
 
Pcs2031 projeto01 introducao_pic_v4
Pcs2031 projeto01 introducao_pic_v4Pcs2031 projeto01 introducao_pic_v4
Pcs2031 projeto01 introducao_pic_v4Flávia Martins
 
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Cláudio Alves
 
Microcontroladores pic ling c unicamp
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicampFrancisco Fambrini
 
Webinar: Arquitetura de software para sistemas embarcados
Webinar: Arquitetura de software para sistemas embarcadosWebinar: Arquitetura de software para sistemas embarcados
Webinar: Arquitetura de software para sistemas embarcadosEmbarcados
 
Curso mbed e FRDM KL46Z da NXP
Curso mbed e FRDM KL46Z da NXPCurso mbed e FRDM KL46Z da NXP
Curso mbed e FRDM KL46Z da NXPFabio Souza
 
ArquiteturaRisc_GabiCoelho
ArquiteturaRisc_GabiCoelhoArquiteturaRisc_GabiCoelho
ArquiteturaRisc_GabiCoelhoGabriela Coelho
 
Arquitetura de Microcontroladores Microchip PIC
Arquitetura de Microcontroladores Microchip PICArquitetura de Microcontroladores Microchip PIC
Arquitetura de Microcontroladores Microchip PICAlexandre Brandão Lustosa
 
Pic apostila
Pic apostilaPic apostila
Pic apostilamoschen
 

Similar to Cpic (20)

Microcontroladores PIC.pptx
Microcontroladores PIC.pptxMicrocontroladores PIC.pptx
Microcontroladores PIC.pptx
 
Microcontroladores pic
Microcontroladores picMicrocontroladores pic
Microcontroladores pic
 
10 apostila microcontroladores
10  apostila microcontroladores10  apostila microcontroladores
10 apostila microcontroladores
 
Apostila cpic
Apostila cpicApostila cpic
Apostila cpic
 
201728 22259 manual_picgenios
201728 22259 manual_picgenios201728 22259 manual_picgenios
201728 22259 manual_picgenios
 
Corpo relatorio
Corpo relatorioCorpo relatorio
Corpo relatorio
 
001 A 010 Material Auxiliar Para Curso AvançAdo Ii Msp430
001 A 010   Material Auxiliar Para Curso AvançAdo Ii Msp430001 A 010   Material Auxiliar Para Curso AvançAdo Ii Msp430
001 A 010 Material Auxiliar Para Curso AvançAdo Ii Msp430
 
Arquiteturas_risc_e_cisc
Arquiteturas_risc_e_ciscArquiteturas_risc_e_cisc
Arquiteturas_risc_e_cisc
 
Apostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançadoApostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançado
 
Desenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcadosDesenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcados
 
Processador CISC RISC SET de instruções
Processador CISC RISC SET de instruçõesProcessador CISC RISC SET de instruções
Processador CISC RISC SET de instruções
 
Pcs2031 projeto01 introducao_pic_v4
Pcs2031 projeto01 introducao_pic_v4Pcs2031 projeto01 introducao_pic_v4
Pcs2031 projeto01 introducao_pic_v4
 
Pic18xx
Pic18xxPic18xx
Pic18xx
 
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
 
Microcontroladores pic ling c unicamp
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicamp
 
Webinar: Arquitetura de software para sistemas embarcados
Webinar: Arquitetura de software para sistemas embarcadosWebinar: Arquitetura de software para sistemas embarcados
Webinar: Arquitetura de software para sistemas embarcados
 
Curso mbed e FRDM KL46Z da NXP
Curso mbed e FRDM KL46Z da NXPCurso mbed e FRDM KL46Z da NXP
Curso mbed e FRDM KL46Z da NXP
 
ArquiteturaRisc_GabiCoelho
ArquiteturaRisc_GabiCoelhoArquiteturaRisc_GabiCoelho
ArquiteturaRisc_GabiCoelho
 
Arquitetura de Microcontroladores Microchip PIC
Arquitetura de Microcontroladores Microchip PICArquitetura de Microcontroladores Microchip PIC
Arquitetura de Microcontroladores Microchip PIC
 
Pic apostila
Pic apostilaPic apostila
Pic apostila
 

Cpic

  • 1. 25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC. http://kb.elipse.com.br/pt-br/questions/4563/__print 1/4 Este artigo também está disponível para visualização online em http://kb.elipse.com.br/pt-br/questions/4563/ Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC. 1. Introdução Este artigo mostra como comunicar com o microcontrolador PIC16F877A utlizando a placa CuscoPIC. Para isto, utilizaremos o driver ASCII para comunicar via Serial/Serial (RS232/RS232). Primeiramente, deve-se programar o microcontrolador utilizando a porta paralela, e então passar o bootloader para que a placa habilite a porta RS232. (O site da CuscoPIC apresenta os passos para a gravação do bootloader). Em seguida, na programação do controlador, pode-se utilizar o programador MPLab, software próprio da Microchip, fabricante do PIC16F877A. 2. Programação O programa utilizado neste exemplo funciona de modo a ler os valores vindo da serial do computador. void main() // função principal { char x,y, linha[17]; signed long aux; int index; while(1) // laço infinito { if (!kbhit()) continue; x = getch(); if (x == 'A') { //Testa valor vindo do supervisório aux = AD(0); //Passa o valor do potenciômetro para uma variável "aux" printf("%04li", aux); //Imprime no display o valor do potenciômetro } else if (x == 'B') { //Testa valor vindo do supervisório output_d(y); //Escreve o valor de "y" na saída D if (y) y=0; else y=128; //Se "y" for igual a "0", recebe o valor "128" } else if (x == 'C') { //Testa valor vindo do supervisório index=0; //Configura o vetor para o display do { linha[index]=getch(); index++; } while(linha[index-1]); lcd_gotoxy(1,2); printf(lcd_putc,"SLIDER=%s", linha); //Imprime no display "Slider=" o valor vindo do slider do supervisório. } } } 3. Configuração Após compilar e gravar o programa na CuscoPIC, deve-se configurar o supervisório, seja ele o Elipse SCADA ou o Elipse E3. No exemplo abaixo, a configuração foi desenvolvida no Elipse SCADA, mas também é válida para o Elipse E3. 1. Adicione o driver ASCII no projeto.
  • 2. 25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC. http://kb.elipse.com.br/pt-br/questions/4563/__print 2/4 2. Configure os extras do driver com os comandos TX e RX (escrita e leitura) da serial. Obs.: É possível configurar o tipo de informação a ser lida pelo driver como o exemplo do comando "C" descrito na programação no microcontrolador, no caso C%4u/h00 (sendo % - símbolo identificador de campo variável; 4- número de caracteres; u- decimal sem sinal; e /00- caractere especial em formato hexadecimal de dois dígitos). Todas as possibilidades para esta configuração encontram-se no manual do driver, no capítulo Configuração dos Comandos ASCII. 3. Configure o meio físico de conexão (Physical Layer) como serial e preencha os dados conforme as informações dados pelo desenvolvedor da placa.
  • 3. 25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC. http://kb.elipse.com.br/pt-br/questions/4563/__print 3/4 4. Insira e configure os tags conforme o ID configurado nos extras do driver e o parâmetro desejado, seja ele de leitura e/ou escrita. Para maiores informações dos parâmetros de leitura e escrita, ver o capítulo Referência de Tags do manual do driver. Exemplos de configuração de tags: N1 = 0; N2 = 3; N3 = 0; N4 = 0 Tag de leitura e escrita (N1=0); utilizando o comando de índice 3 (N2 = 3); com o índice da variável em 0 (N3 = 0); e sem Offset na mensagem (N4 = 0).
  • 4. 25/6/2014 Imprimir este Artigo - Comunicando com o microcontrolador PIC16F877A através da placa CuscoPIC. http://kb.elipse.com.br/pt-br/questions/4563/__print 4/4 N1 = 1; N2 = 4; N3 = 0; N4 = 0 Tag que lê ou escreve os valores dos campos variáveis de TX antes de enviar um comando (N1 = 1); utilizando o comando de índice 4 (N2 = 4); com o índice da variável em 0 (N3 = 0); e padrão 0 no N4 (N4 = 0). N1 = 4; N2 = 4; N3 = 0; N4 = 0 Tag que envia uma pergunta ao microcontrolador (N1 = 4); utilizando o comando de índice 4 (N2 = 4); padrão 0 no N3 (N3 = 0); e padrão 0 no N4 (N4 = 0). 5. Após configurados os tags, configure as telas conforme desejado. 4. Considerações Finais É possível comunicar com um equipamento microcontrolado utilizando o driver ASCII, desde que ele tenha suporte a escrita e leitura de mensagens com o supervisório pela porta RS232. Estas mensagens são configuradas anteriormente no programa do microcontrolador.