so, jetzt hab ich mal ein fertiges programm geschrieben um eine am PD5 am M32 angeschlossene LED zu dimmen.
Code:
#include "RP6ControlLib.h"
int main (void)
{
DDRD |= (1 << PD5); // PWM Ausgang
TCCR1A |= (1 << COM1A1); //set am Periodenanfang, clear bei Vergleich
TCCR1B |= (1 << WGM12);
TCCR1A |= ( 1 << WGM10 |1<<WGM11); // FastPWM 10-Bit
TCCR1B |= ((1 << CS10)); // Vorteiler= 1
showScreenLCD("ADC Value:", "Button: T");
while(true)
{
uint8_t key = getPressedKeyNumber();
if(key)
{
uint16_t key_adc = readADC(ADC_KEYPAD);
setCursorPosLCD(0, 11);
setCursorPosLCD(1, 9);
writeInteger(key_adc,DEC);
writeString_P(" --> Pressed key:");
writeInteger(key,DEC);
writeChar('\n');
while(getPressedKeyNumber());
switch(key)
{case 1: //Taster 1
OCR1A=(100);
break;
case 2: //Taster 2
OCR1A=(1000);
break;
}
}
}
return 0;
}
Was mich jetzt aber sehr interessieren würde ist die tatsache, dass dieses programm nicht funktioniert, wenn ich in den main- teil initRP6Control(); mit einbaue. ich kann mir den grund nicht erklären aber vielleicht kann mich jemand aufklären?
gruß
Lesezeichen