(Solved) : Using Atmega328pb C Programming Language Trying Control Led Brightness Board Pulse Width M Q35621386
Using an ATMEGA328PB and C programming language.
I am trying to control the LED brightness on the board withpulse width modulation using simple delays.
Varying the duty cycle by changing the delays of LEDON andLEDOFF. Will need a delay function since the built in _delay_ms()does not accept variables.
I need the light to rise in brightness with a period of 10ms percycle over 100 cycles. Taking about 1 second to reach fullbrightness and staying at 100% brightness until the button isreleased.
Implement using simple delays.
#define LEDON PORTB |= (1<<5) #define LEDOFF &= (1<<5) #define F-CPU 16000000UL #include <util/delay. h> #include <avr/io.h> int max-brightness = 100; int min_brightness int period _delay ms (18); int main(void) DDRB I= (! << 5); //LED as an output DDRB &= (1 << 7); //push button as an input PORTB != (1<€7); //pull up enable *Replace with your application code* while (1) for(int í = e; i < ; i++) Show transcribed image text #define LEDON PORTB |= (1