Ok, założę nowy wątek - żeby omówić pomysł powstały pod wpływem uwag kolegów ( i może koleżanek ?? Żadna się nie ukrywa pod nic nie znaczącym nickiem ??).
Zatem - mam taką wizję:
Układ "timera" programowalnego, który :
- posiada licznik czasu powiedzmy 8 bitowy, odliczający od zadanego czasu w dół. Co sekunda.
- licznik ten może być ustawiony przez MCU jakimś portem szeregowym, z użyciem jakiegoś "adresu" czy "hasła" - aby zminimalizować ryzyko zapisu przypadkowym ciągiem.
- jest możliwość startu i stopu - również odpowiednimi "komendami".
Po starcie, aż do osiągnięcia "0" jest aktywne wyjście "przekaźnik". Czyli wyjście = (stan licznika > 0).
Jeżeli licznik nie zostanie zatrzymany przed odliczeniem do zera, oczywiście wyłącza "przekaźnik", zapisuje informację o incydencie do jakiegoś przerzutnika ( który można odczytać przez MCU ), oraz resetuje MCU.
Dodatkowo - MCU powinien mieć możliwość wyboru częstotliwości zegara tego timera : dla normalnej pracy odliczamy co 1 Hz, oraz w drugiej opcji jakoś szybciej.
Dlaczego ? Żeby MCU mógł podczas autodiagnostyki systemu sprawdzić działanie tego licznika - bez konieczności czekania 255 sek. Nie jest to ryzykowne - bo jeżeli podczas "normalnej" pracy zegar by pracował nieprawidłowo (szybciej) to czas będzie krótszy a nie dłuższy.
Dobrze by też było, żeby oprócz zapisu licznika MCU mógł też odczytać jego stan.
Oraz, żeby po jego zapisaniu i wystartowaniu licznik nie mógł być ponownie zapisany aż do poprawnego zakończenia danego odliczania.
Taka mniej więcej struktura. Jakiego typu układ programowalny byłby tu odpowiedni ? Nie za duży nie za mały ? Zasilanie 5V. SMD. Nie wiem, czy jakieś typy są mniej czy bardziej predystynowane do zast, przemysłowych...
Doświadczenie mam z tego typu układami dokładnie zerowe - zatem przy okazji się nauczę może czegoś.