summaryrefslogtreecommitdiffstats
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/main.c b/main.c
index 326f4ac..fc43684 100644
--- a/main.c
+++ b/main.c
@@ -13,6 +13,7 @@
#define PWM_MID 1600
#define PWM_MAX 2550
#define PWM_TOP 19999
+#define PWM_DELTA 50
#define LED_PIN PB5
#define LED_DDR DDRB
@@ -54,14 +55,22 @@ static volatile enum CTRL cmd = NONE;
static inline void lock(void)
{
- OCR1A = PWM_MID;
- _delay_ms(500);
+ int pwm;
+
+ for (pwm = PWM_MID + PWM_DELTA; pwm < PWM_MAX; pwm += PWM_DELTA) {
+ OCR1A = pwm;
+ _delay_ms(50);
+ }
}
static inline void unlock(void)
{
- OCR1A = PWM_MAX;
- _delay_ms(500);
+ int pwm;
+
+ for (pwm = PWM_MAX - PWM_DELTA; pwm > PWM_MID; pwm -= PWM_DELTA) {
+ OCR1A = pwm;
+ _delay_ms(50);
+ }
}
static inline void flash_led(void)