initial commit
This commit is contained in:
		
						commit
						617bdc2d29
					
				
					 281 changed files with 5698 additions and 0 deletions
				
			
		
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/HardwareSerial.cpp.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/HardwareSerial.cpp.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/Print.cpp.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/Print.cpp.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/WInterrupts.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/WInterrupts.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/WMath.cpp.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/WMath.cpp.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										134
									
								
								projekte/soundz/axelf/applet/axelf.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										134
									
								
								projekte/soundz/axelf/applet/axelf.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,134 @@
 | 
			
		|||
#include <avr/io.h>
 | 
			
		||||
#include <avr/interrupt.h>
 | 
			
		||||
#include <avr/delay.h>
 | 
			
		||||
 | 
			
		||||
// number of timer0 overflows/sec
 | 
			
		||||
#define INT_PER_SEC F_CPU/1/256
 | 
			
		||||
 | 
			
		||||
// Frequencies (in Hz) of notes
 | 
			
		||||
#define F_FSH_4 370
 | 
			
		||||
#define F_A_4 440
 | 
			
		||||
#define F_B_4 494
 | 
			
		||||
#define F_E_4 330
 | 
			
		||||
#define F_CSH_5 554
 | 
			
		||||
#define F_D_5 587
 | 
			
		||||
#define F_FSH_5 740
 | 
			
		||||
#define F_CSH_4 277
 | 
			
		||||
#define F_GSH_4 415
 | 
			
		||||
 | 
			
		||||
// number of timer0 overflows for notes
 | 
			
		||||
#define REST -1 // special case
 | 
			
		||||
#define FSH_4 INT_PER_SEC/F_FSH_4
 | 
			
		||||
#define A_4 INT_PER_SEC/F_A_4
 | 
			
		||||
#define B_4 INT_PER_SEC/F_B_4
 | 
			
		||||
#define E_4 INT_PER_SEC/F_E_4
 | 
			
		||||
#define CSH_5 INT_PER_SEC/F_CSH_5
 | 
			
		||||
#define D_5 INT_PER_SEC/F_D_5
 | 
			
		||||
#define FSH_5 INT_PER_SEC/F_FSH_5
 | 
			
		||||
#define CSH_4 INT_PER_SEC/F_CSH_4
 | 
			
		||||
#define GSH_4 INT_PER_SEC/F_GSH_4
 | 
			
		||||
 | 
			
		||||
#define SEMIQUAVER_TIME 60  // ms
 | 
			
		||||
#define BREATH_TIME 20      // ms
 | 
			
		||||
 | 
			
		||||
#include "WProgram.h"
 | 
			
		||||
void play(int32_t note, uint32_t len);
 | 
			
		||||
int main(void);
 | 
			
		||||
volatile uint32_t intrs = 0;
 | 
			
		||||
volatile int32_t curNote = REST;
 | 
			
		||||
 | 
			
		||||
// TIMER0 overflow
 | 
			
		||||
