Er meint kein PWM sondern nur Frequenzausgabe.
Dazu musst du einfach im Interrupt einen Port Toggeln (umschalten). Das hast du richtig erkannt. Dies macht doch schon der generierte Code von dem oben genannten Tool.
In dem Gastposting hatte ich doch eben geschrieben das du dann statt Piezo einfach deine IR-Diode mit Vorwiderstand ran hängen kannst.
Bei Punkt 3 hab ich mich auf die schnelle vertan, du musst dort 72000 eingeben, weil du ja pro interrupt nur einmal umschaltest. Also wenn der Interrupt 72000 mal pro Sekunde aufgerufen wird und du nur einmal den Port im Interrupt umschaltest (was sinnvoll ist), dann ergibt das am Port eine Frequenz von genau 36000 Hz (36 khz). Aber das steht auch in den dokumentierten Zeilen im generierten Code!


1. Das Tool runter laden: https://www.roboternetz.de/phpBB2/dl...le&file_id=169

2. Ton erzeugen anklicken

3. Im oberen Feld Frequenz (also 36000) eingeben
Fehler, meinte 72000 da Port ja im Interrupt nur einmal umgeschaltet wird - also halbe Periode!

4. "Berechnen" klicken und generierten Code in Bascom kopieren

5. Statt dem Piezo-Lautsprecher schließt du nun deine IR-Diode an dem Port an. Alternativ kannst du auch einfach Port ändern, je nachdem welchen du beim Mega 8 nehmen willst. Vergess nicht oben include "m16def" durch "m8def" zu ändern.

Einfacher gehts nu nicht mehr