Informator

Z support
Skocz do: nawigacja, szukaj

Wyzwanie: H ZOO

Projekt: H02 INFORMATOR

Przypomnij sobie[edytuj]

Przed rozpoczęciem tego projektu warto wrócić do lekcji:

  • generowanie dźwięków,
  • instrukcja warunkowa prosta,
  • instrukcja warunkowa złożona,
  • operatory logiczne,
  • operatory porównania,
  • pętle,
  • tablice,
  • urządzenia wejścia,
  • urządzenia wyjścia,
  • wyświetlacz.

Cel projektu[edytuj]

Projekt ma na celu stworzenie systemu informującego czym żywią się określone zwierzęta mieszkające w ZOO.

Zadanie 1[edytuj]

Opis[edytuj]

Tworząc tablicę pamiętaj o kolejności kroków jakie należy wykonać. Najpierw stwórz zmienną tablicową o konkretnym typie wartości jakie chcesz przechowywać w tej tablicy. Następnie uzupełnij tablicę elementami. Pamiętaj, że przy deklaracji tablicy musisz zadeklarować jej rozmiar, którego nie można później zmienić. Tak więc jeśli chcesz modyfikować tablicę w późniejszej części programu to na początku wypełnij ją domyślnymi wartościami. Przykładowo liczby 0 lub puste łańcuchy znaków.

W zadaniu utwórz tablicę w której zapiszesz nazwę zwierzaka i jego ulubiony pokarm. Każdy wiersz tabeli to inny zwierzak. Informacje o pokarmie poszukaj w Internecie lub wykorzystaj wskazówkę z zadania „Dowiedz się więcej”.

Zadanie 2[edytuj]

Opis[edytuj]

Wyświetl informacje zamieszczone w tablicy. Wykorzystaj pętle do nawigacji po tablicy. W pierwszym trybie (funkcji) kolejną informację wyświetlaj co 5s. Aby wprowadzić opóźnienie wykorzystaj bloczek <CZEKAJ>.

Przypomnij sobie jakie bloczki są potrzebne do prawidłowej pracy z wyświetlaczem:[edytuj]

  • włącz wyświetlacz (domyślnie wyświetlacz jest wyłączony, ta instrukcja powinna być użyta tylko raz),
  • wyczyść wyświetlacz (instrukcja wyczyści poprzednie zapiski na wyświetlaczu, np. logo producenta),
  • ustaw kursor (pozwala na wypisanie tekstu zawsze w tym samym miejscu),
  • wypisz na wyświetlaczu (wypisanie tekstu dołączonego z prawej strony bloczka),
  • wyświetl na wyświetlaczu (wyświetlenie powyżej zdefiniowanych tekstów i figur).

Pseudokod[edytuj]

Wyswietl-informacje-co-5s()
Fun wyswietl-informacje-co-5s()
   licz w górę z i od  i=0 do i<rozmiar-tablicy(tab-zwierzakow)-1 co 1 
      włącz wyświetlacz
      wyczyść wyświetlacz
      ustaw kursor
      wypisz na wyświetlaczu(NL)=tab-zwierzakow[i] 
      wyświetl na wyświetlaczu
      czekaj 5s

Zadanie 3[edytuj]

Podłączenie modułów[edytuj]

Głośniczek jest modułem cyfrowym. Podłącz go do pinu oznaczonego literką D (Digital) i znaczkiem ~. Znaczek ~ pozwala na większe możliwości sterowania np. częstotliwością lub wysokością dźwięku.

Opis[edytuj]

W kolejnym zadaniu wystarczy lekko zmodyfikować program poprzedni. Najlepiej na początku pętli dodać instrukcje odnośnie generacji dźwięku z głośniczka. Wykorzystaj bloczek <GENRUJ DŹWIĘK>.

Zadanie 4[edytuj]

Podłączenie modułów[edytuj]

Czujnik odległości jest modułem analogowym. Podłącz go pod specjalny pin oznaczony nazwą „distance”. Pin został umieszczony po lewej stronie od pinów oznaczonych literką A (Analog).

Opis[edytuj]

W drugim trybie (funkcji) do przełączania informacji wykorzystaj sterowanie gestem. Na początku sprawdź jakie wartości zwraca czujnik odległości jeśli jakiś obiekt znajdzie się blisko jego „oczek”. Do odczytania wartości wykorzystaj monitor portu szeregowego i instrukcję <WYPISZ NA PORCIE SZEREGOWYM (NL)>.

Dodatkowo należy stworzyć zmienną w której będzie przechowywany indeks aktualnie wyświetlonego zwierzaka. Ten indeks należy ustawić tylko raz na początku programu. Wykorzystaj do tego celu bloczek <INICJUJ>.

Pamiętaj aby na końcu pętli inkrementować tą zmienną. Druga sprawa to zawsze należy sprawdzać czy po inkrementacji nie przekroczyliśmy indeksu ostatniego elementu. Jeśli kolejna inkrementowana wartość jest poza tablicą to do zmiennej należy przypisać indeks pierwszego elementu czyli 0. Dodaj odpowiednią instrukcję warunkową z takim zabezpieczeniem.

Bloczek <CZEKAJ> możemy już usunąć ponieważ to ruch ręki będzie go zastępował.

Pseudokod[edytuj]

Inicjuj
   indeks-wyswietlanego-zwierzaka = 0
Fun wyświetl-informacje-po-gescie()
   jeśli czujnik-odległości > 600
      generuj-dźwięk
      włącz wyświetlacz
      wyczyść wyświetlacz
      ustaw kursor
      wypisz na wyświetlaczu(NL)=tab-zwierzakow[indeks-wyswietlanego-zwierzaka] 
      wyświetl na wyświetlaczu
      indeks-wyswietlanego-zwierzaka=indeks-wyswietlanego-zwierzaka+1
      jeśli (indeks-wyswietlanego-zwierzaka == rozmiar-tablicy(tab-zwierzakow)) 
	      indeks-wyswietlanego-zwierzaka = 0

Zadanie 5[edytuj]

Podłączenie modułów[edytuj]

Czujnik obrotu jest modułem cyfrowym. Podłącz go pod pin oznaczony literką D (Digital).

Opis[edytuj]

Wykorzystaj czujnik obrotu do wskazania zwierzaka o którym informacja ma zostać na wyświetlaczu.

Na początku zbadaj jak działa czujnik ruchu. Ustal dla jakiego zakresu jego wartości należy wypisać informację o konkretnym zwierzaku. Użyj monitora portu szeregowego do odczytania zwracanych wartości.