/****************************************************************** * Compile: gcc -o fade1 -Wall -I/usr/local/include -L/usr/local/lib * fade2.c -lwiringPi * * Execute: sudo ./fade2 * * All pin numbers are wiringPi numbers unless otherwise specified. ******************************************************************/ #include int main() { wiringPiSetup(); // Setup required by wiringPi pinMode (1, PWM_OUTPUT); // pwmSetMode(PWM_MODE_MS); // Mark/Space mode while(1) { int i; int x = 1; for (i = 0; i > -1; i = i + x) { int d = (16-i/16)^2; // calc inverse square of index pwmWrite(1, i); delay(d); if (i == 255) x = -1; // switch direction at peak } } }