Elektroda.pl
Elektroda.pl
X
PCBway
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Minikomputer programowany w... LISPie

ghost666 27 Sie 2019 20:22 570 0
  • Minikomputer programowany w... LISPie
    Stworzony w 1958 roku LISP jest jednym z najstarszych języków programowania i wydawać by się mogło, że nie jest już używany. Ale jeśli chcesz bawić się 61-letnim językiem, możesz to zrobić w zgrabny sposób za pomocą modułu Visible Lisp Computer. To interpreter LISPa, który wyświetla zawartość swojego obszaru roboczego Lisp na wyświetlaczu OLED.

    Jest to zmodyfikowana wersja interpretera uLisp Technoblogy dla modułów z układami ze rdzeniem ARM, zaprojektowana do pracy na Adafruit ItsyBitsy M0 lub innych płytach opartych na układzie Microchip ATSAMD21E na swojej płycie prototypowej, podłączonej do wyświetlacza OLED 64 × 48 przez I²C.

    Moduł uLisp posiada obszar roboczy na 3072 wolnych obiektów Lisp (każdy po 8 bajtów), który dokładnie odpowiada 3072 pikselom (64 × 48) wyświetlacza. Prawdopodobnie jednak program będzie działał również na większych wyświetlaczach OLED opartych na sterowniku SSD1306.

    Wyświetlacz pokazuje wolne obiekty Lisp w kolorze czarnym, a gdy obiekt jest w użyciu, odpowiadający mu piksel zmienia kolor na biały, a od czasu do czasu zobaczyć można usuwanie bezużytecznych elementów, odzyskując obiekty, do których nie można już uzyskać dostępu.

    Minikomputer programowany w... LISPie


    Schemat połączenia jest dość prosty i wystarczy dodatkowo dodać oporniki po 4,7 kOhm dla sygnałów I²C (SDA i SCL). Następnie można podłączyć płytkę do komputera poprzez USB i uzyskać dostęp do połączenia z systemem poprzez terminal szeregowy. Po pierwszym uruchomieniu modułu wyświetlacz jest całkowicie czarny. Jeśli wprowadzimy funkcję Fibonacciego, taką jak poniżej:

    Kod: lisp
    Zaloguj się, aby zobaczyć kod


    Wyświetlany na ekranie będzie rząd białych pikseli rozpoczynający się w lewym górnym rogu, reprezentujący serię obiektów Lisp.

    Następnie można uruchomić tę funkcję za pomocą wpisania np. (Fib 10) lub (Fib 16) lub z dowolną inną liczbą, która jest wystarczająco mała, aby zmieściła się w pamięci układu, a zobaczysz, jak wyświetlacz zapełnia się sam, dopóki nie zostanie w pełni zapełniony. Następnie oprogramowanie zacznie usuwać bezużyteczne elementy z pamięci. To zachowanie i program wyjaśniono bardziej szczegółowo w poście Technoblogy na temat tego projektu.

    Aby zestawić taki interpreter samodzielnie, potrzebny jest moduł Adafruit ItsyBitsy M0, a także wyświetlacz OLED.

    Źródło: https://www.cnx-software.com/2019/08/15/the-visible-lisp-computer-runs-on-adafruit-itsybitsy-m0-board/

    Fajne! Ranking DIY
    O autorze
    ghost666
    Tłumacz Redaktor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 napisał 9365 postów o ocenie 6950, pomógł 157 razy. Mieszka w mieście Warszawa. Jest z nami od 2003 roku.
  • PCBway