Introduce macros for setting pin to low or high

This commit is contained in:
Rihards Skuja 2017-11-24 22:58:52 +02:00
parent 6b1b5dcf93
commit cef7bb0def
No known key found for this signature in database
GPG Key ID: 53FA13A3F7F8571B
2 changed files with 7 additions and 4 deletions

View File

@ -1,6 +1,9 @@
#ifndef MAIN_H
#define MAIN_H
#define SET_HIGH(PORT, PIN) (PORT) |= (1 << (PIN))
#define SET_LOW(PORT, PIN) (PORT) &= ~(1 << (PIN))
void initIO(void);
void blinkLed(void);
void readTemp(void);

View File

@ -12,7 +12,7 @@
void initIO()
{
/* Servos */
DDRB |= (1 << SERVO_L);
SET_HIGH(DDRB, SERVO_L);
/* Phase Correct PWM, 9-bit; Inverting mode */
TCCR1A |= 1 << WGM11 | 1 << COM1A1 | 1 << COM1A0;
/* "Clear Timer on Compare match" mode; Prescaler = 1 */
@ -20,7 +20,7 @@ void initIO()
ICR1 = 19999; // F_CPU / 50Hz - 1
/* LED */
DDRD |= (1 << LED_1);
SET_HIGH(DDRD, LED_1);
}
void readTemp()
@ -31,9 +31,9 @@ void readTemp()
for (;;) {
d = ds18b20_gettemp();
if (d >= 21)
PORTD |= (1 << LED_1);
SET_HIGH(PORTD, LED_1);
else
PORTD &= ~(1 << LED_1);
SET_LOW(PORTD, LED_1);
_delay_ms(500);
}