..., einen 16hz Quarz anschließen und 2 Widerstände waren es mein ich.
Zitat
// Sketch fuer B-17G Flying Fortress
// hier werden die Bauteile den Anschlüssen auf dem Arduino zugewiesen
int positionslicht = 8; // Positionslichter
int innenlicht = 7; // Innenbeleuchtung
int scheinwerfer = 10; // Landescheinwerfer
int kennungrot = 0; // Kennungslicht Rot
int kennungweiss = 1; // Kennungslicht Weiss
int kennunggruen = 2; // Kennungslicht Gruen
int sound = 13; // Soundmodul
int motorPin1 = 3; // PWM-Signal Motor 1
int motorPin2 = 5; // PWM-Signal Motor 2
int motorPin3 = 6; // PWM-Signal Motor 3
int motorPin4 = 9; // PWM-Signal Motor 4
void setup() {
// Hier wird bestimmt, wie sich die Anschlüsse zu verhalten haben
pinMode(positionslicht, OUTPUT);
pinMode(innenlicht, OUTPUT);
pinMode(scheinwerfer, OUTPUT);
pinMode(kennungrot, OUTPUT);
pinMode(kennungweiss, OUTPUT);
pinMode(kennunggruen, OUTPUT);
pinMode(sound, OUTPUT);
pinMode(motorPin1,OUTPUT);
pinMode(motorPin2,OUTPUT);
pinMode(motorPin3,OUTPUT);
pinMode(motorPin4,OUTPUT);
}
void motorSchalten(int pin, boolean state, long warten) // Motoren langsam starten und Stop
{
digitalWrite(pin,LOW);
if (state==HIGH)
{
for (int i=0; i<17; i++)
{
analogWrite(pin, i);
delay(50);
}
}
delay(warten);
}
void motorSchalten1(int pin, boolean state, long warten) // Motoren nach Stop (motorschalten) durchstarten
{
digitalWrite(pin,LOW);
if (state==HIGH)
{
for (int i=17; i<220; i++)
{
analogWrite(pin, i);
delay(50);
}
}
delay(warten);
}
void digiSchalten(int pin, boolean state, long warten)
{
digitalWrite(pin, state);
delay(warten);
}
void loop()
{
digiSchalten(sound, HIGH, 1000); // Soundmodul stoppen. Wurde bei mir gebraucht, da das ELV-Modul einen Autostart hat!
digiSchalten(sound, LOW, 100);
digiSchalten(innenlicht, HIGH, 8000); // mit z.Bsp. 8000 lege ich fest, wann der nächste Befehl startet
digiSchalten(positionslicht, HIGH, 18000);
digiSchalten(sound, HIGH, 1000); // Soundmodul starten
digiSchalten(sound, LOW, 100);
// Die Motorbefehle gibt es für jeden Motor zweimal! 1.Befehl: Motor langsam hochfahren, ganz kurz stoppen, und mit zweitem Befehl wieder starten und Volllast!
motorSchalten(motorPin1,HIGH, 16000);
motorSchalten(motorPin1,LOW, 500);
motorSchalten1(motorPin1, HIGH, 0);
motorSchalten(motorPin2,HIGH, 8000);
motorSchalten(motorPin2,LOW, 500);
motorSchalten1(motorPin2, HIGH, 0);
motorSchalten(motorPin3,HIGH, 6000);
motorSchalten(motorPin3,LOW, 500);
motorSchalten1(motorPin3, HIGH, 0);
motorSchalten(motorPin4,HIGH, 6000);
motorSchalten(motorPin4,LOW, 500);
motorSchalten1(motorPin4, HIGH, 28000);
digiSchalten(scheinwerfer, HIGH, 32000);
digiSchalten(scheinwerfer, LOW, 32000);
digiSchalten(kennungrot, HIGH, 10000);
digiSchalten(kennunggruen, HIGH, 100);
digiSchalten(kennungweiss, HIGH, 8000);
digiSchalten(kennungrot, LOW, 9000);
digiSchalten(kennungweiss, LOW, 9000);
digiSchalten(kennunggruen, LOW, 32000);
digiSchalten(sound, HIGH, 1000);
digiSchalten(sound, LOW, 100);
motorSchalten1(motorPin1, LOW, 0);
motorSchalten1(motorPin1, LOW, 0);
motorSchalten1(motorPin2, LOW, 0);
motorSchalten1(motorPin3, LOW, 0);
motorSchalten1(motorPin4, LOW, 1000);
digiSchalten(positionslicht, LOW, 1500);
digiSchalten(innenlicht, LOW, 100);
while(1); // Durch den While-Befehl wartet das Board nach Ablauf des Programms auf einen Reset (Knopfdruck) um das Programm neu zu starten.
}
Aber kapiert ... hab ich das auch noch nicht so recht
Forensoftware: Burning Board®, entwickelt von WoltLab® GmbH