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

Kalkulator na ATmega8 2+2=4

albercik506 07 Kwi 2009 13:11 8241 18
  • Kalkulator na ATmega8 2+2=4

    Kalkulator na ATmega8, co tu dużo pisać. Obsługuje nawiasy, jedna komórka pamięci, *, +, -, /. Klawiatura zabezpieczona jest diodami.

    Układ posiada gniazdo do programatora
    http://mirley.firlej.org/programator_na_usb_usbasp
    który zrobię za jakiś czas. Programowałem pożyczonym:P

    Schemat ideowy i montażowy zrobiony w eaglu zamieszczam w pliku kalk, w drugim pliku jest program napisany w c.

    układ jest dosyc odporny na małe błedy montazowe.

    Kalkulator na ATmega8 2+2=4

    Kalkulator na ATmega8 2+2=4


    ps.Zapomniałem dodać, że Ac to komórka pamieci a E to kasowanie ostatniego znaku wprowadzonego na wyswietlacz

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    albercik506
    Poziom 9  
    Offline 
    albercik506 napisał 35 postów o ocenie 0, pomógł 0 razy. Mieszka w mieście Bydgoszcz. Jest z nami od 2008 roku.
  • PCBwayPCBway
  • #2
    k4be
    Poziom 31  
    Żeby było przydatne, powinien dzielić, mnożyć, potęgować liczby zespolone, przeliczać je z postaci wykładniczej (kąty w ° i rad) na algebraiczną i z powrotem, i umożliwiać obliczenia w notacji wykładniczej. To i tak znacznie mniej, niż możliwości tak mocnego mikrokontrolera, i to jeszcze z gotowym wyświetlaczem alfanumerycznym.
    Program wygląda mi na wyjątkowo skomplikowany, ale nie wiem czy można napisać lepiej bo nie próbowałem.
    Jak sprawdza się (szybkość, rozmiar kodu, dokładność) zastosowanie obliczeń zmiennoprzecinkowych udostępnianych przez kompilator C? Na czym polega 'zabezpieczenie klawiatury diodami' i co to za diody (nie mam Eagle)?
  • PCBwayPCBway
  • #3
    joy_pl
    VIP Zasłużony dla elektroda
    Ścieżki wyglądają beznadziejnie, ale to jeszcze jakoś ujdzie. Lecz luty to już masakra bierzesz się za programowanie a nie potrafisz nawet poprawnie lutować... A tak w ogóle nie masz problemów z poprawnym działaniem całości?
  • #4
    S.e.n.t.i.n.e.l
    Poziom 11  
    Pamiętam, że kiedyś też zrobiłem takie cudo lecz nie na AVR ale na '51. Bardzo fajna sprawa takie urządzenie zwłaszcza gdy do uK jest podłączona klawiatura i wyświetlacz, stwarza to dużo możliwości. Osobiście odpalałem różne programy na moim 'kalkulatorze'.

    Pozdrawiam Adam
  • #5
    ProeXtreme
    Poziom 12  
    Te ścieżki były robione ręcznie? Po co te diody przy każdym przycisku?
  • #6
    DaKKi
    Poziom 16  
    hmm rzeczywiście nie wygląda to za najlepiej i zastosowania praktycznie nie ma :P
    Rozumiem, że zrobiony w celach edukacyjnych, jeżeli to pierwsza tego typu konstrukcja to nie jest najgorzej.
    Tylko powiedz czym robiłeś ścieżki, bo dosyć "oryginalne" wyszły :D
  • #7
    kriss68
    Poziom 20  
    Płytka wygląda jak mój pierwszy termotransfer czyli nie najlepiej. Jeśli to też był termotransfer a na to wygląda patrząc na drugą stronę ścieżek to przegrzałeś tusz i ci się rozpłynął. Luty - niezbyt estetyczne i ogólnie brzydkie. Poćwicz robienie płytek i lutowanie i będzie dobrze.
  • #8
    MODI
    Poziom 17  
    Bardzo dorbym sposobem na oprogramowanie kalkulatora jest zrobić to tak jak jest zrobiony kalkulator rpn(postiksowy).
    Z łatwością obsłuży wiecej nawiasów(niema ich tam :P). A w połączeniu tego z konweterem z infiksowego na postfixowy będzię ładnie obliczał działania z nawiasami(w odpowiedniej kolejności itd)
    Pozdrawiam
    http://pl.wikipedia.org/wiki/Odwrotna_notacja_polska
  • #9
    keszua
    Poziom 11  
    Ciekawy pomysł. Można dostosować kalkulator do indywidualnych potrzeb.
    Może dorobić rysowanie wykresów?
    Płytka dwustronna - ciekawie wyszła.
    A luty: według kriss68: "Luty - niezbyt estetyczne i ogólnie brzydkie"... od kiedy głównym zadaniem lutów są cechy dekoracyjne? Wydawało mi się, że lutuje aby stworzyć połączenie i umożliwić przepływ prądu :)
  • #10
    joy_pl
    VIP Zasłużony dla elektroda
    keszua napisał:
    A luty: według kriss68: "Luty - niezbyt estetyczne i ogólnie brzydkie"... od kiedy głównym zadaniem lutów są cechy dekoracyjne? Wydawało mi się, że lutuje aby stworzyć połączenie i umożliwić przepływ prądu :)
    Te luty po nie długim czasie mogą tego nie umożliwić.
  • #11
    Faces
    VIP Zasłużony dla elektroda
    Ze względu, że jest to niepełno wartościowa konstrukcja przenoszę temat w bardziej odpowiedni dział.
  • #12
    albercik506
    Poziom 9  
    Luty nie miały być estetyczne ale się zgodzę z tym ze nie wyszły za ładnie:P Kalkulator to mój pierwszy poważniejszy projekt. Większość ścieżek poprawiałem mazakiem bo nie wszystko odeszło od folii, może kiepsko odtłuściłem płytkę albo za słabo dotarłem papierem. Teraz używam papieru kredowego i efekty są znacznie lepsze. Kompilator to AVRstudio. A diody w skrócie stosuje się po to by po naciśnięciu jednocześnie dwóch przycisków nie wystąpił błąd i nie pojawił się ten sam sygnał na dwóch pinach jednego portu.Takie zabezpieczenie sie przydaje:)

    Dodano po 4 [minuty]:

    Zastosowań praktycznych nie ma, był to projekt na prace przejściową, można go rozbudować w miarę potrzeb ale może być za mało przycisków. A z lutami fakt mam problem ale tylko przy wyswietlaczu, powinienem zastosować goldpiny. Trochę nie przemyślałem tego ale zależało mi na czasie i zrobiłem żeby po prostu działało. Eagle można ściągnąć za darmo, tylko ze jest to wersja demo i w niej właśnie robiłem ścieżki.

    Dodano po 52 [sekundy]:

    Sciezki i ogólnie cały schemat ideowy.
  • #13
    profesorek_96
    Poziom 16  
    Czy płytka jest dwustronna?
    W jakiej technologi była lutowana?

    Dodano po 5 [minuty]:

    Jakiego użył pan wyświetlacza (typ i rozmiar)?
  • #14
    albercik506
    Poziom 9  
    Płytka dwustronna. A co do technologii.... Po prostu polutowałem:) A wyswietlacz to standardowy 2x16 znaków z sterownikiem hd44780.

    Dodano po 17 [minuty]:

    I odpowiadam jeszcze na pytanie co do diód. Są to zwykle diody prostownicze, u mnie in4007.
  • #15
    mareczek_gda
    Poziom 2  
    Ten potencjometr jest odpowiedzialny za kontrast wyświetlacza ? J bym dał jakiś mniejszy optycznie.

    Masz gdzieś spis elementów ? Bo chciałbym zrobić taki projekt i zacząć sie programowanie c na mikrokontrolery, żeby sprawdzić sie jako programista w C po robieniu zadań w spoju :P
  • #16
    albercik506
    Poziom 9  
    Nie mam spisu elementów w formie elektronicznej, potencjometr służy do zmiany kontrastu wyświetlacza i u mnie ma 1k,a kupiłem taki bo znalazłem taka obudowe w eaglu i otwory mi pasowały na płytce. Rezystory maja wartość 560 omów przy diodzie ale można zastosować większy. A przy przycisku resetu jest 5,6k. Kondensator od zasilania 100nF elektrolityczny. Co do wartości elementów to wszystko. O diodach pisałem wcześniej. Spis elementów można zrobić na podstawie zdjecia:)
  • #17
    tzok
    Moderator Samochody
    Jak na pierwszy projekt nieźle, możesz być dobrym programistą i nie umieć lutować/robić płytek to nic złego.

    Mam takie pytanie - czy kalkulator zachowuje kolejność działań, np. czy 2+2*2=6 czy też może 8...
  • #18
    albercik506
    Poziom 9  
    Zachowuje kolejność działań. A programistą jestem niestety średnim:/
  • #19
    profesorek_96
    Poziom 16  
    Czy w tym kalkulatorze zastosował Pan rezystory przed przyciskami jako pull up?
    czy one są podpięte do mikrokontrolera czy może do + zasilania?