Ir ao conteúdo
  • Cadastre-se

Gravar pic


José Bento itj

Posts recomendados

Olá pessoal, estou estudando eletrônica e gostaria de aprender uma linguagem para gravar pic, estou querendo usar o 16f630 que é o mais usador em placas de comando que eu uso no meu trabalho do dia a dia. Gostaria de saber qual é a linguagem mais fácil para poder gravar tal pic e se alguem tem algum material didático de tal linguagem, bem como os aplicativos que devo ter para escrever compilar e gravar.

Abraço.

Link para o comentário
Compartilhar em outros sites

A melhor linguagem depende das tuas bases. Por exemplo, eu domino muito bem a electronica digital então a linguagem assembly é melhor. Mas pra quem domina a informatica, a linguagem C é a melhor.

Contudo tem esse link com um curso cmpleto de pic em assembly. Vi e achei simples pra quem quer começar agora. Ele dá o esquema de um gravador bem simples com 2 transistores apenas e ligaçao pela porta serial ou paralela para qualquer pic (ou pelo menos a maioria), eu uso esse gravador com a porta serial.

http://www.4shared.com/get/BnDDkyF9/EdutecBauru.html

Link para o comentário
Compartilhar em outros sites

A linguagem depende. Eu domino tanto C quando Assembly e te digo que, desde que você tenha um bom dominio do hardware, as duas linguagens podem lhe oferecer muitos recursos. Qual é a vatagem do C, então. É a grande capacidade de se adaptar a diversos microcontroladores diferentes sem ter de alterar o código, ou fazendo mínimas adaptações. Não sei de que ramo você vem, se é mais da informatica ou da eletronica mesmo. Mas acho que é bom iniciar com o assembly e criar rotinas simples, desde de leds, botões até displays de 7 segmentos. Depois aprender C, re-fazer esses passos e depois avançar para coisas maiories, como teclados, displays de LCDs. Outra vantagem do C é encontrar na net driver para tudo que você deseja, por isso recomendo que entenda a logica por tras deles, para poder adaptá-los em caso de necessidade. Quanto a gravadores, sugiro que compre um PICkit2, ou faça um. É um gravador simples, in-circuit e que você pode fazer facilmente um adaptador ZIF.

Link para o comentário
Compartilhar em outros sites

O meu ramo é mais voltado para eletrônica e o meu pc aqui não tem as portas paralela e serial, será que eu não consigo um gravador via USB?

A interface usb é complicada, nesse caso seria bom comprar um gravador, actualmente todos vêm com porta usb. Contudo voce pode montar um, é so pesquisar na net.

Link para o comentário
Compartilhar em outros sites

Para iniciantes o ideal é comprar mesmo. Você procura no site da microship ou em algum site de sua confiança. Eu uso e recomendo o PICkit2, mas você pode comprar outros. O PICkit2 tem compatibilidade com o MBLAB e também possui um programa próprio que importa o .hex e grava. Eu uso o proprio programa dele, pois é bem simples, e direto, nao dá "bug".

Link para o comentário
Compartilhar em outros sites

Um grande problema do assembly é que ele varia de MCU pra MCU. Você tem que ver oqual pic vai usar e progurar no datasheet na parte de "Instruction Set Summary". Dai vai ter todos os comandos que você pode usar. De restto, você baixa o MPLAB da Microchip e cata na pasta interna dele o arquivo TEMP16Fxxx.asm que vai ter o codigo inicial pra poder usar o PIC. Dai basta escrever sua rotina. De programa você deve conhecer as diretivas EQU e #DEFINE.

Para criar uma variavel você usa EQU e direciona para um endereço de memoria livre.

var EQU 0x20 //funciona pro 16f690

E define é pra dar nomes aos bois, se você for por um led no pino A0 usa

#define led PORTA,0

Link para o comentário
Compartilhar em outros sites

O meu ramo é mais voltado para eletrônica

Se o seu nível de eletronica é avançado e inclui eletronica digital,acho que voce vai render mais com ASM,pois é a linguagem nativa dos microcontroladores,e não vai precisar procurar por um compilador que atenda as suas nescessidades pois voce vai fazer suas nescessidades.

Se quiser ver logo como responde um microcontrolador,pode começar com C que é cheio de bibliotecas genéricas,tipo para LCD,USB etc.

Agora se voce não se sentir bem programando microcontroladores,nenhuma linguagen vai fazer melhorar.

Um grande problema do assembly é que ele varia de MCU pra MCU.

Mas não se esqueça que nenhum microcontrolador é igual ao outro e não deve ter uma rotina 'genérica' ou padrão.

Link para o comentário
Compartilhar em outros sites

E algum material didático do assembly alguem teria?

No link que te passei tem um curso muito bom, ele dá quase tudo que você precisa.

http://www.4shared.com/get/BnDDkyF9/EdutecBauru.html

Contudo, tem aqui um outro link de aulas em linguagem C, tambem dá os aplicativos necessarios, aí você fica por dentro de tudo.

https://sites.google.com/site/rmaalmeida/unifei/downloads-1/elt024

