oder so geht es auch
Code:
SETBIT(DDRD,PD7); // Das ist der lautsprecher
Sound(100,2); // ca. 500 hz bei 16 Mhz wenn die Rechnung stimmt 500 hz = 2000 us
Sound(100,1); // ca. 250 hz bei 16 Mhz
Sound(100,2);
void Sound(WORD Count,WORD PulsTime)
{
//am PORTD Pin 7 ist bei der RN-Control ein lautsprecher
for(int x=0;x<Count;x++)
{
wait_ms(PulsTime);
SETBIT(PORTD,PD7);
wait_ms(PulsTime);
CLEARBIT(PORTD,PD7);
}
}
void wait_ms(int ms)
{
int t1,t2;
for(t1 = 0;t1 < ms; t1++)
{
for(t2 = 0 ;t2 < (137 * 16) ; t2++)
{
asm volatile("nop" ::);
}
}
}
wenn "nur" musik macht ist das ein alternative klar er macht nix anderes in der zeit.
Lesezeichen