Można zastosować choćby expandery portów sterowany I2C lub SPI ( np. PCF8574 czy MCP23017 ) albo rejestry przesuwne. Można łączyć je po kilka uzyskując potrzebą ilość I/O. Potrzebujesz wtedy tylko 2 piny uC.
Następcy PCF8574/75 maja rejestr kierunku i wyjścia PP a nie OD z podciąganiem 100uA. W 8051 to przynajmniej było krótkie "silne" podciąganie na chwilę po przełączeniu portu w stan "H". Więcej zalet jest w trybie wejściowym z przerwaniami. W PCF8574 gdy wejście na chwile zmieni stan, można to wykryć ale nie wiadomo, który pin to zrobił. W MCP23017/MCP23S17...
Ja bym polecił koledze MCP23S17. SPI może działać znacznie szybciej niż I2C. Mam bardzo podobny projekt i zrealizowałem go właśnie na układzie obsługującym SPI. Na jeden kanał SPI wchodzi 8 ekspanderów. Ja potrzebowałem 10, więc jako CS użyłem dwóch wyjść z Rpi. Pamiętaj o ustawieniu rejestru H_EN ;)
http://obrazki.elektroda.pl/8000762600_1... W większość projektów, które realizował autor tego poradnika w oparciu o Raspberry Pi wykorzystywał on piny GPIO jako wejścia i wyjścia cyfrowe. Wyprowadzonych na płytce RPi jest 17 takich pinów. Co zrobić jak potrzebujemy więcej? Najprostszym sposobem zwiększenia liczy wejść i wyjść cyfrowych,...
Ale nikt nie będzie do zapalanie LEDów ładował ATmegi32 (tym bardziej 2560), wystarczy zastosować np. rejestr przesuwny 74HC595, albo nawet ekspander MCP23017. Gdyby każdy myślał "o, potrzebuję 40 wyjść, więc potrzebuję µC z co najmniej 40 nóżkami" to nie wiem jakby wyglądały dzisiejsze urządzenia.
https://obrazki.elektroda.pl/5831049700_... Każdy chyba słyszał już o ChatGPT, ale czy słyszeliście o ChatPDF? ChatPDF to narzędzie pozwalające na odbycie tytułowej "pogawędki" z plikiem PDF. W tym temacie spróbuję wykorzystać je do wyszukania informacji w nocie katalogowej pewnego expandera portów, zobaczymy jaki będzie tego skutek....
Zostaje do omówienia pin INT od PCF8574. Na tym pinie pojawi się zbocze opadające gdy zmieni się coś na wejściu PCF8574. Nie ma możliwości maskowania przerwań dla poszczególnych pinów PCF8574, a przerwanie jest wyzwalane na każdą zmianę stanu (zarówno rosnące, jak i opadające zbocze) na pinach PCF8574. Lepiej chyba użyć MCP23017 do tego celu. Dodano...
Problem rozwiązałem (a właściwie mój kolega Michał - dzięki Michał) Cały układ MCP23017 działa poprawnie z tym przerwaniem przy porównywaniu z rejestrem DEFVAL. Proszę spojrzeć do noty rozdział 1.7.5 rysunek 1.7 strona 25. Cały problem polega na tym, iż konstruktorzy tego układu go tak zaprojektowali, że po wywołaniu przerwania ono "trwa" dopóki trwa...
chcę odwrotnie zrobić, czyli mając matryce przycisków jak na schemacie sterować przyciskami z arduino w odpowiedniej kolejności i czasach. Czyli fizycznie przycisk zastąpić arduino. Jeśli tyle przycisków, to faktycznie stosowanie transoptorów dla każdego z nich komplikuje konstrukcję. Sterowanie powiedzmy, bezpośrednie sygnałami z arduino jest też...
A ile konkretnie tych GPIO brakuje? Jeśli użyje sterowników L9110, to potrzebuję 12 wyjść PWM, dodatkowo 6 pinów na krańcówki, dodatkowy silnik ale bez regulacji obrotów to kolejne dwa i ledy powiedzmy 2. Nie wiem jak się ma sprawa PWM a ekstenderów, ale 12 powinienem móc wyciągnąć z esp (chyba że zużyje za dużo pinów na zestawienie komunikacji: na...
I jedno i drugie można kontrolować sprzętowo i programowo. Proszę pokazać konfigurowanie MCP23017 albo rzeczonego PCF8574 "sprzętowo" ... proszę pokazać konfigurowanie 165, czy 595 programowo. A jeśli chodzi o ścisłość to tu jest przykład takiego "prawie" odpowiednika I/O w postaci rejestru przesuwnego, a mianowicie sdas212a, a jakże, konfigurowanego...
Widziałem tysiące programów, ale jeszcze nie wiedziałem ani jednego, który wskakiwał by w przerwanie po to aby stwierdzić, ze nie ma co robić i wychodził z niego, wykonywał jeden obieg pętli głównej i tak w kółko. To jest bez sensu tym bardziej, ze tu można to rozwiązać (jeśli już muszą być przerwania od czujników) od zbocza. Przyznam, ze jestem ciekaw,...
Gdybym jednak użył MCP23017 na I2C 400kHz, to przy 8 układach przy założeniu, że wszystkie pracują jako wejścia, to z jaką częstotliwością miałbym odczyt stanu pojedyńczego wejścia? Naprawdę nie potrafisz policzyć? Przesyłasz: start adres iic zapis adres rejestru start adres iic odczyt dana 1 dana 2 stop wszystko powtarzasz 8 razy czyli w przybliżeniu...
A da się zrobić aby była jeszcze trzecia oś? Tak możesz zrobić więcej osi tyle ile potrzebujesz i masz wolnych pinów pisałem np. od A0 do A5 czyli 5 osi. Tylko w Joystiku są tylko dwie osie X i Y trzecią osią moze być orczyk, przepustnica gazy podobnie w kierownicy Fragment dla trzech osi X, Y, Z void loop(){ //------------------- Osie...
https://obrazki.elektroda.pl/4868547700_... Dzisiaj zrealizuję projekt na malutkim, ośmionóżkowym mikrokontrolerze PIC w obudowie DIP8 oferującym skromne 3.5kB pamięci Flash. Co więcej, do komunikacjami z peryferiami użyję tylko dwóch pinów - całość opierać się będzie o I2C. W oparciu o nie uruchomię kontroler wyświetlacza/klawiatury oraz...
https://obrazki.elektroda.pl/4577783100_... Witajcie moi drodzy. Dzisiaj przedstawię wam mój sieciowy sterownik przekaźników/zegarek/termometr zrealizowany w obudowie po tunerze satelitarnym Ferguson AF 2818 SE na bazie mojej płytki uruchomieniowej pod PIC18F67J60. Pomysł na projekt Z sterowaniem przez internet eksperymentowałem już...
co do dlugosci i2c, od biedy da sie wyciagnac 50m o ile jest dobry kabel...kiedys robilem takie testy, cyrk był nieziemski ale stosujac pare buforów ze schmittem i odpowiednio powolną transmisje (scl=50kHz max) nie ma bledów...co do MCP23008, istnieje tez MCP23016 ktory mozna kupic w tej samej firmie (linka podawalem w poprzednim poście) i jest on 16bitowy....
Problem następujący: Chcę sterować Amegą32 poprzez klawiaturę membranową. Wydumałem że, wykorzystam do tego ekspander MCP23008. ... Ustawie 4 x IN i 4 x OUT+ podciągniete po zwarciu na klawiaturze,na jednym IN pojawi sie H, wystąpi przerwanie i odczytam rej. INTF Do rejestrów MCP wpisałem: [syntax=c_loadrunner] unsigned char ret; ret=twi_start(addr_MCP+TWI_WRITE);...
Witam PCF8574 - I2C, więc mało zajmuje portów uC, daje mozliwość łatwej rozbudowy (dołączania kolejnych układów - PCF8574 max 8 ) - cena? cóż trzeba poszukać, może trafiłeś na jedną z ofert gdzie życzą sobie ponad 20zł/szt. a tego scala można kupić za jakieś 8-9 zł/szt. Jest też 16-bitowy Expander I/O na I2C - typ MCP23016 prod. MICROCHIP ale... 8255...
(at)oloam - dokładnie tak jest, po to jest choćby wiringpi żeby uprościć sterowanie gpio, komunikację po spi czy i2c do minimum. Są gotowe moduły do najpopularniejszych układów (m.in. mcp23008 i 23017). Tak samo arduino. Użytkownik na dobrą sprawę nie musi wiedzieć jakie tam są rejestry i jak się konfiguruje. Nie musi wiedzieć o tym jak wygląda transmisja...
raspberry mcp23017 mcp23017 expander mcp23017 arduino
naprawa stare telefon zwarcie wirnika klatkowego schemat elektryczny układu zapłonu
satel powiadamianie radiowe komunikacja radiowa satel
Oznaczenie przewodów Skoda Fabia II 2011 drzwi lewe Świece żarowe Volvo XC90 - temperatura aktywacji