Może spłycę :) wypowiedzi przedmówców, ale w skrócie chodzi o to. 1. Wyświetlanie wszystkich 4-ech segmentów sterowanie jest tym samym portem, w tym przypadku P1 2. Tranzystory powodują po prostu dostarczenie napięcia do odpowiedniego segmentu. 3. Wysyłając jakiś sygnał na port P1, wysyłamy ten sam sygnał do wszystkich segmentów, a sterując odpowiedni...
Bascom zawsze używa metody obliczeniowej, która należy do zmiennej wynikowej. Oznacza, że w tym przypadku Bascom wykonuje obliczenia na bajtach. Wartość obliczeniowa2 jest typu Word. Czyli (1) = Liczba_ok / 100 zmienna Liczba_ok traktowana jest jako byte. Jedynym sposobem na konwersję jednego typu na inny jest po prostu przypisanie go w ten...
No jak za każdym razem do licznika wpisujesz zero to jakim cudem ma być spełniony ten warunek timer1= A?
Ok po kolei, wywalam wszystko z programu, zostawiam tylko...... zmienna impulsy jest zwiększana o kilkanaście a nie tylko o jeden ............ Licz: If Scisk = 1 And Ok = 1 Then Incr Impulsy Elseif Scisk = 0 And Ok = 1 Then Decr Impulsy End If Return Kontaktron (Reed switch) generalnie jest stosowany jako proxy switch, czyli w ukladach statycznych....
na symulatorze nie masz co patrzeć. One są do niczego. Ok sprawdzę zaraz. Dodano po 18 ok sprawdziłem. Działa bez problemu. Sprawdzałem na płycie testowej a sygnał brałem z Timera2 skonfigurowanego jako PWM. Zmieniałem różnie Prescaler od 1 do 1024 i działało bez problemu.
Witam Patrz DEBOUNCE pin_portu , stan , etykieta w Help
Witam czy ktoś mi zmodernizuje ten program tak aby liczył mi same impulsy i je aktualizował na bieżąco a po przekroczeniu liczby 999 się resetował i liczył od nowa $crystal = 4000000 $regfile "attiny2313.dat" Dim Wynik As Long Config Timer1 = Counter , Edge = Rising Cls : Lcd "Obrotomierz" : Wait 1 Do Timer1 = 0 Start Timer1...
Witam jest dość początkującym w dziedzinie programowania i potrzeba mi połączyć tak aby na jednym wyświetlaczu pojawił sie zegar i licznik impulsów z halotrona jako obrotomierz zegar: $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'o częstotliwości oscylatora 'taktującego...
Należy: - zadeklarować zmienną globalną np. LICZNIK i nadać jej wartość zera, - włączyć przerwania od przepełnienia Timer0, - w funkcji przerwania należy zwiększać wartość zmiennej LICZNIK o jeden Aby poznać liczbę impulsów wystarczy pomnożyć LICZNIK*256 i dodać do niego aktualną wartość rejestru licznika timera, czyli jak sądzę counter0 (nie znam BASCOM).
Tylko mikrokontroler... bierzesz jakiś AVR... BASCOM + programator za grosze + 2 dni posiedzisz i sam to zrobisz... Prostsza plytka, tańsze, same korzyści... Pozdrowienia
Jeśli wyeliminujesz drgania przycisku, to najprościej to zrealizować podając wyjście przycisku na wejście zegarowe jednego timera (bedzie on zliczał ilość wciśnięć), a drugi timer wykorzystać do odmierzania czasów 1s - dokładnie co 1 s należy kasować licznik pierwszego timera. Ot i wszystko.
Witam. W przerwaniu wpisałeś : Timer1 = 131 do zliczenia zostało 65536 - 131 = 65405 Przy wpisaniu do Timer0 tej samej wartości do zliczenia pozostaje : 256 - 131 = 125 impulsów. Myślę, że dobrze zrozumiałem Twój post.
Potrzebuję napisać licznik impulsów w Bascom 89cx051 o następujących parametrach: Wprowadzam ilość impulsów za pomocą trzech klawiszy (pierwszy klawisz ustawia pozycję nad liczba która będzie zmieniana, drugi i trzeci służą do zmiany góra-dół), po ustawieniu odpowiedniej liczby (maksymalnie 7 cyfr), wciskam czwarty klawisz (start) w tym monecie na wyjściu...
Przeniosłem Temat był raportowany!
Co można z tego zrobić: Zegarek, wyświetlacz jakichś liczb, minutnik, licznik impulsów, prędkościomierz do roweru, obrotomierz... Jak: Poszukaj o programowaniu procesorów AVR (przez ISP), dokumentacja ATTiny2313, języki C, BASCOM
Impulsy pobieram przy liczniku z kabelka który wg "Sam naprawiam ..." pochodzi od czujnika drogi umieszczonego przy skrzyni. Do zliczania impulsów wykorzystałem timer0 (oczywiście znalazłem przykład), który liczył i podbijał mi zmienną. Zrobiłem 10 km i sprawdziłem wynik. Było 5150 więc podzieliłem aby zamienić na m i wyszło 5,15 Nic mi się nie zgadza...
Programu się wstydzę, bo jest bardzo "prostacki", i pewnie zagmatwany :) Wydaje mi się że te resety wynikały z tego, że przerwanie od T0 (które może się pojawiać nawet co ok 0,3s) "nakładało" się z przerwaniem od T2, chociaż takie coś chyba nie powinno mieć miejsca:) A może do odmierzania 0,5s użyć DS1307? Bo mam przygotowaną płytkę pod niego, gdybym...
A masz tyle?:>
masz cos tak jak kursy do bascoma, tam masz jak zrobic licznik na timerze. Pozatym masz dobra ksiazke i helpa
Oczywiste że tak zawsze będzie. Tym licznikiem możesz liczyć tylko impulsy które są ukształtowane np z enkoderów, natomiast dla styków mechaniczynych musisz albo je ukształtować sprzętowo, albo zrobić debouncing programowy. Chodzi o to, aby z sieczki krótkich impulsów które powstają po wciśnięciu przycisku zrobić jeden impuls wydłużony. Można to zrobić...
Zobacz w Helpie Bascoma, rozkaz DEBOUNCE Px.y , state , label [ , SUB] w szczególnie Config Debonuce
Cały ten układzik ma posłużyć do kontroli maszyny zmęczeniowej , w której ważna jest właśnie ilość wykonanych cykli i częstotliwość z jaką maszyna jest ustawiona. Jezeli to ma sluzyc jako wyniki konkretnych badan "na endurance", to musisz dolozyc staran aby wyniki byly dokladniejsze a moc processor byla bardziej prawidlowo wykorzystana. Wiec tak na...
Musisz zliczoną ilość impulsów podzielić przez 100 :>
Witaj, No save spokojnie możesz użyć.... pod warunkiem, że nie korzystasz w obsłudze przerwania z instrukcji Bascoma bo jeśli tak to nie odkładając rejestrów na stos, zgubisz ich wartości i w najlepszym przypadku będą się działy różne rzeczy. Ja bym napisał wstawkę w asemblerze odkładając wcześniej na stos używane rejestry w tym SREG. Możesz też użyc...
Zrobiłem taki schemat 'na kolanie' (czyt. bardzo niechlujnie :) ) i za nic nie mogę zejść poniżej sześciu scalaków. Robiłem to na licznikach '192 (dwie sztuki), dekoderach '47 (dwie sztuki), bramki NAND schmitt (wykorzystane są dwie, ale w obudowie są 4) i bramki NOR (wykorzystana jedna, chociaż w obudowie też są 4). NANDy oczywiście do eliminacji drgań...
jeśli dobrze rozumiem to timer0 ma pracować jako licznik impulsów podanych na jego wejście zewnętrzne . Wejście T0 w mega8 to pin 4 portuD ( noga 6 ) a tam " wisi wyświetlacz na który procek " sypie " impulsy
1 - doprowadź sygnały z czujników do trzech wejść jednego z portów 2- każdy z tych sygnałów doprowadź do wejścia przerwania INT0 ( odseparowane diodami lub przez transoptory np. CNY-17 ) Każde pojawienie się impulsu na jednym z wejść wyzwoli przerwanie INT0 W obsłudze przerwania sprawdzasz stan wejść i porównujesz z poprzednim stanem W zależności od...
Liczniki są osobnymi blokami uC, więc jeśli sygnał wejściowy jest poprawny, to impulsy powinny być zliczone poprawnie. Podany wyżej program to program użyty w moim mierniku częstotliwości okrojony z niepotrzebnych ci rzeczy, które mogłyby zaciemnić jego sens. Działa przy częstotliwości kilku MHz.
(może mi odbije ;) ) Albo się napiję! ;) Tylko wtedy licznik będzie średnio działał, wydaj mi się że w Gdyni jest co najmniej jeden bascomowiec, który skutecznie zapcha pamięć i ram procesora mniej lub bardziej tandetnym kodem. Bascom Rulessss! ;)
Nie,ma liczyć litry tak jak dystrybutor. Dodano po 2 Nie wiem w jaki sposób dodawać litry do zmiennej po przekroczeniu określonej liczby impulsów z przepływomierza. To co znalazłem to liczone wszystkie w czasie, a tu chyba chodzi o przepełnienie licznika.
"Liczniki też wolał bym zarezerwować dla innych celów - choć by odliczania czasu całej sekwencji i PWM,u" To może zrobić to tak: Jedna pętla do...loop-a w niej cztery+1(dla 1ms) liczniki programowe- nie jest to eleganckie bo trzeba cierpliwie obliczać czas pętli i kłopotliwa modyfikacja-ale realizowalne. Zwłaszcza jak chcesz zachować liczniki dla PWM.
. Zamierzam zrobić tak by mogli wprowadzić korektę (jeśli będzie potrzebna) i zapisać w eeprom. czy to dobry pomysł? Jakoś tak; $Crystal=12000000 Config Timer1 = Timer , Prescale = 8 On Timer1 Inter_1mS Inter_1mS: Counter1 = Counter1 + Licznik (64036 - wychodzi z obliczeń, że da to 1ms) /tu odliczę sobie 103/ Błednie to rozumujesz, albo błednie podałeś...
No to w takim razie źle zrozumiałem instrukcję. Napisali w niej "możesz za załadować do licznika wartość odpowiadającą ilości impulsów po których licznik sie przepełni " więc załadowałem 1000000 impulsów i czekałem aż się przepełni ale się przepełniał troszkę za szybko moim zdaniem.
Kiedyś robiłem coś takiego dla znajomego. Procesorek _ LCD 1x16 + dwa przyciski "góra" "dół" . Całość praktycznie wielkości wyświetlacza. Odliczał nastawione impulsy po osiągnięciu zera otwierał styki przekaźnika . Była też opcja że kilka imp. wcześniej ( przed zerem ) otwierał jeszcze jeden przekaźnik. Chodziło o to że sterował silnikiem i wtedy zmniejszał...
Witam wspólnotę chciałbym zaznaczyć że z wykształcenia jestem mechanikiem, a z programowaniem nie miałem wcześniej styczności. Przeczytałem książeczkę która mowiła o programowaniu w jezyku bascom, i stworzyłem taki o to kod programu. [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 8000000 Config Timer0 = Timer , Prescale = 256 'licznik do odmierzania...
A po przepełnieniu co się dzieje ze zmienną err? Mam ją ręcznie zresetować? Po przepełnieniu licznika on się zeruje automatycznie?
Wiesz o tym, że licznik sprzętowy z preskalerem 1 jest szybszy od programu jaki masz napisany. Zanim instrukcje się wykonają to licznik zliczy jeszcze parę impulsów. Stąd te wachania.
emarcus:: Czy Ciebie całkiem pogieło? Jak chcesz pomnożyć częstotliwość rozkazem MUL? Ewentualnie jak chcesz tym pomnożyć impulsy? Bez obrazy ale to zupełnie co innego. Dodano po 19 Na mój gust cos takiego: $regfile = "M8def.dat" $crystal = 8000000 $hwstack = 64 '---------------------------------------...
WItam , otóż borykam się z problemem uruchomienia INT0 ,który ma zliczać impulsy(1 sekunda) z wyjścia INT PCF8583(stan niski), i co powiedzmy 15 impulsów(15s) ma wykonywać się podprogram. Mógłby ktoś pokazać mi jak skonfigurować INT0 w Bascom ? Dziękuje i pozdrawiam :D
To nie Bascom jest przyczyną tylko źle napisany program ;). 1. odczyt timera1 16bit odbywa się po przez rejestr pomocniczy TEMP, ten rejestr jest też używany przez inne procedury i funkcje i jeśli jest użyty to właśnie niszczona jest wartość High timer1 bo ona tam jest wpisana gdy używasz komendy. wpisując tak timer1 do tablicy możesz gubić High timer1....
Liczenie impulsów samo w sobie jest bezsensowne.. jak już to liczy sie impulsy przez określony czas albo podczas jakiegoś warunku itp, możliwości jest tak dużo że bascom niezostał w to wyposażony (bynajmniej ja tyle wiem). impulsy najłatwiej można zliczać za pomocą zewnętrznego przerwania, przez czas działania timera, timer uruhomić, uruhomić przerwanie,...
Naprawdę nikt nie jest w stanie nic pomoc ? Miało by to mniej więcej wyglądać tak: -sygnał podawany na ICP ma postać kwadratową -zbocze opadające powoduje zapis wartości timera do rejestru sprzętowego -odejmując kolejne wartości rejestru od siebie uzyskuję czas jaki upłynął między impulsami -obliczając odpowiednio czas uzyskuję ilość impulsów na minutę
Po prostu byk w BASCOMie. Prescaler jest ustawiany jako CS02..CS00 = 110 a to oznacza, że licznik nie zlicza impulsów zegarowych tylko zewnętrzne na T0 z opadającym zboczem.
Program wyświetla to co chcesz ale w symulatorze to trwa bardzo bardzo długo. i Teraz ja licznik odlicza 100 impulsów to musisz pozmieniać obliczenia. Podczas symulacji w warunkach wpisz mniejsze wartości to się szybciej doczekasz tego wyświetlenia na lcd albo zwiększ zmienne ręcznie podczas symulacji. sygnał 125khz do generowania PWM 1,25khz. Nie rozumiem?...
Najwygodniej i najtniej zrobisz to na mikrokontrolerze. Do tego wystarczy jakiś maluszek np. AT90S2313. W Bascomie znajdziesz wszystko do obsługi LCD, i liczników.
Ta.... 1) Help, jest ładnie opisane... 2) Co masz ustawione jako wejście impulsów? (Co zliczają liczniki)? 3) Portb = &B255 co to za twór?
Cześć, Ja mam inny pomysł do sterowania wyswietlaczami - rejestry przesuwne 4094 - zajmują tylko 3 linie proca, można sterować dowolną ilość segmentów, przy pewnych warunkach można obejść się bez wzmacniaczy. A wracając do zliczania impulsów- może wystarczy tak dobać kwarc w urządzeniu, aby licznik 16-bitowy się nie przepełniał i problem z głowy Arek
Witam. Nie istotne jest co wpiszę w: Load Timer1 , 250 czy też Load Timer1 , 65000 liczy tak samo. Dodatkowo stosując prescaler nawet 8 uzyskam częstotliwość blisko 20Hz czyli chyba nie bardzo jak pracę diody. P.s proponuje zerknąć do helpa:) Opis: Instrukcja powoduje wpisanie do licznika określonej liczby zliczanych impulsów. Przed załadowaniem wartości...
Banalne zadanie. A więc włączasz licznik(lepiej TIMER1-większa pojemność), tak, aby odliczał ci te 10sekund. Dajesz zmienną którą zwiększasz np co 1sekunde (zmienna o nazwie sekundy). W czasie odliczania do 10s w pętli głównej zliczasz impulsy przycisku i zwiększasz je w innej zmiennej (np. impulsy). Po 10 sekundach w zmiennej sekundy będzie10s a w...
Spróbuj zrobić tak Co4ms: 'procedura obsługi przerwania od Timera T/C0 wykonywana co 4ms Timer0 = 6 'załaduj do Timera0, żeby zliczył 250 (=256-6) impulsów Incr Licznik If Licznik = 6 Then 'zmienna Licznik liczy do 6 aby Licznik = 0 'sprawdzanie stanu przycisku następowało If Pind.0 = 0 Then 'co ok.24ms If Pomoc = 1 Then 'jeśli zmienna Pomoc...
podłączyć trymer do kwarcu przey kwarcu są dwa kondensatorki trymer zamiast jednego z nich??? i oczywiście do masy mówimy o atmedze i o liczniku nie pcfie jaki jest wpływ tych kondensatorków na licznik???
znam bascoma za słabo żeby napisać coś takiego, ale może kto inny by napisał moje pomysły: prędkość na zasadzie takiej jak licznik rowerowy (chyba zliczanie impulsów) można by dodać przejechaną trasę i temperaturę (ds18b20) oraz woltomierz (chyba przetwornik A/C wbudowany w ATmegę32) ja polecam zrobić to na jakimś lcd alfanumerycznym (z graficznym więcej...
kod pochodzi z numeru 4/2009 Profesjonalny licznik impulsów a do zaprogramowania atmegi będę używał Usbasp
Ja to tylko symulowałem w bascomie? do procka nie wgrywałem może ktoś zaproponuje inny counter??
Witam. Mam pytanie podobne do tematu. Jak podłączyć sygnał z zwenatrz zeby licznik np TIMERO zliczał te zewnetrzne impulsy?I jaki do tego program w bascomie? Prosze o przykład...
Witam ponownie i dziękuję za zainteresowanie. Ad. sbartos. Czy pomógł mi ten link?? Szczerze, to raczej nie za bardzo. Chociaż z tekstu wywnioskowałem, że potrzebny mi jest licznik rewersyjny asynchroniczny, (lecz dalej nie mam pojęcia jak połączyć to wszystko do kupy, aby w końcu zadziałało). Ad. DEMkO Już sprawdziłem i nie znalazłem tam takiego projektu...
A na początku dyrektywe $regfile = "M8535def.dat" wrzucił? Potrzebna tam na pewno jest. A bascom pewnie coś chrzani w timerach, żadna nowość. Bascom powinien pozostać tylko dla rodziny 90S (stare AVR) bo z nowszymi sobie często nie radzi...
nie wiem czemu ale w bascomie licznik co ileś impulsow dodaje mi impuls "lewy" . // pokrótce// mam czujnik indukcyjny(max 500Hz) który liczy ilość nawiniętej folii , impuls jest co 8 centymetrów - przy około 100 m/min . chodzi mi o dokładnośc nie gorszą jak 0.5% . parametry : procek 2313 kwarc 10 mega timer ,odświeżanie wyświetlacza co 0.5s przerwanie...
Udało mi się odpalić program z książki Pana Wiązani, ale tam timet odmierza 1s Jak to przeliczyć? Jest jakiś na to wzór? Rzeczywiście musiało się 'udac odpalić' bo ten program nie jest pozbawiony błędów (!) \ A jak zrobić żeby odmierzał np 10 sekund? Zmiana preskalera wydłużyła max do 2sekund czas. Aby timer1 odmierzył inne/dowolne interwały czasu,...
Witam, Zależy mi tylko na tym, żeby Arduino zliczał impulsy z kontraktrona do 5 - 1 impuls- świeci się dioda led 1 - 2 impuls zapala się dioda led 2 - 3 impuls zapala się dioda led 3 - 4 impuls zapala się dioda led 4 - 5 impuls zapala się dioda led 5 i dodatkowo daje sygnał ciągły HIGH na pin SILOWNIKA przez cały 5 po 6 impulsie reset i znowu: - 1...
Bo kontaktrony w licznikach rowerowych są jakieś szybsze. Robiłem kiedyś eksperymenty z rowerem i faktycznie zwykłe kontaktrony "rurkowe" nie nadążały się przełączać. Pierwszy z brzegu kontaktron KA-02 ze sklepu na literę T przy napięciu 5V i i prądzie 100mA ma częstotliwość przełączania 125Hz. Czas załączania do oporu 1Ohma wynosi ok 2,5 ms Czas odpuszczenia...
Witam ! Zastępując fragment programu : 'If Impuls = 0 Then 'Incr Licznik 'Waitms 100 'End If Debounce Pind.5 , 0 , Licz , Sub i dopisując : Licz: Incr Licznik Return Otrzymamy program zliczający pojedyncze impulsy. Pozdrawiam. Stefan
Witam, chciałbym zbudować licznik impulsów na atmega 8 który by zliczał ile impulsów było w czasie 1 sekundy i wartość tych impulsów wysyłała w postaci binarnej na wyjścia procesora. Dodano po 1 Język w którym bym to chciał to C znalazłem identyczny projekt na forum ale w bascomie a w tym języku się wogóle nie orientuje
Witam serdecznie kolegów. Jeśli nie znasz Bascoma nie wypowiadaj się - Bardzo prosze. Potrzebuje wykonać Generator impulsów z wypełnieniem. Regulowana częstotliwość jak i wypełnienie. W Bascomie niestety nie jest to takie proste. Sprzętowy jest PWM ale stała częstotliwość. Prześledziłem chyba wszystkie wątki w tym zakresie i raczej wypowiadają się tylko...
Tak, będziesz mógł. Jeśli chcesz liczyć w czasie (a nie chcesz) to mierzony przebieg doprowadzasz do wejścia zegarowego timera, w efekcie każdy impuls powoduje zwiększenie wartości licznika o jeden. Skoro chcesz mierzyć szerokość impulsu to wykorzystujesz wejście ICP timera - timer taktujesz z maksymalną częstotliwością, z kolei impulsy z obrotomierza...
No przecież prosto. Konfigurujesz timer1 do pracy w normalnym ale nie robisz start timer. robisz przerwanie dzialajace na zbocze np. narastające-> Dalej : robisz zmienną flaga w przerwaniu robisz if flaga=1 then start timer1 flaga=0 else stop timer1 w rej od timera masz czas... kopiujesz gdzie Ci tam pasuje flaga=1 zerujesz licznik endif I tyle, oczywiście...
Maksymalna częstotliwość jaka mnie interesuje jest uzyskiwana przy OCR1A = 19. Generalnie wszystko mi działa i to całkiem przyzwoicie, ale muszę zliczać wygenerowane impulsy. Myślałem już nawet o jakimś zewnętrznym liczniku - w postaci układu TTL którego wyjścia będę sobie odczytywał w pętli głównej. To już oczywiście abstrakcja.
Konfiguracja timera '51 jest inna : [syntax=basic4gl]Składnia: CONFIG TIMERx = COUNTER | TIMER , GATE = INTERNAL | EXTERNAL , MODE = 0 | 1 | 2 | 3 gdzie: x0 – TIMER0, 1 – TIMER1, Opis: TIMER0 i TIMER1 mogą pracować jako liczniki impulsów zewnętrznych gdy pierwszy parametr jest ustawiony jako COUNTER. Impulsy zliczane muszą być dostarczane...
Tranzystor wymusza stan niski na pinie, prosty program zapalający diodę jak jest przesłona, działa. Oczywiście że jest dany rezystor. Problem polega na tym że jak zewrę do masy pin portd.2 to licznik cały czas liczy a chcę aby tylko raz dodał do zmiennej +1.
Jeśli dobrze rozumiem, otrzymujesz przerwanie co 1 sekundę i w jego obsłudze odczytujesz ile licznik zliczył impulsów? Nie ma się co dziwić że tak się dzieje licznik po prostu zliczy wartość całkowitą impulsów. Lepszym rozwiązaniem będzie pomiar czasu pomiędzy impulsami (okresu) i z niego przeliczenie częstotliwości.
Dokladnie chodzi mi o cos takiego : http://obrazki.elektroda.net/40_12070460... http://obrazki.elektroda.net/47_12070461... Fragment instrukcji licznika impulsow firmy SIMEX
Tu masz program pod ATtiny2313, jeśli potrafisz programować, to też potrafisz przerobić program na ATMegę: [syntax=basic4gl]' Bardzo prosty zegar bez możliwości ustawiania Dim Sekjed As Byte , Sekdzies As Byte , Minjed As Byte , Mindzies As Byte Dim , Godzjed As Byte , Godzdzies As Byte , Mux As Byte , Migaj As Bit Config Portb = 255 : Portb = &B255...
Witam serdecznie Potrzebuję zmierzyć zewnętrznym licznikiem ile impulsów z timer1 mieści się w czasie kiedy portd.3=0. Kilka dni na googlach i nic , tak jakby to było niemożliwe. W pomocy bascom pisze 'Możesz odczytywać i zapisywać dane z licznika TIMER1, za pomocą 'specjalnej zmiennej systemowej: W = Timer1 Timer1 = W No i brak info gdzie to wpisać
No przecież wystarczy wziąć zmienną np. Integer i w zależności od stanu linii DIR zmniejszać ją lub zwiększać przy każdym impulsie STEP. Gdzie tu jest problem, czy ja czegoś nie rozumiem... ?
Po pierwsze pochwal się jakimś listingiem z tego co napisałeś i nie działa , gdzieś mi się już przewinął przed oczami taki projekt na elektrodzie i jak pamiętam autor również próbował wymusić napisanie programu . Między szukaniem pomocy a wyręczaniem się innymi jest cienka granica . Tym bardziej zastanawia mnie to ,że cały układ można przetestować na...
Proszę postępuj zgodnie ze schematem użytkowym, który załączyłem (post #4 21 Lip 2015 21:39). Tam jest przedstawione gotowe rozwiazanie. Zacisk 21 podłączasz do masy, zaś zacisk 20 do GPIO. Stanem aktywnym jest zwarcie pinu GPIO do masy. Następuje to w momencie pojawienia się impulsu (dokładnie w momencie kiedy na ORNO mrugnie dioda). Dalsza procedura...
Po pierwsze: nie ma różnicy czy napiszę load timer0=250, czy load timer0, 250 (tak jest w książce Pana Marcina Wiązania) Po drugie: co z tego że timer1 jest 16 bitowy, jak wpiszę wartość początkową 250 to tu i tu licznik się przepełni po 250 impulsach jak nie mam racji to proszę mnie poprawić
Witam mam prośbę do osób bardziej doświadczonych w temacie mikrokontrolerów zrobiłem opisywane enkoder na przerwaniach z noty znalezionej na stronie bascoma i chodzi jak należy jednak chce zrobić to tak jak opisywałem wcześniej nie chce przerabiać urządzenia i przyznam się ze mam problem z wrzuceniem tego co kolega napisał powyżej do procka może ktoś...
Witam. Chciałbym zrobić predkościomierz na AT90S2313. Jestem początkujący w mikrokontolerach. Mam czujnik generujący impulsy (5V), chyba 6 na metr ale dla mnie to teraz nie jest najbardziej istotne. Chodzi mi głownie o to do której nóżki podpiąć sygnał z impulsami(Prosił bym o jakiś schemat) i jak je zliczać przez licznik mikrokontrolera. Chciałbym...
Aż takiej super dokładności to nie potrzebuję, chciałbym uzyskać granicę błędu ± 100 obr. U mnie może być problem z ustawieniem prescale nie wiem jak to obliczyć. Jak zliczałem impulsy w czasie to miałem ok 57 impulsów w ciągu jednej sekundy przy 1500 obr/min. Najniższy zakres jaki chce mierzyć to 1000 a najwyższy to 13000 obr/min. Może mam coś...
Witam, Jestem początkujący w programowaniu bascom chcę zrobić licznik impulsów podawanych na timer o jako licznik . Zrobiłem licznik ale liczy max 255 a ja potrzebuje licznik z 99999 . Nie bardzo wiem jak mam to zrobić .Proszę o pomoc $regfile = "m8def.dat" 'Info dla kompilatora. $crystal = 16000000 'Informujemy kompilator o kwarcu 16MHz....
wedlug mnie jezeli karta jest zgodna ze standardem ISO 7816-2 to od lewej 1. VCC 5V 5.GND 2. Reset 6.NC 3. Clock 7.In/Out 4. NC 8.nc czyli 3 linie sterujace reset,clock ,i/o Linie I/O trzeba podciagnac do zasilania. Wewnetrzny licznik karty okresla nr aktualnie odczytywanego bitu. Gdy na Clock dodatni impuls a na Resecie jest stan wysoki,licznik jest...
$regfile = "M16def.DAT" $crystal = 8000000 $baud = 57600 Dim Czestotliwosc As Long Config Timer1 = Counter , Edge = Rising Print "Licznik" Enable Interrupts Enable Timer1 Do Start Timer1 Wait 1 Stop Timer1 Czestotliwosc = Counter1 Print "Freq: " ; Czestotliwosc Counter1 = 0 Loop Sygnał podaję na portb.1 i wszystko śmiga. Nie wiem tylko dlaczego nie...
chcę napisać "Licznik Impulsów" chodzi o to że gdy zostanie wciśnięty microswitch na LCD powinna zostać dodana cyfra do "obecnej wartości" (zmienna K) nie rozumie jakie cyfry tzn ze ma się zwiększyć wartość tej zmiennej o jeden?? bo jeśli o to chodzi to przedstawię Ci program w C i to banalnie prosty, który zniechęci Cię od Bascoma. Ja wiem też to...
tzn uklad z ledami jest tylko przykładowy zamiast przycisku będzie sygnał prostokątny , atmega będzie sterować cewkami zapłonowymi , mogłem zrobić to na np liczniku , zależnie od zliczonych impulsów ustawiać odpowiedni port , lecz chodzi tu o duża szybkość , wydaje mi sie ze oczekiwanie petli na przycisk będzie najszybszym rozwiązaniem
Przykładowo możesz wykorzystać dwa liczniki. Jeden do regulacji częstotliwości, a drugi do regulacji wypełnienia. - licznik pierwszy odlicza czas pomiędzy okresami od 1 sek dla 1Hz do 50 ms przy 20Hz. - licznik drugi oblicza czas trwania impulsu. Powiedzmy że zmiana stanu pinu X generuje przerwanie uruchamiające licznik drugi który po upływie zaprogramowanego...
Szybko zajrzałem do noty PCF8583 i tam jest napisane, ze kiedy nie używasz funkcji alarmu to stan na pinie INT zmienia się na przeciwny co 500ms. Tak wiec impuls jest na tyle długi ze spokojnie można go traktować jak zwykły przycisk naciskany co sekundę. [syntax=vbnet]$regfile = "m32def.dat" $Crystal=8000000 $hwstack = 64 $swstack=32 $framesize = 128...
...zadaj sobie sam pytanie czy warto i czy obsługa programowa impulsatora nie rozwiąże Twoich prob;emów... Robiłem licznik na AT90s2313 podkręconym do 12 - 18MHz, liczyłem assemblerem. Impulsator dający 10000 impulsów gubił się przy prędkości powyżej jednego obrotu na sekundę, a założeniem jest zdaje się, zliczanie impulsów z częstotliwością 120kHz....
Spróbuj zamiast Timebase zrobić Load Timer0, 31250 (nie będzie przeskakiwał po kodzie ponad 30 tys razy tylko zliczy wewnętrzne tyle impulsów i po przepełnieniu przejdzie do podprogramu), w ogóle ustawiłbym Prescale na wartość około sekundy chyba, że chcesz mieć jak najdokładniej. [syntax=basic4gl]$regfile = "m8adef.dat" $crystal = 8000000 $hwstack...
Tak jak napisał Motronic- czujnik indukcyjny lub hallotron. Z czujnikami optycznymi będą kłopoty. I chodzi nie tylko o zakłócenia ze świetlówek. One są wrażliwe na silne oświetlenie (słońce zaświeci w hali gdzie stoi maszyna- i ściągają cię z urlopu bo coś się zepsuło) i na zabrudzenia. Taki biały punkt na uchwycie tokarki po paru dniach nie będzie...
Wielkie dzięki! Oczywiście masz rację! Oczywiście...Nie ma racji!... (16000000/256 = 62500) Jest to częstotliwość impulsów z prescalera kierowanych do timera0. Timer0 - z konfiguracji pracuje w trybie 'Normal' bez preload, więc interrupt OVF0 będzie generowany po otrzymaniu 256 impulsów (pełny zakres licznika); a zatem częstotliwość wystąpienia interruptów...
Kolego jacynka84 . Układy MCS-51 nie posiadają konfigurowalnego preskalera. Jest tylko dzielnik przez 12. Wykonałem go na procesorze 89c2051 z 12MHz kwarcem. Program sam do niego pisałem i wydaje mi się że powinno być wszystko dobrze bo wyliczenia się zgadzają a jednak jest chyba coś nie tak. Gdyby BASCOM był idealny to działałoby to porawnie - z błędem...
kamyczek: Coś chyba niedokładnie odrobiłeś zadanie domowe... Co z tego, że wystąpią równocześnie? Po prostu najpierw będzie obsłużone to o wyzszym priorytecie (T0), a potem te i niższym. Zresztą co ma obsługa przerwań do ilości zliczonych przez tajmer impulsów? Co podmiot liryczny ma na myśli: "..włączanie obu liczników równocześnie i to z wielokrotną...
Wydaje mi się, że najpierw powinno być „uruchomione” odliczanie tych 0,1 sek, wyzwalane pierwszym pikiem z „paczki”. Potem trzeba odczekać te 0,1 sekundy na zanik „szumów” i zacząć zliczanie w czasie 0,9 sek. Ilość zliczonych pików podzielona przez czas da mi częstotliwość. Wynik ma się utrzymywać na wyświetlaczu...
Nijak z żadnego kodu nie mogę się doczytać na chłopski rozum kiedy on mierzy czas od Rising do Rising. Nie używaj więc chłopskiego rozumu - użyj własny! Wyjaśnienie powinno być zbędne bo jest bardzo trywialne; - obracając wiatrakiem, w pewnym momencie wbudowany tam hall switch daje impuls na INT0, co wtedy robisz w programie? - odsyłasz go do etykiety...
Witam. Wolno czyli tak około jednego dotknięcia na sekundę, a jak już szybciej dotykam to licznik stoi a jak zrobię to na porcie d2 to wtedy po jednym dotknięciu wyskakują duże liczby np: 100. Program będzie musiał złapać około 50 impulsów na sekundę. Pozdrawiam.
Program w Basicu (bliżej nieokreślonej wersji) 5 Pin_output=0; 10 We=Pin_start 20 if we<>1 then goto 10 ; Czekanie na zmianę stanu wejścia start 30 licznik=5 ; wartość początkowa 40 Out_Display=licznik ; wyświetlenie aktualnego stanu licznika 50 Delay(1000) 60 licznik=licznik-1 70 if licznik> 1 them goto 40 80 Pin_Output=1; 90 END;
Mikrokontroler to najpewniej Atmega 8 lub 328, co za tym idzie albo Bascom albo Arduino zależy na czym to prościej można zrobić. Nie jest możliwe żeby po 2 było 4. Będzie to albo 3 albo 1. Co do schematu spróbuje jak najszybciej go narysować.
https://obrazki.elektroda.pl/7406837400_... Chyba siła wyższa musi w tym maczać palce, bo przymierzałem się od kilku lat(!) z publikacją tego projektu i ciągle albo brak czasu albo skleroza... a tu trafił się konkurs no to jak nie skorzystać :) Urządzenie o, którym mowa w temacie to bardzo prosty i niezwykle przydatny (przynajmniej...
jest to dieselek więc zakłócenia raczej mniejsze.. jak to zrobić? jakiś ogólny szkic programu w bascomie? bo licznik chciałem zrobić na timerze jako counter z pomiarem co sekundę, ale skoro nie zrobiłem jeszcze nic poza programem to koncepcję mogę zmienić. pfff. to jak mam to podłączyć w końcu?
impulsów licznik bascom bascom licznik impulsów licznik impulsów
tyrystory zamienniki zasięg telewizji naziemnej honda civic termostat
pilot uniwersalny samokopiujący pilot uniwersalny samokopiujący
Nokia 2610 – kompatybilne podzespoły, bateria BL-5C, wyświetlacz, klawiatura Wieża Aiwa, Denon, Sony – płynniejsze otwieranie kieszeni kasety po demontażu sprężyn