Hallo,
die Quarzfrequenz die der AVR verwendet wird per Fusebits eingestellt, dazu muss dann ein externer Quarz am AVR hängen. Der externe Quarz bestimmt dann die Geschwindigkeit, nicht der Wert im Programm.

Der Wert bei $crystal wird nur zum berechnen intern beim Bascom verwendet um zB. die richtige Bausdrate zu ermitteln (wird auch für die Timer verwendet usw.), die dann aber nicht stimmt, wenn der AVR nicht mit der angegebenen Frequenz getaktet wird !