або клапана в залежності від результатів */lastlvl> lvl then do; DRAIN = 1; PUMP = 0; end; lastlvl
/* Установка значення для запису в P0 */= DRAIN * 128 + PUMP * 64;
/* Обробка прапора підключеного пристрою */= 0;/* Встановлюємо що пристрій не підключений */= 0; = lastlvl;/* Відправляємо дані */while ti = 0; end;/* Очікування завершення передачі */= 0;
/* Чекаємо 100 мс. Якщо пристрій підключено, то за цей час прийде підтвердження */time (100);
/* Якщо RI = 1 означає прийшла відповідь від пристрою */ri = 1 then connected = 1; = 0;; sf5 = 1 then/* Якщо минуло 5 хвилин * /;
/* Зберігаємо в масиві останній виміряний рівень */(ptr) = lastlvl; = ptr + 1;
/* Якщо вже пройшли добу - починаємо зберігати заново */ptr = 288 then ptr = 0; connected = 1 then/* Якщо пристрій підключено * /;
/* Останній байт не виводить тому вже його вивели раніше */i = 0 to ptr-1;
/* Скидання прапора переданого байта */= 0; = data (i);
/* Очікування завершення передачі */while ti = 0; end;;
/* Обнуляємо лічильник збережених даних */= 0;;
= 0;;; kurs;
Висновок
У ході виконання курсової роботи було виконано проектування мікропроцесорного пристрою В«Система реєстрації рівня з блоком збору інформації і клапаном управлінняВ».
Була розроблена принципова схема пристрою і програма для мікроконтролера, що здійснює всі функції пристрою.