AVRPascal 3.5 z UnoLib 1.2

AVRPascal to środowisko programistyczne (IDE) przeznaczone do programowania mikrokontrolerów z rodziny AVR (ATtiny, ATmega) w języku Pascal. Wykorzystuje kompilator Free Pascal do kompilowania kodu źródłowego oraz AVRdude, który umożliwia zapisanie kodu w pamięci mikrokontrolera z użyciem programatora USBasp lub Arduino. AVRPascal posiada:

  • podświetlaną składnię, w przypadku błędów kompilacji wskazuje linię kodu, w której wystąpił błąd
  • podpowiedzi parametrów funkcji i procedur oraz pól typów rekordowych i metod typów klasowych
  • możliwość pracy z wieloma plikami w zakładkach
  • możliwość konfiguracji fuse-bitów mikrokontrolera
  • możliwość automatycznego wykrycia obsługiwanych urządzeń USB
  • możliwość formatowania kodu źródłowego
  • monitor portu szeregowego dla płytek Arduino

Społeczność i kod

  • Nowości i dyskusje na temat programu i biblioteki można znaleźć na oficjalnych subredditach AVRPascala i UnoLib.
  • Bieżące aktualizacje biblioteki UnoLib są dostępne w repozytorium GitHub.
  • Dla wygody społeczności przygotowano dedykowane domeny avrpascal.org (anglojęzyczna) i avrpascal.pl (polskojęzyczna), które przekierowują na niniejszą stronę.

Recenzje

UnoLib to biblioteka open source napisana w Pascalu, przeznaczona na platformę Arduino Uno (mikrokontroler ATmega328p). Jest tłumaczeniem części standardowej biblioteki Arduino, z niezbędnymi modyfikacjami. Dodano także obsługę liczb stało- i zmiennoprzecinkowych. Moduły:

  • analog.pas - obsługa pinów analogowych
  • defs.pas - definicje stałych, operacje na bitach, obsługa portów
  • dht.pas - obsługa czujników DHT11/22
  • digital.pas - obsługa pinów cyfrowych
  • ds1302rtc.pas - obsługa zegara czasu rzeczywistego ds1302
  • fix16.pas - obsługa liczb stałoprzecinkowych
  • float32.pas - obsługa liczb zmiennoprzecinkowych (we współpracy z @Dzandaa)
  • hardwareserial.pas - obsługa portu szeregowego
  • i2c.pas - obsługa magistrali I2C (autorstwa @Dzandaa, podziękowania dla @ccrause)
  • liquidcrystal.pas - obsługa wyświetlaczy LCD
  • pulse.pas - procedury i funkcje odczytujące impuls na pinie
  • stringutils.pas - funkcje pomocnicze dotyczące łańcuchów znaków (autorstwa @Dzandaa)
  • timer.pas - procedury i funkcje związane z czasem
  • tone.pas - generowanie fali dźwiękowej

Do pobrania
Data Plik Rozmiar Uwagi
2025.12.27 AVRPascal_PiO.txt  7,15 KB Pytania i odpowiedzi (FAQ)
2025.12.14 AVRPascal_Zmiany.txt 13,14 KB Lista zmian
2025.09.21 AVRPascal_JakZaczac.pdf 293,81 KB Poradnik dla początkujących
2025.11.13 AVRPascal_Instrukcja.pdf 479,44 KB Instrukcja
2025.12.14 AVRPascal.3.5.0.2619.Setup.Win.zip 18,11 MB Instalator aplikacji (Windows 64-bit). Programator USBasp wymaga zainstalowanego sterownika libusb. Płytki Arduino wymagają zainstalowanych sterowników dla Windows.
2025.12.14 AVRPascal.3.5.0.2619.Setup.Linux.zip 14,34 MB Paczka DEB (Linux 64-bit). Aby korzystać z programatora USBasp lub płytki Arduino należy uruchomić program z uprawnieniami administratora albo dodać zalogowanego użytkownika do grupy dialout.
2025.12.14 AVRPascal.3.5.0.2619.Portable.Linux.zip  22,38 MB Przenośna paczka ZIP (Linux 64-bit). Umożliwia tworzenie niestandardowych instalatorów dla dystrybucji innych niż te oficjalnie wspierane (np. Arch Linux, Fedora, openSUSE). Ikony programu oraz plik .desktop znajdują się w folderze share i mogą zostać wykorzystane przez niestandardowe instalatory.
2025.12.14 AVRPascal.3.5.0.2619.Setup.Mac.zip 13,01 MB Paczka PKG (MacOS 64-bit). Instalator nie jest podpisany certyfikatem Developer ID i jest kompatybilny z systemami do wersji 10.14 (Mojave) włącznie. W nowszych systemach możliwe jest ominięcie blokady poprzez użycie metody Control-kliknięcie > Otwórz.
2025.12.14 AVRPascal.3.5.0.2619.Setup.Bsd.zip  19,68 MB  Eksperymentalna paczka PKG (FreeBSD 13 64-bit). Aby korzystać z programatora USBasp lub płytki Arduino należy uruchomić program z uprawnieniami administratora albo dodać zalogowanego użytkownika do grup dialer i operator. Jeśli wykrywanie urządzeń USB nie zadziała, należy zdefiniować reguły devfs dla grupy operator (szczegóły w pliku Installation.txt).
Licencja

AVRPascal jest darmowy (bez otwartego kodu źródłowego) i może być używany bezpłatnie w każdym dozwolonym prawem celu (np. hobbystycznym, edukacyjnym, komercyjnym). Zastosowanie komercyjne obejmuje tworzenie, dystrybucję i sprzedaż oprogramowania oraz urządzeń z kodem źródłowym lub binarnym wygenerowanym w AVRPascalu, z uwzględnieniem warunków licencji bibliotek zewnętrznych, takich jak UnoLib. W projektach edukacyjnych i komercyjnych zaleca się podanie informacji, że kod został stworzony w AVRPascalu, np. w dokumentacji lub opisie produktu. Darmowa redystrybucja jest dozwolona tylko w odniesieniu do niezmienionego instalatora, przy czym zalecane jest udostępnianie oficjalnego odnośnika do instalatora ze strony akarwowski.pl. Włączenie do innych pakietów wymaga pisemnej zgody autora. Sprzedaż środowiska AVRPascal jest zabroniona.

Oprogramowanie AVRPascal jest dostarczane ‘takie, jakie jest’, bez gwarancji wsparcia technicznego. Oznacza to, że chociaż autor dołożył wszelkich starań, aby program działał poprawnie, nie udziela żadnych gwarancji i nie ponosi odpowiedzialności za jakiekolwiek szkody (bezpośrednie, pośrednie, przypadkowe lub następcze) wynikłe z użytkowania lub niemożności użytkowania oprogramowania.

W trosce o stały rozwój narzędzia, Autor zachęca użytkowników AVRPascala do zgłaszania wszelkich błędów i propozycji nowych funkcji. Informacja zwrotna ma kluczowe znaczenie dla poprawy stabilności i użyteczności programu.

Projekt AVRPascal jest całkowicie niezależny od wcześniejszego, prawdopodobnie nieaktywnego projektu udostępnianego na stronie avrpascal.com.

AVR® jest zarejestrowanym znakiem towarowym firmy Microchip Technology Inc., używanym tutaj wyłącznie w celach opisowych.

AVRPascalDbg 3.5

Debuger do AVRPascala, oparty na protokole DebugWire. Komunikuje się z mikrokotrolerami AVR za pomocą konwertera USB-UART, zainstalowanego w systemie operacyjnym jako wirtualny port szeregowy. Współpracuje z adapterami opartymi na układach: FT232, PL2303 oraz CH340. AVRPascalDbg posiada podstawowe funkcje debugera takie jak uruchamianie, przerywanie i wznawianie programu, dodawanie punktu wstrzymania działania programu (breakpoint) oraz śledzenie zmian wartości rejestrów mikrokontrolera. Ograniczeniem wersji demonstracyjnej debugera jest maksymalny rozmiar pamięci flash, którą można wczytać do mikrokontrolera, wynoszący 350 bajtów.

Do pobrania
Data Plik Rozmiar Uwagi
2025.12.14 AVRPascalDbg_Zmiany.txt 2,67 KB Lista zmian
2025.11.13 AVRPascalDbg_Instrukcja.pdf 377,85 KB Instrukcja
2025.12.14 AVRPascalDbg.3.5.0.339.Setup.Win.zip 7,89 MB Instalator (Windows 64-bit) zawierający plug-in debugera oraz plik licencji DEMO. Konwerter wymaga zainstalowania sterownika VCP pobranego ze strony internetowej producenta (Waveshare dla FT232, Prolific dla PL2303, Quinheng dla CH340).
2025.12.14 AVRPascalDbg.3.5.0.339.Setup.Linux.zip 7,18 MB Paczka DEB (Linux 64-bit) zawierająca plug-in debugera oraz plik licencji DEMO.

Kurs programowania mikrokontrolerów AVR w Pascalu

Arduino na miarę naszych potrzeb - seria artykułów popularyzatorskich opisujących budowę układów elektronicznych z mikrokontrolerami AVR oraz ich programowanie w języku Pascal.

Do pobrania
Data Plik Rozmiar Uwagi
2025.09.27 KursAVR_00.pdf 214,62 KB Opis języka Pascal i specyfika programowania AVR-ów.
2025.12.28 KursAVR_01.pdf 682,30 KB Część 1 - dioda LED.
2025.12.28 KursAVR_01_Kod.zip 386,00 B Kod źródłowy do części 1 kursu.
2025.09.27 KursAVR_02.pdf 501,19 KB Część 2 - miganie diodami LED.
2024.11.01 KursAVR_02_Kod.zip 722,00 B Kod źródłowy do części 2 kursu.
2025.09.27 KursAVR_03.pdf 545,41 KB Część 3 - obsługa przycisku.
2024.11.01 KursAVR_03_Kod.zip 3,67 KB Kod źródłowy do części 3 kursu.
2025.09.27 KursAVR_04.pdf 1,70 MB Część 4 - obsługa wyświetlaczy 7-segmentowych.
2025.06.09 KursAVR_04_Kod.zip 2,91 KB Kod źródłowy do części 4 kursu.

Aktualizacja treści: 2025.12.25