www.eprace.edu.pl » system-wrzutnikowy » Opis budowy i oprogramowania urządzenia

Opis budowy i oprogramowania urządzenia

"Czymże jest ciało bez duszy?" - te słowa idealnie pasują do opisu układu zawierającego mikrokontroler. W tym rozdziale przybliżona zostanie idea zaawansowanego programowania systemów wbudowanych opartych o procesory ośmiobitowe AVR. W sposób opisowy przedstawiona zostanie większość bloków funkcjonalnych a podsumowaniem rozważań na temat oprogramowania będą algorytmy działania programów sterownika i panelu klienckiego, doskonale obrazujące „złożenie” końcowego programu z małych, przygotowanych wcześniej „klocków”. Bardzo duża objętość kodów źródłowych spowodowała brak możliwości ich umieszczenia w treści pracy.

Prezentowane materiały pokażą jak bardzo zmieniło się podejście autora jako programisty do problemu tworzenia wydajnego, nie blokującego oprogramowania. Wcześniejszy brak wystarczającej wiedzy skutkował tym, że tworzone programy teoretycznie działały poprawnie. Jednak merytorycznie pozostawiały wiele do życzenia. Co więcej - nie przykładanie wagi do ostrzeżeń generowanych przez kompilator potrafiło doprowadzić do powstawania błędów, które niejednokrotnie były niemożliwe do wychwycenia a objawiać się mogły np. niekontrolowanymi restartami mikroprocesora. Wszak program kompilował się poprawnie. A taki szczegół jak np. zmienna indeksująca tablicę wychodząca poza zakres tablicy, czy nieprawidłowe rzutowanie typów - kto by się tym przejmował?

Pisząc te słowa autor ma świadomość, że jest jeszcze wiele rzeczy których nie zna. Pomimo tego, iż w języku C porusza się w tej chwili swobodnie - w dalszym ciągu się go uczy. Pomaga mu w tym pasja, a także wspaniałe narzędzie, jakim jest ogólnodostępne i darmowe środowisko Eclipse z tzw. wtyczką AVR. Dziś nie wyobraża sobie już powrotu do AVR Studio. Co prawda na początku przygody z tym środowiskiem przeszkadzał mu brak porządnego symulatora AVR. Jednak na obecnym etapie swojego rozwoju może już z całą pewnością stwierdzić: symulator dla tak małych procesorów jest zbędny. Wszystko zależy od programisty, jego umiejętności, świadomości w podejmowanych działaniach, sposobu rozwiązywania problemów, słowem: abstrakcyjnego myślenia. Stąd materiały zawarte w tym rozdziale pokażą jego ewolucję. Postara się poprowadzić Czytelnika od pierwszych rozważań teoretycznych nt. sposobu podejścia do programowania, poprzez pokazanie implementacji obsługi niektórych peryferiów, skończywszy na ukazaniu prostoty stosowania dobrze przygotowanych funkcji bibliotecznych w dalszych projektach. Autor zaprezentuje także podejście do budowy części sprzętowej urządzenia w formie uniwersalnej bazy dla różnego rodzaju zastosowań, pozwalającej na przystosowanie urządzenia do nowych zadań wyłącznie poprzez wymianę oprogramowania sterującego.



Podrozdzialy w tym rozdziale:


Od pomysłu do realizacji – uniwersalny sterownik przedpłatowy „SPA – 1n”


Schematy urządzenia, aspekty mechaniczne, opis techniczny


Programowanie liniowe a programowanie wątkowe


AVR z mnóstwem niezależnych timerów - prosta sztuczka


IO cyfrowe w ujęciu nie blokującym, obsługa wrzutnika monet


HD44870 - wyświetlanie buforowane, menu urządzenia


TRIG - reakcja na zbocze sygnału


DS18B20 - obsługa kilku czujników z pominięciem funkcji Search ROM


Komunikacja RS485 Master / Slave - zdarzeniowy automat sekwencyjny


Magistrala I2C - zegar czasu rzeczywistego PCF8583


Pamięć nieulotna EEPROM


Algorytmy działania programów modułu bazowego i panelu klienta


komentarze

Copyright © 2008-2010 EPrace oraz autorzy prac.