Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Europejski lider sprzedaży techniki i elektroniki.
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

yego666 16 Paź 2017 20:11 6135 9
  • Jeśli ktoś myślał, że polski kalkulator programowalny zakończył swoją epicką podróż, to chyba przedwcześnie. Chciałbym przedstawić szanownym Kolegom konstrukcję opartą na układzie MC14009 oraz na prostym mikrokontrolerze.
    Na razie układ został zmontowany na płytce jednostronnej, a program przetestowany i "odrobaczony". Obudowa kalkulatora jest również gotowa, a jedynymi elementami brakującymi do domknięcia projektu są: czerwona szybka filtru na wyświetlacz oraz siedem klawiszy ( w miejsce tych z niewłaściwymi inskrypcjami ), ale to chyba już tylko kosmetyka, stąd uznałem, że mogę swój projekt przedstawić szerszemu gronu - o ile w ogóle znajdzie się jeszcze ktoś, kogo ten temat wciąż interesuje.
    Na początek pokażę kilka zdjęć działającego prototypu, a jeśli zbierze się kilku zainteresowanych, to napiszę coś więcej o cechach kalkulatora i załączę zdjęcia konstrukcji zmontowanej w obudowie.
    Na początek klawiatura od znanego wszystkim kalkulatora BRDA 12U. Taką właśnie użyłem w swojej konstrukcji. Powód jest taki, że ten kalkulator jest wciąż łatwo dostępny na rynku i byłby doskonałym dawcą "organów". U siebie użyłem klawiaturę oraz obudowę, ale wyświetlacz również byłby wystarczający, gdyby dwunastopozycyjny wyświetlacz nie był dostępny ( tryb Short Display jest również wbudowany w programie i przetestowany, co jest pokazane na zdjęciach z tagiem "short" w tytule ).
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami
    Wszystko zaczęło się od układu testowego, który pozwolił mi zbadać wszystkie potrzebne charakterystyki i funkcje układu MC14009, których nie było w danych technicznych producenta.
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami
    Poprzez złącze RS232 i trochę programu ( oraz oczywiście terminalu szeregowego ) można się komunikować z układem testowym. Tak właśnie powstał "engine" całej konstrukcji.

    Kalkulator ( jeszcze nie ma swojej nazwy ), jak wspomniałem wcześniej, może działać zarówno w trybie z pełnym ( 12 pozycji ) jak i krótkim ( 9 pozycji ) wyświetlaczem LED, co widać na poniższych zdjęciach.
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami





    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Oczywiście oprócz trybu kalkulatora, który liczy to co mu zadamy bezpośrednio poprzez wciskanie klawiszy, mamy tez tryb wykonywania wprowadzonego programu jednym ciągiem, lub krok po kroku.
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Tryb "Learn" jest kombinacją funkcji znanych z układu MC14011 w trybach "Clear" i "Learn", i w zasadzie powinien się nazywać "Edit". I znów, poniższe zdjęcia trybu Edit w wersji Short i Full.
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    No, chyba wystarczy tych zdjęć jak na początek. Następnym razem pokażę całość zmontowanej i działającej konstrukcji.
    Dodam jeszcze, że cały układ jest zasilany z pojedynczego ogniwa Li-Ion o pojemności 4 Ah, co pozwala na nieprzerwaną pracę układu przez około 60 godzin bez ładowania.

    Mam nadzieję, że swoją konstrukcją nie naruszam niczyich praw autorskich, konstruktorskich czy jakichkolwiek innych.

    Przepraszam wszystkich za to iż niektóre zdjęcia są przekręcone, ale nie wiem jak to uładzić. U mnie w przeglądarce są poprawnie zorientowane :( .

    I jeszcze na koniec zdjęcie strony elementów :
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami


    Fajne!
  • #3 17 Paź 2017 09:54
    Mikroprocesorowiec
    Poziom 11  

    Też ciekawi mnie co robi mikrokontoler, jak jest połączony z układem kalkulatora. Z opisu wynika, że jak na razie tylko odczytuje dane z wyświetlacza, może także symulowac klawiaturę.
    Z tematem podłączenia mikrokontrolera z układem kalkulatora juz się spotkałem. Nie pamiętam czy był to projekt, czy pomysł na projekt. Raczej tylko pomysł, bo kalkulator miałbyc swego rodziaju FPU. A jak wiadomo, takie kalkulatory szybkościa nie grzeszą.

  • #4 17 Paź 2017 13:12
    yego666
    Specjalista PLD

    Najpierw obiecane fotki zmontowanej całości.
    Na razie jeszcze nie montuję ogniwa w środku, gdyż czeka mnie jeszcze praca z wymianą klawiszy w górnych trzech rzędach ( oczywiście jeśli znajdę kogoś, kto "wydrukuje" mi te klawisze na drukarce 3D ), i instalacja czerwonego filtru na wyświetlacz.
    Wtedy będzie już wszystko gotowe.
    Widać na jednym zdjęciu napis "BRDA 12U" na obudowie.
    Jak wspomniałem wcześniej, jeden nieszczęsny egzemplarz musiał na ochotnika zgłosić swoje części do przeszczepu.
    Od spodu obudowy odciąłem wnękę na baterie, by zyskać miejsce na nową płytkę, która jest dużo większa niż oryginalne flaki Brdy 12U.
    Wyświetlacz pochodzi z innego kalkulatora TI-59, który cierpiał na nieuleczalną chorobę jednostki centralnej i również postanowił zostać honorowym dawcą wyświetlacza.

    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannamiKalkulator programowalny z MC14009, z pamięcią ciągłą i fontannamiKalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Wydaje mi się, że ten egzemplarz pochodzi od Gembary, bo ten od Ciebie chyba mam w układzie testowym, ale może być i przeciwnie :) .

    " Co mikrokontroler robi ? " Dobre pytanie, ale chyba należałoby zapytać czego nie robi ...
    Nie wykonuje obliczeń, które robi MC14009.
    Poza tym robi wszystko, czyli :
    - czyta i interpretuje klawiaturę,
    - czyta stan wyświetlacza kalkulatora i dokonuje jego konwersji oraz interpretacji w zależności od trybu pracy (RUN/EDIT), trybu obsługi wyświetlacza ( 9/12 pozycji ), trybu oszczędzania energii i od ustawienia jasności wyświetlacza,
    - wykonuje wszystkie funkcje układów MC14010 i MC14011,
    - zachowuje i odtwarza dane i program w pamięci nieulotnej,
    - synchronizuje wszystkie swoje działania z przebiegami układu kalkulatora.
    - pilnuje porządku w całym swoim królestwie.

    Z grubsza to tyle. Jest tego oczywiście dużo więcej, ale to już detale, które na razie pozostaną tajemnicą autora :) .
    Co do schematu, to jest on blokowo bardzo podobny do tego co namalowałem z dziesięć lat temu. Różnice są nieistotne na tym poziomie opisu.

    Początkowo miałem zamiar zrobić coś strasznie wypasionego, ale po namyśle doszedłem do wniosku, że będzie zabawniej gdy to co robię będzie naśladowało pierwowzór, i tak też się stało. Zachowałem nawet oryginalne przyporządkowanie kodów operacji wewnętrznych, tak jak to opisano w instrukcji kalkulatora Elwro 190 - o ile się nie mylę.
    Co do wydajności, to nie jest to demon szybkości obliczeń, ale nie o to w tym projekcie chodziło :)

  • #6 17 Paź 2017 14:39
    yego666
    Specjalista PLD

    Procesor zasilam napięciem 5 V a liczydło napięciem 7.5 V.
    W ten sposób każdy ma to co lubi i się nie gryzą.

    Może warto spojrzeć jak na klawiaturze zostały rozlokowane funkcje trybu RUN. Widać to na rysunku poniżej. Osobną sprawą są funkcje w trybie EDIT. Niestety nie narysowałem ich ułożenia. Może za kilka dni ...

    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Jakość jest raczej robocza, ale nie umniejsza to wartości informacyjnej obrazka.

  • #7 17 Paź 2017 22:32
    fotomh-s
    Poziom 16  

    Wybaczcie mały offtop ale masz może datasheet tego wyświetlacza? Walają mi się chyba 2 sztuki takich i dobrze by było mieć na nie jakieś "papierki".

    A swoją drogą to może zrobisz jakiś film pokazujący sprzęt w działaniu. Sam interesuję się kalkulatorami programowalnymi i też myślałem o budowie jednego. Aktualnie skończyło się na napisaniu aplikacji na PC oraz sofcie dla nie tak dawno kupionego Epsona HX-20 :-) Może uda się dostać klawiaturę POS która się nadaje jako baza do budowy takiego biurkowego kalkulatora programowalnego, potem tylko procek + jakiś wyświetlacz i można kombinować.

  • #8 17 Paź 2017 23:14
    yego666
    Specjalista PLD

    W załączniku znajdziesz Service Manual kalkulatora TI-59.
    Gdzieś blisko początku ( okolo 5 czy 10 strony ) znajdziesz pinout i schemat tego wyświetlacza. Jego charakterystyki badałem eksperymentalnie, za pomocą ohmomierza.

    Co do filmiku, to chyba mało interesujące z technicznego punktu widzenia, jednak może gdyby było więcej zainteresowanych posiadaniem lub samodzielnym skonstruowaniem / złożeniem takiego kalkulatora, mógłbym założyć jakąś kampanię crowdfundingową i wtedy taki filmik byłby całkiem na miejscu.
    Niestety, sądząc po zainteresowaniu tematem na tym Forum, raczej nie wróżę wielkiego powodzenia takiej kampanii, ale temat jest otwarty i wszystko się może zdarzyć. Niemniej, dzięki za pomysł :).

  • #9 18 Paź 2017 08:57
    pawlik118
    Poziom 22  

    yego666 napisał:
    Procesor zasilam napięciem 5 V a liczydło napięciem 7.5 V.
    W ten sposób każdy ma to co lubi i się nie gryzą.

    Może warto spojrzeć jak na klawiaturze zostały rozlokowane funkcje trybu RUN. Widać to na rysunku poniżej. Osobną sprawą są funkcje w trybie EDIT. Niestety nie narysowałem ich ułożenia. Może za kilka dni ...

    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Jakość jest raczej robocza, ale nie umniejsza to wartości informacyjnej obrazka.


    Hej, czy standardowy kalkulator BRDA 12U ma też te dodakowe funckje "RUN"? Tzn chodzi mi o sin, pi , logx itp. ?

  • #10 18 Paź 2017 10:28
    yego666
    Specjalista PLD

    Standardowa Brda 12U ich nie ma, ale już Brda 14S jest trochę bogatsza, choć wciąż nie jest programowalna. Porównaj na zdjęciu poniżej.
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Znalazłem też pełny schemat ułożenia funkcji na klawiaturze mojego kalkulatora. Niektóre klawisze posiadają nawet po 4 różne funkcje. Na przykład weźmy taki klawisz BST. W trybie RUN dziala on tak, że wyszukuje w programie komendy R/S przed bieżącą wartością Licznika Programu i przestawia go na adres tuż przed tą komendą ( o ile znajdzie taką ). Po wciśnięciu klawisza F ten sam klawisz ściemnia wyświetlacz LED o jeden stopień jasności. W trybie EDIT ten sam klawisz zachowuje sie jak każdy inny klawisz BackStep, a z klawiszem F wstawia w bieżącej pozycji instrukcję NOP i cofa Licznik Programu przed ten NOP.
    Inne klawisze sa podobnie obłożone funkcjami, gdyż klawiszy jest niewiele, a funkcji całkiem sporo. Na zdjęciu poniżej jest pokazany pełen układ funkcji na klawiaturze we wszystkich możliwych konfiguracjach.

    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Jako że sam definiowałem wszystkie klawisze, mogłem sobie pozwolić na taki układ jaki uznałem za najlepszy. I tak procesor zamienia to na różne inne układy zależnie od sytuacji.
    Gwiazdki przy niektórych funkcjach oznaczają, że dana funkcja jest funkcją systemu operacyjnego i nie może być użyta jako funkcja programu użytkownika ze zrozumiałych względów.

    Pewnie niektórych Kolegów zainteresuje jak wszystkie podzespoły są połączone w kalkulatorze. Poniższy obrazek pokazuje schemat blokowy urządzenia.

    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

    Sądzę, że obrazek jest samodokumentujący, więc na razie nie będę go szerzej komentował. Jeśli coś jednak nie jest jasne, proszę pytać.

    Po namyśle uznałem, że mały filmik - tak jak kolega fotomh-s sugerował wcześniej - nie zaszkodzi. Nie wiem jak się on będzie prezentował, ale spróbować nie zaszkodzi. Najpierw kalkulator oblicza silnię z liczby 12, następnie przeglądamy kolejne kroki programu, który oblicza silnię, a na końcu ten sam program oblicza silnię z liczby 5. Nic nadzwyczajnego, ale widać tutaj jak kalkulator pokazuje kolejne kroki wykonywanego programu.



    Z czerwonym filtrem na wyświetlaczu całość prezentuje się nieco lepiej, a i wyświetlana treść jest lepiej widoczna.
    Kalkulator programowalny z MC14009, z pamięcią ciągłą i fontannamiKalkulator programowalny z MC14009, z pamięcią ciągłą i fontannami

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME