Autor Tema: sonido con pic  (Leído 2207 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Settingss

  • PIC10
  • *
  • Mensajes: 8
sonido con pic
« en: 16 de Octubre de 2013, 12:03:51 »
Hola, quisiera saber si alguno sabe como hacer en CCS para hacer sonidos con un pic mediante un buzzed.

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: sonido con pic
« Respuesta #1 en: 16 de Octubre de 2013, 13:29:00 »
Hola CCS trae una librería tones.c, trae las notas musicales, es muy fácil de utilizar, prueba con eso.

Saludos.

Código: CSS
  1. #include <16F873A.h>
  2. #use delay(clock=4000000)
  3. #fuses XT,NOWDT
  4.  
  5. #include ".\tones.c"
  6.  
  7. #byte   portb = 6
  8.  
  9. void noche_de_paz();
  10. void jingle_bell();
  11.  
  12. ///////////////////////////////////////
  13. #zero_ram
  14.  
  15.  
  16. void main()
  17. {
  18.  
  19. set_tris_b(0b00000000);         //Configuracion de entradas y salidas del puerto B
  20.  
  21.         while(true)
  22.         {
  23.                 //noche_de_paz();
  24.                 jingle_bell();
  25.                 delay_ms(500);
  26.         }
  27. }
  28.  
  29. void noche_de_paz()
  30. {
  31.         generate_tone(Fb_NOTE[1],750);
  32.         generate_tone(Gb_NOTE[1],250);
  33.         generate_tone(Fb_NOTE[1],500);
  34.         generate_tone(Db_NOTE[1],500);
  35.         generate_tone(P_NOTE[1],500);
  36.         generate_tone(P_NOTE[1],250);
  37.         generate_tone(Fb_NOTE[1],750);
  38.         generate_tone(Gb_NOTE[1],250);
  39.         generate_tone(Fb_NOTE[1],500);
  40.         generate_tone(Db_NOTE[1],500);
  41.         generate_tone(P_NOTE[1],500);
  42.         generate_tone(P_NOTE[1],250);
  43.         generate_tone(Cb_NOTE[2],500);
  44.         generate_tone(Ab_NOTE[1],750);
  45.         generate_tone(P_NOTE[1],500);
  46.         generate_tone(P_NOTE[1],250);
  47.         generate_tone(b_NOTE[1],1000);
  48.         generate_tone(b_NOTE[1],500);
  49.         generate_tone(Fb_NOTE[1],750);
  50.         generate_tone(P_NOTE[1],500);
  51.         generate_tone(P_NOTE[1],250);
  52.         generate_tone(Gb_NOTE[1],1000);
  53.         generate_tone(Gb_NOTE[1],500);
  54.         generate_tone(b_NOTE[1],750);
  55.         generate_tone(Ab_NOTE[1],250);
  56.         generate_tone(Gb_NOTE[1],500);
  57.         generate_tone(Fb_NOTE[1],750);
  58.         generate_tone(Gb_NOTE[1],250);
  59.         generate_tone(Fb_NOTE[1],500);
  60.         generate_tone(Db_NOTE[1],750);
  61.         generate_tone(P_NOTE[1],500);
  62.         generate_tone(P_NOTE[1],250);
  63.         generate_tone(Gb_NOTE[1],1000);
  64.         generate_tone(Gb_NOTE[1],500);
  65.         generate_tone(b_NOTE[1],750);
  66.         generate_tone(A_NOTE[1],250);
  67.         generate_tone(Gb_NOTE[1],500);
  68.         generate_tone(Fb_NOTE[1],750);
  69.         generate_tone(Gb_NOTE[1],250);
  70.         generate_tone(Fb_NOTE[1],500);
  71.         generate_tone(D_NOTE[1],750);
  72.         generate_tone(P_NOTE[1],500);
  73.         generate_tone(P_NOTE[1],250);
  74.         generate_tone(Cb_NOTE[2],1000);
  75.         generate_tone(Cb_NOTE[2],500);
  76.         generate_tone(E_NOTE[2],750);
  77.         generate_tone(Cb_NOTE[2],250);
  78.         generate_tone(Ab_NOTE[1],500);
  79.         generate_tone(b_NOTE[1],998);
  80.         generate_tone(Db_NOTE[2],1000);
  81.         generate_tone(P_NOTE[1],500);
  82.         generate_tone(P_NOTE[1],250);
  83.         generate_tone(b_NOTE[1],500);
  84. }
  85.  
  86. void jingle_bell()
  87. {
  88.         generate_tone(B_note[1],500);
  89.         generate_tone(B_note[1],500);
  90.         generate_tone(B_note[1],500);
  91.         generate_tone(P_note[1],125);
  92.         generate_tone(B_note[1],500);
  93.         generate_tone(B_note[1],500);
  94.         generate_tone(B_note[1],500);
  95.         generate_tone(P_note[1],125);
  96.         generate_tone(B_note[1],250);
  97.         generate_tone(D_note[2],250);
  98.         generate_tone(G_note[1],250);
  99.         generate_tone(A_note[1],250);
  100.         generate_tone(B_note[1],500);
  101.         generate_tone(C_note[2],250);
  102.         generate_tone(C_note[2],250);
  103.         generate_tone(C_note[2],500);
  104.         generate_tone(B_note[1],250);
  105.         generate_tone(B_note[1],250);
  106.         generate_tone(B_note[1],500);
  107.         generate_tone(B_note[1],250);
  108.         generate_tone(A_note[1],250);
  109.         generate_tone(A_note[1],250);
  110.         generate_tone(B_note[1],250);
  111.         generate_tone(A_note[1],500);
  112.         generate_tone(D_note[2],250);
  113. }

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: sonido con pic
« Respuesta #2 en: 16 de Octubre de 2013, 13:31:29 »
Que tipo de sonidos? Notas musicales?
El ccs tiene una librería que se llama tones o notes creo que era así, para crear notas musicales
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...

Desconectado RALD85

  • PIC10
  • *
  • Mensajes: 6
Re: sonido con pic
« Respuesta #3 en: 16 de Marzo de 2015, 14:44:27 »
saludos,

espero que alguien pueda ayudarme. tengo que crear un sonido laser para ser guardado en un PIC y ejecutado cuando este reciba una orden el problema es que no se como se pueden crear sonidos con notas, alguien tiene o sabe de algun programa que me pueda ayudar a hacer esto?

tambien he usado un programa llamado romanblack.com pero no entiendo como usar las librerias y el codigo supera la capacidad de espacio de mi PIC. asi que estoy casi sin opciones. alguna idea?

gracias.


 

anything