k;}
}
/** Вихід з меню **/(MENU)//якщо кнопка меню натиснута
{((PINC amp; (1 lt; lt; PC2)) == 0) {}=0 ;;
} (menu=0) {break;}
}; 2://Налаштування дати (1)
{((a == 0) || (v == 0))
{_ com (0x08);// Повне вимикання дисплея
lcd_com (0x01);// Очистка дисплея
_ delay_us (100);
lcd_com (0x06);// Зрушення курсора вправо_com (0x0C);// Включення дисплея, курсор не бачимо
v=1;=1;
} _ string (0x86, MEH ° ); _ string (0xC1, lt; Hacїp. гaїГ gt; );
if (HOUR)//Якщо натиснута кнопка Годинники +
{((PINC amp; (1 lt; lt; PC0)) == 0) {}//Чекаємо відпускання кнопки=1 ;;
} (MIN)//Якщо натиснута кнопка Хвилини +
{((PINC amp; (1 lt; lt; PC1)) == 0) {}//Чекаємо відпускання кнопки=3 ;;
} (OK)//Якщо кнопка ок натиснута
{((PINC amp; (1 lt; lt; PC3)) == 0) {}=1;
} (ok == 1)
{(a == 1)
{_ com (0x08);// Повне вимикання дісплея_com (0x01);// Очистка дисплея
_ delay_us (100); _ com (0x06);// Зрушення курсора вправо_com (0x0C);// Включення дисплея, курсор не бачимо
a=0;
} _ string (0x80, Hacїpo№єa Аёc »a ); _ string (0xC4, // ); _ com (0xC4);
LCDWriteInt (date, 2);// Виводимо на екран дату
if (month == 1) lcd_string (0xC7, ЗЅі ); if (month == 2) lcd_string (0xC7, дeі ); if (month == 3) lcd_string (0xC7, јap ); if (month == 4) lcd_string (0xC7, aѕp ); if (month == 5) lcd_string (0xC7, јa№ ); if (month == 6) lcd_string (0xC7, ёЖЅ ); if (month == 7) lcd_string (0xC7, їжак »); if (month == 8) lcd_string (0xC7, aіґ ); if (month == 9) lcd_string (0xC7, ceЅ ); if (month == 10) lcd_string (0xC7, oєї ); if (month == 11) lcd_string (0xC7, ЅoЗ );
else lcd_string (0xC7, гeє );// Виводимо на екран день месяц_com (0xCB); (years, 2);// Виводимо на екран рік
//настройка дати (MENU)//якщо кнопка меню натиснута
{((PINC amp; (1 lt; lt; PC2)) == 0) {} ++; (date gt; 31) date=1; _t temp;=((date/ 10) lt; lt; 4) | (date% 10); Write (0x04, temp);
_ delay_ms (100);
} (HOUR)//Якщо натиснута кнопка Годинники +
{((PINC amp; (1 lt; lt; PC0)) == 0) {}//Чекаємо відпускання кнопки ++;// Збільшуємо годинник на 1 (month gt; 12) month=1;
//Перетворимо з двійкової системи в BCD і записуємо в DS1307
uint8_t temp;=((month/10) lt; lt; 4) | (month% 10); Write (0x05, temp);
_ delay_ms (100);
}
(MIN)//Якщо натиснута кнопка Хвилини +
{((PINC amp; (1 lt; lt; PC1)) == 0) {}//Чекаємо відпускання кнопки ++;// Збільшуємо хвилини на 1 (years gt; 99) years=0;
//Перетворимо з двійкової системи в BCD і записуємо в DS1307
uint8_t temp;=((years/10) lt; lt; 4) | (years% 10); Write (0x06, temp);
_ delay_ms (100);
}
/** Перехід в настройку дня тижня **/(OK)//Якщо кнопка ок натиснута, то вихід
{((PINC amp; (1 lt; lt; PC3)) == 0) {}=2;
} (ok == 2)
{break;}
} (ok == 2)
{(v == 1)
{_ com (0x08);// Повне вимикання дісплея_com (0x01);// Очистка дисплея
_ delay_us (100); _ com (0x06);// Зрушення курсора вправо_com (0x0C);// Включення дисплея, курсор не бачимо
v=0;
} _ string (0x82, аeЅД Ѕeгe »е ); (day == 1) lcd_string (0xC7, BC ); if (day == 2) lcd_string (0xC7, laquo ; ЁH ); if (day == 3) lcd_string (0xC7, BT ); if (day == 4) lcd_string (0xC7, CP ); if (day == 5) lcd_string (0xC7, «T ); if (day == 6) lcd_string (0xC7, ЁT );
else lcd_string (0xC7, C );// Виводимо на екран день тижня (HOUR)//Якщо натиснута кнопка Годинники +
{((PINC amp; (1 lt; lt; PC0)) == 0) {}//Чекаємо відпускання кнопки ++;// Збільшуємо день на 1 (day gt; 7) day=1;
//Перетворимо з двійкової системи в BCD і записуємо в DS1307
uint8_t temp;=(day% 10); Write (0x03, temp);
_ delay_ms (100);