Poszukuję prostego układu przedłużającego impulsy 50ns do około 400ns. Logika 3,3V. 74HC123 jest chyba za wolny przy takim napięciu? 74LV123 widzę nie bardzo osiągalny. Kiedyś robiłem opóźnienia na bramkach TTL/CMOS z układem RC+D pomiędzy bramkami, ale z tak krótkimi czasami i napięciem 3,3V nie miałem jeszcze do czynienia. Chwilowym rozwiązaniem okazał się tranzystor BC547 w układzie OE, ale to 'brzydki' sposób zależny jedynie od parametrów tranzystora i nie daje w miarę stromych zboczy.
Po co mi to? Ano po to, żeby mikrokontroler zauważał te impulsy i wystawiał na port kolejną daną. Zatrzaskiwanie danych w przerzutniku D i zerowanie 'ręczne' (programowe) pinem i/o jest zbyt czasochłonne.
moze jednak przerzutniki - w formie licznika ? mikrokontroler wtedy zamiast wykrywac impuls odczyta z licznika ile bylo impulsow , albo wykryje po prostu zmiane stanu. nie wiem jak z gotowymi licznikami na 3.3V, jak nie bedzie to trzeba bedzie sobie zrobic wlasny z przerzutnikow...
Witam! Proponuję użyć mikrokontrolera, który w jednym cyklu rozkazowym wykrywa zmiany na wejściu. Mikrokontroler ten powinien mieć czas instrukcji<50ns. np. dsPIC30F.... 30MIPS 33ns dsPIC33F.... 40MIPS 25ns Wtedy nie trzeba dobudowywać żadnej protezy.
Dobre (jak na protezę)! Szybki licznik taktowany sygnałem zegarowym z uKontrolera. na wejście zerujące - ten krótki sygnał wejściowy 50ns, który wyzeruje wszystkie wyjścia Qn. W zależności jaki długi czas sygnału jest potrzebny - wybieramy odpowiednie wyjście licznika Qn. A co robi ten program, bo trudno mi sobie wyobrazić w 2009 roku, aby nie można wymienić uKontrolera na szybszy, który "widzi" te 50ns impulsy? Można pewnie dostać taki, który ma taką samą obudowę.
Ale jest miło :-) Dostrzegłem, a nawet przeczułem to uzasadnienie: "Stosowanie procesorów do takich trywialnych zadań to lekka przesada. Również ekonomiczna." Otóż wydaje mi się, że w istocie problemu tak wychodzi taniej i prościej. Po co stosować zbyt wolny uKontroler+układ czasowy, czyli 2 elementy, zamiast: jeden szybszy uKontroler.
Oczywiście wydaje się, że zrobienie samego układu wydłużającego impuls na uKontrolerze DSP to nadbudowa. Równie dobrze można powiedzieć: "Jadę po bułki Fordem Transitem". Co w tym złego? Po bułki można pojechać nawet maluchem. Czy żona zrobi mi awanturę, że Transit jest za duży, aby nim pojechać po bułki na kolację?
Jednak DSP to już nie jest coś takiego drogiego i skomplikowanego. Teraz granica między procesorami DSP a uKontrolerami już się rozmyła. Zresztą nigdy nie była to różnica sprzętowa, tylko parametryczna - prędkości, długości rejestrów i kilku rozkazów. A teraz: czym się różni 74121 od dsPIC30F2011? Dla mnie jeden jest w obudowie SO-14, a drugi SO-18. Poza tym ten w SO-18 potrzebuje w tym zastosowaniu 0 elementów zewnętrznych, a 74121 przynajmniej R i C. Cena zakupu jest zbliżona, zwłaszcza jak wliczymy koszt przesyłki. Fakt, że:
- jakikolwiek uKontroler potrzebuje programu.
- trzeba mieć programator. Jednak i tak jest jakiś mikrokontroler w układzie i ma swój programator. Trzeba poszukać jaki inny szybki uKontroler jest obsługiwany przez ten programator. Program - do napisania w 1h. Uruchomienie - nie dłuższe niż dobranie R i C w 74121. Przepraszam, ale znowu muszę wlać trochę wiosennego powiewu :-)
Chyba nie do końca Kolega ma rację. Opiszę to na bardziej drastycznym przykładzie ;-) Pojechać po bułki "maluchem", czy 25-cio tonową ciężarówką z naczepą ? Zakładam, ze ową ciężarówkę udało mi się okazyjnie zakupić w cenie "malucha", a może nawet trochę taniej. To czemu nie miałbym pojechać ciężarówką ? Ano jest "mały" problem :-( Moje prawo jazdy pozwala mi na kierowanie pojazdami o masie nie przekraczającej 2,5tony i bez naczepy :-( Oczywiście mogę się zapisać na kurs i zrobić stosowne uprawnienia, ale.... ale czy szybciej nie będzie po te bułki pójść piechotą ? ;-)
Przekładając to na nasze. Czy uważa Kolega, że np dołączanie do ATmega128 dodatkowej pamięci RAM (bo zabrakło tych 4kB) to proteza. Skoro można wsadzić pierwszego lepszego ARM-a, który często kosztuje mniej niż goła ATmega. Ale sprawa nie kończy się przecież na kupieniu ARM-a w sklepie. Problem to owo "prawo jazdy" :-) Czas i środki potrzebne na jego zdobycie są niewspółmierne do kosztów zakupu "kostki" w sklepie.
No to nadal wiosennie:-) Napisałem, że to fakt- trzeba napisać program. Wiadomym jest, że trzeba to umieć. Nie chodzi mi o to, aby wybrać sobie ukontroler, którego się boimy i do tego zupełnie innej firmy. Najlepiej jest poszukać na stronie tego samego producenta, co ma w ofercie szybszego. Ja patrzę na Microchipa, bo tu mam doświadczenie. Kolega Michał Lankosz pisze, że tam jest jakiś uKontroler. My ciągle nie wiemy jaki. Trudno mi jednak sobie wyobrazić firmę, która w 30 lat po wynalezieniu mikroprocesora stara się nie mieć w ofercie uKontrolera takiego co wykonuje instrukcje z prędkością co najmniej 20MHz.. Z drugiej strony Grzegorzu, są inne problemy z takim podejściem. Ja staram się być otwarty. Oczywiście nie mam prawa jazdy na ciężarówkę. Koledzy w wojsku robili. Ja nie widziałem takiej potrzeby, ponieważ w przyszłości nie zamierzałem grzać TIRem. Dzisiaj się zastanawiam, bo fajnie i bezpiecznie siedzieć 2m nad większością uczestników drogi. No ale TIRy to kosztowna sprawa :-) Co innego z uKontrolerami. Siedząc w tej branży - może się przydać możliwość wyboru uKontrolera do różnych zastosowań. Ja np. nigdy w ręku nie miałem ARMa, ale czekam z niecierpliwością, kiedy będę "musiał" go użyć. Nie mam żadnych oporów. Warto zadać sobie pytanie: "Ile razy mówiłem, że prościej to zrobić na TTLach?" Nie można tak przez całe życie. Jeżeli znamy TTL, napisaliśmy parę programów na PICe i inne ATMELE, ARM jest O.K., to przy kolejnym zadaniu łatwiej nam będzie coś wybrać. Ja bardzo lubię TTLe, ale raczej z takiego powodu, że to takie edukacyjne. W praktyce- jak się położy toto na płytce to już mordęga. Tutaj na jednej płytce: TTL i obok zrobiłem jakiś procesor.
formatting link
mi wskazuje na jakieś 8 lat do tyłu. To jest właśnie taka proteza, co kolega chce zrobić. Ja już to przechodziłem, dlatego doradzam tak jak to widzę teraz. To co robimy te prawo jazdy ? :-)
Próby fragmentów funkcjonalności wykonywałem na ATmega128. Impulsy musiałem wydłużyć, co zrobiłem dość 'brzydko' (na oscyloskopie nie wygląda to najlepiej). Prawie pełnię szczęścia da mi STM32F103V, na które to układy czekam. Na STM jeszcze nigdy nic nie robiłem. Wydaje mi się, że jeśli rejestry I/O mogą być taktowane zegarem 72MHz to nie będzie większego problemu, chociaż napisane jest, że mahanie pinem max 18MHz. Do tego chcę nietypowo wykorzystać wejście timera do wyzwalania transferów DMA. Chciałbym już mieć w zapasie układ, który w razie czego wepnę w sygnał wyzwlający.
Skoro jest tak napisane - to oznacza kłopoty z 50ns. Jeśli nie miałeś doświadczenia z tym, to może wybierz tego dsPICa. Jest tu kilku którzy Ci chętnie pomogą. Jak zadzwonisz np. do Gliwic firma
formatting link
(Pan Ekiert czasem się tu pojawia), to pewnie i sampla będziesz miał po Świętach.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.