Autor Tema: ayuda con hardware de PICANTOR  (Leído 2202 veces)

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

Desconectado rathur

  • PIC10
  • *
  • Mensajes: 5
ayuda con hardware de PICANTOR
« en: 20 de Diciembre de 2009, 15:48:14 »
bueno es mi primer post asi que espero que sea en la seccion correcta, bueno escontre este codigo para reproducir el tamborillero, y bueno no entiendo como se conecta la bocina al pic o que otro dispocitivo se le puede conectar para utilizar este codigo, espero que alguien pueda ayudarme tal ves subiendo un esquema o dando algunas recomendacion.



creo que fue hecho por Elena2000 si laguien sabe como cambiar la cancion seria grandioso. gracias
Código: [Seleccionar]
; PIC MUSICAL PARA CANTAR VILLANCICOS ESTA NAVIDAD!!!
;LAS 8 SALIDAS DEL PUERTO B CONECTAR LAS LUCES O LED+R SERIE A MASA
;DEL PUERTO A , RESISTENCIAS pull up ,Y uno de los pin 0,2,4 extremo del piezo, 1,3 el otro extremo

list P=16f628a
include "p16f628a.inc"
; ERRORLEVEL      -302, -307 ;(NO FIGURAN LOS ERRORES DE CAMBIO DE PAGINA)


;configuración de los fuses esos...
__CONFIG _XT_OSC & _CP_OFF & _WDT_ON & _PWRTE_ON


;La escala musical en frecuencias (1 y 2 octava)
constant notaC2   =.523
constant notaDb2   =.554
constant notaD2   =.587
constant notaEb2   =.622
constant notaE2   =.659
constant notaF2   =.698
constant notaGb2   =.740
constant notaG2   =.784
constant notaAb2   =.831
constant notaA2   =.880
constant notaBb2   =.923
constant notaB2   =.988

constant notaC3   =.1047
constant notaDb3   =.1109
constant notaD3   =.1175
constant notaEb3   =.1245
constant notaE3   =.1329
constant notaF3   =.1397
constant notaGb3   =.1480
constant notaG3   =.1568
constant notaAb3   =.1661
constant notaA3   =.1760
constant notaBb3   =.1865
constant notaB3   =.1976

;Duración de las notas
constant A_FREC   =.152
constant B_FREC   =.155
constant C_FREC   =.156
constant D_FREC   =.157
constant E_FREC   =.228
constant F_FREC   =.307
constant G_FREC   =.308
constant H_FREC   =.309
constant I_FREC   =.604
constant J_FREC   =.912
constant K_FREC   =.1835
constant L_FREC   =.1836


NOTA macro frec,duracion
retlw frec/10
retlw low ((duracion) / (frec/10))
retlw high ((duracion) / (frec/10))
endm

;registros
cblock 20h
contador
LOOPS
frec
len
lenh
frq
tabpos
endc

;**************************************************************************
; org 0
goto
;--------------------------------------------------------------------------

tono movf tabpos,w
addwf PCL,f

;AQUI LA CANCION QUE HA COMPUESTO SUPER-CUCA: EL TAMBORILERO!!!!
 
cancion NOTA notaF2,J_FREC
NOTA notaG2,G_FREC
NOTA notaA2,I_FREC
NOTA notaA2,H_FREC
NOTA notaA2,G_FREC
NOTA notaBb2,B_FREC
NOTA notaA2,C_FREC
NOTA notaBb2,H_FREC
NOTA notaA2,L_FREC
NOTA notaF2,G_FREC
NOTA notaF2,G_FREC
NOTA notaG2,G_FREC
NOTA notaA2,G_FREC
NOTA notaA2,G_FREC
NOTA notaA2,G_FREC
NOTA notaA2,G_FREC
NOTA notaBb2,A_FREC
NOTA notaA2,C_FREC
NOTA notaBb2,G_FREC
NOTA notaA2,L_FREC
NOTA notaG2,G_FREC
NOTA notaA2,G_FREC
NOTA notaBb2,G_FREC
NOTA notaC3,G_FREC
NOTA notaC3,G_FREC
NOTA notaC3,G_FREC
NOTA notaD3,G_FREC
NOTA notaC3,A_FREC
NOTA notaBb2,C_FREC
NOTA notaA2,G_FREC
NOTA notaG2,L_FREC
NOTA notaG2,G_FREC
NOTA notaA2,G_FREC
NOTA notaBb2,G_FREC
NOTA notaC3,G_FREC
NOTA notaC3,G_FREC
NOTA notaC3,G_FREC
NOTA notaD3,G_FREC
NOTA notaEb3,A_FREC
NOTA notaD3,D_FREC
NOTA notaC3,G_FREC
NOTA notaBb2,I_FREC
NOTA notaD3,A_FREC
NOTA notaC3,C_FREC
NOTA notaBb2,G_FREC
NOTA notaA2,I_FREC
NOTA notaC3,A_FREC
NOTA notaBb2,C_FREC
NOTA notaA2,G_FREC
NOTA notaG2,L_FREC
NOTA notaF2,J_FREC
NOTA notaG2,G_FREC
NOTA notaA2,G_FREC
NOTA notaA2,F_FREC
NOTA notaA2,G_FREC
NOTA notaA2,H_FREC
NOTA notaBb2,A_FREC
NOTA notaA2,C_FREC
NOTA notaBb2,H_FREC
NOTA notaA2,K_FREC
NOTA notaG2,E_FREC
NOTA notaF2,C_FREC
NOTA notaG2,G_FREC
NOTA notaF2,L_FREC