Link para o comentário
Compartilhar em outros sites

Você pode começar com qualquer um, todos têm diferenças, mas é só consultar o datasheet. eu comecei com o 16F628A, é mais simples na montagem porque não requer xtal. Mas em termos de pesquisa o 16F84A é o que mais aparece. Se voce possui o 16f630 então começa por ele mesmo.

Link para o comentário
Compartilhar em outros sites

eu usei o 16F690, nao conheço o teu, mas se nao tem oscilador interno já é pior, tenso oscilador interno o resto da-se um jeito que é tudo simples

É provável que tenha oscilador sim, pois nas placas onde eu encontro ele não há nenhum cristal, mas pra garantir vou consultar o datasheet. Só mais uma dúvida , esses microcontroladores podem ser gravados mais de uma vez no caso de um erro no código fonte?

Link para o comentário
Compartilhar em outros sites

É provável que tenha oscilador sim, pois nas placas onde eu encontro ele não há nenhum cristal, mas pra garantir vou consultar o datasheet. Só mais uma dúvida , esses microcontroladores podem ser gravados mais de uma vez no caso de um erro no código fonte?

PIC16FXXX, o F significa flash, portanto o pic possui uma memoria flash tal como as pendrives, voce pode programar quantas vezes quiser. Na verdade tem um certo limite até começar a falhar, mas até chegares lá....

Link para o comentário
Compartilhar em outros sites

E aí José Bento de Itajaí. Estive em Chapecó nestes dias. Sei que é longe daí, mas vale só pra dizer que já fui pra SC. E agora o..

..Hehê! (Não podia faltar isto.)

Sabendo-se que nos dias de hoje não basta mais saber apenas a lidar com componentes eletrònicos e sim com um certo nível de programação, não podemos dizer que "o nosso ramo é mais votado para eletrônica", quando já se está dentro de um tópico que trata justo disso. E é por esse motivo que você procura algum nível de programação para poder crescer e se modelar a este mercado de trabalho.

A linguagem de programação para o Pic pode ser em baixo nível ou alto nível sem problema. Há uma diversidade muito grande de linguagens disponíveis e um pouco delas é disponível gratuitamente para nós, como:

-Assembly (ASM):

Nesta liguagem programamos em baixo nível, no nível de máquina, conversamos diretamente com a microcontrolador. Neste nível se tem o controle total do que o uC (microcontrolador) fará com a sua programação.

O seu código-fonte será mais extenso e seu tempo para elaborá-lo será maior (mas conforme a prática, mais ágil e prático você ficará) e seu aproveitamento pela máquina será melhor consumindo menos recursos.

Vale lembrar que para cada uC que você for utilizar terás de fazer um novo código, já que cada CI contém instruções particulares.

Pode-se programar em asm utilizando o próprio programa MPLAB da Microchip;

-C:

Aqui já estamos programando em alto nível, ou seja, numa lingua mais humana e fácil de se entender. Com este nível já não se terá o controle total do uC, já que o compilador fará isto para ti.

O seu código-fonte será mais curto, mais fácil de se fazer alterações e teu controle sobre a máquina será um pouco menor.

Em C, você terá uma certa portabilidade, já que poderás migrar um código teu feito para o PIC16F630 para um 16F628A ou 16F84A ou até um 12F678 e até mesmo para um uC da Atmel ou Arduino e até mesmo Motorola e qualquer outro, já que o compilador fará a tradução para ASM para você.

A liguagem C é uma linguagem bem conhecida e difundida, você não precisa necessariamente procurar por linguagem C para microcontroladores, já que a linguagem C é simplesmente C.

O PCWHD CCS, apesar de ser em C, não é 100% ANSI. Há uma grande similaridade da linguagem C universal para a linguagem C do CCS, mas todo o seu aprendizado em C será válido para ele com algumas diferençazinhas, além de seu uso não ser FREE.

Para uso gratuito temos o Hitech-C da própria Microchip e o SDCC que é bem famoso no mundo dos 8051.

Conheço bem estas duas linguagens, mas há outras disponíveis como a linguagem C++, Pascal, Turbo-Pascal, Delphi, etc.

Não sei como é aí em Itajaí para se conseguir material de eletrônica, mas pela internet se consegue um gravador USB com facilidade. você pode gravar e desgravar um PIC com memória Flash quantas vezes precisar, Eu uso o MPLAB para gravar os meus PICS e o configuro da forma que eu acho melhor naquele momento. Posso apagar a EEPROM a cada vez que eu fizer a programação, posso apenas ler a EEPROM, posso gravar a partir de um certo endereço da FLASH, posso apenas apagar a FLASH.

Faça a sua primeira gravação que pode não ser tão fácil para você neste momento, mas na base da tentativa e erro é que você aprende mais. De primeira, preste muuuita atenção para não inverter o PIC em seu gravador. Leia atentamente às intruções que vierem com ele. Geralmente vem um CD junto com um bom material de estudos e aplicações de forma legal.

Bons estudos!!

Ricardo da Silva Pimentel.

