So, ich hab jetzt was Programmiert. Es kamen natürlich erstmal extrem viele Fehlermeldungen 
Das sieht so aus:
Code:
int main(void)
{
Initial_ADC0();
Initial_IR_Servo();
uint8_t a; //Global?
a=0; //Global?
uint8_t i; //Global?
i=0; //Global?
while(1)
{
helligkeitsmessung();
IR_Servosteuerung();
}
}
unter Initial... (wo ich ADC und PWM krams initialisiere)
hab ich a und i deklariert. Is das nicht Global?
Dann hab ich das hier geschrieben, damit bei jedem Overflow von Timer1 eine Variable endweder hoch- oder runtergezählt wird:
Code:
ISR(TIMER1_OVF) //Diese Routine soll bei Overflow von Timer1 ausgeführt werden
{
if(a=0)
{
IR_Servosteuerung(i);
i++;
if (i>=50)
{
a=1;
}
}
if (a=1)
{
IR_Servosteuerung(i);
i--;
if (i<=0)
{
a=0;
}
}
}
und diese Variable will ich auch gleich verwenden um den OCR1A zu beeinflussen. Das hab ich mir so vorgestellt:
Code:
extern void IR_Servosteuerung(uint8_t count)
{
OCR1A=(count+440); //440=min, 490=max
}
Der meckert aber irgendwie wegen den Variablen a und i rum und die Funktion IR_Servosteuerung in main in der Whileschleife gefällt ihm nicht.
Hoffe mir kann jemand helfen. Ach ja. Wo müsste ich dann sei() und cli() hinsetzen? Meine C-Kenntnisse sind wohl nicht so die dollsten... Aber was nicht is kann ja noch kommen
Lesezeichen