fabian schrieb:
> haha ok das hilft mir in dem fall aber auch nicht weiter... n paar
> verbesserungsvorschläge wären gut
Dein Programm ist halt nicht sonderlich optimal. Man könnte sogar sagen,
es ist totaler Müll. Das würde ich aber nie tun.
Also diese Konstruktion:
1 | // Deklaration für servomotoren
|
2 | TCCR3A |= (1<<WGM31); // fast pwm mit höchstgrenze von icr3
|
3 | TIMSK3 |= (1<<OCIE3A) | (1<<OCIE3B) ;
|
4 | TCCR3B |=(1<<CS30)|(1<<WGM33) | (1<<WGM32) ; // clk mit prescaler 1
|
5 | ICR3H = 0x4E; //Counter für Servo auf 20000 µs obere Grenze
|
6 | ICR3L = 0x20; //Counter für servo auf 20 000 µs obere grenze
|
7 | OCR3AH = 0x23; // counter 1
|
8 | OCR3AL = 0x28;
|
9 | OCR3BH = 0x29; // counter 2 unterschied bis maximal 2000
|
10 | OCR3BL = 0x04;
|
11 |
|
12 | }
|
13 | ISR(TIMER3_COMPA_vect)
|
14 | {
|
15 | PORTA |= (1<<PA1) | (1<<PA2);
|
16 | }
|
17 |
|
18 | ISR(TIMER3_COMPB_vect)
|
19 | {
|
20 | PORTA &= ~((1<<PA1) | (1<<PA2));
|
21 | }
|
Könnte aus einem AVR-Tutorial stammen. Aus dem "So nicht"-Kapitel.
Erstmal das hier:
ICR3H = 0x4E; //Counter für Servo auf 20000 µs obere Grenze
ICR3L = 0x20; //Counter für servo auf 20 000 µs obere grenze
Und dann entsprechend:
1 | OCR3A = 9000;
|
2 | OCR3B = 10500;
|
Da steigt irgendwann keiner mehr durch. Am wenigsten du selbst.
Daß das Mist ist:
ISR(TIMER3_COMPA_vect)
{
PORTA |= (1<<PA1) | (1<<PA2);
}
genauso wie die folgende ISR, hat Spess ja schon geschrieben.
Totaler Quatsch:
1 | ADCSRA |= (1<<ADSC); //single conversion mode ein
|
2 | _delay_ms(10); //warten bis konvertierung abgeschlosen
|
1 | ADCSRA |= (1<<ADSC); // Starte ADC
|
2 | while(ADCSRA & (1 << ADSC)); // Warte bis fertig
|
Das mal zu deinem Programm, das aber trotzdem laufen müsste.
Tut es aber nicht. Und da deine Hardware:
spess53 schrieb:
> Da wusste ich noch nicht, wie schlimm es wirklich ist. Ehrlich gesagt
> bezweifle ich das du diese Platine jemals gescheit zum laufen bekommst.
mußt du jetzt ganz tapfer sein. Auch wenn es dir nicht gefällt:
fabian schrieb:
> haha ok das hilft mir in dem fall aber auch nicht weiter... n paar
> verbesserungsvorschläge wären gut
mfg.