Ir ao conteúdo
  • Cadastre-se

Tutorial : Introdução ao uso de PIC´s em BASIC com o PIC Simulator IDE - Parte 1/2


Posts recomendados

Pessoal... não quero ser chato (já sendo..heheh) mas não estão desviando muito do título e do tema do tópico?

Assim quando alguém ver o título e quiser algo relacionado ao tema terá que garimpar entre as já dezenas de posts.

______

Voltemos ao assunto então :D, tinha té coisa pra falar, como sugeri ao amigo Cacio, acho que experiências com motor de passo e shift register, são coisas legais para se colocar nasegunda parte do tutorial em Basic, até pra galera que curte projetos de mecanismos.

abs.

Link para o comentário
Compartilhar em outros sites

Pessoal, estou anotando as idéias para implementar algum projeto com elas e colocar no tutorial.

Motor de passos, ok !

Matriz de LEDS, ok, mas que tipo de projeto ?

Shift Register, desculpem a minha dúvida, mas o que seria isso na prática ?

Comunicação entre Pics.... no momento estou no meio de um projeto onde uso um 16F877A que controla 8 16f629 e precisa receber e transmitir um monte de dados entre eles, mas é bem complexo, não sei se vai ajudar o pessoal que está iniciando, pois tem de estudar 2 programas bem diferentes funcionando juntos ao mesmo tempo...

vocês sugerem algo mais prático para poder colocar no tutorial ?

Eu estou tentando colocar projetos que possam ter um uso prático , para que o pessoal seja incentivado a montar o projeto para ver o funcionamento, acho que fica mais fácil entender como funciona né ?

Mas de qualquer maneira valeu pelas sugestões, amigos, já fiz dois exemplos usando PWM com Leds e também controle de temperatura de um aquário, afinal assim usamos exemplos do mundo real para ilustrar como se faz.

Sugestões são bem vindas !!!!

Paulo

Link para o comentário
Compartilhar em outros sites

Shift Register, desculpem a minha dúvida, mas o que seria isso na prática ?

Um shift register ou registrador de deslocamento é um componente que converte dados em comunicação série para cominucação paralelo.

bem mas 'que vantagem maria leva?'

bom é muito util pra controle de display de sete segmentos usando apenas dois pinos de IO do PIC para controlar o barrmento

o mesmo vale para LCD, conversor D/A R2R em suma ele funciona como um expansor de pinos para o PIC.

aproveitando acho legal experiências de aúdio com PIC

vejam esse link, implementei esse sistema e funciona muito legal:

http://www.romanblack.com/picsound.htm

abs!

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois...

Muito bom Tutorial, aprendi bastante com ele, até fiz um inversor de frequência DC para AC 3f controlado por PIC. Só que agora estou com uma dúvida. Seria possível no PIC 16F628A criar um tempo de 35min. Seria assim ele executaria uma ação esperaria 35minutos, executaria outra ação, esperaria mais 5 min., excutaria um terceira ação e esperaria mais 30s e terminaria. É possivel realizar isto nesse PIC sitado acima caso não qual poderia usar e qual comando, para o PIC Simulatoride IDE, que daria esse tempo de 35 minutos, visto que o Waitms chega a no máximo 20s. Desde já agradeço a atenção.

Link para o comentário
Compartilhar em outros sites

Pessoal, estou anotando as idéias para implementar algum projeto com elas e colocar no tutorial.

Motor de passos, ok !

Matriz de LEDS, ok, mas que tipo de projeto ?

Shift Register, desculpem a minha dúvida, mas o que seria isso na prática ?

Comunicação entre Pics.... no momento estou no meio de um projeto onde uso um 16F877A que controla 8 16f629 e precisa receber e transmitir um monte de dados entre eles, mas é bem complexo, não sei se vai ajudar o pessoal que está iniciando, pois tem de estudar 2 programas bem diferentes funcionando juntos ao mesmo tempo...

vocês sugerem algo mais prático para poder colocar no tutorial ?

Eu estou tentando colocar projetos que possam ter um uso prático , para que o pessoal seja incentivado a montar o projeto para ver o funcionamento, acho que fica mais fácil entender como funciona né ?

Mas de qualquer maneira valeu pelas sugestões, amigos, já fiz dois exemplos usando PWM com Leds e também controle de temperatura de um aquário, afinal assim usamos exemplos do mundo real para ilustrar como se faz.

Sugestões são bem vindas !!!!

Paulo

Antes de mais nada meus sinceros parabens pelo tutorial - tenho feito dele o meu livro de cabeceira. Antes de maiis nada deixa eu me apresentar - meu nome é Itamar - técnico em eletrônica e telecomunicações - aprendi assembler usando o velho 8085, mas isso são aguas passadas e esquecidas. Atualmente estou tentando reaprender assembler - no caso para o PIC e me deparei com a possibilidade de programa-lo usando o BASIC... coisa que me seria de maior facilidade pois já uso e faço desenvolvimento de pequenos programas voltados para a área de automação usando o VB6. Para desenhos uso o EAGLE e faço as placas prótotipos ou em pequena quantidade usando a transferência térmica, obtendo bons resultados em placas de face simples.

Atualmente trabalho no desenvolvimento de um projeto semelhante ao que você desenvolve ou seja: um programa gerenciador no PC, fazendo a comunicação com um PIC inicialmente usando a serial mas que a intenção final é usar a USB, que gerenciaria outros e acionaria relés. Tenho vasculhado a net buscando mais informações sobre o basic para a programação do PIC e pouca coisa encontrado. Aguardo ansiosamente a publicação da segunda parte do seu tutorial e como sugestão, se puder abordar o uso da USART no PSI...

PS: São tantos os foruns aqui falando sobre o PIC que confunde um pouco, talvez se pudessem ser fundidos em um único....

Atenciosamente

Itamar

Link para o comentário
Compartilhar em outros sites

  • Coordenador

Colega IAS, é bom saber que nosso fórum esta te auxiliando..., sobre sua sugestão!

PS: São tantos os foruns aqui falando sobre o PIC que confunde um pouco, talvez se pudessem ser fundidos em um único....
Já foi sugerida uma área exclusiva para PIC's aqui no fórum, porém ainda é inviável as vistas da administração do fórum, pois já temos uma área exclusiva para programação, (várias linguagens), e esta, que engloba várias outras, (com os circuitos sendo analisados)...

Grande abraço.

Link para o comentário
Compartilhar em outros sites

Boa tarde a todos!

Pesquizando na net encontrei em um arquivo da revista Elektor Espanhola sobre o uso de drive de CD utilizando a comunicação ATAPI assim acessando o dispositivo. O projeto ta no final da revista...Tem que fazer o Download.

Minha pergunta e a seguinte:

Tem como fazer em Basic e ainda usar um display LCD para visualizar as faixas? Digo tempo de cada faixa, total de faixas, e isso tudo usando o 16f877? Aguardo!

Segue o arquivo:

http://www.mediafire.com/download.php?kfvtqmdzawy

Link para o comentário
Compartilhar em outros sites

Colega BCPETRONZIO...

pelo excelente nível técnico deste fórum, está ajundando sim e muito. Tenho desenvolvido tanto o hardware como o software e comercializado informalmente um sistema no qual atrávez de msgs de texto, aciono de forma independente até 64 cargas conectadas na LPT1 - limite máximo conseguido com utilização de circuitos discretos (multiplexadores, latch...) acredito que é possivel conseguir o mesmo utilizando o PIC, de uma forma mais "inteligente", mais segura e evidentemente mais simples. Recentemente adqueri um kit para desenvolvimento Multipic e um Multiprog, ambos fabricados pela SmartRadio e estou tentando aprender assembler e/ou basic com esse objetivo. Evidentemente que toda e qualquer ajuda será bem vinda e desde já me coloco a disposição dos integrantes deste forum para qualquer esclarecimento ou ajuda em algo que eu tenha conhecimento.

Abraços....

Itamar

Link para o comentário
Compartilhar em outros sites

Se alguem puder me esclarecer o porquê deste trecho de rotina abaixo só ligar o primeiro LED do PORTB (RB7) e não desligar, ignorando os comando seguintes, fico grato.

PS: a intenção é receber um byte via serial e de acordo com o valor desse byte, ligar os LEDs correspondentes do byte em binario no PORTB.

; -------------------------------------------

; RECEIVE CHARACTER FROM RS232 AND STORE IN W

; -------------------------------------------

; This routine does not return until a character is received.

;

receive btfss PIR1,RCIF ; (5) check for received data

goto receive

movf RCREG,W ; save received data in W

btfsc w,7 ;Testa o bit 7 em w e salta se for 0

bsf PORTB,7

btfss w,7 ;Testa o bit 7 em w e salta se for 1

bcf PORTB,7

btfsc w,6 ;Testa o bit 6 em w e salta se for 0

bsf PORTB,6

btfss w,6 ;Testa o bit 6 em w e salta se for 1

bcf PORTB,6

btfsc w,5 ;Testa o bit 5 em w e salta se for 0

bsf PORTB,5

btfss w,5 ;Testa o bit 5 em w e salta se for 1

bcf PORTB,5

btfsc w,4 ;Testa o bit 4 em w e salta se for 0

bsf PORTB,4

btfss w,4 ;Testa o bit 4 em w e salta se for 1

bcf PORTB,4

btfsc w,3 ;Testa o bit 3 em w e salta se for 0

bsf PORTB,3

btfss w,3 ;Testa o bit 3 em w e salta se for 1

bcf PORTB,3

return

;

Link para o comentário
Compartilhar em outros sites

Amigo Aphawk, fiquei muito interessado pelo seu tutorial sobre programação Basic para microprocessadores. A primeira parte gostei muito, aguardo a segunda. porém gostaria de aproveitar a oportunidade e fazer uma pergunta ao amigo: Seria possivel ver a programação de um microprocessador e altera-la para modificar o resultado de uma operação? Assim, colocar mais algumas funções que possam ter sido deixadas de lado por não serem necessarias para aquele projeto. voce conhece este microprocessador: RJH 12000?

Link para o comentário
Compartilhar em outros sites

Oi amigos, desculpem o sumiço, apareceu um projeto bom e eu não pude recusar, mas entreguei hoje todo o serviço.

Só para terem uma ideia, o software para o 16f877A tem mais de 1200 linhas, mixando Basic e Assembler, ocupa 96% da capacidade de programa e mais de 90% da memória RAM, foi muito no limite mesmo.

O objetivo era trabalhar com padrão SMBUS e acessar alguns componentes, que trabalham a 3.3 Volts, mas meu PIC usa 5 Volts ! Levei um baile danado prá resolver !

Tive de escrever algumas rotinas em Assembler, pois as funções para I2C só funcionam para as memórias I2C de 512 bytes e acima, e a minha era uma de 256 bytes .... outro problema ENORME era que eu tinha de me comunicar com a velocidade de 10 Khz , ( componentes feitos para SMBUS, que é um tipo de I2C mas bem mais lento e de tensão de 3.3 volts .... ) e não tem como fazer isso no PSI, só mesmo escrevendo as rotinas em Assembler ( e eu que tento fugir disto toda hora..... ) hehehe, mas acabou.

Vou terminar a parte 2 do tutorial, vou dar uma explicada melhor nas rotinas de comunicação serial via Usart, conforme estão solicitando, e tentar postar a parte 2 o mais rápido possivel.

Ah, vou acrescentar essa minha última experiência com o SMBUS também, pois podem precisar disto.

Não lí todos os posts, mas prometo ler com atenção este fim de semana.

Quanto ao amigo que perguntou sobre a possibilidade de ver e alterar o programa de um microprocessador, temos os seguintes problemas :

1 - Se voce tiver o código objeto , tem de dessasemblar, o que vai gerar um código - fonte em Assembler. Mas geralmente esses programas são escritos em alguma linguagem de alto nível, e olhando o assembler, voce vai ficar louco para tentar entender como o programa funciona.

2 - Para implementar alguma nova função, voce tem de ter pleno conhecimento do programa original, modificá-lo sem prejuizo á sua funcionabilidade original, e por último, ver se ainda existe espaço na memória para o seu programa.

Resultado : é muito difícil fazer o que voce quer, não é que seja impossível, mas precisa ter muito conhecimento e experiência para isso ok ?

Ah, e quanto ao processador que voce passou o código, não o conheço ok ?

Um abraço para todos.

Paulo

Link para o comentário
Compartilhar em outros sites

Oi amigos, desculpem o sumiço, apareceu um projeto bom e eu não pude recusar, mas entreguei hoje todo o serviço.

Só para terem uma ideia, o software para o 16f877A tem mais de 1200 linhas, mixando Basic e Assembler, ocupa 96% da capacidade de programa e mais de 90% da memória RAM, foi muito no limite mesmo.

O objetivo era trabalhar com padrão SMBUS e acessar alguns componentes, que trabalham a 3.3 Volts, mas meu PIC usa 5 Volts ! Levei um baile danado prá resolver !

Tive de escrever algumas rotinas em Assembler, pois as funções para I2C só funcionam para as memórias I2C de 512 bytes e acima, e a minha era uma de 256 bytes .... outro problema ENORME era que eu tinha de me comunicar com a velocidade de 10 Khz , ( componentes feitos para SMBUS, que é um tipo de I2C mas bem mais lento e de tensão de 3.3 volts .... ) e não tem como fazer isso no PSI, só mesmo escrevendo as rotinas em Assembler ( e eu que tento fugir disto toda hora..... ) hehehe, mas acabou.

Vou terminar a parte 2 do tutorial, vou dar uma explicada melhor nas rotinas de comunicação serial via Usart, conforme estão solicitando, e tentar postar a parte 2 o mais rápido possivel.

Ah, vou acrescentar essa minha última experiência com o SMBUS também, pois podem precisar disto.

Não lí todos os posts, mas prometo ler com atenção este fim de semana.

Quanto ao amigo que perguntou sobre a possibilidade de ver e alterar o programa de um microprocessador, temos os seguintes problemas :

1 - Se voce tiver o código objeto , tem de dessasemblar, o que vai gerar um código - fonte em Assembler. Mas geralmente esses programas são escritos em alguma linguagem de alto nível, e olhando o assembler, voce vai ficar louco para tentar entender como o programa funciona.

2 - Para implementar alguma nova função, voce tem de ter pleno conhecimento do programa original, modificá-lo sem prejuizo á sua funcionabilidade original, e por último, ver se ainda existe espaço na memória para o seu programa.

Resultado : é muito difícil fazer o que voce quer, não é que seja impossível, mas precisa ter muito conhecimento e experiência para isso ok ?

Ah, e quanto ao processador que voce passou o código, não o conheço ok ?

Um abraço para todos.

Paulo

Olá Paulo, tudo bem?

Se puderes da uma olha nesse tópico: http://forum.clubedohardware.com.br/volume-digital-amplificadores/644790/3

Estou com uma dúvida lá, acredito que seja do seu conhecimento.

Parabéns pelo tutorial parte 1, muito bem elaborado! :)

Abraços,

Gladson de Queirós

Link para o comentário
Compartilhar em outros sites

Oi Gladson, legal o tópico, e realmente é a área que eu gosto, sempre fui doido prá aparelhos de som !

Pelo que ví , o que voce quer é bem simples de fazer na parte digital, e na parte analógica, para comutar o áudio, tem várias maneiras de fazer isso. Se a sua ideia é hi-fi de verdade, existe uma técnica que eu lí numa Elektor inglesa, de uns 15 anos atrás ou mais, que faz a comutação de sinal com distorção abaixo de 0,02 % , usando compontes bem simples e fáceis de encontrar, com uma excelente separação de canais e de entradas.

Evite usar esses CI's que dizem 0.1 % , eles sáo feitos para aplicações de baixo volume. Se voce usar um desses em um power de 200 W RMS, vai perceber logo que a distorção e a relação S/R acabam com o seu projeto ok ?

Mas me diga qual é a sua ideia, se voce vai usar botões separados fica muito mais simples, e usar 2 CIS de potenciômetro digital para volume individual acho que seria a melhor solução.

Só náo sei se fica legal um display comum de 16X2 para mostrar tudo, eu usaria um de mais linhas, por exemplo, 4 linhas, o custo ainda é razoável.

voce prefere usar botões individuais para fazer a seleção ??? Digo isso porque fica bem mais fácil do que usar essas chaves rotativas heheheh pelo menos eu nunca usei .

A parte de software em Basic é bem simples de fazer, e eu acredito que muitos que estão acompanhando aquele tópico vão colaborar com idéias e aplicações heheehhe, eu ví lá o digam AMD e o Rodrigo Lange, entre outros, e todos gostam de som e PIC's !

Mas me diga exatamente o que voce quer fazer, com mais detalhes, para pensarmos no hardware e no software ok ?

Paulo

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber 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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!