Ten rejestr CTRLC jest chyba ogólny ale coś nie mogłem dobrać się do wybranego pinu ,którym w moim przypadku jest PA2 to chyba powinno kryć się pod nazwą "CMP2OV" . Próbowałem TCA.SINGLE.CMP2OV = 0; i TCA0_SINGLE_CTRLC = ale tutaj w ogóle nie miałem czegoś adekwatnego no i kompilator nie przyjmował moich wypocin. Tutaj pytanie czy jest to prawidłowe...
Edytowałem swój poprzedni post masz tam dokładną odpowiedź na swój dylemat: https://eduinf.waw.pl/inf/prg/009_kurs_a... "Gdy jest używany rejestr OCR1A jako wartość TOP w trybie PWM, rejestr OCR1A nie może być stosowany do generowania przebiegu wyjściowego PWM. Jednakże wartość TOP będzie w tym przypadku podwójnie buforowana, co pozwoli ją zmieniać...
Przykładowo z innego kodu ;) [syntax=vbnet]TCCR1B = Bits(WGM13 , WGM12 , CS10)[/syntax] Miłego dnia
Wiesz co, nigdy tak nie robiłem w AVRStudio, bo zawsze symulowałem bit przerwania, ale po Twoim pytaniu postanowiłem to sprawdzić. I wiesz co, TO DZIAŁA!!! Po 16 zmianach w rejestrze PINB bit 7 (dotyczy Atmegi8515) czyli SCK, nastąpiło przerwanie od SPI! A więc Twoje założenie okazało się słuszne. Pozdrawiam, Marek.
Witam wszystkich, w tym temacie wyjaśnię wam, jak można flashować https://obrazki.elektroda.pl/5707779400_... Osobiście oceniłbym, że trudność flashowania OpenBeken do tego urządzenia jest dość wysoka w porównaniu do innych inteligentnych wtyczek, więc możesz chcieć ponownie rozważyć. W każdym razie, upewnij się, że przeczytałeś ten...
Widze ze nawet nie znasz architektury procesora. To nie dobrze, bez znajomosci architektury nie napiszesz zadnego programu. Opis rejestrow jest w dokumentacji. DDRx to rejestr ktory ustawia funkcje portu jako wejscie lub wyjscie. Bit=1 oznacza ze pin bedzie wyjsciem, 0-wejsciem. Gdy napiszesz DDRB=1 to ustawisz pin PB1 jako wyjscie a pozostale piny...
Czas uporządkować wszystkie odpowiedzi. Z każdym portem AVR'a związane są trzy rejestry Portx, Pinx i DDRx (x to interesujący nas port A, B, C, D a czasami nawet E) Rejestr Portx - w nim przechowywane są dane wyjściowe, które przenoszone są na końcówki uC jeżeli są ustawione one jako wejście. Rejestr Pinx jest rejestrem odzwierciedlajacym stan końcówek....
rozkazy IN/OUT działają tylko do $60 adresu. Zamiast OUT'a daj STS UCSR0C, r16
Pod ten drugi procek podpięte jest wyjście USART z XMEGA, dzięki czemu masz je widoczne w systemie jako wirtualny port szeregowy. W ten sposób możesz łatwo komunikować się z XMEGA za pomocą USART. Co do zmiany bitów portów IO - w XMEGA masz rejestry SET, CLR i TGL związane z portem, jeden ustawia bity, drugi kasuje, a trzeci zmienia na przeciwne. Dzięki...
A czy wewnętrzne podciągnięcie to nie jest właśnie ustawienie stanu wysokiego na pinie? Wewnętrzne podciąganie to włączenie wewnętrznego rezystora podciągającego dla pinu ustawionego jako wejście. Przypadkiem w tym typie procesora służy do tego rejestr PORT, którym ustawia się stan wysoki jeśli pin skonfigurowany jest jako wyjście.
Bit ADC_SR_EOC jest u Ciebie kasowany z automatu, bo pewnie w debuggerze podglądasz sobie rejestr DR, co oczywiście liczy się jako jego odczyt, kasujący automatycznie flagę.
Dlaczego przy wypełnieniu 100 % stoi, a przy 0 % coś tam się dzieje ? Co oznacza PWM o wypełnieniu 100%? To już nie są impulsy, to jest napięcie stałe. Dlatego zmieniłem preskaler na 1024 i teraz mam częstotliwość 488 Hz oraz okres 2 Nadal nie rozumiesz. Potrzebujesz częstotliwości ok. 50Hz, a nie 488Hz. Proponuję to zrobić w osobnym projekcie na timerze...
licznik 2 sobie liczy od 0 do 255 ( 8 bitowy), obecna wartość w TCNT2. w OCR2A mogę ustawić wartość do jakiej ma liczyć i co ma zrobić jak do niej doliczy? Jak wybiorę 0 0 to to porównanie jest wyłączone i licznik liczy do przepełniania się ( i ustawi flagę przepełnienia ). Jak ustawie 1 0 czyli Clear OC2A on compare match to na tym bicie pojawi się...
Układy MPS430 mają mały pobór prądu na wejściach. Pin pobiera z 1nA prądu polaryzującego, a do tego wewnętrzne obwody także pobierają mało prądu nawet jak na pinie się ustawi napięcie równe 1/2VCC. Niestety w innych jest znacznie gorzej. Nawet piny z histerezą pobierają duży prąd jak napięcie na nich jest w okolicach 1/2VCC. Często są też rejestry wyłączające...
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...
4. Blokowy układ pamięci wynika z ograniczonej przestrzeni adresowej. Dany układ nie pozwala na adresowanie każdego bajtu z osobna więc stosuje się bloki np po 64 lub 128 bajtów. Zatem wybierając adres powiedzmy 32, zaglądasz do szufladki w pamięci do której możesz zapisać te 64 lub 128 bajtów. Adres 33 wskazuje na inną "pustą" szufladkę w której jest...
Nigdy nie używałem funkcji. Więc nie mam pojęcia jak to zrobić. Czas sie dokształcić, do Bascom jest polska pomoc z przykładami. Jaki problem? Ponadto zamiast funkcji można użyc podprogramu, choć funkcje są wygodniejsze. Ta funkcja musi być solidnie rozbudowane aby przesłać jeden znak. Bzdura, wysłanie znaku, to wysłanie bajtu do sterownika. Wyświetlacz...
1. Jak rozpoznać czy to wersja układu na 5V czy na 3,6V? Nie ma tam jakiś charakterystycznych oznaczeń na obudowie? Ciąg literek i cyferek, żeby można było ustalić itp. Jeśli wylutowałeś to z telefonu, obstawiam na niższy zakres napięć. TWINT ma być zerowane programowo np. przez procedurę obsługi przerwania na samym jej końcu. Zerowanie ma być zrealizowane...
.org 0x0000 ; ustawia adres w pamięci programu rjmp reset ; skocz do etykiety ... ; wektor przerwania timer 1 .org 0x0005 rjmp led_off ; skocz do obsługi przerwania ; w tym przykładzie początek programu głównego reset: ; Jako pierwsze ustawienia stosu (w asemblerze jest to ; bardzo ważna operacja i programista nie może o tym zapomnieć)....
Owszem jeśli chcesz mieć więcej enkoderów to bardziej opłacalne będzie SPI. Wtedy FPGA może obsługiwać wszystkie enkodery i przyciski. Można by tak jak mówisz wyprowadzić linię IRQ a statusy przycisków/enkoderów wyprowadzić po SPI jako bity. [syntax=c]//____________________________... //| 0 | 1 | 2 | 3...
Mikrokontrolery można programować bez szerszej wiedzy o ich działaniu, Arduino jest chyba naczelnym przykładem, ale nie trzeba aż za to się łapać. Jeśli ten podręcznik do MSP430 tak faktycznie wygląda, to go lepiej nie ruszaj, chociaż na pierwszy przykład kodu do wklejenia i uruchomienia wpisane na sztywno 0x40 nie jest jeszcze koszmarnie złe. Drążąc...
Mozesz zuzyc jeden rejestr na przechowywanie 5 zmiennych bitowych. np r25. .DEF rBity=r25 .EQU bBit0=0 .EQU bBit1=1 itd. az do 7 No i teraz robisz sobie tak: sbr rBity,(1<<bBit0) ; ustawia bit 0 cbr rBity,(1<<bBit0) ;zeruje bit 0 sbr rBity,(1<<bBit0)|(1<... ; ustawianie wielu bitow na raz.....
Witam, Troche to zagmatwane i skomplikowane: "Ja to widzę tak: naciskam przycisk, przerzutnik na wyjsciu ustawia stan wysoki i go trzyma puki drugi raz nie nacisnę tego samego przycisku. Od przerzutnika stan wysoki cały czas utrzymuje się na wejsciu multipleksera i jest przekazywany w postaci przebiegu kwadratowego z cz. ok 30/4 czestotliwości zegara...
Atmega128 posiada 128KB pamięci flash, żeby program poprawnie odczytał dane fontów rejestr RAMPZ musi być odpowiednio ustawiony. Może problemem jest umiejscowienie tych fontów we flashu, zaczynają się na pierwszej stronie pamięci (pierwsze 64 KB), a kończą na drugiej stronie (powyżej 64KB). Program odczytuje początek fontów z odpowiednio ustawionym...
/.../owa pamięć może posłużyć do tworzenia a) funkcji kombinacyjnych/.../ albo c) pamięci rozproszonej (!). zgadza sie; b) rejestrów nie zgadza sie, rejestr to dodatkowy, niezalezny element slice; jesli napiszesz "if (in=2) then out <= 1" else out <= "0", to look-up table bedzie wypelniona tak, ze pod adresem '2' bedzie jedynka, pod reszta adresow...
Zwróć uwagę że w Twoim kodzie nigdzie nie podajesz informacji prockowi gdzie ma zmierzyć napięcie. Przed konwersją musisz w rejestr ADMUX wpisać numer kanału ADC. Robi to tą linijką programu: Korzystam z ADC0, domyślnie ustawione są na 0 czyli powinno się zgadzać. że ustawienie w tym wypadku jest domyślne jest błędne, choć kanał autor swoim programem...
https://obrazki.elektroda.pl/3928983600_... Opiszę naprawę dość rzadkiej konsoli, polegającą na odtworzeniu schematu pierwowzoru, zaprojektowaniu i wykonaniu płyty głównej i dalszych krokach niezbędnych do przywrócenia jej życia i funkcjonalności, w których zastosowałem swoją nowatorską metodę. Będzie więc coś dla miłośników retro,...
Dzięki wielkie- ale to nie do mnie pisałeś. O Atomic_Block dowiedziałem się w czwartek- sprawdziłem- od czwartku jest to pierwsza wiadomość na ten temat. A wracając do tematu Fir3man- wymyśliłem taki schemat programu: #include <stdint.h> #include <avr/io.h> #include <stdlib.h> #include <avr/interrupt.h> volatile uint8_t dol;...
Rozwiązanie z SPI jest o tyle fajne, bo zawsze będzie wolniejsze od transmisji równoległej dla typowego uC. Więc nie potrzeby nawet sprawdzać czy bufor jest pusty czy nie. Trzeba tylko co piksel zapewnić działania w tle, w tedy uzyskamy najlepszy framerate dla rozdzielczości oraz będzie pchać z taką prędkością dane ile magistrala/DMA/SPI fabryka dała...
https://obrazki.elektroda.pl/7245713600_... BK7231 zazwyczaj programujemy przez UART - pozwala na to wgrany przez producenta bootloader. W wyjątkowych sytuacjach jednak możemy niechcący ten bootloader nadpisać - wtedy musimy użyć trybu programowania SPI by odratować zablokowany układ. Tutaj opiszę, jak działa tryb SPI w BK7231 oraz...
https://obrazki.elektroda.pl/7257498500_... Pokażę tutaj jak można łatwo uruchomić zewnętrzną pamięć Flash z dowolnym mikrokontrolerem w oparciu o programowe SPI. Omówię tu działanie i znaczenie poszczególnych operacji (odczyt, zapis, kasowanie) oraz zaimplementuję je w kodzie. Temat użycia takich pamięci wydaje mi się co najmniej...
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
Tzn. że dwa rzędy pionowe nie mogą być zapięte do tego samego rzędu poziomego? Fizycznie jak najbardziej mogą. Sens działania wybieraka krzyżowego jest mniej więcej taki: Wybierak to matryca: x poziomów = drążków na y pionów = mostków. W ramie (wybieraku) abonenckiej do poziomów podłączeni są abonenci, do pionów rejestry wychodzące i przychodzące....
http://obrazki.elektroda.pl/6569522000_1... Przedstawiam projekt urządzenia (konwertera), umożliwiającego używanie dżojstików od konsoli Pegasus na popularnym komputerze Commodore 64 (C64). Urządzenie opiera się na mikrokontrolerze Atmega 8. Motywacja Jakiś czas temu zakupiłem komputer Commodore 64. http://obrazki.elektroda.pl/1500263400_1...
Miałem bardzo podobny przypadek. Układ AntyDrop źle działał, ponieważ impulsy LO 1(U35) nie zerowały przerzutnika D ‘74’układu U21/A . Wspomniane dema działały poprawnie, natomiast praca w monitorze np. listowanie pamięci, po chwili działania i pojawianiu się błędów na ekranie powodowały blokadę Cobry. Na oscylogramie sygnał LO o amplitudzie około...
https://obrazki.elektroda.pl/9365002800_... W poprzedniej części opisałem zasadę działania i podstawy sterowania wyświetlaczy VFD, w tej części przejdę do praktycznych działań :D które większość z Was pewnie bardziej zainteresuje. Nowe wyświetlacze są stosunkowo kosztowne w zakupie i nie równoważy tego fakt że przeważnie zawierają...
Jest trochę mikrokontrolerów, które pozwalają na połączenie poprzez USB, trzeba się temu przyjrzeć - jakieś ATmegi chyba obsłużą tylko najwolniejszy tryb, i to nie wszystkie, STM32 mogą więcej. Ale najpierw trzeba dużo poczytać z opisu tego AD7768, bo on ma jakiś złożony protokół (i to niekoniecznie SPI - może poprzez SPI ustawia się tryb pracy, a dane...
Raczej nie, musi byc zainicjowany. Tam nie ma typowego interfejsu RGB tylko jakis DBI (dwukierunkowy interfejs rownolegly), ktory konfiguruje sie przez spi. Nie chce mi sie czytac calej dokumentacji ILI9481 zeby sprawdzic jak sa ustawione rejestry domyslnie. Bardziej sklanialbym sie do tego co ci podalem - wyglada na to ze domyslnie dziala w trybie...
https://obrazki.elektroda.pl/3680806300_... Z 30lat temu zdobyłem uszkodzony zasilacz do 3A do 36V z miernikiem wychyłowym przełączanym V / I. Nie naprawiałem, zrobiłem na 723. Z praktyki nie inteserował mnie CV przechodzący w CC, cóś zewrze, przekroczy zakres i będzie "dopalane". Chciałem szybko wyłączający U na ok. 5s z sygnalizacją,...
No właśnie po to, by zminimalizować ilość użytych pinów i połączeń z klawiaturą. Zminimalizować na 14, kiedy da się obsłużyć 40 przycisków na 3 pinach (z użyciem 5 '165)? Albo na 6 (z jednym 4017)? Chcąc zrobić wszystko na jednym Adruino wypada policzyć, ile jest pinów, których można użyć. Zastanawiam się, jak minimalizując liczbę pinów uzyskać wykrywanie...
(at)Piotr Piechota Ja robiłbym coś w stylu: [syntax=c] static inline uint32_t bitfield_update(uint32_t bf, uint32_t mask, uint32_t value) { return (bf & ~mask) | (value & mask); } .... const uint32_t mask = RCC_PLLSAICFGR_PLLSAIN | RCC_PLLSAICFGR_PLLSAIP | RCC_PLLSAICFGR_PLLSAIQ | RCC_PLLSAICFGR_PLLSAIR; const uint32_t value = 192 // N=192...
https://obrazki.elektroda.pl/3711757000_... Witajcie, dzisiaj przedstawię uruchomienie układu AS1115 z Arduino w oparciu o gotową bibliotekę. AS1115 to kontroler wyświetlacza 7-segmentowego (do 8 cyfr) oraz klawiatury (do 16 klawiszy) z interfejsem I2C, oferującym dodatkową linię-przerwanie dla zdarzeń pochodzących od klawiatury. Temat ten...
MiiiiM - dzięki za plik. Opiszę teraz moje przygody z pamięcią GD25Q32C, która jest zamontowana w płytce LA.MV56U.A. Żeby sprawdzić dokładniej, co w ogóle dzieje się przy starcie, podłączyłem się pod UART (115200, 8N1) i faktycznie, boot zatrzymywał się zaraz na początku i stał w miejscu. Ponieważ akurat nie miałem pod ręką programatora SPI, wykorzystałem...
https://obrazki.elektroda.pl/9151185000_... Druga część artykułu o najtańszych nowych mikrokontrolerach z roku 2017. Ekosystem developerski Środowisko developerskie mikrokontrolera ma ogromny wpływ na jakość pracy z nim i w konsekwencji - na produktywność. Na to składają się różne czynniki – jakość IDE, dostępne biblioteki, płytki...
a co się dzieje wewnątrz mikrokontrolera? Opiszesz mi instrukcje Atmega8a wraz z tym jak to działa, co się dzieje z układem mikrokontrolera? Oczywiście! Omówię, jak działają poszczególne instrukcje Atmega8a w kontekście podanego kodu asemblera oraz jak wpływają one na funkcjonowanie mikrokontrolera. Kod asemblera: ``` sbi DDRC, 0 sbi PORTC, 0 sbi DDRB,...
Witajcie. Jutro zacznę tu tworzyć rozległy temat o modowaniu laptopów T61 i T61P. Tworzę ten zarys tematu by upewnić się, że to jest prawidłowe miejsce na forum do napisania takiego dokumentu. Jeżeli nie jest, proszę o pokierowanie w lepsze miejsce. Modyfikacje obejmować będą: - zdjęcie whitelisty sprzętu, - odblokowanie transferu sata II dla głównego...
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,...
Jeżeli to jest np. atmega328 to zamiast definiować strukturę z jednym polem Flagi użyj rejestr GPIOR0. [syntax=c]#define FLAGI GPIOR0 #define FLAGA_CZAS GPIOR00 #define FLAGA_TEST GPIOR01 // itd. FLAGI &= ~(1 << FLAGA_CZAS); // zerowanie bitu FLAGI |= (1 << FLAGA_CZAS); // ustawianie bitu[/syntax] Ten rejestr znajduje się w pierwszych...
Bootloader przestawia wektory przed skokiem do softu użytkownika więc wydaje mi się że nic dodatkowo nie trzeba robić poza kompilacją pod 0x08001000. Niestety. CubeMX robi to tak że ustawia na początku rejestr VTOR (funkcja SystemInit): [syntax=c] SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH. */ [/syntax]...
Po resecie MCP ustawia rejestr CANCTRL &B11100111 Sygnał na wyjściu zegarowym pojawia się kiedy : 1. MCP jest po resecie przed programowaniem. 2. Kiedy uaktywniasz wyjście zegarowe ustawiając odpowiednio CANCTRL str.58 PDF. Po twoim opisie wygląda że MCP oczekuje na programowanie po SPI . Czy bedziesz mial mozliwosc odpisania do poludnia? Chyba się...
Witam. Znalazłem taki oto projekt https://how2electronics.com/ds18b20-ther... złożeniu go na płytce stykowej i wgraniu kodu do arduino wszystko fajnie zadziałało.Chciałbym zastosować większy wyswietlacz segmentowy AS-23011BMR wspólna anoda.Wyświetlacz musi być więc zasilony 12V.Złożyłem układ wg schematu jak na zdjęciu...
- może podpowiesz dlaczego funkcja wykonuje się jeden raz? Wpierw warto zrozumieć co dokładnie robi ten kod. Twoje zrozumienie może pomóc w lepszym zdiagnozowaniu problemu. Przyjrzyjmy się więc kluczowym elementom: 1. Funkcja `usart_inicjuj` jest odpowiedzialna za inicjalizację modułu komunikacji szeregowej (USART). Ustawia prędkość transmisji (BAUD),...
Ostatni raz powtarzam: #define STEP_OFFTCCR1B &= ~(_BV(CS10)) | ~(_BV(CS11)); <--- to jest źle, bardzo źle i niczego nie zeruje Zamień na to: #define STEP_OFF TCCR1B &= ~(_BV(CS10) | _BV(CS11)); <--- to będzie działać, to zeruje bity. Na więcej postów nie odpowiadam bo czuję tutaj stratę czasu.
Cześć. Mam kilka wstawek assemblerowych jak poniżej. Kod ustawia pin D6 w stan niski i wysoki po upływie kilku taktów zegarowych. Służy to do uzyskania bardzo krótkich szpilek stanu wysokiego na pinie scalaka. Chciałbym jakoś móc je sparametryzować i wykorzystywać do sterowania innymi pinami. Czy da się jakoś sprytnie to zmodyfikować, by zamiast 0x0D...
Mam taki falownik, działa bez zarzutu, nawet da się z nim skomunikować po RS485, mam też opis rejestrów. Niestety w opisie nie ma jednego istotnego zapisywalnego rejestru - pozwalającego zmienić domyślny adres Modbus RTU (równy 3) na inny. Jest rejestr zawierający ten adres, ale tylko do odczytu funkcją "read input registers" (nie wiadomo po co, jak...
Znalazłem przyczynę, ale czegoś dalej nie rozumiem. To są rejestry układu: https://obrazki.elektroda.pl/6795741600_... a to jest rejestr numer 0x03 w którym ustawiamy bit VBATEN: https://obrazki.elektroda.pl/2119463800_... Bit ten musimy ustawiać za każdym razem, gdy mikrokontroler startuje, tak więc wywołuję sobie...
http://obrazki.elektroda.pl/4926270100_1... Diagnozer joysticków (np. do Pegasusa) na Atmega 8 Projekt Przyszedł wreszcie czas naprawić posiadane przeze mnie joysticki do Pegasusa. Zwykle uszkodzeniu (urwaniu) uległ kabel lub taki niesprawdzony/niesprawny joystick został zakupiony bez znajomości jego przeszłości. Jeśli kable się urwały,...
Panowie, bardzo dziękuję za zainteresowanie tematem. Dokładnie chodzi o to, że chciałbym sterować napięciem na wyjściu układu za pomocą rezystancyjnego czujnika nacisku z możliwością zmiany zakresu napięcia wyjściowego w widełkach 10mV - 10V, mianowicie (poniższy opis dotyczy schematu z pierwszego postu): 1. Rezystancyjny czujnik nacisku pracujący w...
W serii tych blogów jest chyba prawie wszystko łopatologicznie opisane o programowaniu AVR w C: Deasembler nie istnieje bin nie da się odwrócić . Robi się to podsłuchując działające urządzenie lub program Znalazłem w końcu-da się zdeasemblerować HEXa którego wysyłamy przez ISP do uP AVR;) Można zobaczyć jaki wpływ na kod mają opcje kompilacji. W tym...
Jeśli rejestr jest w przestrzeni dostępnej dla sbi/cbi. A swoją drogą nawet w tym przypadku wygeneruje tyle instrukcji ile bitów się ustawia zamiast dwóch instrukcji ustawiających cały rejestr.
Napisz program na Arduino, który odczyta rejestr R16 po szynie I2C ze scalaka WM8804. Niech podłączony LED zapali się, gdy wartość młodszego nibbla odczytanego rejestru wyniesie b0100. Niech będzie zgaszony w przeciwnym wypadku. Oto program na Arduino, który odczyta rejestr R16 po szynie I2C ze scalaka WM8804 i zapali LED, gdy wartość młodszego nibbla...
DDRX to rejestr kierunku porty który ustala czy port X jest wejściem czy wyjściem. PORTX w przypadku wyjścia ustawia stan na porcieX. PORTX w przypadku wejścia odpowiada za podciąganie wejścia do VCC PINX bada stan na wyprowadzeniu portuX
Reset przez skok pod adres zero realizowany jest przez wykonanie kodu inicjującego a on że tylko zeruje rejestr zerowy i statusowy, ustawia wskaźnik stosu, oraz inicjuje zmienne w RAM. Inne rejestry w tym I/O nie są inicjowane, czyli zatrzymują wartość sprzed "resetu"
Też tak myślałem, ale albo coś mam w programie nie tak, albo sam już nie wiem. Bo w obu przypadkach wywołania przerwania (alarm, timer) ustawia mi zawsze tylko i wyłącznie bit 1 w rejestrze 0x00. Dodano po 18 Poza tym nie wiem czy robię to prawidłowo Ustawianie Timer'a: Zeruję rejestr 0x07, do rejestru 0x0F ładuję wartość którą ma odliczyć (chodzi mi...
https://obrazki.elektroda.pl/7048158500_... W zasadzie nie wiem jaki tytuł dać ;) Jest to uniwersalny moduł (bufor) a częściowo dedykowany ze względu na dostęp sekwencyjno-blokowy. - obsługuje pamięci SRAM w obudowie dip 28 - umożliwia 4 lub 8 bitowy dostęp - podział na bloki 256 lub 512 bajtowe - sekwencyjny dostęp - konfigurowalny...
Może to jakiś stary Bascom? Bascom sprawdza kiedy będzie mniejszy błąd dla dwóch z możliwych ustawień bitu U2X w rejestrze UCSR0B. Możesz łatwo sprawdzić nawet w symulatorze czy ustawia rejestr UBRR poprawnie. Każdy kalkulator pokaże Tobie że dla 4MHz i baud 9600 w rejestrze powinno się znaleźć to co w kodzie poniżej. Czasami, po jakichś bootloaderach...
Nie o instrukcję bascoma chodzi, lecz o dataszit do attiny2313. W AVR stan pinów odczytuje się czytając rejestr PINx, ustawia pisząc do rejestru PORTx, a kierunek (wej/wyj) ustawia pisząc do rejestru DDRx. Możliwe są też różne kombinacje, włączające lub wyłączające pullup. Poczytaj dokumentację ATTiny2313. Wejście z przyciskiem powinno mieć pullup.
1. PRR, jest to Power Reduction Register. Aby korzystać z ADC, bit PRADC musimy wyzerować. Nie wiem jakie rejestry są domyślnie ustawiane przy starcie Arduino. Nie wiem czy ADC startuje, czy może trzeba go uruchamiać jakimś magicznym pinMode. Na wszelki wypadek wyzerujemy sobie ten PRADC. Jeśli ustawienie bitu wygląda tak: PRR |= (1 << PRADC);...
Jeśli dobrze zrozumiałem problem: Ustawiając rejestr OTYPER nie ustawiasz pinu jako wyjście, tylko konfigurujesz wyjście, prawdopodobnie włączają się jakieś wewnętrzne rezystory, skonfiguruj resetr GPIOx->PUPDR (pullup) oraz TIMx->BDTR bit BKP (wyzwalanie stanem niskim lub wysokim). pzdr
Z moich badań wynika, że odbiornik RF ustawia swój pin danych w taki sam sposób, jak pin danych odbiornika IR. Odbierając dane, wysyła je przez pin danych, a procesor dekoduje je do określonego kodu, który jest powiązany z naciśniętym przyciskiem... Naprawdę proste. Myślę, że możliwe jest nawet bezpośrednie użycie trybu IR. Podłączając pin danych RF...
Witam wszystkich. Zaprojektowałem i uruchomiłem zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). http://obrazki.elektroda.net/21_12497604... http://obrazki.elektroda.net/58_12497606... http://obrazki.elektroda.net/95_12497605...
Z odświeżaniem sobie poradzę, na razie problem jest taki że mimo iż w pętli zapisuję dane do kontrolera na lcd nic się nie zmienia. To co dostaję po zakończeniu tej funkcji którą podałem wyżej przestawia obrazek: http://obrazki.elektroda.net/31_12560545... Szczerze się przyznam że nie mam pojęcia jaki rejestr muszę jeszcze koniecznie ustawić...
Witajcie gdy próbuję zmienić czas uśpienia laptopa. W opcji zasilanie i uśpienie zmienia się na chwilę i wraca z powrotem na 5 min Wczoraj czyściłem dysk CCleaner rejestr i boję się że coś jednak usunąłem z systemu, proszę o pomoc. Dodano po 14 Lub gdy zmienię zasilanie aby się wyłączył po 30 min np to tak samo się ustawia czuwanie też na 30, samo ustawia...
Jak już: Podłączysz 33pF z powrotem do +. Podłączysz kondensator 100nF .(teedd) Sprawdzisz adres(programikiem). To ściągnij datasheeta i sprawdź jak się ustawia rejestr konfiguracyjny pod adresem 0. Mam PCF ale luzem. Nie mam czasu ma wlutowanie i sprawdzenie-chociaż bardzo to lubię. Dodano po 1 POD ZASILANIE!!! 100nF do kwarcu??? Student PWr???
Witam wykorzystuję timer encoder mode do obsługi enkodera. Niestety zakres jest tylko 16 bitowy i w dodatku nie ma ujemnych wartości. Gdy przeskoczy 0 to ustawia się na wartość max tj.65535 Dlatego rozwiązałem to w taki sposób, że podczas inicjalizacji ustawiam rejestr CNT na 32767. Przy odczycie odejmuję te wartość i tak otrzymuję ujemne wartości....
nie - zasilanie z arduino Więc jeszcze raz zapytam - V+ połączone z VCC? Rozumiem, że POWER świeci na obu modułach? już myślałem że to będzie rozwiązanie ale niestety też nie Byłoby tak gdyby biblioteka traktowała kanał 17 jako pierwszy (at) 0x41 ale tak nie jest. Po prostu ustawia odpowiedni rejestr układu o ustalonym wcześniej adresie, czyli dla...
Kolega używa zarówno rezystorów do diód jak również ustawia rejestr DDR jako wyjście (1). Jak kolega poda bezpośrednio napięcie z zasilania to mu LED świeci jasno, jak wysteruje z portu to ledwo świeci. Jeżeli przepnę na port C to świeci normalnie przy sterowaniu z procka. Procek nowy i był z 3 razy programowany więc to raczej nie wina procesora. Mnie...
Tak. Ustawia w TCCR1B bit CS12. nie ustawia bitu, tylko ustawia cały rejestr TCCR1B, tak, że ustawiony jest jedynie bit CS12, poprawnie powinno być TCCR1B |= _BV(CS12); to ustawia pojedynczy bit, bez ingerencji w inne. Jak kto woli, taki zapis jest równoważny: TCCR1B |= (1 << CS12); \\no zdążyłeś się poprawić
No i porwałem sie na rozkaz LPM i mam problemy ze zrozumieniem. Taki prosty przykład poniżej. .include "m128def.inc" .EQU fq = 8000000 ; XTal frequency definition ldi r20,$00 out SPL,r20 ldi r20,$05 out SPh,r20 ; stos ustawiony na $0500 start: LDI ZH,HIGH(MyTable*2) ; Adress of table to pointer Z LDI ZL,LOW(MyTable*2) ;...
Po wywołaniu Twojego kodu pojawiło sie takie coś: Czyli ta kostka wyraźnie nie życzy sobie z nikim rozmawiać. No i to by świadczyło że nie tylko ruszałeś CKDIV8, bo w/w wywołanie avrdude"wyciąga" bez problemu ATtiny13 z najniższej możliwej nastawy fusebitów jak chodzi o taktowanie z wewnętrznego generatora. Czyli albo ustawiłeś na fusebitach taktowanie...
No bo wciąż ustawiasz rejestr IMR "odwrotnie" - zajrzyj do manuala co oznacza 0, a co oznacza 1. I w ramach testów zrezygnuj z ustawiania jakichkolwiek priorytetów przerwań czy czegokolwiek z nimi związanego. 4\/3!!
Mam uruchomionego RVT43ULFNWC00 jeżeli sobie życzysz to źródła w Keilu (chyba) też mam. Będę wdzięczny. Znalazłem przykład, w którym ustawiany jest rejestr REG_TOUCH_MODE. Jak pamiętam z noty, domyślnie jest on ustawiony, ustawiłem jak w przykładowym kodzie (REG_TOUCH_MODE=3 //TMODE_CONTINUOUS) ale nic nie pomogło. Dodano po 10 Znalazłem rozwiązanie....
To pierwszy artykuł z dwuczęściowej serii. Część 1 (poniżej) przedstawia rodzinę cyfrowych menedżerów systemu elektroenergetycznego (DPSM) i obejmuje podstawowe metody pomiaru natężenia płynącego prądu. Wprowadzono również wątki związane z LTpowerPlay i opisano pomiar energii. Część 2 odnosi się do pomiaru prądu na źródłach wysokiego napięcia lub ujemnego,...
Ty nadal forsujesz instrukcję SPIINIT? Mimo, że jak sam piszesz źle ustawia końcówki? Pogratulować . Potem ludzie sie dziwią , że Bascom zajmuje dużo pamięci. Popatrz na to co stworzyłeś. Zamiast pominąć SPIINIT i skonfigurować jedną końcówkę (jedna instrukcja) u ciebie są to TRZY instrukcje. Tylko "szamańska wiedza" może spowodować coś takiego. Uruchom...
Wszystkie piny ustawiłem na stan wysoki komendą DDRD = 0xFF czyli 11111111 a więc wszystkie linie portu D są wyjściami ze stanem wysokim. DDRD to rejestr ustawiający kierunek działania portu wpisanie do niego jedynek ustawia piny portu jako wyjścia ale wcale nie oznacza to że będziesz miał na tych wyjściach stany wysokie. Jak chcesz mieć stany wysokie...
To może tak : Timer2 w trybie FastPWM F_CPU=8MHz preskaler=1024, rejestr TCNT2=100, piny COM21:0=3 (invertedPWM) Przepełnienie licznika TCNT2 co 2ms (dokładnie to 19,968ms) (overflow) ustawia OC2 w stan niski Osiągnięcie licznika TCNT2 wartości z rejestru OCR2 (compare match) ustawia OC2 w stan wysoki W rejestrze OCR2 trzymamy wypełnienie PWM ( OCR2...
LPC213x rejestry i/o były podpięte pod dosyć wolna magistralę VPB, nowsze 214x oraz 213x-1 mają już te rejestry podpięte pod magistralę lokalną. Z punktu widzenia programistycznego ustawia się odpowiednio rejestr SCS a zamiast korzystać z rejestrów IOSET, IOCLR korzysta się z ich odpowiedników FIOSET itd.
Masz zmodyfikowany rejestr !!! Zlokalizuj programem AdAware lub spywarecop plik ktory to ustawia i daj wyszukiwanie w rejestrze nazwy tego pliku !!! Pousuwaj wszystkie odwolania
Mniej więcej wiem o co chodzi. Trochę poćwiczyłem i to co mi potrzebne zrozumiałem. wpadłem na coś ciekawego, ale tak się długo zastanawiałem czy o to pytać. Ale może komuś też się przyda. Natrafiłem na błędy z instrukcją WFE. Od razu mówię że pytam raczej jako ciekawostkę i ciekawą właściwość rdzenia ni z coś do wykorzystania. W erratach jest coś takiego...
Witam Zaprojektowałem ściemniacz oparty na procesorze ATMEGA8 sterowany ręcznie (przyciskiem) lub zdalnie za pomocą Modbus'a. Wszystko już prawie działa, a prawie dlatego że: w trakcie ściemniania i rozjaśniania podłączona żarówka potrafi mignąć. Czasami jest ok a czasami mignie, bardzo szybko - np. ściemnia ściemnia mignie i dalej ściemnia i w drugą...
Witam. czy nie wygodniej było by Ci oprogramować multipleks w przerwaniu z timera np. T0, i nie bawić się w "waitus" itp? .... to był tylko przykład żeby jaśniej opisać o co mi chodzi ,, ja nie używam wait , u mnie w tym czasie program przelicza i ustawia rejestr do kolejnej linii . teraz do kol. Slaby . nie będę się tu sprzeczał bo nie uważam się za...
Mam następujące pytanie: AVR pracujący w trybie podrzędnym po odebraniu bajtu danych ustawia znacznik SPIF w rejestrze SPSR, tak wynika z noty katalogowej. Po przejściu do obsługi przerwania znacznik ten jest zerowany. Jeśli obsługa transmisji nie wykorzystuje mechanizmu przerwań należy go "ręcznie" wyzerować. Jeśli transmisja po SPI przesyła serię...
Wczoraj sprawdziłem jeszcze jak licznik po 22 zalicza zużycie i okazało się, że wszystko jest na rejestrze 1.8.1 Dzisiaj zgłosiłem awarię licznika. I żądanie jego wymiany. Przed chwilą sprawdzałem i teraz ( po 22) zalicza na rejestr 1.8.2. Całkowite zużycie na tym rejestrze w tym roku to 10kWh, gdzie na dobę zużywam około 50kWh. Tak więc wynika z tego,...
Niestety problemów ciąg dalszy . W instrukcji falownika w dziale MODBUS przy opisie funkcji jest przykład : aby zapisać wartość 15 i 400 do parametrów(słów) W400 i W401 odpowiedzialnych za ruch i częstotliwość pracy jest podana następujaca komenda : 02 10 0190 0002 04 000F 0190 CRC16 i tu wszystko jasne 02 adres urządzenia 10 funkcja zapisu wielu kolejnych...
Niezupełnie. Kod źródłowy "aplikacji" nie musi wiedzieć, czy jest zapisany od adresu 0 i startuje sam, czy jest startowany przez bootloader. O tym wie tylko konsolidator, który generuje kod odpowiedni dla zadanego adresu startowego. Pod adresem bazowym aplikacja ma kompletną tablicą wyjątków, z wektorem RESET. Bootloader po zweryfikowaniu aplikacji...
Skonwertowałem, przeczytałem, i chcę jeszcze! W załączniku pliki w formacie mobi, spakowane bo inaczej nie chciało forum przyjąć. Dodawane będą sukcesywnie, w miarę "dosyłania" kolejnych odcinków. ========== Odcinek 1=============== KONTRABANDA Mag był wyraźnie zadowolony. Dostawy wreszcie docierają na czas i można się skupić na właściwych zadaniach....
Witam Mam problem ze zmianą czasu w STM32F0Discovery. Konfiguracja i inicjalizacja modułu jest dobrze wykonana - w debugerze zlicza sekundy, ustawia flagi itd. Problemy zaczynają się gdy chcę załadować do rejestru czasu TR i daty DR aktualny czas. Podczas pracy krokowej wszystko idzie ładnie - flagi się ustawiają, rejestr ładuje i wartości się zmieniają....
Marker jest podpięty do scady, jeżeli w scadzie będzie 1, to marker ma 1 i nie da się tego kasować. A to by było logiczne, czyli to w programie scada musi być w formie jakiegoś przycisku chwilowego który najpierw wpisze 1 do M1 a potem 0. Myślałem że np: kliknięcie guzika w programie scada ustawia 1 raz i inny klient np: drugi scada albo sterownik...
Proponuję uprościć kod do minimum, i skupić się na zegarze. Można albo użyć zewn. sygnału, ale wymaga to tyle samo pracy co przylutowanie kwarcu na pająka, a jest o tyle ryzykowne, że jak nie coś nie zadziała, to nie przeprogramujesz już układu. Z jakiego napięcia zasilasz układ? Wewn. oscylator jest kalibrowany pod 5V, jeżeli masz mniej, to zamiast...
Jak ustawiać preskalery według tabelki z #27 podanej przez excray .Jak wygląda preskaler 32 i 128 jak to się ustawia. W internecie jest taki preskaler , TCCR1B |= (1<<CS12)|(1<<CS10); // preskaler = 1024 Jak czytałem preskalera 32 i 128 nie obsłuży Attiny 2313 i Atmega 8. Co obsłuży wszystkie preskalery podane w tej tabelce. Bo patrzysz...
ustawia enkoder sharp ustawia falownik ustawia
quiet zasilacz 1000w backup partycji linux zestyk rozwierny
pompa kaisai landini instrukcja
Odkurzacz Flex S47 - cykanie mikroprzekaźnika Brak dźwięku w radiu Porsche Cayenne - diagnostyka