Link para o comentário
Compartilhar em outros sites

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Livre pra uso acadêmico. Se ganhar dinheiro com ele, eu vou dedar...! rs

. Só lembrando que ele trabalha junto ao MPLAB, e sem ele Hitech-C nada é.

O hitech trabalha também com o eclipse (e quiça outros ide´s) e sozinho em monstruosos prompts de comando (sei lá, algum masoquista pode gostar - usei-os no início de carreira)

Sei tô chato hoje. Mas voce queria o que? hoje só posts de segunda! rs - II

abç

Link para o comentário
Compartilhar em outros sites

E aí José Bento de Itajaí. Estive em Chapecó nestes dias. Sei que é longe daí, mas vale só pra dizer que já fui pra SC. E agora o..

..Hehê! (Não podia faltar isto.)

Sabendo-se que nos dias de hoje não basta mais saber apenas a lidar com componentes eletrònicos e sim com um certo nível de programação, não podemos dizer que "o nosso ramo é mais votado para eletrônica", quando já se está dentro de um tópico que trata justo disso. E é por esse motivo que você procura algum nível de programação para poder crescer e se modelar a este mercado de trabalho.

A linguagem de programação para o Pic pode ser em baixo nível ou alto nível sem problema. Há uma diversidade muito grande de linguagens disponíveis e um pouco delas é disponível gratuitamente para nós, como:

-Assembly (ASM):

Nesta liguagem programamos em baixo nível, no nível de máquina, conversamos diretamente com a microcontrolador. Neste nível se tem o controle total do que o uC (microcontrolador) fará com a sua programação.

O seu código-fonte será mais extenso e seu tempo para elaborá-lo será maior (mas conforme a prática, mais ágil e prático você ficará) e seu aproveitamento pela máquina será melhor consumindo menos recursos.

Vale lembrar que para cada uC que você for utilizar terás de fazer um novo código, já que cada CI contém instruções particulares.

Pode-se programar em asm utilizando o próprio programa MPLAB da Microchip;

-C:

Aqui já estamos programando em alto nível, ou seja, numa lingua mais humana e fácil de se entender. Com este nível já não se terá o controle total do uC, já que o compilador fará isto para ti.

O seu código-fonte será mais curto, mais fácil de se fazer alterações e teu controle sobre a máquina será um pouco menor.

Em C, você terá uma certa portabilidade, já que poderás migrar um código teu feito para o PIC16F630 para um 16F628A ou 16F84A ou até um 12F678 e até mesmo para um uC da Atmel ou Arduino e até mesmo Motorola e qualquer outro, já que o compilador fará a tradução para ASM para você.

A liguagem C é uma linguagem bem conhecida e difundida, você não precisa necessariamente procurar por linguagem C para microcontroladores, já que a linguagem C é simplesmente C.

O PCWHD CCS, apesar de ser em C, não é 100% ANSI. Há uma grande similaridade da linguagem C universal para a linguagem C do CCS, mas todo o seu aprendizado em C será válido para ele com algumas diferençazinhas, além de seu uso não ser FREE.

Para uso gratuito temos o Hitech-C da própria Microchip e o SDCC que é bem famoso no mundo dos 8051.

Conheço bem estas duas linguagens, mas há outras disponíveis como a linguagem C++, Pascal, Turbo-Pascal, Delphi, etc.

Não sei como é aí em Itajaí para se conseguir material de eletrônica, mas pela internet se consegue um gravador USB com facilidade. você pode gravar e desgravar um PIC com memória Flash quantas vezes precisar, Eu uso o MPLAB para gravar os meus PICS e o configuro da forma que eu acho melhor naquele momento. Posso apagar a EEPROM a cada vez que eu fizer a programação, posso apenas ler a EEPROM, posso gravar a partir de um certo endereço da FLASH, posso apenas apagar a FLASH.

Faça a sua primeira gravação que pode não ser tão fácil para você neste momento, mas na base da tentativa e erro é que você aprende mais. De primeira, preste muuuita atenção para não inverter o PIC em seu gravador. Leia atentamente às intruções que vierem com ele. Geralmente vem um CD junto com um bom material de estudos e aplicações de forma legal.

Bons estudos!!

Ricardo da Silva Pimentel.

Cara, muito obrigado por reservar um pouco do seu tempo fazendo um post tão bem explicado sobre as várias linguagens de programação que existem, com essa explicação dá pra ter uma noção de que como cada linguagem funciona e como eu ja postei aqui, estou começando com o assembly .

Achei aqui mesmo no club um tópico que trata do mesmo assunto e consegui um curso on line de microcontroladores pic, no curso é usado o 16f84a que parece ser bem completo,mas o mais importante não é tanto o pic e sim aprender a dominar uma linguagem de programação, mas aproveitando a deixa, se não for pedir de mais, peço a você e aos outros que postaram para que monitorem esse tópico, pois tenho certeza que as dúvidas irão aparecer.

Abraços, e da próxima vez que vier a SC procure visitar o litoral, tem muita coisa boa aqui.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...