Fórum Eletrônica2002 (Brasil)
Seja bem vindo ao fórum Eletrônica2002.

Para ter acesso a todo o conteúdo do fórum você precisa estar cadastrado e fazer o login!

Se não é cadastrado no fórum: aproveite e faça.

Para criar um tópico, você precisa se cadastrar e estar conectado.
Ao criar um tópico, vc deve colocar a marca/modelo/e defeito do aparelho no título do tópico. Isto é regra neste fórum!
http://eletronica2002.forumeiros.com/forum-de-reparacao-de-aparelhos-eletronicos-f1/regras-do-forum-t19731.htm

Falar com o administrador?
Mande um e-mail: valdeni@eletronica2002.com.br
.
Menu de navegação


Clique nas imagens abaixo para acessar os fóruns desejados.

Fóruns:





---------------------------

PARCEIROS

E PATROCINADORES

DO FÓRUM 2002:

================

Clique nos banners:




================

Quer ser um patrocinador do fórum?

Mande um e-mail para:

Valdeni@eletronica2002.com.br


_________________
Últimos assuntos
» [Encerrado]som multilaser sp250 sem audio
Ontem à(s) 23:15 por Eduardo Passos

» placa fonte
Ontem à(s) 23:04 por jailton da silva santos

» tv lg 29cc9rl queimando resistor 303
Ontem à(s) 22:05 por Evandro Barbosa

» Tv gradiente tv 2925-Apagada,nem led acende
Ontem à(s) 21:06 por iracy-RJ

» Auto Rádio Philips CEM2000 não liga
Ontem à(s) 20:43 por Fábio Lena

» Auriculares caseros fácil de hacer
Ontem à(s) 20:26 por kir

» Auriculares caseros fácil de hacer
Ontem à(s) 20:25 por kir

» Duvida amplificador Polyvox AP500
Ontem à(s) 13:13 por peterloo

» TV PHILCO TP2052N ,COM EFEITO TAÇA......
Ontem à(s) 11:28 por renasoft2014

» Caixa amplificada lexsen LS12A MP3 não sai som
Seg 22 Out 2018, 09:51 por Eduardo Passos

» DISPLEY TV sony
Dom 21 Out 2018, 23:33 por sargan1953

» Receiver Philips Mod 795 - Som baixo em um canal
Sab 20 Out 2018, 20:27 por Eduardo Passos

» Som Samsung MX-C850/XAZ
Sab 20 Out 2018, 20:27 por Eduardo Passos

» TV SAMSUNG CL29Z30MQ EFEITO ALMOFADA
Sab 20 Out 2018, 16:37 por ALDO PAULO

» MInisistem LG CJ44 - Fonte queimada.
Sab 20 Out 2018, 16:21 por Admilson Augusto

» TV SAMSUNG CL21C650 não funciona na rede 220 v
Sex 19 Out 2018, 19:55 por Evandro Barbosa

» tv semp 1460E não liga
Sex 19 Out 2018, 12:59 por samucasvm

» MIXER BEHRINGER VMX 300 COM TRAFO ALTERADO.
Qui 18 Out 2018, 18:24 por audio

» TV LG 21FU1RLG-LS SEM SINAL DE RF
Qui 18 Out 2018, 10:17 por MARIO Y. SEGAWA

» Som lg // cm 4330 // s-proteção
Qui 18 Out 2018, 09:52 por DANTEX

» Mini Sistem LG CM8330 desligando sozinho
Qui 18 Out 2018, 09:10 por Cl2019

» TV LG MODELO RP-20CB62BRS SEM IMAGEM SO TEM AUDIO.
Qua 17 Out 2018, 23:38 por ayslan souza

» TV LCD SONY KLV-46S200A não LIGA, PISCANDO O LED POWER 4 VEZES
Qua 17 Out 2018, 11:36 por jandilson

» TV SONY kv29fs100 Imagem rolando e ronco no áudio
Qua 17 Out 2018, 08:22 por Dr.Luan

» Tv philips 29pt5645 problemas no av1
Qua 17 Out 2018, 08:20 por Dr.Luan

» Central Multimídia - MediaNav Renault Duster - Tela branca
Ter 16 Out 2018, 15:41 por rafaquino91

» SOM PHILIPS FWM593/BK SEM SOM
Ter 16 Out 2018, 13:50 por HAHNRAHN

» MICROSSISTEM PANASSONIC SA-MAX200 ARMANDO PROTEÇÃO
Ter 16 Out 2018, 13:20 por negoleo21

» MÓDULO PYRAMID PB310GX SEM ÁUDIO
Ter 16 Out 2018, 10:12 por glob

» tv philips mod 14GX1618/78R ñ muda de canal(travada)
Ter 16 Out 2018, 07:29 por Nill

Quem está conectado
34 usuários online :: 2 usuários cadastrados, Nenhum Invisível e 32 Visitantes :: 3 Motores de busca

claudineiamaro, GoodZillaX

O recorde de usuários online foi de 1034 em Sex 24 Jul 2015, 10:41

