DDRC = 0x0; PORTC = 0xff; if(PINC & _BV(x)) { //wciśnięty klawisz x } Marek
Możesz oczywiście na niego wpłynąć programowo, ale nie przez DDRD bo kontrolę nad pinem przejął USART. Myślę, że prostym rozwiązaniem jest taki układ, notabene cząsto stosowany przy konwersji napięć uC<>modem. http://obrazki.elektroda.pl/3472367400_1... Dobrze, że o tym wspomniałeś, ale w trybie uśpienia piny ustawia się tak jak...
Cieszę się, że problem rozwiązany. Czy kolega aby na pewno nie pomylił kolektora z emiterem i nie wlutował tranzystora odwrotnie. Pytam ponieważ nigdy nie musiałem podciągać bazy tranzystorów do plusa przy multipleksowaniu wyświetlaczy.
Sprawdzałeś 3x czy prawidłowo podłączyłeś ? Ja robię tak - układ docelowy zasilam zewnętrznie (najczęściej zasilam po prostu układ tak jak ma być docelowo zasilany), do programatora podłączam MISO, MOSI, SCK, RST i masę, zworka SLOW SCK, Khazama i gotowe. Sprawdź, czy w układzie nie masz czegoś podłączonego pod piny programujące, co może zwierać te...
Dziś zakończyłem pierwsze testy ale niestety efekt marny :-( Osiągnąłem tylko to że na diodach sygnalizuje error, busy, selected i mogę inicjalizować drukarkę z procesora. Czy powinienem nóżki danych podciągać do masy w przypadku stanu niskiego?? I czy na tym porcie danych powinienem wysyłać kod znaku ascii czy komendę ESC ??
Ach Chorwat.....cały czas jest tak samo... próbowałem ręcznie podciągać i ustawiać wartość pin'u przerwania na 1 i na 0, nawet zmieniłem przerwanie na Int0... myślę, że po prostu Bascom albo Attiny tu wysiada :cry:; chyba czas sie przesiąść na C albo Asm'a...oj będzie ciężko. Pomimo tego wciąż liczę na cud :D, że ktoś wymyśli coś co mi pomoże.
Próbowałem jeszcze w modułach RFM83CL podciągać pin DATA do 3,3V ale nic to nie dało. Próbuje teraz dodać obsługę 2 najstarszych bitów VLow i Repet, ale coś mi nie odbiera bitu 66. Tak zmodyfikowałem część odbiorczą: [syntax=vbnet] If Previous_bit = 1 And Period > Start_bitperiod0 And Period < Start_bitperiod1 Then Bit_number = 0 Start_bit = 1...
Uda się tak zrobić, żeby kontroler reagował na switch? Chodzi o to że naciskam switch, kontroler robi coś tam i zapala diodę. Ty lepiej powiedz co chcesz uzyskać tak ogólnie, to chętnie ci ludzie podpowiedzą jak to rozwiązać. Bo wymyśliłeś sposób iście cyrkowy, potrójne salto mortale z pętelką a w sumie tylko po to, żeby JEDEN RAZ zadziałało po resecie...
Jak myśle to te termometry to ds1820 Spróbuj zmienić czasy w odczycie 1 wire lub zmienić rezystor podciągający
Stan nieokreślony będzie w przypadku ustawienia portu jako wejście bez rezystora podciągającego.
Kod bakardi się kompiluje bezbłędnie a kod Rocket_93-nie. To nie C. Nie może być if P then. Warunek musi być jawnie zdeklarowany. No tak, mówiłem że nie znam Bascom. A rezystor podciągający jest włączony w moim kodzie. Jeszcze jedna uwaga - konieczny jest kondensator na zasilaniu 100nF - to na przyszłość, bo teraz masz bateryjne to i tak zadziała....
Jeżeli przycisk zwiera wejście do masy to trzeba jeszcze włączyć wewnętrzny rezystor podciągający wpisując do portu 1.
tak, na początku dodaj jeszcze Set Portd.4 : Set Portd.3 co załączy podciąganie na tych liniach
Jeszcze może to podciąganie kwarcu daj na ten sam kondensator co podtrzymuje zasilanie całego PCF'a bo jak zniknie główne to nie będzie on do niczego podciągany.
Standardowy błąd początkującego. Nie włączone wewnętrzne podciąganie (pull-up) na wejściach na których są switche.
Możesz zrobić sobie podprogramy i w nich np. umieścić pętle, wg. mnie będzie poprawniej ale to kwestia gustu. Jeśli chodzi o przyciski to lepiej będzie jeśli końcówki uc będziesz zwierał do masy bo wtedy możesz użyć wew. rezystorów podciągających (pull-up).
Tzn mam nadzieję, że masz tylko rezystor podciągający i impulsator podłączony bezpośrednio do pinu mikrokontrolera. Zgadza się ?
Nic sie nie dzieje, bo to nie ma prawa działać :D Gdzie rezystory podciągające linie SDA,SCL do plusa? Dostaw tam dwa rezy 10kR... Powinno to rozwiązać problem. Twój program wisi na komunikacji I2C, procek czeka na ACK lub NACK pod koniec transmisji i z powodu braku podciągania nigdy tego nie dostaje...
Panowie, jeżeli steruje procesor plusem to nogę która jest wejściem muszę podciągnąć rezystorem do masy. Jak jest kiedy steruje minusem? Czy muszę podciągać nóżkę rezystorem do plusa ?
Dać kondensatory do masy od mikros.... rezystory podciągające lub w programie dać coś takiego jak DEBOUNCE w BASCOM jeśli w nim piszesz.
...pozostałe piny są w stanie niskim czyli 0 V. Źle, wejścia te mają wyłączone podciąganie do VCC.
Kod nie pasuje do obrazka. Na obrazku- wyjście na PB.7. A w kodzie PB.0 Powinno być z podciąganiem, bez diody i z kondensatorem. P.S. Już poprawiłeś.
Zastosuj podciąganie: Portb = &B11111111 A poza tym to widzę taki sam temat w koszu. Pewnie ktoś zaraportował jako obniżanie poziomu.
Lini przeznaczonych do podłączenia kwarcu nie ustawiaj ani na we ani na wy. W przypadku zegarka fuse bity ustaw na wew. oscylator. Jeśli chodzi o sygnały zew. to masz 2 opcje: dodać tranzystor który będzie podawał stan niski po wystąpienia stanu wysokiego lub dodać rezystor podciągający daną linie do masy.
A dałeś PORTB na włączone rezystory podciągające?
Hej! Nic nie zapomniałem :) , tylko poprostu zawsze korzystając z przycisków podciągam wejscie pod plus 5V (Rezystor 10k). Z praktyki przekonałem się że jest to o wiele pewniejsze rozwiązanie niż ustawianie programowo stanu wysokiego. Pozdrawiam
... Wyświetla mi: Szukam urzadzen odpowiedzial ACK Potem: Porazka :( B1<>Value Bez eepromu jest to samo. Poprawiłem ociupinkę kod , więc spróbuj jeszcze raz.Przez 5 sekund będzie wyświetlał w górnej linii adres urządzenia(napisz jaki z eeperomem i jaki bez eepromu).Jeśli bez podłączonego eepromu wykrywa urządzenie na I2C , to może oznaczać...
Czyli ta część kodu jest dobrze napisana? I jakie najlepiej dać wartości rezystorów podciągających jeśli używam układu ULN?
, 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...
W AVRach masz mozliwość dołączenia wewnętrznego rezystora o wartości około 50k do Vcc. Dlatego łatwiej po prostu programowo podłaczyć ten rezystor wewnętrzny, a switch dać pomiędzy nózkę a masę. Tak jest po prostu wygodniej. Oczywiście inne rozwiązanie ,polegające na użyciu switcha do Vcc z rezystorem podciągającym do masy też jest prawidłowe, tylko...
ustalam w ten sposób podciąganie pinu do stanów wysokich i niskiego(**) . Zakładałem, że po to jest alias (zawiera nazwę pinu), który sprawę rozwiąże. Co gorsza przyznam się, że taka była moja praktyka więc nie wiem jakim cudem błędy wyszły dopiero teraz. Podsumowując, właściwe jest podciąganie do VCC i GND poprzez SET i RESET a nie jak ja to zrobiłem....
Wszystkie informacje znajdziesz w datasheet układu lub tutaj na elektrodzie. Kwarc taki jak na schemacie, C1 najlepiej zastąpić trymerem, rezystory podciągające do SDA i SCL najlepiej 4k7. A0 można podłączyć do GND lub VDD (zmiana adresu, patrz datasheet). Warto dodać jeszcze kondensator 100nF blisko wyprowadzeń zasilających układu.
1. rezystor wywalić - przyciski bezpośrednio do GND 2. diody odwrotnie (obydwie) 3. w kodzie (część konfiguracyjna) uaktywnić wewnętrzne podciąganie do Vcc PIND5 i PIND6 (PORT.X = 1 : DDR.X = 0) 4. no i oczywiście zmienić interpretację przycisków w programie na przeciwny stan Pozdr, Light-I
To by potwierdzało moje podejrzenia o błędnym sterowaniu portów - kierunek zamiast stanu wyjścia, stale włączony rezystor podciągający.
Czy włączyłeś podciąganie linii portów, do których są podłączone przyciski? Obsługa przycisków w programie też jest "nie tak". Naciśnięcie przycisku powoduje, że na wejściu będziesz miał 0, nie 1. To, co dalej robisz w programie, też jest średnio sensowne, ale to zauważysz dopiero wtedy, kiedy wykryjesz poprawnie naciśnięcie przycisku.
w jaki sposób masz podłączony programator do procesora? masz jakieś podciąganie PDI RESET?
Należy zastosować rezystor 10K podciągający pinc.4 do plusa. Można też dać kondensator 1nF z tego pinu do masy. Celem zniwelowania stanów nieustalonych. Powinno pomóc.
Jeżeli ustawienie stanu niskiego nic nie daje to trzeba użyć rezystora podciągającego do GND.
Aby wyprowadzenia PCF8574 były wejściami trzeba wysłać np. 255 (ustawić 1 na wybranym wejściu). Nie jest potrzebne zewnętrzne podciąganie.
A dałeś podciąganie na portach?:>
A czy port P0 nie jest typu otwarty dren? moze trzeba dać rezystory podciągające
Czy mówiąc, że dobrze podłączyłeś czujnik, masz na myśli, że dodałeś rezystor podciągający?
U mnie działa dobrze. Na pewno masz te 16MHz? Jakie masz rezystory podciągające?
A są rezystory przy przyciskach? Bo programowego podciągania nie widzę.
Nie pisałem, że nie można, tylko że się tak nie robi. Idąc tym tokiem rozumowania równie dobrze można napisać, że resetu nie trzeba podciągać do plusa (przecież AVR mają wbudowane podciąganie), etc.
ja podłączam klawiaturę i nie muszę dodawać żadnego Config PortB = ... lub tym bardziej PortB = ... i przy nie wciśniętym klawiszu zwraca 16 (lub 24 przy matrycy 6*4), bez żadnego podciągania... skąd pomysł na podciąganie? używam bascom 1.11.9.8
Witam ! AVR potrzebuje podciągania I2C do +5V.
Witam Od dłuższego czasu męczę się z napisaniem prostego programu obsługującego sonar HC-SR04. Nie wiedzieć czemu, na lcd cały czas wyświetla się 0. Wyeliminuj: Bitwait Echo_ , Set ....a także nie ma potrzeby podciągania portu wejściowego PC.0. Jest on stale podłączony do SR04 (Echo Pulse), gdzie zawsze jest określony stan lolgiczny. Również zamiast...
Stawiam na brak podciągania wejść przycisków.
PCF8583 ma na wyjściu INT chyba Open Collector to znaczy że tylko zwiera do masy ... Interesujesz się elektroniką? Chodzi o to że PCF potrafi na tym wyjściu tylko zwierać do masy..ale musi mieć co zwierać.. więc albo musisz dodać tam zewnętrzny rezystor podciągający linię tak by normalnie panowało tam 5V a PCF na moment zewrze linię do masy...albo mozesz...
bascom rezystor podciągać bascom podciągać wejście atmega podciągać
słup 110kv podłączyć radii regeneracja głośnik poradnik
wycie podczas jazdy 2sk3850 yamaha
Sprężyny w mechanizmie otwierania kieszeni kasety magnetofonu: ich rola i znaczenie Klucz udarowy elektryczny Tresnar 500 Nm - czy warto?