stochri
30.09.2006, 18:56
Hallo Zusammen,
dieser Thread wendet sich an die künstlerisch begabten unter euch:
Wer produziert den schönsten ASURO-Sound ?
Mit den Motoren kann man ja bekanntlich Töne erzeugen. Mit etwas Kreativität lassen sich sehr interessante Laute produzieren, ja sogar ein kleiner ASURO-Synthisizer wäre denkbar.
Die Töne kann man z.B. mit den Tasten oder den Liniensenosren steuern.
Ich habe mal eine sehr einfache Funktion ( die meiner Meinung nach schon lange in der offizielen ASURO-Lib fehlt ) geschrieben, die aber schon Töne beliebiger Tonhöhe und Frequenz erzeugen kann.
#include "asuro.h"
/************************************************** ***********************
SOUND Testprogram
Vers.: 1.0
9.2006 stochri
************************************************** ************************/
void sound(uint16_t freq, uint16_t duration_msec, uint8_t amplitude)
{
uint16_t n,k,wait_tics;
uint32_t period_usec,dauer_usec;
period_usec=1000000L/freq;
dauer_usec=1000*duration_msec;
k=dauer_usec/period_usec;
//IR Interuptfreq=36KHz
//Wavefreq=18KHz
wait_tics=18000/freq;
MotorSpeed(amplitude,amplitude);
for(n=0;n<k;n++)
{
MotorDir(FWD,FWD);
Sleep(wait_tics);
MotorDir(RWD,RWD);
Sleep(wait_tics);
}
MotorSpeed(0,0);
}
#define BEEP sound(1000, 100, 255)
void main()
{
uint16_t n;
Init();
//sound(uint16_t freq, uint16_t duration_msec, uint8_t amplitude)
for(n=0;n<255;n++) sound(1000, 100, n);
for(n=100;n<1000;n++) sound(n, 100, 255);
while(1)
{
BEEP;
Msleep(1000);
}
}
/************************************************** *************************
*
* (c) 2006 stochri
*
************************************************** *************************
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* any later version. *
************************************************** *************************/
dieser Thread wendet sich an die künstlerisch begabten unter euch:
Wer produziert den schönsten ASURO-Sound ?
Mit den Motoren kann man ja bekanntlich Töne erzeugen. Mit etwas Kreativität lassen sich sehr interessante Laute produzieren, ja sogar ein kleiner ASURO-Synthisizer wäre denkbar.
Die Töne kann man z.B. mit den Tasten oder den Liniensenosren steuern.
Ich habe mal eine sehr einfache Funktion ( die meiner Meinung nach schon lange in der offizielen ASURO-Lib fehlt ) geschrieben, die aber schon Töne beliebiger Tonhöhe und Frequenz erzeugen kann.
#include "asuro.h"
/************************************************** ***********************
SOUND Testprogram
Vers.: 1.0
9.2006 stochri
************************************************** ************************/
void sound(uint16_t freq, uint16_t duration_msec, uint8_t amplitude)
{
uint16_t n,k,wait_tics;
uint32_t period_usec,dauer_usec;
period_usec=1000000L/freq;
dauer_usec=1000*duration_msec;
k=dauer_usec/period_usec;
//IR Interuptfreq=36KHz
//Wavefreq=18KHz
wait_tics=18000/freq;
MotorSpeed(amplitude,amplitude);
for(n=0;n<k;n++)
{
MotorDir(FWD,FWD);
Sleep(wait_tics);
MotorDir(RWD,RWD);
Sleep(wait_tics);
}
MotorSpeed(0,0);
}
#define BEEP sound(1000, 100, 255)
void main()
{
uint16_t n;
Init();
//sound(uint16_t freq, uint16_t duration_msec, uint8_t amplitude)
for(n=0;n<255;n++) sound(1000, 100, n);
for(n=100;n<1000;n++) sound(n, 100, 255);
while(1)
{
BEEP;
Msleep(1000);
}
}
/************************************************** *************************
*
* (c) 2006 stochri
*
************************************************** *************************
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* any later version. *
************************************************** *************************/