Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Rejestrator zdarzeń -listonosz nas nie zastał czy zamiast listu przynosi awizo ?

eurotips 30 Maj 2012 20:11 3191 5
  • #1 30 Maj 2012 20:11
    eurotips
    Poziom 35  

    Mam problem któremu sam nie jestem w stanie sprostać.
    Zostałem poproszony o wykonanie układu mikroprocesorowego który ułatwiłby życie osobom niepełnosprawnym. W ogólnym zarysie miałoby to wyglądać tak:
    Wejścia zdarzeń:
    RB0 dzwonek do drzwi
    RB1 sensor pukania do drzwi
    RB2 sensor otwarcia skrzynki pocztowej
    RB3 sensor zamknięcia drzwi na łucznik
    opcjonalnie RB4 sensor zadziałania autoalarmu auta zaparkowanego w pobliżu
    opcjonalnie RB5 znacznik nieobecności, nie wiem do końca jak to zrobić,
    chyba wykorzystam 2 wolne wejścia i jednym przyciskiem będzie się rejestrować wyjścia a drugim powroty

    Każde ww zdarzenie powinno powodować zapalenie diody LED, odpowiednio:
    sygnał na wejściu RB0 zapala diodę na wyjściu RA0,
    sygnał na wejściu RB1 zapala diodę na wyjściu RA1,
    sygnał na wejściu RB2 zapala diodę na wyjściu RA2
    sygnał na wejściu RB3 (otwarte drzwi) -mryga dioda na wyjściu RA3

    Każde takie zdarzenie powinno być zapisane do pamięci koniecznie łącznie z czasem o której wystąpiło odczytanym z PCF8583, musi być możliwość odczytu tych zapisów na popularnym LCD 2x16, dobrze by było zapisywać do zewnętrznej EEPROM ale niekoniecznie

    Przewidziałem klawiaturę na mikroswiczach aby można było ustawić zegar,i skasować wpisy, ewentualnie przewijać wpisy gdy jest ich więcej. Kasowanie zapisów najlepiej oddzielnym klawiszem DEL aby uprościć użytkowanie tego urządzenia.

    Miałoby to służyć pomocą dla osoby niepełnosprawnej (niesłyszącej).
    Największym problemem jest w chwili obecnej listonosz który notorycznie przychodzi już z awizo zamiast z korespondencją i trzeba stać na poczcie w długich kolejkach. Czujnik na skrzynce to taka pułapka aby go pogrążyć.

    Na załączonym rysunku przedstawiam gotowe już hardware, niestety urządzenie nie działa bo nie potrafię napisać poprawnie programu. Liczę na Wasze pomysły i pomoc.
    Edit: 31.05.2012 zmiany na schemacie w zasilaniu EEPROM
    Edit2: 31.05.2012 zmiany na schemacie w zasilaniu PIC
    Rejestrator zdarzeń -listonosz nas nie zastał czy zamiast listu przynosi awizo ?

    0 5
  • #2 31 Maj 2012 11:18
    LordBlick
    VIP Zasłużony dla elektroda

    Po co EEPROM jest zasilany z baterii podtrzymującej ?

    0
  • #3 31 Maj 2012 11:31
    eurotips
    Poziom 35  

    LordBlick napisał:
    Po co EEPROM jest zasilany z baterii podtrzymującej ?


    Z czystego leniwstwa.Łatwiej było poprowadzić zasilanie na schemacie. Sam EEPROM nie musi być użyty, można użyć wewnętrznej EEPROM kontrolera, tylko przy codziennym kasowaniu obawiałem się o żywotność komórek pamięci.

    Oczywiście zaraz się poprawię i wrzucę poprawiony schemat.
    A tak przy okazji, mogę tu liczyć na Waszą pomoc czy od razu to wrzucić do działu Ogłoszenia ? bo przyznam się szczerze że długość kodu przekracza u mnie limity darmowych programów ale ja nie umiem ich pisać i może dlatego mam taki problem.

    0
  • #4 31 Maj 2012 12:14
    LordBlick
    VIP Zasłużony dla elektroda

    Skoro jakiś kod wyprodukowałeś, to się nie wstydź tylko pokaż, inaczej to może wyglądać na roszczeniowy charakter wypowiedzi, nie zawierający odpowiedniej ilości informacji, aby się do niego odnieść. Pewnie mimo wszystko znajdzie się jakiś inny "program" (kompilator ?).
    Jak jednak z jakichś powodów wolisz to zlecić komuś, to rzeczywiście lepiej dać ogłoszenie.

    0
  • #5 31 Maj 2012 14:50
    dondu
    Moderator Mikrokontrolery Projektowanie

    eurotips napisał:
    Na załączonym rysunku przedstawiam gotowe już hardware, niestety urządzenie nie działa bo nie potrafię napisać poprawnie programu. Liczę na Wasze pomysły i pomoc.
    Rejestrator zdarzeń -listonosz nas nie zastał czy zamiast listu przynosi awizo ?

    Nie działa, bo nie ma zasilania :)

    0
  • #6 31 Maj 2012 15:05
    eurotips
    Poziom 35  

    :arrow: dondu
    PIC również jest prawidłowo zasilany tylko darowałem sobie na schemacie.
    Jednak uwaga była słuszna i naniosłem stosowne poprawki.

    Korzystałem z "Mikroelektronika C dla PIC" i gotowych już modułów do obsługi wyświetlacza LCD i zegara RTC. Udało mi się uruchomić jak do tej pory sam zegarek, aktualny czas wyświetlany jest w pierwszym wierszu wyświetlacza, poległem w drugim wierszu gdy usiłowałem przenieść tam odczyt odczyt w momencie przerwania na wejściu RB0, nie wiem czemu miałem zawsze same zera. Producent tego programu poszedł w stronę dsPIC i 16-bitowych mikrokontrolerów i nie oferuje już wersji obsługującej 16F877A. Stara instalka krzyczy Out of date dlatego cały projekt praktycznie zaczynam od nowa. No i faktycznie drapię się po głowie w czym to teraz kontynuować, niby mam w projekcie wszystko w .asm ale opisy są tylko w C.

    Podejrzewam że błąd popełniłem już na poziomie algorytmu pracy,
    u mnie wyszedł to taki zegarek z wyświetlaczem LCD który w momencie wykrycia zdarzenia aktualny czas zapisuje do pamięci, a ostatni zapamiętany czas wyprowadza na drugi wiersz LCD. Zapalenie LED informującego skąd przychodzi zdarzenie to drobnostka, gorzej z dodawaniem do EEPROM kolejnych wpisów a potem przewijanie na 2-wierszowym wyświetlaczu. Nie doszedłem jeszcze do zapisu, jak pisałem wcześniej eksperymentowałem z zapisem i odczytem póki co jednego zdarzenia ale się nie udało. Dlatego chciałbym to pisać w czymś gdzie dostępne są gotowe makra zarówno do inicjacji LCD jak i obsługi I2C co załatwiłoby zarówno zegarek RTC jak i EEPROM.

    0