endtab ;final de cancion

;--------------------------------------------------------------
luces incf contador,F ;secuencia encendido de luces (port b )
movf contador,W

luces1 addwf PCL,f
retlw b'10000001'
retlw b'01000010'
retlw b'00100100'
retlw b'00011000'
retlw b'10100101'
retlw b'01000010'
retlw b'10101010'
retlw b'01010101'
retlw b'10101010'
retlw b'01010101'
retlw b'00100100'
retlw b'11111111'
retlw b'00000000'
retlw b'11011011'
retlw b'00100100'
retlw b'10011001'
retlw b'10000001'
retlw b'01000010'
retlw b'00100100'
retlw b'10011001'
retlw b'00100100'
retlw b'01011010'
retlw b'10101010'
retlw b'01010101'
retlw b'10101010'
retlw b'01010101'
retlw b'00100100'
retlw b'00011000'
retlw b'01100110'
retlw b'11011011'
retlw b'00100100'
retlw b'10011001'

;  continuar con la tabla de encendido de luces

clrf contador
retlw b'10000001'

;*****************************************************************************

inicio
movlw b'00000111' ;desactiva los comparadores analogicos
  movwf CMCON ;todo digital
movlw b'10101010' ;configurar salidas
movwf PORTA ;GPIO
bsf STATUS,RP0 ;acceso al banco 1
movlw b'00000000'
movwf TRISA ;Todos los pines son salidas
movlw b'00000000'
movwf TRISB ;Todos los pines son salidas
bcf STATUS,RP0 ;acceso al banco 0

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

MASMUSICA
CLRF PORTB
clrf tabpos ;resetear la posicion en la tabla
CLRF contador
CLRWDT
CLRW

call luces1 ;SECUENCIA DE LAS LUCES
MOVWF PORTB

nxtnota call canta ;canta nota de la tabla
call play ;play nota
movlw endtab - cancion ;comprueba si termino la tabla
subwf tabpos,w ;
btfss STATUS,Z
goto nxtnota ;no acabó! canta siguiente nota

;---------------------------------------------------------------------------------
CLRF PORTB ;APAGO LAS LUCES, EN MODO DE ESPERA.....
CLRF PORTA ;DESCONECTO SALIDA PIEZOELECTRICO
CALL ESPERA
CALL ESPERA
CALL ESPERA
CALL ESPERA

arriba goto MASMUSICA ;arriba ;reinicia si se despierta
;--------------------------------------------------------------------------------
canta call tono ;canta una nota de la tabla
movwf frec
incf tabpos,f
call tono ;duracion del byte menor peso
movwf len
incf tabpos,f
call tono ;duracion del byte mayor peso
movwf lenh
incf tabpos,f
return

play incf lenh,f
play2 movf frec,w
call nota ;espera 1/2 de la frecuencia
comf PORTA,F ;sostiene el sonido
decfsz len,f
goto play2 ;mantener hasta nota acabe
decfsz lenh,f
goto play2

call luces ;SECUENCIA DE LAS LUCES
movwf PORTB
return
;-------------------------------------------------------------------------
ESPERA CLRF frq ;empleo el mismo registro...
call nota
decfsz LOOPS,f
GOTO ESPERA

nota    movwf frq ;espera 1/2 de la frecuencia
wait nop                     
        CLRWDT
nop
nop
nop
decfsz frq,f
goto wait
        return
;------------------------------------------------------------------------

end


Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
Re: ayuda con hardware de PICANTOR
« Respuesta #1 en: 20 de Diciembre de 2009, 15:59:55 »
En el encabezado del programa te indica como conectar los pines del micro
En el puerto B lo tienes configurado como salidas para conectar unas lamparas, leds, ...... pero siempre con unos driver entre e pin y tu salida.
El puerto  A también está configurado como salidas en este caso para las conexiones del alavoz, bocina,......
Si te fijas se tre indica que una de las conexiones del altavoz puedes conectarlo a los pines 0,2 o 4 y la otra conexion del altavoz a las 1 o3.

Fer.
 
Todos los días se aprende algo nuevo.

Desconectado rathur

  • PIC10
  • *
  • Mensajes: 5
Re: ayuda con hardware de PICANTOR
« Respuesta #2 en: 20 de Diciembre de 2009, 17:08:49 »
bueno si eso ya lo intente conecte la bocina alos RA0 y RA1 pero no hacia nada mas los des si encienden y apagan. puede que este utilizando una bocina o altavoz inadecuado o se tendria que agregar algo como un condensador eh visto un esquema con un buzzer y condensador pero solo se le conecta un pin al micro, que no es el caso de este codigo, gracias sigo esperando alguna ayudita  :-/

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: ayuda con hardware de PICANTOR
« Respuesta #3 en: 26 de Diciembre de 2009, 10:54:40 »
Hola, esta pensado para una capsulita piezoeléctrica, no un buzzer o parlante... pero podrias colocar en una de las salidas algun integradito tipo lm386 y tendrias suficiente potencia como para manejar un parlante...
Efectivamente, el programa lo realizó Elena (yo participe con las luces...)   :x)

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado rathur

  • PIC10
  • *
  • Mensajes: 5
Re: ayuda con hardware de PICANTOR
« Respuesta #4 en: 31 de Diciembre de 2009, 12:20:01 »
gracias todopic por responder voy a preguntar en las tiendas de electronica ojala encuentre una, sobre cambiar la cancion sabes algo al respecto?? muchas gracias  :-/ :-/ :-/ :-/

luego les platico los resultados


 

anything