•  

    #elektronika #avr #pytanie
    Czy ktoś ma może pomysł co robię nie tak? chce wygenerować PWM, prescaler ustawiony na 1 F_CPU=1,2MHz, więc PWM też powinien taką mieć. Tymczasem saleae pokazuje ok.4,5kHz. Wypełnienie reguluje potencjometr podpięty pod ADC.

    int main(void)
    {
    DDRB |= output;
    PORTB |=button;

    TCCR0A |=(1<<COM0A1) | (1<<WGM00) | (1<<WGM01);
    TCCR0B |= (1<<CS00) ;/*up-counting prescaler 1 */

    ADCSRA |=(1<<ADEN) | (1<<ADPS2); /*prescaler 16 */
    ADMUX |=(1<<MUX1);
    ADCSRA |=(1<<ADSC);

    while(1)
    {
    ADCSRA |= (1<<ADSC);
    while(ADCSRA & (1<<ADSC));
    duty=ADC/4;
    OCR0A=duty;

    }


    }
    pokaż całość

  •  

    #elektronika Czy ktoś wie może jak jest łączona taśma fpc z wyświetlaczem? chodzi mi konkretnie o ten czarny klej, nie wiem jak on się nazywa, czego szukać. Zerwała mi się ta taśma, a nowego wyświetlacza nie dostane bo nie umiem znaleźć jakiś noname.

    źródło: buydisplay.com

    +: Cronox
  •  

    Porucznik John Falkon ostatni raz pomachał ręką towarzyszom i wdrapał się do kabiny. Przepełniało go uczucie dumy. Spotkał go taki honor! Dowiedział się o tym od generała Breaka, który powiedział:
    - Spotkał was wielki honor poruczniku. Wykonacie pierwszy bojowy lot na
    supertajnym samolocie F-22M
    - M oznacza zmodyfikowany? - starał się sprecyzować Falkon
    - M oznacza Microsoft - odpowiedział generał.
    Samolot zosta w pełni przeprogramowany przez nich. Oni zapewniają, że teraz zadania bojowe może wykonywać każdy idiota. No, ale my na pierwszy raz wyznaczyliśmy
    pana poruczniku Falkon, jednego z najlepszych pilotów. Będzie pan musiał zniszczyć iracki ośrodek jądrowy.
    - Może pan już słać Saddamowi kondolencje, sir - odpowiedział Falkon.
    Porucznik jak zwykle zapiął pasy i tylko zwrócił uwagę, że oprzyrządowanie różni się od standardowego.
    Przyrządów ubyło, za to na zwolnionym miejscu pojawiła się dwu przyciskowa mysz
    - metalowa. Falkon wzruszył ramionami wcisnął przycisk i włączył zasilanie. Na przednim ekranie, na tle widocznego z kabiny nieba z rzadkimi obłoczkami pojawił się napis:

    [] Microsoft Winwars 2002.

    Po czym silniki same zaczęły pracować silniki i klapy same się opuściły do położenia startowego.
    - Gratulujemy zakupu Microsoft Winwars 2002! - zakomunikował ekran
    - Teraz wojna stanie się jeszcze wygodniejsza, a twoja śmiertelność spadnie!

    [] Porada dnia
    [] Przed lądowaniem należy wysunąć podwozie.

    - Orzeł 1, pozwolenie na start udzielone - rozległo się w hełmofonie.
    - Ja jeszcze nie prosiłem - zdziwił się Falkon.
    - A Wam nie trzeba. Plug&Play - wyjaśniła kontrola naziemna.

    Samolot szybko nabierał prędkości i wkrótce był już w powietrzu.

    - Teraz Winwars 2002 przeprowadzi instalację waszej amunicji na wybrany cel - oświadczył system.

    [] Wybrany cel: iracki ośrodek jądrowy.

    Falkon z ciekawości kliknął na przycisk Zmień i zobaczył listę, na której pomiędzy innymi obiektami na całym świecie figurowały Biały Dom i baza z której dopiero co wyleciał. Falkon szybko nacisnął 'Anuluj'.

    [] Wybierz typ instalacji :
    [] Minimalny: na obiekt zostaną zrzucone tylko bomby
    [] Normalny: na obiekt zostaną zrzucone bomby i rakiety
    [] Pełny: na obiekt zostanie zrzucony cały samolot

    Domyślnie system proponował drugi wariant i Falkon z zaniepokojeniem
    stwierdził że lepiej nie będzie się spierać.
    - Teraz zostanie przeprowadzone testowanie waszego samolotu. Niech pan zamknie oczy aby uniknąć urazów przy zmianie trybów. Silniki dziko zaryczały, i oczy Falkona jako żywo omal nie wyskoczyły z orbit od niesamowitego przeciążenia. Zaczęło się prawdziwe piekło: samolotem rzucało na wszystkie strony pikował w dół i wykonywał niesamowite wiraże ...
    W końcu porucznik przyszedł do siebie ciemność przed oczami ustąpiła i Falcon zobaczył jak latająca po całej kabinie mysz upadła na swoje miejsce.

    - Lecicie samolotem Lockheed F-22 z dwoma silnikami Pratt'a-Whitney'a - z niezmąconym spokojem oświadczył system.
    - Maksymalna szybkość 1451 mil na godzinę.

    [] Porada dnia: przetaktowanie częstotliwości turbiny ponad zalecaną przez producenta może zakończyć się awarią.

    - Do końca instalacji pozostało 0:34:16

    Ten sam dzień, 4:52. Niebo nad Irakiem.

    U dołu ekranu powoli przesuwał się pasek z procentami. System w międzyczasie reklamował Wiwars dla czołgów, łodzi podwodnych i piechoty morskiej, a także obiecywał wszystkim nabywcom wersji dla samolotów bezpłatny applet Kamikaze. Zmiana obrazków podziałała na
    Falkona usypiająco i z półdrzemki wyrwał go dźwięk systemu.
    Na radarze pojawiła się zielona kropka.
    - Wykryto nowe urządzenie: samolot przeciwnika - radośnie zakomunikował system.
    Falkon chciał już wykonać standardowy zwrot bojowy ale wtem zauważył przycisk 'Usunąć' i kliknął na niego myszką.
    - Jesteś pewny, że chcesz usunąć samolot przeciwnika? &#8211; podejrzliwie zapytał system.
    - Jeszcze by nie... - Falkon kliknął 'Tak'.

    Iracki myśliwiec przepadł z radaru.

    - Tak szybko? - zdziwił się porucznik. - No Microsoft daje!
    Falcon zaczął już z szacunkiem śledzić pojawiające się na ekranie
    reklamy Winwars dla pilotów niepełnosprawnych, jednak od tego zajęcia
    oderwała go rakieta, przelatująca tuż ponad samą kabiną.
    Falkon z niedowierzaniem obrócił się i zauważył iracki myśliwiec.

    - Co żesz, Twoja mać ... - wrzasnął Falkon i dopiero wtedy spostrzegł, że z niezauważonej wcześniej ikonki Kosz w rogu ekranu sterczy ogon samolotu.
    Porucznik szybko ze złością kliknął na ikonkę i nacisnął 'Opróżnić'

    [] Czy na pewno chcesz fizycznie zniszczyć samolot przeciwnika?
    [] Jego przywrócenie nie będzie możliwe uprzedził system.

    - TAK! - warknął Falkon wciskając przycisk myszy.
    Spod skrzydła wyleciał Sidewinder, pozostawiając biały puszysty ślad, pomknął naprzeciw nieprzyjaciela. Zajaśniał blask wybuchu i gorące odłamki nieprzyjacielskiej maszyny
    poleciały na ziemię. Jednak do spokoju było daleko. Pikający dźwięk uprzedził o nowym
    niebezpieczeństwie.

    - Wykryto nowe urządzenie : rakieta ziemia powietrze! &#8211; stwierdził system i popadł w zadumę.
    Na próżno Falkon klikał myszką widząc jak złowieszcza kropka zbliża się do centrum radaru. W końcu system wyrwał się z zamyślenia:

    [] Nie mogę znaleźć driverów dla tego urządzenia. Włóż dyskietkę z
    driveramii wciśnij OK.

    Z przekleństwem Falkon wcisnął 'Szukaj'.

    - Najbliższy odpowiednik: Ręczne granaty - objaśnił go system - Zainstalować?

    Falkon szarpnął za dźwignię wchodząc w manewr przeciwrakietowy. Było jednak już zbyt późno. Samolotem szarpnęła eksplozja. Wprowadziwszy z trudem samolot z nurkowania pilot kliknął na ikonce 'System'.
    Lewe skrzydło świeciło żółtymi kolorami - klapy i lotki. Ale ostatecznie i tak nieźle z tego wyszedł.
    Radar pokazał jeszcze dwa nieprzyjacielskie samoloty, ale one leciały z tyłu Falkona więc specjalnie go nie niepokoiły. Falcon wiedział że ta iracka ruina nie jest w stanie dogonić superszybkiego F-22. Jednak samoloty zbliżały się. Falkon z niedowierzaniem spojrzał na
    szybkościomierz i zrozumiał, że jego szybkość szybko spada.

    - Co za diabeł?! - wściekł się porucznik - Silniki przecież w porządku, i paliwa pełno!

    Ekran tymczasem zaczął wściekle migać i pojawizł się obrazek klepsydry. Wskaźniki zastygały w jednym położeniu, poruszały się krótkimi zrywami, po czym znów zastygały.

    - Niewystarczające zasoby wolnej pamięci - spuścił z tonu system
    - Wyłącz niepotrzebne zadania.

    Falkon wywołał listę zadań, próbując pojąć co oznaczają nazwy typu: 'winppl' lub 'v666apl'
    i które z nich są niepotrzebne. Tymczasem silniki prawie zamilkły, szybkość spadła do krytycznej: jeszcze trochę i samolot runie w dół. Ogłupiałe od takiej taktyki walki powietrznej irackie myśliwce przeleciały obok i zderzyły się tuż przed nosem Falkona.
    Porucznik tymczasem odszukał w spisie zadań wiersz 'Obserwacja przeciwnika' obok której w nawiasach było napisane:
    [Nie odpowiada], i wcisnął 'OK'.
    Ekran radaru zgasł za to samolot zaczął nabierać prędkości.

    Niebieski pasek pokazywał już 99% ... w końcu i 100.
    Falkon ze zdumieniem patrzył na ziemię pustynia na dole w niczym nie przypominała fotografii satelitarnej irackiego centrum jądrowego. Widać zrozumiał to także system bo w ślad za 100% na pasku pojawiło się 101.... potem 102.... Przy 106% ekran zrobił się niebieski i pojawił się napis:

    [] Błąd 000000e spowodowany przez moduł VXD0000(0) w module VXD428092(0)
    [] Możliwa normalna kontynuacja lotu.
    [] Możesz wcisnąć 'Eject' aby się katapultować:
    [] Uwaga! Przy katapultowaniu się, stracisz niezachowany samolot.

    Falkon jeszcze nie zamierzał się katapultować, tym bardziej że przed nim w końcu pojawiło się irackie centrum jądrowe. Pojąwszy że nie ma co dalej polegać na Microsofcie porucznik przygotował samolot do bombardowania ręcznego. Sprowadził samolot w dół czekając dopóki celownik systemu nie uchwyci celu.
    - Jest! - Falkon wcisnął przycisk.Coś zazgrzytało i wyskoczył nowy komunikat:

    [] Luk bombowy wykonał niedozwoloną operację i zostanie zamknięty.

    Z przekleństwem na ustach Falkon pociągnął dźwignię do siebie aby znowu podnieść maszynę w górę. Ale samolot szybko obniżał się. Porucznik panicznie klikał myszką po
    różnych menu szukając przyczyny.
    'Joystick nie odpowiada' - przeczytał w końcu.

    Zrozumiawszy, że przywrócić system do pracy może tylko restart, Falkon wyłączył i włączył zasilanie pulpitu.

    - Poprzedni lot był wykonany niewłaściwie - oświadczył mu system.

    [] Wciśnij dowolny klawisz w celu sprawdzenia całego samolotu

    - Do diabła -- wrzasnął Falkon, naciskając 'Anuluj'.
    Pojawił się ekran startowy Winwars 2002: system zaczął powoli się ładować. Do ziemi zostało już tylko kilkaset metrów. W końcu na ekranie pojawiło się:

    [] System uruchomiony w trybie awaryjnym
    [] W tym trybie wyłączone są systemy lotu i uzbrojenia.
    [] Możesz tylko jeździć po lotnisku.

    Zrozumiawszy, że więcej niczego zdążyć nie zrobi, Falkon wcisnął 'Eject', oczekując że teraz kabina zostanie odłączona a uderzenie za chwilę wyrzuci go w powietrze. Lecz zamiast tego na ekranie pojawiło się pytanie:

    [] Czy jesteś pewny, że chcesz się katapultować?

    - TAK !!! - z wściekłością zawarczał Falkon patrząc jak maszyna nieubłaganie zbliża się do ziemi.
    - Proszę Czekać trwa przygotowanie do katapultowania &#8211; niewzruszenie poinformował system i zapadł w zamyślenie ...
    pokaż całość

    +: l.....2, w...................z +3 innych
  •  

    #programowanie #chwalesie Ukończyłem kolejny program w c++. Pokazuje ile czasu poświęcam na dane rzeczy.
    Jak by ktoś chciał pobrać to tutaj może https://github.com/ironiron/PP
    Zrobiłem też pierwszy instalator na wersje 64bit. Z fartem( ͡° ͜ʖ ͡°)

    źródło: pp.jpg

  •  

    #chwalesie #programowanie
    Napisałem pierwszy program okienkowy na windowsa do sprawdzania stanu magazynowego. Bazuje na SQLite i c++ można go już pobrać z Githuba
    https://github.com/ironiron/baza
    A tak się to prezentuje

    źródło: Beztytułu.jpg

    +: l.........k, Anaris +4 innych
  •  

    #avr #elektronika #kiciochpyta #mikrokontrolery

    pokaż spoiler po wywołaniu funkcji program nie wraca do main


    Mam atmege 328p, obsługuje też przerwania, w głównej pętli wywołuje podprogramy i wszystko działa.
    Problem z tym że po jakimś czasie pracy procka wywołana funkcja nie wraca do miejsca wywołania. Nigdy nie dzieje się to w tym samym momencie, ale bardzo podobnym. Co ciekawe po wystąpieniu przerwania INT1 i jego zakończeniu wszystko wraca do normy na 1-3 cykle pętli while. podejrzewam że to coś z przepełnieniem stosu
    pokaż całość

    •  

      Może inaczej zapytam. Co może wywołać taką sytuację? To może poszukam u mnie w kodzie.

    •  

      @drzewa_w_linzu: Obsługa lcd zajmuje ci mnóstwo cennego czasu procesora.
      Kod mogłeś (nadal możesz) wrzucić na jakiś pastebin albo chociaż wybrać opcje z formatowaniem kodu, to jest nieczytelne okrutnie.
      Zazwyczaj wejście do obsługi przerwania powoduje zerowanie flagi ale przyczyna wystąpienia przerwania nie musi zniknąć i wtedy masz wrażenie, że uC utknął w ISR.
      Bez analizy całego kodu pomoc przypomina wróżenie z fusów. Może przepełnia się pamięć, może stos nadpisuje jakiś inny fragment pamięci, może gdzieś tej pamięci nie zwalniasz (buforSD?).
      pokaż całość

    • więcej komentarzy (13)

...to tylko najnowsze aktywności użytkownika drzewa_w_linzu

Zobacz wszystkie dodane znaleziska, komentarze i wpisy korzystając z menu powyżej.

Osiągnięcia (2)