Hallo, ich habe hier ein Schallwandler auf PB0. ich kann über schleife+toggle ein ton erzeugen, also die tonlänge. aber kann ich auch die tonhöhe bestimmen?
PB0 - muss man jetzt daraus deinen Controller erraten? Du hast die Tonh"ohe schon bestimmt, erkl"ar doch uns wie Du das gemacht hast. Als Tip an einen Neuling: mach nicht viele Post in dieser Art, sonst wirst Du bald verbal niedergekn"uppelt.
hm, naja wenn es hier verpönt ist zu fragen...
aber naja ich hab diese funktion:
void Beep(unsigned int len)
{
unsigned int i;
for(i=0;i<len;i++)
{
tog_bit(PORTB,PB0);
_delay_us(150);
}
}
und man also nur die länge bestimmen aber wie siehts mit der höhe aus?
Der Controller ist übrigens ATmega88.
Was bestimmt denn die Tonhöhe? Die Frequenz... also musst du dir
raussuchen, wo in deinem Programm Einfluss auf die
Umschaltgeschwindigkeit genommen wird.
tog_bit(PORTB,PB0);
_delay_us(150);
Versuche mal, das Delay länger zu machen, dann sollte dein Ton tiefer
werden, wenn du es kürzer machst, sollte dein Ton höher werden.
MfG Chaos
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.