Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Atmega8 - Rysowanie przebiegu.

morchior 27 Feb 2016 12:51 834 3
  • #1
    morchior
    Level 8  
    Witam,
    Chciałbym narysować przebieg sygnału mierzonego przez przetwornik A/C mikrokontrolera.
    Niestety za nic w świecie nie potrafię tego zrobić.

    Code: c
    Log in, to see the code


    Więc po kolei. Najpier tworzę sobie tablicę o 83 polach(LCD PCD8544 84x48). Przesuwam po kolei każde pole w prawo, a w indeks 0 wpisuje aktualna odczytana wartosc. Jako że jest to char to nie chce nadpisac 0 indeksu 1 dlatetego, zapisuje go sobie do zmiennej i potem wprowadzam.
    Druga petla to juz sprawdzanie po kolei wartosci z tablicy (zaczynajac od konca) i wyswietlanie na okreslonym poziomie.

    Niestety ale jedyne co udaje mi się uzyskać to jedna pionowa linia na wyswietlaczu. A według mnie powinny być przesuwajace sie w lewo piksele na okreslonym poziomie w zależnosci od odczytu. Nie ma jeszcze kasowania wczesniejszych wartosci dlatego, powinno rysowac kreski w lewą stronę.

    Pomoże mi ktoś?

    Załączam jeszcze biblioteke do wyswietlacza:
    Code: c
    Log in, to see the code
  • #2
    User removed account
    User removed account  
  • #3
    morchior
    Level 8  
    Tak wiem jestem okropny w te klocki.
    Więc tak, teraz używam timera do przerwania. Mógłbyś mi wytłumaczyć czemu mam nie używać free runu? Floaty zastąpiłem intigerami.

    Efekty: piksele wyświetlają się na określonych poziomach. Niestety są między nimy spore odstępy. Poza tym gdy są przesuwane w lewo(aby był efekt zmieniającego się przebiegu) nie są aktualizowane nowe wartości w tablicy i wykres pomiary w końcu znikają...

    Tak wiem, że nadal nie rysuję linii tylko wyświetlam same piksele. Jutro postaram się to poprawić.

    Odczyty nie są zadowalające. Z czego to może wynikać? Za duży kwarc? Słaba filtracja ?
    Code: c
    Log in, to see the code
  • #4
    User removed account
    User removed account