ISR(TIMER0_OVF_vect)
 | 
			
		||||
{
 | 
			
		||||
    if (curNote == REST)
 | 
			
		||||
        intrs = 0;
 | 
			
		||||
    else
 | 
			
		||||
    {
 | 
			
		||||
        intrs++;
 | 
			
		||||
        if (intrs >= curNote)
 | 
			
		||||
        {
 | 
			
		||||
            PORTD ^= _BV(PD4);
 | 
			
		||||
            intrs = 0;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void play(int32_t note, uint32_t len)
 | 
			
		||||
{
 | 
			
		||||
    int i;
 | 
			
		||||
    curNote = note;
 | 
			
		||||
    for (i = 0; i< len; i++)
 | 
			
		||||
        _delay_ms(SEMIQUAVER_TIME);
 | 
			
		||||
    curNote = REST;
 | 
			
		||||
    _delay_ms(BREATH_TIME);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int main(void)
 | 
			
		||||
{
 | 
			
		||||
    /* setup clock divider. Timer0 overflows on counting to 256.
 | 
			
		||||
     * 16Mhz / 1 (CS0=1) = 16000000 increments/sec. Overflows every 256.
 | 
			
		||||
     */
 | 
			
		||||
    TCCR0B |= _BV(CS00);
 | 
			
		||||
 | 
			
		||||
    // enable overflow interrupts
 | 
			
		||||
    TIMSK0 |= _BV(TOIE0);
 | 
			
		||||
 | 
			
		||||
    // PD4 as output
 | 
			
		||||
    DDRD = _BV(PD4);
 | 
			
		||||
 | 
			
		||||
    TCNT0 = 0;
 | 
			
		||||
    intrs = 0;
 | 
			
		||||
 | 
			
		||||
    curNote = REST;
 | 
			
		||||
 | 
			
		||||
    // enable interrupts
 | 
			
		||||
    sei();
 | 
			
		||||
 | 
			
		||||
    while (1)
 | 
			
		||||
    {
 | 
			
		||||
        // Axel F
 | 
			
		||||
        play(FSH_4, 2);
 | 
			
		||||
        play(REST, 2);
 | 
			
		||||
        play(A_4, 3);
 | 
			
		||||
        play(FSH_4, 2);
 | 
			
		||||
        play(FSH_4, 1);
 | 
			
		||||
        play(B_4, 2);
 | 
			
		||||
        play(FSH_4, 2);
 | 
			
		||||
        play(E_4, 2);
 | 
			
		||||
        play(FSH_4, 2);
 | 
			
		||||
        play(REST, 2);
 | 
			
		||||
        play(CSH_5, 3);
 | 
			
		||||
        play(FSH_4, 2);
 | 
			
		||||
        play(FSH_4, 1);
 | 
			
		||||
        play(D_5, 2);
 | 
			
		||||
        play(CSH_5, 2);
 | 
			
		||||
        play(A_4, 2);
 | 
			
		||||
        play(FSH_4, 2);
 | 
			
		||||
        play(CSH_5, 2);
 | 
			
		||||
        play(FSH_5, 2);
 | 
			
		||||
        play(FSH_4, 1);
 | 
			
		||||
        play(E_4, 2);
 | 
			
		||||
        play(E_4, 1);
 | 
			
		||||
        play(CSH_4, 2);
 | 
			
		||||
        play(GSH_4, 2);
 | 
			
		||||
        play(FSH_4, 6);
 | 
			
		||||
        play(REST, 12);
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
    delay(3000);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int main(void)
 | 
			
		||||
{
 | 
			
		||||
	init();
 | 
			
		||||
 | 
			
		||||
	setup();
 | 
			
		||||
    
 | 
			
		||||
	for (;;)
 | 
			
		||||
		loop();
 | 
			
		||||
        
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/core.a
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/core.a
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/pins_arduino.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/pins_arduino.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_analog.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_analog.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_digital.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_digital.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_pulse.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_pulse.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_shift.c.o
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								projekte/soundz/axelf/applet/wiring_shift.c.o
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										119
									
								
								projekte/soundz/axelf/axelf.pde
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										119
									
								
								projekte/soundz/axelf/axelf.pde
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,119 @@
 | 
			
		|||
#include <avr/io.h>
 | 
			
		||||
#include <avr/interrupt.h>
 | 
			
		||||
#include <avr/delay.h>
 | 
			
		||||
 | 
			
		||||
// number of timer0 overflows/sec
 | 
			
		||||
#define INT_PER_SEC F_CPU/1/256
 | 
			
		||||
 | 
			
		||||
// Frequencies (in Hz) of notes
 | 
			
		||||
#define F_FSH_4 370
 | 
			
		||||
#define F_A_4 440
 | 
			
		||||
#define F_B_4 494
 | 
			
		||||
#define F_E_4 330
 | 
			
		||||
#define F_CSH_5 554
 | 
			
		||||
#define F_D_5 587
 | 
			
		||||
#define F_FSH_5 740
 | 
			
		||||
#define F_CSH_4 277
 | 
			
		||||
#define F_GSH_4 415
 | 
			
		||||
 | 
			
		||||
// number of timer0 overflows for notes
 | 
			
		||||
#define REST -1 // special case
 | 
			
		||||
#define FSH_4 INT_PER_SEC/F_FSH_4
 | 
			
		||||
#define A_4 INT_PER_SEC/F_A_4
 | 
			
		||||
#define B_4 INT_PER_SEC/F_B_4
 | 
			
		||||
#define E_4 INT_PER_SEC/F_E_4
 | 
			
		||||
#define CSH_5 INT_PER_SEC/F_CSH_5
 | 
			
		||||
#define D_5 INT_PER_SEC/F_D_5
 | 
			
		||||
#define FSH_5 INT_PER_SEC/F_FSH_5
 | 
			
		||||
#define CSH_4 INT_PER_SEC/F_CSH_4
 | 
			
		||||
#define GSH_4 INT_PER_SEC/F_GSH_4
 | 
			
		||||
 | 
			
		||||
#define SEMIQUAVER_TIME 60  // ms
 | 
			
		||||
#define BREATH_TIME 20      // ms
 | 
			
		||||
 | 
			
		||||
volatile uint32_t intrs = 0;
 | 
			
		||||
volatile int32_t curNote = REST;
 | 
			
		||||
 | 
			
		||||
// TIMER0 overflow
 | 
			
		||||
ISR(TIMER0_OVF_vect)
 | 
			
		||||
{
 | 
			
		||||
  if (curNote == REST)
 | 
			
		||||
    intrs = 0;
 | 
			
		||||
  else
 | 
			
		||||
  {
 | 
			
		||||
    intrs++;
 | 
			
		||||
    if (intrs >= curNote)
 | 
			
		||||
    {
 | 
			
		||||
      PORTD ^= _BV(PD4);
 | 
			
		||||
      intrs = 0;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void play(int32_t note, uint32_t len)
 | 
			
		||||
{
 | 
			
		||||
  int i;
 | 
			
		||||
  curNote = note;
 | 
			
		||||
  for (i = 0; i< len; i++)
 | 
			
		||||
    _delay_ms(SEMIQUAVER_TIME);
 | 
			
		||||
  curNote = REST;
 | 
			
		||||
  _delay_ms(BREATH_TIME);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int main(void)
 | 
			
		||||
{
 | 
			
		||||
  /* setup clock divider. Timer0 overflows on counting to 256.
 | 
			
		||||
   * 16Mhz / 1 (CS0=1) = 16000000 increments/sec. Overflows every 256.
 | 
			
		||||
   */
 | 
			
		||||
  TCCR0B |= _BV(CS00);
 | 
			
		||||
 | 
			
		||||
  // enable overflow interrupts
 | 
			
		||||
  TIMSK0 |= _BV(TOIE0);
 | 
			
		||||
 | 
			
		||||
  // PD4 as output
 | 
			
		||||
  DDRD = _BV(PD4);
 | 
			
		||||
 | 
			
		||||
  TCNT0 = 0;
 | 
			
		||||
  intrs = 0;
 | 
			
		||||
 | 
			
		||||
  curNote = REST;
 | 
			
		||||
 | 
			
		||||
  // enable interrupts
 | 
			
		||||
  sei();
 | 
			
		||||
 | 
			
		||||
  while (1)
 | 
			
		||||
  {
 | 
			
		||||
    // Axel F
 | 
			
		||||
    play(FSH_4, 2);
 | 
			
		||||
    play(REST, 2);
 | 
			
		||||
    play(A_4, 3);
 | 
			
		||||
    play(FSH_4, 2);
 | 
			
		||||
    play(FSH_4, 1);
 | 
			
		||||
    play(B_4, 2);
 | 
			
		||||
    play(FSH_4, 2);
 | 
			
		||||
    play(E_4, 2);
 | 
			
		||||
    play(FSH_4, 2);
 | 
			
		||||
    play(REST, 2);
 | 
			
		||||
    play(CSH_5, 3);
 | 
			
		||||
    play(FSH_4, 2);
 | 
			
		||||
    play(FSH_4, 1);
 | 
			
		||||
    play(D_5, 2);
 | 
			
		||||
    play(CSH_5, 2);
 | 
			
		||||
    play(A_4, 2);
 | 
			
		||||
    play(FSH_4, 2);
 | 
			
		||||
    play(CSH_5, 2);
 | 
			
		||||
    play(FSH_5, 2);
 | 
			
		||||
    play(FSH_4, 1);
 | 
			
		||||
    play(E_4, 2);
 | 
			
		||||
    play(E_4, 1);
 | 
			
		||||
    play(CSH_4, 2);
 | 
			
		||||
    play(GSH_4, 2);
 | 
			
		||||
    play(FSH_4, 6);
 | 
			
		||||
    play(REST, 12);
 | 
			
		||||
 | 
			
		||||
  }
 | 
			
		||||
  delay(3000);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Reference in a new issue