 }
 
 void system_sleep() {
-
+	byte	count;
+
+	registerWrite(0);
+	digitalWrite(HEADLIGHT, LOW);
+	digitalWrite(DISPLAY_LIGHT, LOW);
+	digitalWrite(LOWER_LIGHT, LOW);
+	digitalWrite(RED_BACK_LIGHT, LOW);
+
+	deep_sleep	= true;
+
+	while (true) {
+		while ((sys_watch()) && (system_mode == SLEEP_MODE)) {
+			lcd.clear();
+
+			if (hour() < 10)
+				lcd.print(" ");
+
+			lcd.print(hour());
+			lcd.print(":");
+			lcd.print(minute());
+
+			lcd.print(" ");
+			lcd.print(day());
+			lcd.print(".");
+			lcd.print(month());
+			lcd.print(".");
+			lcd.print(year());
+
+			lcd.setCursor(1, 1);
+			lcd.print("I:");
+			lcd.print(bat_state(0));
+			lcd.print("%");
+			lcd.setCursor(8, 1);
+			lcd.print("E:");
+			lcd.print(bat_state(1));
+			lcd.print("%");
+
+			lcd.setCursor(15, 1);
+			lcd.write(LOCK_ICON);
+
+			delay_w(30000);
+		}
+
+		if (system_mode == SLEEP_MODE) {
+			deep_sleep	= false; // Выход из глубокого сна, чтобы можно было хоть что-нибудь ввести
+
+			while ((sys_watch()) && (analogRead(ACTION_BUTTON) > 5));
+
+			for (count	= 0; ((count < 3) && (!read_password())); count++);
+
+			if (count >= 3) {
+				set_bit(btc_config.system_byte, ALARM_STATE);
+				system_mode	= ALARM_MODE;
+				break;
+			} else {
+				break; 
+			}
+		}
+	}
+
+	if (system_mode	!= ALARM_MODE)
+		system_mode	= SPEED_MODE;
+
+	deep_sleep	= false;
 }
}

void alarm_sense() {
	alarm_now	= true;
}

void speed_sense() {	// Подсчёт скорости

			distance		= 0.0;	// Расстояние

byte		system_mode		= 0,
			deep_sleep		= false;

/*system_mode*/
#define SPEED_MODE			0
