chore(comments/format): commented and formatted all the c files
This commit is contained in:
parent
f52ce027a6
commit
dbcc449552
5 changed files with 157 additions and 72 deletions
42
ex03/main.c
42
ex03/main.c
|
|
@ -7,21 +7,31 @@
|
|||
#define BTN_PORT PIND2
|
||||
|
||||
int main(void) {
|
||||
// set pin to output
|
||||
DDRB |= (_BV(LED_PORT));
|
||||
// set pin to output
|
||||
// DDRB is the register that set the direction of the pins (IN/OUT)
|
||||
// we want to say that the LED_PORT pin is an OUT pin, which isnt the default
|
||||
DDRB |= (_BV(LED_PORT));
|
||||
|
||||
bool led_state = false;
|
||||
bool prev = (PIND & _BV(BTN_PORT));
|
||||
while (true) {
|
||||
bool cur = (PIND & _BV(BTN_PORT));
|
||||
if (prev && !cur) {
|
||||
led_state = !led_state;
|
||||
if (led_state)
|
||||
PORTB |= (_BV(LED_PORT));
|
||||
else
|
||||
PORTB &= ~(_BV(LED_PORT));
|
||||
}
|
||||
prev = cur;
|
||||
_delay_ms(20.f);
|
||||
}
|
||||
// lets keep track of the led state here
|
||||
bool led_state = false;
|
||||
// lets also keep track of the button state for the last iteration
|
||||
bool prev = (PIND & _BV(BTN_PORT));
|
||||
while (true) {
|
||||
// we read it
|
||||
bool cur = (PIND & _BV(BTN_PORT));
|
||||
|
||||
// if it wasnt pressed before, but pressed now -> it just turned on
|
||||
if (prev && !cur) {
|
||||
// toggle the state and update the led with the new state
|
||||
led_state = !led_state;
|
||||
if (led_state)
|
||||
PORTB |= (_BV(LED_PORT));
|
||||
else
|
||||
PORTB &= ~(_BV(LED_PORT));
|
||||
}
|
||||
// keep track of the old state for next iteration
|
||||
prev = cur;
|
||||
// sleep
|
||||
_delay_ms(20.f);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue