Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void proccess_dial() { //Функция обработчика диска--------------------------------------
- lock_bounce.update(); //антидребезг замка диска
- lock_state = lock_bounce.read();
- if (lock_state == HIGH) { //если замок диска открыт
- disk_bounce.update(); //смотрим на пин диска
- if (disk_bounce.rose()) { //если он поднялся
- disk_pulses ++; //добавляем единицу в переменную цифры
- }
- }
- if (lock_bounce.fell() && disk_pulses < 10) { //если замок закрылся и переменная цифры меньше десяти
- ph_num [digit_pos] = disk_pulses + 48; //присваиваем текущей цифре номера значение переменной цифры с учетом поправки на АСКИИ код
- disk_pulses = 0; //сбрасываем переменную цифры на ноль
- digit_pos++; //добавляем единицу в переменную текущей цифры номера
- }
- if (lock_bounce.fell() && disk_pulses == 10) { //если замок закрылся и переменная цифры равна десяти (ноль на вертушке)
- disk_pulses = 0;
- ph_num [digit_pos] = disk_pulses + 48;
- digit_pos++;
- }
- if (ph_num[0] == 49 && digit_pos == 3) {
- number_send();
- digit_pos = 0;
- }
- else if(ph_num[0] == 56 && digit_pos == 10){
- number_send();
- digit_pos = 0;
- }
- else if (ph_num[0] != 56 && digit_pos == 7){
- number_send();
- digit_pos = 0;
- }
- }
- void number_send() {
- Serial.print("ATD");
- Serial.println(ph_num);
- for (byte i = 0; i < 11; i++) ph_num[i] = ' ';
- phone_state = 3;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement