logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak napisać program zegarka na mikrokontroler z LCD i pilotem?

bobsterr 13 Mar 2008 18:32 1901 4
REKLAMA
  • #1 4905193
    bobsterr
    Poziom 11  
    Posty: 9
    Ocena: 1
    Witam

    Jestem początkujący w programowaniu mikrokontrolerów.
    pilnie potzebuję pomocy w napisaniu programu.
    Główne założenia projektu to zegar wyświetlany na wyświetlaczu lcd z możliwością ustawiania go za pomocą pilota.

    Zapewne ten projekt dla niektórych forumowiczów jest banalny. jednak dla mnie to nie takie proste.
    Znam podstawy programowania i ogólnie to robię to od niedawna.
    Muszę zrobić ten pojekt na zaliczenie w szkole.

    Jeżeli chodzi o projekt płytki i jej wykonanie to już mam to za sobą, było to w sumie najłatwiejsze. Myślę, że to co stworzyłem będzie odpowiednie do mojego projektu. Schemat ideowy i zdjęcia zamieszczam w załącznku.

    Jeżeli chodzi o program to tu mam duże problemy.
    Cały program widzę jako trzy główne podprogramy.
    -wyświetlanie czasu na wyświetlaczu
    -ustawianie zegara za pomocą pilota
    -oraz odliczanie samego czasu z uwzględnieniem czasu potrzebnego na wykonanie dwóch poprzednich podprogramów.

    Najtrudniejsze w tym projekcie jest to że nie mogę użyć zewnętrznego zegara czasu rzeczywistego.

    Użyłem rezonatora kwarcowego 12MHz

    Płytka została uruchomiona, wyświetlam dowolny tekst na wyświetlaczu.
    Chciałbym wykorzystać do ustawiania pilota z kodowaniem RC5. Do odbierania sygnału uzyłem scalonego odbiornika podczerwieni.


    Proszę o pomoć w napisaniu programu.
    Załączniki:
    • Projekt zegarka.rar (309.7 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 4906370
    dawid512
    Poziom 32  
    Posty: 1439
    Pomógł: 229
    Ocena: 6
    Prosto, szybko, latwo a wiec BASCOM AVR. Najprostszy zegar mozesz wykonac przez podlaczenie kwarcu zegarkowego 32,768 kHz do TOSC1 i 2.
    Program jest banalny i jest on w samplach Bascoma. Date i godzine ustawiasz wpisujac okreslona liczbe do okreslonych z gory zmiennych i wyswietlasz na LCD. Do tego dokladasz odbiornik podczerwieni i calosc masz gotowa w kilka chwil i obslugujesz zwyklym pilotem rtv nadajacym w rc5.

    Tu masz kod do zegarka:
    
    $regfile = "m32def.dat"
    $crystal = 8000000
    
    Enable Interrupts
    
    Config Date = Mdy , Separator = /                         
    
    Config Clock = Soft                                         '
    
    Date$ = "11/11/05"
    
    Time$ = "23:59:50"
    
    Do
    locate 1, 1
    Lcd Time$
    
    Loop
    


    W razie czego pytaj :)

    Pozdrawiam Dawid.
  • REKLAMA
  • #3 4906441
    bobsterr
    Poziom 11  
    Posty: 9
    Ocena: 1
    Czyli proponujesz napisać ten program w Bascomie??
    Czy będzie on działał na mojej płytce, która jest już wykonana. Mam na niej zainstlowany AT89C2051. Schemat ideowy jest w załączniku.
    Napisz do których wejść tego mikrokontrolera dołączyć ten kwarc.

    Na początku zakładałem pisanie tego programu w Asemblerze ale w sumie to nie ma znaczenia.
  • REKLAMA
  • Pomocny post
    #4 4906621
    dawid512
    Poziom 32  
    Posty: 1439
    Pomógł: 229
    Ocena: 6
    Napisałeś:
    Cytat:
    Jestem początkujący w programowaniu mikrokontrolerów.


    Jeśli jest tak jak napisałeś to daj sobie spokoj narazie z Asemblerem bo to wyzsza szkola jazdy.
  • #5 4906800
    nsvinc
    Poziom 35  
    Posty: 2870
    Pomógł: 262
    Ocena: 88
    jak masz 89c2051 to nie bascom avr tylko bascom 8051..:D Poza tym: z tego co wiem bascom 8051 MUSI mieć wejscie kodu rc5 na pinie przerwania zewnetrznego, czyli DO z odbiornika IR podłącz pod INT0...
    Na twoim miejscu nie pchałbym sie w x51 bo w wiekszosci wymagaja specjalnych programatorów, a AVRy sa ISP więc 3/4 roboty w postaci przenoszenia procesora z jednej podstawki w drugą odpada :)
REKLAMA