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

projekt_do_oceny

greg84 11 Lip 2005 12:18 1584 6
  • #1 11 Lip 2005 12:18
    greg84
    Poziom 15  

    Czesc,chciałbym Was prosić o analizę i ewentulaną korekcję błędów mojego nowego projektu. Bedzie to prosty stoper na 99 sekund na układach cyfrowych. Razem z listem załączam narysowany juz schemat ideowy układu.
    Układ ma działać następująco. Układ 4047 pracuje w roli multiwibratora w trybie free run(bez dodatkowego wyzwalnia) i generuje przebieg prostokątny o wypełnieniu 1/2 i okresie T=4.40*R1*C2. Ma on wynosic 1 sekundę, do wyregulowania okresu użyje dodatkowego potencjometru P1=44k?. Przebieg jest pobierany z wyjścia nr 10. Wyjścia nr 11 i 13 podpinam do masy przez duze rezystory R2=1M? po to aby prąd byl minimalny, dzieki temu wyjscia 11 i 13 nie bedą wisiały w powietrzu i nie bedą generowały zakłóceń w układzie. Przegieg prostokątny podaje na wejscie zegarowe licznika BCD 4518,w którym to połączylem dwa liczniki i w sumie zliczają od 0 do 99. Licznik 4518 jest wyzwalany i zatrzymywany przez zmianę stanu na wejściu 2, a oba połączone liczniki wewnętrzne resetuję przez podanie stanu wysokiego na wejścia 7 i 15. Do wyzwalania i resetowania używam dwóch przycisków bistabilnych Ps1 i Ps2, filtrów R4C4 odflitrowujących zakłócenia przy załączeniu przycisku (stałą czasową dobrałem tu na 15ms),rezystor R3 pozwala rozładować się kondensatorowi C4 po wyciśnięciu przycisku,a bufory Schmitta wyostrzą mi zbocze impulsu padającego na wejścia układu 4518. Z wyjśc układu 4518 pobieram jedności i dziesiątki zliczone w BCD i podaje na dwa dekodery typu 4056. Pin 1 ukladu 4056 to zatrzask i ja go podpinam do zasilania zebym mial zmiane stanu wyjsc ukladu w kodzie 7 seg. na bierząco. Pin 6 tego układu to z tego co wyczytalem jest czestotliwosc wyswietlania,ale ja mam tu wyswietlacz LED a nie LCD,daje pin 6 do zasilania i wtedy wyjścia a..g mają stan niski gdy są wybrane(abym mogl zastosowac wyswietlacze ze wspolną anodą). Natomiast pin 7 to jest poziom przełączania,ale ja chce zeby miec albo Vcc albo mase, wiec zwieram pin 7 do masy. Wyjścia 9..14 każdego z dekoderów podłączam przez rezystor R5=470? ograniczający prąd każdego segmentu wyświetlacza do 17mA. Stosuję dwa wyświetlacze ze wspólną anodą. Kondensatory C1,C3,C5,C6,C7 pełnią rolę odsprzęgającą i mają filtrować ewentualne szpiliki.
    Wiem ze strasznie dużo napisałem,ale opisalem działanie mojego układu i bardzo bym prosił abyscie go przeanalizowali wskazali bledy,ewentulane poprawki. Szczególnie chodzi mi o poprawność podłączenia pinów licznika 4518,dekoderów 4056 i samych wyświetlaczy.Czekam na odpowiedz i pozdro dla Wszystkich;]

    0 6
  • #2 11 Lip 2005 14:20
    nemo07
    Poziom 36  

    Witam! Dwa poważne zastrzeżenia:
    1. 4056 to LCD display driver i nie nadaje się do sterowania LED ze względu na nikłe prądy wyjściowe. Do sterowania LED służą typy 4511, 4513, 4493, 4494, 4547, 4558 itd.
    2. Zamiast oscylatora RC lepiej użyj kwarcu na 16,384/32,768 kHz z jakiegoś zegarka elektronicznego i podziel na dzielniku 2^14 typu 4020. Oscylatory RC są zbyt podatne na wahania temperatury i napięcia zasilania, ponadto trudno jest ustawiać taki wolny oscylator. Pomyśl, 1% oznacza różnicę między 99, a 98 lub 100! Jak szybko chcesz skalibrować taki oscylator?
    Układ licznika 4518 jest ok, tyle, że możesz wprost zewrzeć piny 7 i 15, nie musisz ich sterować oddzielnie.
    Naucz się programować mikrokontrolery. Taki układ możesz zrealizować na jednym µC i paru drobnych elementach. Pozdro

    0
  • #3 11 Lip 2005 14:56
    marcinj12
    Poziom 40  

    A ja jak zwykle :D zasugeruję użycie układu CD 40110 - licznik góra/dół z wbudowanym driverem wyśw. LED. Dwa takie układy łączysz kaskadowo, na wejście podajesz sygnał 1Hz (tak jak kolega wspomniał najlepiej podzielić jakiś kwarc), podpinasz wyświetlacze i tyle :D

    0
  • #4 11 Lip 2005 16:07
    greg84
    Poziom 15  

    poczynilem zasugerowane przez was zmiany,zmodyfikowany schemat zamieszczam ponizej,ale kwarcu nie bede stosowal w tym przypadku,nie zalezy mi na wielkiej stabilności częstotliwości,to wlasciwie moj pierwszy układ cyfrowy i najwazniejsze zeby wogole działał;]
    Natomiast mam do was pytanie jeszcze odnośnie wysterowania wyświetlacza siedmiosegmentowego, zmieniłem na wspólną katodę,bo w kartach katalogowych zauważyłem ze te ze wspólną anodą wymagają zastosowania tranzystorów.Skąd to sie bierze?chodzi o to ze prąd z wyjśc dekodera zawsze wyplywa a nie wpływa?piszcie i pozdro;]

    0
  • Pomocny post
    #5 11 Lip 2005 17:11
    nemo07
    Poziom 36  

    Całkiem słusznie! Typ 4511 jest predysponowany do sterowania displayów ze wspólną katodą, bo wyjścia dają większy prąd wypływający ("source", do 25mA), niż są w stanie sączyć ("sink", poniżej 1mA), co można wyczytać w tabelkach danych i tu leży cała tajemnica. Układy CMOS rodziny CD4xxx były projektowane na prądy wyjściowe rzędu 1mA, bo do sterowania bramek niezbyt szybkich układów MOS nie trzeba dużych prądów. Układy specjalne, jak LED driver, muszą mieć tranzystory wyjściowe z ekstra większymi powierzchniami struktur, aby mogły dawać większe wartości prądów. Nie wiedzieć dlaczego, chyba ze względów oszczędności, produkowane układy LED driver są przeznaczone tylko do określonego rodzaju wskaźnika LED. Ponadto typy, o których mowa, to już prehistoryczne modele. Czasem możliwości drivera nie wystarczają, zwłaszcza w układach multipleksowanych lub w przypadku dużych wskaźników LED, gdzie impulsy prądów sięgają 100mA i więcej, wtedy używa się tranzystorów w roli wzmacniaczy prądu. Pozdro

    0
  • #6 11 Lip 2005 23:46
    greg84
    Poziom 15  

    dzieki za wskazowki,daje Ci oczywiscie punkty za pomoc.A napisz jeszcze od czego zacząc naukę programowania mikrokontrolerów?bo tam kilka typów jest ich i wiem ze niektóre sie w C programuje inne w Bascom,jakies sugestie?narqa;]

    0
  • #7 12 Lip 2005 00:30
    nemo07
    Poziom 36  

    Najpraktyczniej wybrać typ, który jest najbardziej osiągalny/rozpowszechniony i tu narzuca się wybór praktycznie między produktami firm Atmel i Microchip. Na początek wypada się nauczyć assemblera, który jest zwykle bardzo prosty i w wielu małych aplikacjach bardziej efektywny, niż języki wyższe jak C, czy Bascom, które robią sens dopiero przy większych kontrolerach i aplikacjach. Potrzebujesz jakiś programator; możesz zrobić sam coś prostego, albo kupić, np. na Allegro, plus assembler (są wersje do ściągnięcia za darmo w sieci). Możesz też kupić firmowy Starter-Kit, który zawiera zwykle programator, ewentualnie płytkę do eksperymentów, kilka sampli µC różnych typów, assembler i manuale. Ale to już jest pewien wydatek.
    Jeśli znasz angielski, to start jest dość szybki:
    http://www.google.pl/search?hl=pl&q=microchip+microcontroller+programming+guide&lr=
    http://www.google.pl/search?hl=pl&q=atmel+microcontroller+programming+guide&lr=
    Gorzej już z linkami w polskim: http://www.google.pl/search?hl=pl&q=microchip+programowanie&lr=
    http://www.google.pl/search?hl=pl&q=atmel+programowanie&lr=
    Pozdro

    0