summaryrefslogtreecommitdiffstats
path: root/lock/util.c
blob: 4f636253c7f5ef43f8409b1b25ffb123899b7e8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>

#include "util.h"

int is_btn_pressed(uint8_t pin, uint8_t btn)
{
	if (!((pin >> btn) & 0x01)) {
		_delay_ms(100);
		return !((pin >> btn) & 0x01);
	}
	return 0;
}

void xor(const char *k, const char *s, char *d, uint8_t n)
{
	int i;

	for (i = 0; i < n; i++)
		d[i] = s[i] ^ k[i];
}