From f9357256249657af2374e3c334b9180e63dc5a30 Mon Sep 17 00:00:00 2001 From: Jonas Gunz Date: Fri, 16 Jun 2017 00:22:47 +0200 Subject: Split in different files --- floppyMusic/main.c | 152 +++-------------------------------------------------- 1 file changed, 6 insertions(+), 146 deletions(-) (limited to 'floppyMusic/main.c') diff --git a/floppyMusic/main.c b/floppyMusic/main.c index 18e8dbf..7583bc8 100644 --- a/floppyMusic/main.c +++ b/floppyMusic/main.c @@ -5,28 +5,6 @@ * Author : Jonas */ - #define c 130 - #define d 147 - #define e 165 - #define f 175 - #define g 195 - #define gS 208 - #define a 220 - #define aS 228 - #define b 233 - #define cH 261 - #define cSH 277 - #define dH 294 - #define dSH 311 - #define eH 330 - #define fH 349 - #define fSH 370 - #define gH 390 - #define gSH 415 - #define aH 440 - - #define _GET_UBBR(BAUD) ( (F_CPU / 16 * BAUD) - 1) - #ifndef F_CPU #define F_CPU 16000000UL //CPU Running at 16MHz #endif @@ -34,139 +12,21 @@ #include #include "floppy.h" +#include "music.h" +#include "uart.h" -void imperial_march(); - -void beep(int _f, unsigned int _t); - -void delay_ms(unsigned int ms ); - - int main(void) { + uart_init(9600); floppy_setup(&PORTC, &DDRC, &PORTB, &DDRB); - - floppy_set_frequency(0, 0); - floppy_set_frequency(1, 0); - DDRD = 0xff; + DDRA = 0xff; + uart_send_string("Hallo\n"); while (1) { play_imperial_march(); _delay_ms(2000); + uart_send_string("Hallo\n"); } } -void delay_ms(unsigned int ms ) -{ - unsigned int i; - for (i = 0; i<= ms; i++) - _delay_ms(1); -} - -void play_imperial_march() -{ - beep(a, 500); - beep(a, 500); - beep(a, 500); - beep(f, 350); - beep(cH, 150); - beep(a, 500); - beep(f, 350); - beep(cH, 150); - beep(a, 650); - - delay_ms(150); - //end of first bit - - beep(eH, 500); - beep(eH, 500); - beep(eH, 500); - beep(fH, 350); - beep(cH, 150); - beep(gS, 500); - beep(f, 350); - beep(cH, 150); - beep(a, 650); - - delay_ms(150); - //end of second bit... - - beep(aH, 500); - beep(a, 300); - beep(a, 150); - beep(aH, 400); - beep(gSH, 200); - beep(gH, 200); - beep(fSH, 125); - beep(fH, 125); - beep(fSH, 250); - - delay_ms(250); - - beep(aS, 250); - beep(dSH, 400); - beep(dH, 200); - beep(cSH, 200); - beep(cH, 125); - beep(b, 125); - beep(cH, 250); - - delay_ms(250); - - beep(f, 125); - beep(gS, 500); - beep(f, 375); - beep(a, 125); - beep(cH, 500); - beep(a, 375); - beep(cH, 125); - beep(eH, 650); - - //end of third bit... (Though it doesn't play well) - //let's repeat it - - beep(aH, 500); - beep(a, 300); - beep(a, 150); - beep(aH, 400); - beep(gSH, 200); - beep(gH, 200); - beep(fSH, 125); - beep(fH, 125); - beep(fSH, 250); - - delay_ms(250); - - beep(aS, 250); - beep(dSH, 400); - beep(dH, 200); - beep(cSH, 200); - beep(cH, 125); - beep(b, 125); - beep(cH, 250); - - delay_ms(250); - - beep(f, 250); - beep(gS, 500); - beep(f, 375); - beep(cH, 125); - beep(a, 500); - beep(f, 375); - beep(cH, 125); - beep(a, 650); - //end of the song -} - -void beep(int _f, unsigned int _t) -{ - PORTD = ~ floppy_calc_freq(_f / 3); - floppy_set_frequency(0, floppy_calc_freq(_f / 3)); - floppy_set_frequency(1, floppy_calc_freq(_f / 3)); - delay_ms(_t); - PORTD = 0xff; - floppy_set_frequency(0, 0); - floppy_set_frequency(1, 0); - _delay_ms(10); -} \ No newline at end of file -- cgit v1.2.3