1. Realizar un programa en CCS C Compiler, que reproduzca diferentes notas musicales
a través de una bocina (speaker) conectada al pin B0 del PIC18F4550. 2. Simular el funcionamiento del programa en el ISIS de Proteus y verificar que funciona correctamente. 3. Implementar el proyecto en un protoboard verificando su correcto funcionamiento.
Solución 1. Programa en CCS C.
#include <18f4550.h> //Librería para usar el PIC18F4550.
#fuses XT,NOWDT,NOPROTECT,NOPUT, NOLVP //Configuración de fusibles. #use delay (clock=4000000) //FOSC =4MHz. #include <TONES.c> //Librería para gestión de sonido. void main(void) { //Función principal main. int fusa=62; //Tiempo de duración fusa. int semicorchea=125; //Tiempo de duración semicorchea. int corchea=250; //Tiempo de duración corchea. while(TRUE) { //Bucle infinito. generate_tone(C_NOTE[0],fusa); generate_tone(C_NOTE[1],fusa); generate_tone(Eb_NOTE[2],corchea); generate_tone(C_NOTE[3],fusa); generate_tone(C_NOTE[0],fusa); generate_tone(Eb_NOTE[1],corchea); generate_tone(C_NOTE[3],fusa); generate_tone(Eb_NOTE[3],fusa); generate_tone(Ab_NOTE[3],semicorchea); generate_tone(G_NOTE[3],semicorchea); generate_tone(F_NOTE[3],semicorchea); generate_tone(E_NOTE[3],semicorchea);
Dr. Oscar L Pérez Castañeda Microcontroladores 1
generate_tone(Eb_NOTE[3],semicorchea); delay_ms(100); } //Fin del ciclo infinito. } //Fin del main.
2. Diagrama del circuito para la simulación del programa.