Programação pic16/pic18

Ir em baixo

Programação pic16/pic18

Mensagem por isaacantonio3 em Sab 21 Jun 2014, 16:29

Sou iniciante em microcontroladores,gostaria de saber como programar e reproduzir um som midi,wave,mp3 ou qualquer outro formato,pressionando um botão.
utilizando um pic16 ou pic18.Podendo ser em C ou Pascal.

Exemplo :

se pressionar botao 1 = reproduzir som 1
se pressionar botao 2 = reproduzir som 2
avatar
isaacantonio3
NOVATO
NOVATO

DESCRIÇÃO: : Técnico em informática
TEMPO DE EXPERIÊNCIA : 10
Sexo : Masculino
Número de Mensagens : 2
Idade : 23
Cidade/Estado: : São Gonçalo/Rj
Data de inscrição : 21/06/2014

Voltar ao Topo Ir em baixo

Re: Programação pic16/pic18

Mensagem por nagkiller em Dom 29 Jun 2014, 11:51

Dê uma olhada nesses tópicos!!!

[Você precisa estar registrado e conectado para ver este link.]
[Você precisa estar registrado e conectado para ver este link.]
[Você precisa estar registrado e conectado para ver este link.]


Não entendo porque não começam com um hello word (acender led), depois ler um botão e mudar estado do led, etc...
Nesses trabalhos de escola, mal sabem inicializar um microcontrolador e já querem fazer robô que desvia de obstáculos, tocar musica, etc...

Os projetos acima estão todos em CCS C Compiler For PIC !!!
[Você precisa estar registrado e conectado para ver este link.]

Você pode ainda utilizar um APLUS APR9600 (ou os antigos Winbound ISD1400) que é um chip voice recorder, grave dois pequenos trechos de musica... assim você pode tocar a musica conforme o botão pressionado.

Ou simplesmente gerar seu próprio som com um buzzer mudando a frequência de chaveamento do pino utilizado em seu projeto.

Existem diversas formas de fazer isso... Mas você deve escolher a mais fácil e mais barata a nível de projeto.

O exemplo pratico com buzzer mais simples. Um botão gera frequência de 2KHz e outro 4KHz (F=1/T).

Só mudar para outro modelo de pic, alterar os fusíveis e as portas utilizadas!!!

Detalhe importante!!! Este buzzer é sem driver interno (buzzer com driver interno são aqueles que você os alimenta com 5Volts e sai som, geralmente encontrado em placa mãe, este não serve)!!!

Código:
//*****************************************************************************
// CCS C Compiler for PIC V5.025
//*****************************************************************************
#include <12F629.h>
//*****************************************************************************
#FUSES NOWDT                    //No Watch Dog Timer
#FUSES INTRC_IO                 //Internal RC Osc, no CLKOUT
#FUSES NOMCLR                   //Master Clear pin used for I/O
#FUSES NOBROWNOUT               //No brownout reset
//*****************************************************************************
#use delay(int=4000000)
//*****************************************************************************
#define BOTAO1    PIN_A0
#define BOTAO2    PIN_A1
#define SINAL     PIN_A2
//*****************************************************************************
void MUSICA1()
{
   output_toggle(SINAL);
   delay_us(250);  
}
//*****************************************************************************
void MUSICA2()
{
   output_toggle(SINAL);
   delay_us(500);
}
//*****************************************************************************
void main()
{
   output_a(0x00);
   while(TRUE)
   {
      output_low(SINAL);
      if (!input(BOTAO1))
      {
         MUSICA1();        
      }
      if (!input(BOTAO2))
      {
         MUSICA2();        
      }  
   }
}
//*****************************************************************************

Outro modelo:

Código:
//*****************************************************************************
// CCS C Compiler for PIC V5.025
//*****************************************************************************
#include <12F629.h>
//*****************************************************************************
#FUSES NOWDT                    //No Watch Dog Timer
#FUSES INTRC_IO                 //Internal RC Osc, no CLKOUT
#FUSES NOMCLR                   //Master Clear pin used for I/O
#FUSES NOBROWNOUT               //No brownout reset
//*****************************************************************************
#use delay(int=4000000)
//*****************************************************************************
#define BOTAO1    PIN_A0
#define BOTAO2    PIN_A1
#define SINAL     PIN_A2
//*****************************************************************************
long int tempo = 0;
int tempo2 = 0;
//*****************************************************************************
void MUSICA1()
{
   tempo2=0;
   do
   {
      tempo=0;
      do
      {
         output_toggle(SINAL);
         delay_us(400);
         tempo++;
      }while (tempo <=250);
      tempo=0;
      delay_ms(100);
      do
      {
         output_toggle(SINAL);
         delay_us(750);
         tempo++;
      }while (tempo <=250);
      delay_ms(100);
      tempo2++;
   }while(tempo2 <=5);
}
//*****************************************************************************
void MUSICA2()
{
   tempo=0;
   do
   {
      output_toggle(SINAL);
      delay_us(100);
      output_toggle(SINAL);
      delay_us(150);
      tempo++;
   }while (tempo <=250);
   tempo=0;
   delay_ms(100);
   do
   {
      output_toggle(SINAL);
      delay_us(400);
      output_toggle(SINAL);
      delay_us(200);
      tempo++;
   }while (tempo <=250);
   delay_ms(100);
   tempo=0;
   do
   {
      output_toggle(SINAL);
      delay_us(200);
      output_toggle(SINAL);
      delay_us(100);
      tempo++;
   }while (tempo <=250);
   tempo=0;
   delay_ms(250);
   do
   {
      output_toggle(SINAL);
      delay_us(300);
      output_toggle(SINAL);
      delay_us(200);
      tempo++;
   }while (tempo <=250);
   delay_ms(250);
   tempo=0;
   do
   {
      output_toggle(SINAL);
      delay_us(600);
      output_toggle(SINAL);
      delay_us(200);
      tempo++;
   }while (tempo <=250);
   tempo=0;
   delay_ms(250);
   do
   {
      output_toggle(SINAL);
      delay_us(450);
      output_toggle(SINAL);
      delay_us(100);
      tempo++;
   }while (tempo <=250);
   delay_ms(250);  
   tempo=0;
   do
   {
      output_toggle(SINAL);
      delay_us(850);
      output_toggle(SINAL);
      delay_us(100);
      tempo++;
   }while (tempo <=500);
   tempo=0;
   delay_ms(250);
   do
   {
      output_toggle(SINAL);
      delay_us(550);
      output_toggle(SINAL);
      delay_us(100);
      tempo++;
   }while (tempo <=1000);
   delay_ms(500);
   do
   {
      output_toggle(SINAL);
      delay_us(700);
      output_toggle(SINAL);
      delay_us(100);
      tempo++;
   }while (tempo <=250);
   output_low(SINAL);
   delay_ms(1000);
  
}
//*****************************************************************************
void main()
{
   output_a(0x00);
   while(TRUE)
   {
      output_low(SINAL);
      if (!input(BOTAO1))
      {
         MUSICA1();
      }
      if (!input(BOTAO2))
      {
         MUSICA2();        
      }  
   }
}
//*****************************************************************************

[Você precisa estar registrado e conectado para ver esta imagem.]

_________________
No mundo só existem 10 tipos de pessoas: as que conhecem binário e as que não conhecem!!!
avatar
nagkiller
Moderador do fórum
Moderador do fórum

DESCRIÇÃO: : Técnico em Eletrônica e informática
TEMPO DE EXPERIÊNCIA : Desde 1990
Sexo : Masculino
Número de Mensagens : 1799
Idade : 38
Cidade/Estado: : Garça - São Paulo
Humor : Depende
Data de inscrição : 23/11/2011

Voltar ao Topo Ir em baixo

Re: Programação pic16/pic18

Mensagem por isaacantonio3 em Dom 29 Jun 2014, 22:05

e como faço pra gravar a musica junto com a programação ?
ou com que leia um cartão de memoria e reproduza os sons ?
o que teria que alterar no codigo ?
avatar
isaacantonio3
NOVATO
NOVATO

DESCRIÇÃO: : Técnico em informática
TEMPO DE EXPERIÊNCIA : 10
Sexo : Masculino
Número de Mensagens : 2
Idade : 23
Cidade/Estado: : São Gonçalo/Rj
Data de inscrição : 21/06/2014

Voltar ao Topo Ir em baixo

Re: Programação pic16/pic18

Mensagem por nagkiller em Seg 30 Jun 2014, 12:08

Pra você é mais fácil usar um hardware externo para ler o cartão e a musica... Se não terá que alocar tabelas no pic... usar base de tempos etc... dê uma olhada nos links acima!!!
Exemplo de tabela: [Você precisa estar registrado e conectado para ver este link.]

Tem o VS10xx que é um circuito integrado decodificador de mp3... com ele será mais fácil a utilização...

Pode ainda fazer isso sem o uso do decodificador, mas terá que decodificar o mp3 diretamente, saber sobre a partição utilizada, etc... A comunicação entre o SD card e o pic é via SPI...

Alguns projetos na net (nem todos são com PIC):

[Você precisa estar registrado e conectado para ver este link.]

[Você precisa estar registrado e conectado para ver este link.]

[Você precisa estar registrado e conectado para ver este link.]

[Você precisa estar registrado e conectado para ver este link.]

Flw...

_________________
No mundo só existem 10 tipos de pessoas: as que conhecem binário e as que não conhecem!!!
avatar
nagkiller
Moderador do fórum
Moderador do fórum

DESCRIÇÃO: : Técnico em Eletrônica e informática
TEMPO DE EXPERIÊNCIA : Desde 1990
Sexo : Masculino
Número de Mensagens : 1799
Idade : 38
Cidade/Estado: : Garça - São Paulo
Humor : Depende
Data de inscrição : 23/11/2011

Voltar ao Topo Ir em baixo

Re: Programação pic16/pic18

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum