0xFC czyli binarnie 11111100 a więc przestawiamy bity 0 i 1 na wejścia a pozostałe 2-7 na wyjścia.
A jest jakiś układ bramkowy na ktorego móglbym podać 4 wejścia jednocześnie i sterował jego wyjściami za pomocą AVR-a???
Jakiś schemat zawsze ułatwiłby jednoznaczną interpretację tego, co napisałeś. Zrozumiałem z tego, że masz 573 podłączony jako bufor wejściowy - wyjściem do portu B procesora. Jeżeli tak, to przecież 573 ma wyjścia trójstanowe. Wystarczy zapewnić, aby w czasie programowania AVR-a na jego wejściu /OE był stan wysoki.
Czy ktoś jest w stanie mi wytłumaczyć jak mam konfigurować porty jako wejścia i wyjścia w tej wersji niby sie kompiluje ale program nie działa.W wesji 1.11.7.7 jest dobrze.
Nie DDRD tylko PORTD. DDRD ustawia funkcję portu czyli wejście bądź wyjście. PORTD ustawia stan portu. czyli: PORTD=0x02; // Stan wysoki na wyjściu portu D1 PORTD=0x00;// stan niski na wyjściach portu D
Przecież są analogiczne układy będące wejściami. Trochę autor może pogooglać...
Proszę was o cierpliwość xD ale po co wyłączać ten driver wyjściowy skoro i tak to działa Po to aby nie uszkodzić mikrokontrolera. Zwieranie do masy wyjścia ustawionego w stan wysoki to bardzo zły pomysł.
Przykładowy AVR (np.Atmega 16) ma 32 wyjścia/wejścia a komunikacja z pc przez RS232 to niewielki problem. Jak wiadomo avr jest tanszy a najprostszy programator to wtyk do portu lpt i 3 rezystory. Tak więc wykonanie czegos podobnego na AVR jest o wiele tansze i szybsze.
Wiem, że temat był już poruszany niejednokrotnie i liczę się z "niemiłymi" odpowiedziami... No to pierwsza "niemiła" odpowiedź: Zajrzyj do dokumentacji AVR-ka i sprawdź DOKŁADNIE co należy wpisać do rejestru DDRx , by port był wejściem lub wyjściem. //... static inline void owire_wy(void) { DDR(OWIRE_PORT) &= ~(1<<OWIRE_PIN);...
Przydało by się (no właściwie, to konieczne jest ;) ) zdefiniowanie portów jako WYJŚCIA. Domyślnie (po włączeniu zasilania) porty są wejściami "pływającymi" i zapisując do nich wartości nie wystawiasz na nie stanów logicznych, tylko włączasz i wyłączasz układy "podciągające" do Vcc. Gdzieś na początku main() wklep to: DDRC |= _BV(PC4) | _BV(PC5); /*...
W AVR'ach portami zarządzają trzy rejestry PORT, PIN, DDR. PORT przechowuje dane wyjściowe, a w przypadku wejścia załącza rezystory podciągające (tam gdzie 1, 0-stan wysokiej impedancji). PIN odzwierciedla aktualny stan końcówek portu. Dla tego przez ten rejestr badamy co jest na wejściu. DDR zawiera dane o tym które bity portu są wejściami (0), a które...
Kod na tym IC to AB1837HER525-82. Nie jestem nic w stanie znaleźć na jego temat. Faktycznie nie idzie nic znaleźć, mam podobny moduł, ale teraz sobie przypomniałem że moduł który można było normalnie skomunikować z mikrokontrolerem po UART-cie to był DFPlayer mini i on był na innym scalaku, tam była dostępna jakaś dokumentacja. Aby móc sterować tym...
na wierszach niski a na kolumnach wysoki A skąd niskie i wysokie stany, skoro matryca nie jest podpięta pod GND? Zawsze możesz wysłać na pin stan niski, co z uwagi na symetryczny charakter portu w AVR jest równoważne zpodłączeniem tego pinu do GND. Z łatwościa to wytestujesz podłączaja do wyjścia diodę LED w odwrotnej polaryzacji i manipulując programowo...
Można się łączyć bezpośrednio, jednak bezpieczniej przez rezystor około 1K. Wyjścia Arduino, to wyjścia bezpośrednio z AVR, a te są sterowane (zapewne) mosfetami w konfiguracji push-pull. Wejścia Arduino też są bezpośrednimi portami AVR i do odczytu skonfigurowane są jak wejścia wysokoimpedancyjne z dodanym rezystorem podciągającym do zasilania. W przypadku...
Witam. Kupiłem wczoraj enkoder obrotowy EC11SP. Mam problem z odpowiednim podłączeniem go do mikroprocesora AVR. Szukałem jego specyfikacji technicznej, ale znalazłem tylko to: http://www.tokyoden.com/Drawings/EC-11SP... Niewiele ten plik mi pomógł. W dalszym ciągu nie wiem, do których pinów mam podłączyć VCC, GND. Przecieżna tym rysunku masz wszystko...
Tak jest taka możliwość (zakładam że pytasz o Bascom AVR i zamianę portu w procesorze AVR) A jak to zrobić... same wyjście najlepiej i najszybciej skonfigurować za pomocą rejestrów PORTx, DDRx.
W BASCOM AVR z gałęzi 1.11.8.x pojawił się komparator w oknie symulacji LCD. Ustawianie portów nic nie da - nawet tych zielonych (czyli wejścia; czerwone to wyjścia jakbyście nie wiedzeli).
Witam Mam proste pytanie, a mianowicie: Czy mikrokontroler np. Atmega32 podczas pracy pierw sprawdza wszystkie wejścia, potem realizuje program a następnie "wypluwa" wyjścia ? Nic nie sprawdza i nic nie wypluwa ;) sam to musisz zrobić czyli poustawiać które piny mają być wejściami a które wyjściami. Domyślnie po starcie wszystkie są wejściami. Poczytaj...
'51 ma tą zaletę (choć w niektórych przypadkach to jest wada) nad np. AVR, że tam nie trzeba wybierać czy dany pin ma być wyjściem czy wejściem. Dlatego zwarcie pinów, które mają różne stany nie jest wogóle szkodliwe dla uprocesora. Na samym wyjściu w '51 jest opornik do zasilania oraz tranzystor zwierający do masy (gdy tranzystor zwarty to jest '0'...
Jeżeli pin ustawiony masz na wejście to on sprawdza co na nim jest. Nie myl wejścia z wyjściem i nie ma tu znaczenia, czy to będzie zwykły port I/O czy z funkcją przerwania INT - wejście jest wejściem. Fakt, że masz możliwość włączenia rezystorów pull-up lub pull-down, jednakże w tym przypadku jest to zbędne bo R34 będzie działać jako pull-up (i to...
Spróbuj podwiesić 2 sygnały "G" układu HC244 przez rezystory np 4.7 k do VCC. Spowodujesz tym samym wymuszenie stanu "1" na tych wejściach a co za tym idzie - stan wysokiej impedancji na wyjściach układu HC244. Mam podobne objawy gdy programator jest wpięty do płytki a DB25 wypnę z portu LPT. Pozdrawiam...
Te diody Zenera obniżają napięcie jakie jest na wyjściu portu RS232 z 12V do 5,1V. Tymi liniami nie zasilisz procesora bo tam są zmieniające się sygnały. Choć oczywiście jest też taka wersja tego programatora. W tej wersji musisz sam zasilić procesor. Jeśli dasz diodę 5V6 to będzie płynął prąd z portu RS232 do zasilania procesora 5V (maksymalne napięcie...
Po co tak? Lowerline Locate 2 , 7 czy tak Home Four Locate 4 , 7 Chyba samo Locate wystarczy Poza tym zamiast funkcji bez parametrów użyłbym ... GOSUB Adres ... Adres: ... Return Chyba tych funkcji za dużo. Poza tym w Bascom AVR nie ma czegoś takiego $large Musisz też skonfigurować porty! (które są wejściami, które wyjściami). W tym programie widoczny...
Przy programowaniu AVR-ków czasem kompilator pozwala adresować bitowo rejestry, a czasem nie. Np. rejestry portów wejścia wyjścia (PORTA, DDRB...) można obsługiwać rozkazami SBI, CBI, SBIS... a niektóre rejestry tak się nie da np. rejestr przyczyn resetu WDTCSR. Czy gdzieś jest zawarta informacja które rejestry da się adresować bitowo, bo nie mogę znaleźć...
A więc tak. 1. ATmega8 nie posiada linii PC7. 2. Linia PC6 jest wykorzystywana jako reset. Żeby użyć jej jako linii IO należy przestawić odpowiedni fusebit. Jednak wtedy tracisz możliwość programowania ISP - wtedy pozostaje tylko programator równoległy. Być może wiesz o tym, ale skoro już piszę to warto było wspomnieć. 3. PORTC = 0xff; Ustawiając port...
Zajmuje się programowaniem w asemblerze procesorów ARM a dokładnie programuje układy oparte na rdzeniu Cortex-M0 (LPC111x) ale swój kod przenosiłem także na rdzeń Cortex-M3 (LPC13xx) taki sam jak w procesorach którymi ty jesteś zainteresowany (STM32). Postaram się teraz udzielić odpowiedzi na twoje pytania: 1. Wie w jaką dokumentacje trzeba się zaopatrzyć...
hyhyhy dobre pytanie - ale gdybyś gdziekolwiek sobie doczytał - bo to najbardziej podstawowe z podstawowych informacji - to byś zobaczył , że trzeba chyba poszczególne piny procka ustawić tak żeby były albo wejściem albo wyjściem ;) .... przecież żeby wysterować diodę LED musisz podać jakiś sygnał na wyjście prawda ? to chyba dla ciebie jasne? .......
Rozumiem że te porty ustawiasz jako wejścia (czyli DDRB = 0XFF), Drobna pomyłka bo powinno być DDRB = 0x00, czyli DDRB = 0b00000000. Niby drobiazg, ale początkującemu może namieszać. W procesorach AVR każda końcówka I/O powiązana jest z trzema rejestrami, które to decydują o przeznaczeniu tej końcówki. Te rejestry to: DDR - rejestr kierunku, ustala...
Te filmiki już oglądałem i trochę się z nich dowiedziałem na temat podłączania pod programator i ustawianie portów jako wejść/ wyjść, a chodzi mi bardziej o sam język programowania.
Aha, ok, dziękuję. Mam jednak problem z allegro: mieszkam w Anglii =P Na brytyjskim eBayu są urządzenia typu "USBasp - USB ATMEL AVR ATMEGA ISP Programmer (AVRDude) ". To chyba nie wystarczy, bo nie widać wejść ani wyjść oprócz portu USB; sam programator. Może udzieli się jakiś dobrodziej z Polski mieszkający w Londynie? :D
8051 nie ma możliwości konfiguracji poszczególnych wyjść a poza tym ma inną obciążalność wyjść (i ich charakterystyką prądowo napięciową). A może problem jest w tym sprawdzaniu wejść, bo skoro usunąłeś funkcje if i problem zniknął, to problem jest z czytaniem wejść A jeszcze sprawdź czy masz zgodne wersje oprogramowania, bo może tu się gryzie: http://www.helmix.at/hapsim/...
Witam! Mam takie pytanko: Czy w czasie pracy AVR-ek można zmieniać konfigurację portów z wyjścia na wejście i potem znów na wyjście np. co 10ms? Gdzieś spotkałem się z takim projektem, ale sam jeszcze tego nie testowałem. Może ktoś robił coś takiego i wie że jest to normalna sprawa i nie ma z tym kłopotów.
W AVR od każdego portu wejścia/wyjścia masz dostępne 3 rejestry. Rejestr DDR, PORT i rejestr PIN, na przykładzie portu C jest to rejestr PORTC i rejestr PINC i DDRC. Rejestr DDR Określa tryb pracy wyprowadzenia jako wejście lub wyjście, zapisujac odpowiedni bit jako 1 ustawiasz go jako wyjscie a 0 jako wejscie. W trybie pracy jako wejscie jest podłaczone...
Jeżeli program został zabezpieczony w oryginalnym układzie (fusebit) to go nie odczytasz. Tak jak wszystkie małe Motorole programuje się za pomocą portu szeregowego. Wygląda to odmiennie jak w przypadku AVR, PIC czy 51. Najpierw wymuszając na określonym wyprowadzeniu stan w czasie RESET przełączasz '08 w stan MON czyli uruchamiasz Monitor ROM - Sekcja...
Jakiś czas temu budowałem sterownik oświetlenia na uK AVR. Sterownik ten współpracuje z kilkoma czujnikami oraz steruje dwoma optotriakami. Wszystkie połączenia elektryczne z tymi elementami mają długość do 10m. W praktyce okazuje się, że dołączenie tak długich "anten" skutkuje występowaniem różnych przypadkowych zakłóceń w pracy układu. Jeśli wejścia/wyjścia...
Zumek, o to chodziło! Tak na marginesie, czy w tym przypadku jest możliwość wykorzystania pozostałych pinów portu C jako wejść a nie wyjść?
(at)elektryku5 To już jest także w XMEGA oraz nowych ATMega. Generalnie jest to częściowe rozwiązanie problemu autora, bo w ten sposób można ustawiać/zerować lub zmieniać wybrane piny, ale nie można w ramach jednej operacji łączyć tych działań. ilka nóg mikrokontrolera (np 3, albo 4,5) ustawione w wyjście, i traktowane jako jedno "słowo". Ale nie 8....
Jeśli chodzi im o wejście, to piszę PIN a jeśli o wyjście to PORT np: If pind.1=1 then portc.1=1 tak? Mniej więcej. Podpowiedzcie mi jeszcze jak napisać kod, tak aby po osiągnięciu temperatury 40st na wyjściu pojawiał się stan wysoki, a po spadku do np 30st dopiero stan niski używam ds18b20 [syntax=text]Zmierz temperaturę Jeżeli wyjście=stan wysoki...
Ja zamiast używać nóżek ATmegi128 do sterowania wyjściami cyfrowymi na Twoim miejscu zastosował bym ekspandery z portem SPI. Przykład to MCP23017 (16 wejść / wyjść) po 5zł w TME. Bardzo prosto się je oprogramowuje.
Musisz ustawić kierunek pinów w porcie, od tego służy rejestr DDRn, widze że śmigasz w asmeblerze, to szybciej sprawdzisz sam w nocie co i jak, nim ja sobie przypomne ;)
to zacznijmy od początku. Na wejściu jest bufor hc244, jak każdy element wymaga zasilania. Skąd ten bufor bierze zasilanie?? (20 pin)
, przetłumacz poniższy kod z BASCOM AVR na Arduino Uno: $regfile = "attiny2313.dat" $crystal = 8000000 Dim A As Byte a=0 Config Pind.6 = Output led Alias Portd.6 led= 0 Config Pind.0 = Input Portd.0 = 1 Sw Alias Pind.0 do if a >1 then a=0 if sw=0 then bitwait sw, set incr a End If if a=1 then toggle led waitms 100 else led=0 end if loop end Przekształcanie...
Bity 6 i 7 portu B są podłączane do tych samych pinów ATmegi co rezonator kwarcowy. W takiej konfiguracji jak w Arduino (taktowanie z pomocą rezonatora) nie mogą pełnić funkcji wejścia-wyjścia, a wszystkie odpowiadające im bity w rejestrach są odczytywane jako 0. Dokładniejszy opis tej kwestii znajdziesz w dokumentacji ATmegi328 ( bitów portu ATmegi...
Kondensator C2 równolegle na switch-a , bo po włączeniu zasilania układ ci sie nie będzie resetować . AVCC jest do zasilania portu analogowego , ale jak go będziesz urzywać jako wejścia/wyjścia cyfrowe to bez tego może nie działać.
procedure ClearXScreen; var i:word; begin port[$3c4] := 2; { wybranie 4 płatów obrazu } port[$3c5] := $0f; for i := 0 to 65535 do mem[$a000:i] := $00; end; procedure PutPixel(X,Y,Width: word; Color: byte); var addr:word; begin port[$3c4] := 2; port[$3c5]...
XMEGA ma podsystem nazywany AWeX (WeX w E5), który dystrybuuje sygnały zegarowe generowane przez timer na wyjścia portu, wprowadzając ustalane programowo czasy martwe. Dzięki temu XMEGA może sprzętowo sterować silnikami krokowymi i BLDC (zasadniczo też krokowymi) - sekwencja komutacji też może być sprzętowo ładowana do AWeX, dzięki temu sterowanie nie...
a jak zrobię to programowo? Masz na myśli ustawienie portu jako wyjście ? Tak też można i tak też zalecają producenci. Jak ustawię porty jako wyjścia to wejście jest aktywne albo nie. To chyba korzystniej będzie jak wyjścia będą nieaktywne. Natomiast jak porty ustawię jako wejścia to wtedy powinienem nadać im stały potencjał czyli włączam wewnętrzny...
Jak to jest z tym PWM ? :crazyeyes: Myślałem, że w konkretnym modelu AVR jest ściśle określona (znajdziemy to w nocie katalogowej) ilość możliwych kanałów pwm i to na określonych końcówkach, a porty można dowolnie konfigurować jako wejścia bądź wyjścia. Nigdzie nie doczytałem, że pwm jest dostępny na dowolnej końcówce ?
Bzdury wypisujecie! Jest ewidentny błąd w programie. Żadne tam CONFIG, żadne tam INPUT. Trzeba zrozumieć - ile razy to jeszcze trzeba powtarzać by dotarło - że w procesorach AVR są osobne porty do operacji wyjścia: PORT i do operacji wejścia: PIN . Zmieniając stan rejestru PIND.5 na wyjściu nic się nie uzyska!!! http://zbeegin.republika.pl/bashelp/deve...
Ja bym widział cyły system w ten sposób że w urządzenie jest wbudowany procesor (51,PIC,AVR, motorolka) która steruje zestawem zatrzasków. Program wysyła jej po porcie szeregowym ustawienia wyjść i pobiera stan wejść. Wszystkie układy we-wy są sterowane z procesora i można je adresować (to jest kwestia wyboru ile ma byc ich maksymalnie)
Nic się przypadkowo nie dzieje. Po resecie wcale nie jest ustawiany stan wysoki ani niski na wyjściach pinów portów. Trza poczytać notę PDF - to by się wyjaśniło, że po resecie wszystkie piny są od razu wejściami bez podciągnięcia do VCC. W związku z tym panuje na nich tak na prawdę stan nieustalony i nie radziłbym wtedy liczyć że zawsze to będzie odebrane...
Jeśli mogę poprosić o ocenę oto on: Przemyśl to :|
Dziś ją zamówiłem :-) ale zanim przyjdzie to już coś próbuję pisać. 2. w jaki sposób się ustanawia tryb pracy końcówek (nie chodzi mi o typ czy to mają być wejścia/wyjścia) np czy w atmega8 PC6 ma być resetem czy PC6... albo wejścia rezonatora żeby były traktowane jak zwykły port...
To akurat robi z portu PB0 wejście a reszty wyjście jeśli wyjściem ma być portb.0 musisz napisać DDRB=0x01
Proponuję Autorowi tematu wrócić do działu, w którym zazwyczaj pisze, czyli do Arduino, ponieważ: - profesjonalne systemy alarmowe nie są kompatybilne z Arduino, - profesjonalne czujki alarmowe nie są kompatybilne z Arduino, - w sekcji Arduino łatwiej uzyskać pomoc w kwestiach programowych dla Arduino. Porty mikrokontrolerów AVR można skonfigurować,...
Witam sprawdź ten kod co prawda są inne numery portów i inny procek ale jak zmienisz powinno działać. Problem jest jeden w momencie jak naciskasz przycisk i zmieniasz końcówkę na WYJŚCIE to stan tego pinu Musi być (0) Niski , żeby nie zrobić zwarcia. '$sim $regfile = "attiny2313.dat" $crystal = 11059200 $baud = 9600 enable interrupts 'włącz...
O co Ci chodzi?!? Można sobie konfigurować porty podlug obstalunku jako wejścia, wyjścia, Pullup, Tristate, srututu majtki z drutu i co Ci się żywnie podoba ale tak nie bardzo wiem czy o to Ci chodziło...
Jeśli to pierwsze makro to miało być _SFR_ IO _ADDR to wyjaśnienie jest następujące : w plikach nagłówkowych avr-lib wszystkie rejestry specjalne zdefiniowane są adresami w przestrzeni adresowej pamięci. Jak ktoś używa asemblera, to do instrukcji typu in, out, cbi, sbi, ... potrzebne są mu adresy w przestrzeni wejścia-wyjścia i to makro zamienia jedne...
No dobra, a jak jest ten cały port C analog input to z poziomu arduino nie może to być wejście? Rozumiem, że jak teraz programuje go jako zwykłego AVR to mogę dowolnie ustawiać sobie wejścia/wyjścia? No oprócz PB5, bo do niego jest przylutowana dioda i już nic na to nie poradzę.
http://obrazki.elektroda.pl/9875171400_1... Witam po bardzo długiej nieobecności. Dzisiaj mam przyjemność zaprezentować wprawdzie rozwijający się jeszcze układ, ale jest on już na takim etapie że można go zaprezentować. Układ nosi nazwę AVR NET CONTROLLER i jest domowym sterownikiem ethernetowym. Układ oparłem o mikrokontroler ATMEGA644...
W AVR stan linii (fizycznego wyprowadzenia) odczytuje się z rejestru PINx. W rzeczywistości nie jest to rejestr, bo nie występuje on fizycznie. Jest to tylko stan pinów. Działa to również wtedy, gdy port ma ustawiony dany bit jako wyjście. Jak zatem powinien wyglądać program ? Np. tak: [syntax=avrasm] ldi R16, 1<<PB0 | 1<<PB1 ;PB0 i PB1...
Jak ustawiasz wartości początkowe jak np. wyjścia portu w rejestrze DDR to nie musisz robić |=, wystarczy =. Dobry zwyczaj to także robienie tabulacji (Tab) w funkcjach, czyli: [syntax=c]if(...) { for(...;...;...) { ... } }[/syntax] Jest kod bardziej czytelny, ale to takie spostrzeżenia :wink: A Twój problem to wpisanie przerwania do głównej funkcji...
Ponyprog przynajmniej w tej wersji, którą mam nie obsługuje tej kości (podobnie jak kilka innych programów). Jeśli masz soft po stronie mikroprocesora, to ten sam program (np. w C) możesz wykorzystać do programowania z PC po podmianie procedur wejścia/wyjścia na porty (przeadresowanie portu-bitów). Mam taki pakiet ale niestety w asemblerze na AVR-y...
Jakby jeszcze był problem, to w przypadku PIC robiłem to tak, że podłączałem do pinu pull-up i sterowałem przepływem portu. Wtedy gdy port był wejściem, to na pinie było napięcie ok 5V, a gdy był wyjściem ze stanem logicznym 0, to było 0V. Pozdrawiam
To że systemy operacyjne, bibioteki i API odcisnęły na Tobie piętno- to jeszcze nic. Wyobraź sobie że masz komputer z wykasowanym BIOS. To jest właśnie mały mikroprocesor. Ile tysięcy stron dokumentacji musiał byś przeczytać aby taki komputer uruchomić. A tu- tylko 600. Jeszcze jedno- w podręcznikach do C na "prawdziwe" komputery dość po macoszemu opisują...
To że jesteś początkujący , nie zwalnia Cię od posiadania podstawowej wiedzy n/t procka , który chcesz oprogramować.Twój proca jest zbudowany i "działa inaczej" niż AVR , a więc nie potrzebuje konfiguracji kierunku portu. Jeśli na np. P1.1 ustawisz logiczne 1 , to wtedy port jest wejściem i jednocześnie wyjściem w stanie H(1) , a jeśli na P1.1 ustawisz...
Witam. Pierwsza rzecz jaką powinieneś zrobić, to nauczyć się składni języka i tego jak oprogramować poszczególne układy peryferyjne procesora. W tym konkretnym przypadku trzeba by się zakolegować z portami I/O oraz dodatkowo z timerami i przerwaniami. Pomóc w tym może Bascomowy help, no i jakaś książka lub pierwszy z brzegu kurs znaleziony w sieci....
Zmodyfikowałem wyżej opisaną funkcję tak, że nie wymaga tworzenia dużej tablicy w RAM, przy okazji zmniejszeniu uległ kod wynikowy. Minusem jest CIUT dłuższa komunikacja w duzych sieciach 1-Wire. ////////////////////////////////////////... //Szuka urzadzen 1Wire i uaktywnia N-te urzadzenie///// unsigned char useDevice(unsigned char useIt)...
Uuu.. Kolego ten kod absolutnie nie nadaje się do analizy. w init_klaw piszesz, DDRD = (DDRD & 0b11111011); PORTD += (1<<PORTD2); później w init DDRD += (1<<PORTD5); DDRD += (1<<PORTD7); A teraz analizujemy: chcesz, żeby, żaden z pinów rejestru kierunkowego portu D oprócz pinu 2 nie zmienił swojej...
Witam. Jestem nowym użytkownikiem forum, a także nowicjuszem jeśli chodzi o programowanie mikrokontrolerów. Mój problem polega na tym że napisałem prosty program: #include <avr/io.h> int main(void) { /* Wszystkie linie portu D będą wyjściami */ DDRD = 0xFF; /* Linie portu B będą wejściami z podciągnięciem do VCC */ DDRB = 0x00; PORTB = 0xFF; /*...
https://obrazki.elektroda.pl/8368409700_... Celem projektu było stworzenie amatorskiego programowalnego sterownika logicznego. Motywacją do stworzenia tego sterownika była potrzeba posiadania uniwersalnego urządzenia pozwalającego w warunkach laboratoryjnych na szybkie przetestowanie różnych algorytmów sterowania przy przebiegach szybkozmiennych....
Udało się, ale nie obeszło się bez interwencji w budowie joysticka. Do środkowych nóżek potencjometrów podłączyłem +5V a pozostałe, skrajne nóżki podłączyłem na wejście AVR do portu A. Teraz w zależności od wybranego kierunku świecą odpowiednie diody na wyjściu portu B. I podłączyłem sobie jeszcze przycisk "fire", może się przyda :D W ogóle to te potencjometry...
avr'y mają programowalne piny wejścia/wyjścia, posiadają tranzystor zwierający do zasilania/masy (port jako wyjście) oraz otwarty kolektor/pull-up (port jako wejście). całość się prezentuje tak: DDRx = 0; PORTx = 0 to pin jest zwierany do masy DDRx = 0; PORTx = 1 to pin jest zwierany do zasilania DDRx = 1; PORTx = 0 to pin jest typu otwarty kolektor...
Witam! LJMP START ORG 100H START: CLR P1.0 SETB P1.1 LOO: LJMP LOO No fajny program szkoda tylko, że to asembler 51 a attiny26 to avr, to zupelnie inne asemblery. w tiny26 nie ma portu 1 jest portb i porta Dodano po 1 Dodatkowo w avr musisz ustawic dla kazdego portu 2 rejestry ddr i port, a jesli chcesz uzywac jako wejscia to czytasz z rejestru pin...
To też nie działało, ale problem już rozwiązałem. W AVR nie trzeba ustawiać w stan wysoki pinu jaki chcemy odczytać. Wystarczy tylko zadeklarować, czy ma być on wejściem czy wyjściem. Tutaj chodziło o to, że jeżeli odczutujemy stan portu, to należy odwoływać się do niego poprzez rejestr pinc.1 a nie poprzez portc.1 a więc buf = portc.1 <----------...
Czy ja wiem czy prędzej, na dzieńdobry porty są wejściami, trzeba trochę pomóc procesorkowi i powiedzieć mu, że chcemy żeby P0 był wyjściem, no bo skąd bidula ma wiedzieć. To jest 8051 a nie AVR. W 8051 po resecie wszystkie porty są w stanie "1", co faktycznie pozwala pracować im jako wejścia, ale po zapisie do portu "0" prcują jako wyjście (nie ma...
Witam, posiadam wzmacniacz Denon AVR 1802.Jest on 4 kanałowy.Czy możliwość jest zmostkownie i zrobienie 2 kanałowego,po to by z wiekszyc moc na głośniki.I następna sprawa mam subwoofer Samsunga która na amplitunerze Samsunga brał całkiem dobrze.A podłączając tutaj cinch w wejście subwoofer wzmacniacza żadnej reakcji.Zapewne robię coś nie tak.Sooro jest...
narazie będę sterował silnikiem potencjometru i pięcioma przekaźnikami, więc 8 I/O w zupełności mi wystarczy . przyznam sie , że jeszcze nie zdążyłem zapoznać się z tematem który kontroler ma ile linii, zastanawiam się tylko czy odbiornik podczerwieni wpina się w specjalny port szeregowy , czy definiuje się którekolwiek wejście ? a co do '51 kontra...
Dodanie 6-bitowej wartości do rejestru Z: chyba adiw Z,16 ; dodaj 16 do rejestru Z Dodano po 42 czyli w Twoim przypadku: IN DATA, PIND ; WPISANIE DO R17 WARTOŚCI WEJŚCIOWEJ Z PORTU D ADD ZL, DATA LDI DATA, 0 ADC ZH, DATA Chyba, że coś pomyliłem :D
Super! Dzięki! Wszystko jest ok.. Ale mam tylko jeszcze jedno pytano Zgodnie z treścią HELPA: ...”Najlepszą metodą na ustawienie kilku linii portu jako wejścia lub wyjścia, jest użycie stałej liczbowej w instrukcji CONFIG PORT. Jedynka na odpowiedniej pozycji oznacza, że ta końcówka będzie wyjściem, zero zaś że wejściem. Na przykład podanie wartości...
Jaki to to plagiat. Aplikację(schemat) znajdziesz wszędzie bo dostarcza producent układu. Jeśli korzystanie z danych producenta jest plagiatem to większość schematów w gazetach to plagiaty a o internecie to już nie wspomnę. Układ FT2232 ma schemat dostarczany w Orcadzie lub pliku PDF możesz przeprojektować go tak by "nie był plagiatem" choć nigdy niema...
Odkrywasz tu chyba koło na nowo. Diody nie są potrzebne. Klawiaturę podłączasz do jednego portu po kolei czyli tutaj 1-8 to będzie w porcie 0-7. Piny 0-3 ustawiasz jako wejścia z podciąganiem a 4-7 jako wyjścia. Bierzesz zmienną szesnastobitową i ustawiasz w niej 0. Ustawiasz masę na jednym z 4-7 a na reszcie plus i czytasz cały port z maską 0000_1111....
Wstęp: Przedstawiam taki skromny raczej projekt, ale dla mnie o sporym znaczeniu. Celem projekty było umożliwienie uC z rodziny avr, pracy w sieci Lan a w zasadzie zbudowanie takiego oprogramowania dla uC, które przypomina działaniem serwer http. Aby było to możliwe, sam avr-ek nie wystarczy. Trzeba go uzbroić w jakiś moduł sieciowy. Zazwyczaj opieram...
Witam wszystkich Elektrodowiczów! Wiem, że forum i sama sieć jest pełna wielu internetowych kursów i stron dotyczących programowania mikrokontrolerów ARM. Mam jednak prośbę o polecenie mi kompaktowego kursu - nazwijmy to - podstaw programowania mikrokontrolerów ARM, który będzie w miarę szybko przyswajalny. Mam tu na myśli jeden konkretny mikrokontroler:...
Witam mam problem z napisaniem pewnej funkcji, Chciałbym stworzyć funkcję boolowską z 2 parametrami pin ( numer wejścia/wyjścia cyfrowego) oraz wskaźnik state, który przekazywałby informację o tym jaki stan wyjścia ma być ustawiony. Przed ustawieniem odpowiedniego rejestru PORT(B/D) funkcja sprawdzałaby czy dane wyprowadzenie jest ustawione jako wejście...
Zakupiłem w końcu konwerter na FT232RL. Próbowałem zrobić na ATTINY2313, ale cały czas miałem "nie rozpoznano urządzenia USB". Swoją drogą układ który steruje tym VFD jest M38003M6, mikrokomputer MITSUBISHI. Patrzyłem w notę tego układu, ale nie bardzo mi przypomina wejścia pinów standardu HD44780. Chciałem podłączyć go mniej więcej jak koledzy z linku:...
A spróbuj tak: Odczyt=Temp Dim Jednostki As Byte , Dziesiatki As Byte ' cyfry do wyświetlania temperatury Dim Temp As Byte ' temperatura Dim Pompka As Bit ' sterowanie pompką Dim Odczyt As Byte Dim Cyfrybcd As Byte Dim Ktorywysw As Bit Enable Interrupts ' oblokuj przerwania Enable Timer0 'odblokuj timer0 Enable Timer1 'oblokuj timer1 Config Timer0 =...
W MCP2221(A) GPIO są dostępne od strony USB. Są o tyle ciekawe że mogą spełniać różna rolę: - być zwykłym cyfrowym portem I/0 - automatyczne sygnalizować stan TXD/RXD - automatycznie sygnalizować stan Transmisji I2C - być wyjściem 5-bitowego DAC - być wejściem 10-bitowago ADC Wszystkie informacje znajdziesz w karcie katalogowej. W moim przypadku prędkość...
Popraw schemat bo wielu wartości i oznaczeń elementów nie możńa odczytać. Jasność wyświetlacza nie jest słaba ale spowodowana mają wydajnością wyjść rejestru przesuwnego. Po co rejestry skoro jest dużo niewykorzystanych pinów płytki ArduinoNano? Po co NE555 skoro można zrobić to przez AVR? Oznaczenia portów (np "IN0" przy NE555, "D0" do "D4" przy IC2...
Digitrace używa tylko wejść portu. Bascom potrzebuje wyjść i wejść. Jeżeli programator to tylko kupa drutów, bez bufora, spróbuj podciągnąć wszystkie linie wejściowe i wyjściowe opornikami ok. 10kOhm do +5V. Jeżeli z buforem to zasil bufor z układu, podciągnij również wszystkie użyte wyprowadzenia portu LPT takim samym opornikiem do zasilania bufora.
Witam. Odnośnie portów to tylko to co poniżej znalazłem w helpie 1.11.9.8 Jak dla mnie to nie widzę tutaj które piny portu X są wejściami a które wyjściami i które jak należy zadeklarować jeśli chodzi o podciągnięcie do plusa lub do minusa. Możliwe że o tak wczesnej porze człowiek coś mimowolnie przeoczył , chyba że kolumny z urzędu są wejściami lub...
Potwórciastkowy -> już jestem po próbach - ale wynik negatywny. Tzn moja myszka też korzysta z 4 sygnałów z portu COM i są to : RxD TxD RTS GND na płytce elektroniki wyraźnie widać że RTS służy do zasilania mychy bo pomiędzy sygnałem RTS a GND jest nawet kondensator elektrolityczny 10uF/18V - czyli przygotowana do pracy z +12V niestety obojętnie czy...
Pobieżnie przejrzałem Twój program (właśnie wychodzę do pracy...) i od razu widzę babola przy konfiguracji portów jako we/wy. Masz tam coś takiego: Config Portb.0 = 1 , Portb.1 = 1 , Portb.2 = 1 Portb.0 = 0 : Portb.1 = 0 : Portb.2 = 0 Wg mnie powinno być: Config Pinb.0 = Output Config Pinb.1 = Input itd... Aby to rozjaśnić załączam kawałek helpa...
PIN czy PORT ? wejscia mam do D wyjscia do A PIN, chcesz się dostać na wejście i w dodatku na konkretną końcówkę. Wyjaśnienia: nota katalogowa AVR w dziale opisującym porty. > 7? wejscia na porcie D zmieniam na 4 pierwszych a wyjscia na porcie A zmieniam na 3 pierwszych bitach ? A ile wejść i wyjść posiada router? Czy można ustawić kanał 10? nie kapuje....
To od razu mu trzeba wytłumaczyć co taki zapis oznacza, bo widać, że zaczyna. PD0, PD1..PD9, PC0,PC1..PC8 itd to są zdefiniowane numery pinów w porcie. Definicje te znajdują się pliku nagłówkowym który załączasz na początku każdego projektu pośrednio poprzez: [syntax=c]#include <avr/io.h>[/syntax] Pośrednio, bo dla wygody załączasz io.h, natomiast...
A może wyłumaczyć mi ktoś tak jaśniej niż whelpie bascoma ;) co to jest ten prescaler i co on dzieli. Może tak po kolei jak twój program widnieje: 1. Jeżeli PORTB jest przeznaczony do obsługi LCD to nie konfiguruj go w ogóle w stylu jaki podałeś w pierwszym poście. Config Portb = &B11111111 : Portb = &B11111111 ===> źle!!! Może to powodowac zakłócenia...
Są jeszcze 2 stany wyprowadzeń w AVR, ale są typowe dla wejścia : - stan wysokiej impedancji - czyli wejście nie opiera się temu, co na nie podajemy, oczywiście w granicach napiecia zasilania i masy. - stan podciągnięcia do Vcc (rezystancja 20-50k). Wszystko to ustawia się w rejestrach PORT X i DDR X. Rejestrem wejściowym jest PIN X.
Witaj Po pierwsze staraj sie używać rejestrów R16+ Po 2 najpierw trzeba powiedziec kontrolerowi by ustawił dane porty jako wejścia czy wyjścia Zbierasz informacje z portów i sumujesz następnie przekształcasz zapis dziesiętny na BCD, to akurat jest najtrudniejsze.... a do tego mamy ograniczenie poniewaz na 8 bitach maxymalna liczba jaka mozesz zapisać...
Witam, Pewnie, że można się odwołać do konkretnego pinu portu. tylko trzeba uważać na zapis ponieważ inaczej się odwołuje do pinu jako wejścia i inaczej jako do wyjścia, straciłem na tym kiedys kupe czasu. W kompilatorze CodeVision robi się to tak. PORTE.1=1; wpisanie jedynki do portu e, przy odczycie zapisuje się to tak i=PINE.1; Pozdrawiam
http://obrazki.elektroda.pl/4248235000_1... Witam, konstrukcja którą prezentuję powstała dwa lata temu, na potrzeby szkolnej serwerowni. Powód był błahy: w ciągu dnia drzwi wejściowe były otwarte dla administratorów, niektóre osoby trzecie wykorzystywały ten fakt i przesiadywały tam bez pozwolenia powodując niepotrzebny bałagan ;)....
porty wejścia wyjścia bascom porty wejścia wyjścia satel wejścia wyjścia
octavia sterownik drzwi miernik ladowania akumulatora schemat zasilacz antenowy
faac740 fotokomórki ekspres naprawa
Pralka Indesit WISE 107 - Błąd F107, brak startu Instrukcja kodów do pilota Emmerson U12: Wprowadzenie i wyszukiwanie