Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Europejski lider sprzedaży techniki i elektroniki.
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Programowanie 8255.

krzys99 06 Paź 2008 16:35 2214 13
  • #1 06 Paź 2008 16:35
    krzys99
    Poziom 12  

    Cześć wszystkim, muszę na jutro wiedzieć jak programować układ 8255... Zbudowałem układ z tego schematu:

    Programowanie 8255.

    Proszę, niech ktoś mi wytłumaczy jak programować to żeby sterować tymi diodami...co kiedy jak załączyć a co wyłączyć...

  • #2 06 Paź 2008 16:51
    Jurek007
    Poziom 17  

    Illustrates how 8255 may be configured for outputs on 8255 Ports
    ** A, B and C.
    **
    ** 8255 is first setup with control word 0x80
    ** Mode set flag active - bit 7 = 1
    ** Mode selection 0 - bits 6 5 = 0 0
    ** Port A output - bit 4 = 0
    ** Port C (upper) output - bit 3 = 0
    ** Mode selection 0 - bit 2 = 0
    ** Port B output - bit 1 = 0
    ** Port C (lower) output - bit 0 = 0
    **
    ** Data may then be output by calling out_data (port, data) where
    ** Port A - 0
    ** Port B - 1
    ** Port C - 2


    https://www.elektroda.pl/rtvforum/topic403669.html

  • #3 06 Paź 2008 17:04
    krzys99
    Poziom 12  

    Jakoś nie rozjaśniło mi to umysłu...nie mam pojęcia o co w tym chodzi, wiem że muszę podawać jakieś 8-bitowe słowo sterujące, ale jak to wszystko zacząć???

  • #4 06 Paź 2008 17:15
    Jurek007
    Poziom 17  

    Układ ma 4 adresy wybierane liniami A0 i A1.
    A1 A0 = 00 port A
    A1 A0 = 01 port B
    A1 A0 = 10 port C
    A1 A0 = 11 rejestr sterujący - jak tu wpiszesz 80Hex to wszystkie porty A B i C
    będą ustawione jako wyjściowe.
    Teraz wpisując po adres A1 A0 = 00 jakieś dane powinny się pokazać na wyjściu portu A
    No dobra po kolei:
    Programowanie:
    Na liniach A1A0 ustawiasz 11 czyli wybierasz rejestr sterujący 8255
    Na liniach D7-D0 80Hex
    CS -> 0
    WR -> 1 > 0 > 1

    Zapis do portu A
    A1A0 = 00
    D7-D0 jakies dane
    CS -> 0
    WR -> 1 > 0 > 1

  • #5 06 Paź 2008 17:25
    krzys99
    Poziom 12  

    Ok, załóżmy że tego PC nie potrzebuję, chce tylko sterować PA i PB, to na A1 i A0 daje zera, a na WR, CS, RD i RESET jakie maja być stany?? Proszę o wyrozumiałość, to są moje początki;)



    "WR -> 1 > 0 > 1 " co to znaczy?? jak wykonam wszystko po kolei tak jak napisałeś to co się stanie?? Zaświecą diody?? Jak można wybierać jakie diody maja świecić?

  • #6 06 Paź 2008 17:53
    kasjo
    Poziom 25  

    Już dawno tego układu nie programowałem i mogę coś namieszać :)
    CS podłączasz do masy
    RESET do masy

    Na bitach od D0 do D7 ustawiasz wartość 80hex (jak napisał Jurek007- ustawia wszystkie porty jako wyjścia)

    A1 i A0 stany wysokie (wybór rejestru "konfiguracyjnego")

    RD ustawiasz na stan wysoki a WR na stan niski (na moment)
    Powinno to wysłać dane z linii D0-D7 pod wybrany adres i skonfigurować układ

    Teraz ustawiasz adres portu za pomocą bitów A0 i A1
    np A0 i A1 stan niski (adres portu A)
    D0 do D7 na zmianę 10101010
    RD stan wysoki WR na moment stan niski

    Powinny na porcie A pojawić się na zmianę stan niski i wysoki (PA.0-niski PA.1-wysoki itd.)

    Zresztą poszukaj aplikacji tego układu tam będziesz miał wszystko wyjaśnione łącznie z przebiegami sygnałów.

    Chyba ten układ ma podciągnięte linie wewnątrz do Vcc więc sygnał RD możesz zostawić w spokoju :)

  • #7 06 Paź 2008 18:23
    Paweł Es.
    Pomocny dla użytkowników

    Poza tym, wg tego schematu co podałeś to nic nie zrobisz, bo nie wymusisz na wejściach D odpowiednich stanów 0 i 1, przemyśl jeszcze ten układ !!1

  • #8 06 Paź 2008 18:40
    Jurek007
    Poziom 17  

    krzys99 napisał:
    Ok, załóżmy że tego PC nie potrzebuję, chce tylko sterować PA i PB, to na A1 i A0 daje zera, a na WR, CS, RD i RESET jakie maja być stany?? Proszę o wyrozumiałość, to są moje początki;)



    "WR -> 1 > 0 > 1 " co to znaczy??
    to oznacza ze należy pomiędzy 1 podać 0 czyli uaktywnić zapis niskim poziomem WR gdyż WR ma daszek co oznacza że aktywny jest poziom niski

  • #9 06 Paź 2008 20:04
    krzys99
    Poziom 12  

    Ok, a ta liczbę 80hex to ustawić na tym D0-D7 nie?? czyli 10 000 000, ale ta jedynka ma być na D7 czy D0??

  • #10 06 Paź 2008 21:27
    Paweł Es.
    Pomocny dla użytkowników

    Z ciekawości przyrodniczej zapytam do czego to ci jest potrzebne i dlaczego nie znasz podstaw ????

  • #11 06 Paź 2008 21:48
    shadoweyes
    Poziom 20  

    Wrzuć w google Intel 8255 i szukaj w stronach polski a znajdziesz na pewno opis tego układu i poczytaj uważnie, a jak nie to są książki np "Mikroprocesory mikrokontrolery mikrosystemy" A. Niederliński. Albo wejdź na stronę http://www.pg.gda.pl/~zbczaja/ tam warto poszukać jest dużo informacji nie tylko o tym układzie.
    Inne:
    www.ire.pw.edu.pl/~kderzakowski/tmik/Cw_C.pdf
    m.jedynak.pl/technika_mikroprocesorowa/lab3_tresc.pdf
    www.elektroda.pl/rtvforum/viewforum140-0-200.html
    http://www.elportal.pl/pdf/k09/35_09.pdf

  • #12 06 Paź 2008 21:56
    krzys99
    Poziom 12  

    Cytat:
    Z ciekawości przyrodniczej zapytam do czego to ci jest potrzebne i dlaczego nie znasz podstaw ????


    Pytam bo robię to do szkoły, a podstaw nie znam, bo tak nauczają w klasie III technikum o profili technik telekomunikacji i za to nic nie poradzę...

  • #13 06 Paź 2008 22:37
    karwo
    Poziom 21  

    Ale ten układ jest od dawna na rynku i w sieci jest cała masa jego opisów wystarczy poszukać a jak skończysz to technikum i zechcesz pójść na studia o podobnym kierunku to te wszystkie braki wyjdą i będziesz musiał przekopywać się przez masę informacji żeby wyłuskać to co Ci jest potrzebne więc ucz się szukać

  • #14 06 Paź 2008 22:56
    krzys99
    Poziom 12  

    Żeby sterować PB to wystarczy zrobić tak?:

    RESET i CS do masy
    potem na D0-D7 ustawiam 80hex
    potem na chwilę daje WR na stan niski
    później daje A1 na stan niski a A0 na wysoki
    ustawiam jakąś wartość na D0-D7
    znowu daję na chwilę WR na stan niski
    i odczyt na diodach
    tak będzie czy jak??

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME