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 to coś napisałem na AVRStudio 4.05.0.181 (na kolanie) :) . Co prawda na ATmega8 , ale przeportowanie to pestka(niektóre wektory przerwań do skasowania/zmiany nazwy i "2313def.inc" zamiast "m8def.inc" , prędkość kwarcu Xtal też do poprawki...), raczej tu chyba nie ma rozkazów niezaimplementowanych w AT90S2313 . ;included in next file - line ".device...
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...
mam prośbę i skierowano mnie tutaj.. potrzeba mi zrobić układ na atmega8 w języku bascom a sam nie wiem jak to wykonać w 100%... Działanie proste urządzenie jeżeli dostanie 100 imp / sek zapali jedną diodę od 100 do 200 imp / sek zapali drugą a od 200 w górę zapali trzecią... pewnie dla was to proste jak obręcz ale proszę o pomoc... z góry THX dokładnie...
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,...
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...
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).
. 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ś...
Cześć. Czy ktoś wie jak obsługiwać w Bascomie Impulsator (Kliker=> nastawnik impulsowy => nastawnik obrotowy=>wszystko to to samo), element bardzo użyteczny (zastępuje tradycyjny potencjometr), a jakoś żadko stosowany. Już kiedyś pisałem post na ten temat, ale prawie nikt nie zareagował. Może ktoś budował jakiś układzik z tym elementem, może ktoś miał...
witam mam taki problemik bo wyczerpały mi się pomysły potrzebuje zrobić licznik na wejściu x który zlicza liczbe a następnie zapisuje ją sobie i licznik sie zeruje i od początku. Niedawno bawie sie w bascomie i nieumię sobie ztym poradzić za pomoc bardzo dziękuje.
Witam, Mam mały problem z pomiarem prędkości za pomocą Timer'a (Bascom). Może napisze krótki opis problemu: Na początku wyznaczyłem sobie ile impulsów na metr daje auto, wyszło 5,15. postanowiłem więc mierzyć w stałym czasie te impulsy i przeliczać na km. Jak się okazało takie podejście jest ok ale skoki prędkości są o kilka km np: 22, 25, 29 km/h ......
Cześć. Czy ktoś z was bawił się kiedyś obsługą impulsatora. (Takie coś jak potencjometr, tylko ze bez ograniczeń co do kręcenia i działa na innej zasadzie:podwójny stycznik). Chodzi mi o jakiś program w bascomie lub coś podobnego. Pozdrawiam Jacek
Witam Patrz DEBOUNCE pin_portu , stan , etykieta w Help
Czy ktoś ma pomsył/przykład programu do pomiaru wypełnienia impulsu?
otóz chciałbym zrobic potenjometr elektroniczny i do tego celu chciałbym uzyc diody i tego odbiornika co jesz w myszy (to co jest ta rolka z zebami) tylko mam pytanie jak zrobic w bascomie zeby mi zliczal w góre i w dół?[img][/img]
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...
Witam obecnych. Czy ktoś z Was ma program którym można byłoby obsłużyć enkoder impulsowy tak aby dla pewności każdy impuls był próbkowany 2 razy.Zmienna licznika w programie byłaby zmniejszana lub zwiększana w zależności ok kierunku obrotów. Jest taka opcja w bascomie "encoder"lecz nie wiem czy jest to wystarczająco niezawodna metoda na pewny oczyt...
Cześć. Mój problem polega na tym, iż muszę oprogramować stosunkowo prosty układ. Na jego wejściu pojawiają się impulsy dodatnie, które przez rezystor i tranzystor npn zwierają nogę procesora do masy. Oczywiście ta noga jest programowo podciągnięta do plusa. Teraz do rzeczy - muszę w głównej pętli programu zawrzeć następujący warunek: - gdy podam jeden...
Potrzebuje zmierzyc za pomoca AVR i do tego najlepiej BASCOMA liczbe impulsow i czas trwania kazdego z nich w okreslonym czasie oczywiscie lub sam czas trwania wszystkich impulsow. Podobno AVR ma jakas mozliwosc mierzenia etgo sprzetowo wejscie ICP? jesli tak prosze o konfiguracje timera/licznika do tego. Nie moglem znalezc sensownego tematu jesli ktos...
Mam mały problem i proszę o pomoc. Potrzebuje zrobić - jak najprościej i jak najtaniej licznik impulsów, który miał by zliczać np:6,7,8,9,10 i tak do max 15 impulsów pochodzących z czujnika zbliżeniowego. Na czym to rozwiązać? Nie potrzeba żadnego wyświetlacza. Chodzi tylko o to aby, po zliczeniu powiedzmy 10 impulsów pojawił się sygnał na przekaźnik,...
Witam Nie moge poradzić sobie z napisaniem programu na AVR lub '51, który: Na wejściu np: A.1 będzie zliczał impulsy i od razu na wyjściu np: A.2 będzie podawał impulsy np o 10% większe Przykład: Wejście A.1 = 700impulsów/sek Na wyjściu A.2 = 10% więcej , czyli 770imp/min Proszę o pomoc Pozdrawiam
Witam Zawsze staram się sam rozwiązywać problemy jednak tu poległem. Chodzi mi o pomiar czasu między impulsami. W jaki sposób poradzić sobie z Timerami? Który Timer można użyć do tego i z których wejść mogą być wyzwalane? Z góry dziękuję za pomoc.
Witam Potrzebuję licznik impulsów od 0 do 300, który będzie zliczał w górę i w dół co 0,5. Najlepiej, jeśli ktoś znajdzie gotowy projekt. Proszę o pomoc. Pozdrawiam, Piotrek
Witam. Robie cyfrowy licznik w bascomie i wiekszosc mam juz ustalone. Chciałbym aby licznik mial mozliwosc ustawiania cyfrowego filtru czestotliwosci impulsow. Np. na jakies wartosci 50Hz, 100Hz, 500Hz i 1kHz. Chodzi o to ze gdy ustawie mu filtr na 100Hz zeby nie naliczal impulsow szybszych niz ta zadana w filtrze. Wiekrzosc fabrycznych licznikow ma...
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...
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...
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?...
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....
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...
Zrób tak: 1 licznik do odmierzania czasu, przerwanie co np 25ms 2 licznik do zliczania impulsów Jeżeli nastąpiło przerwanie np 25ms, to zlicz liczbę impulsów. W taki sposób masz dokładniejsze odmierzanie czasu, funkcja wait do tego się nie nadaje. Przeanalizuj sobie ten temat: http://www.elektroda.pl/rtvforum/topic16... a potem dodaj to co napisałeś...
http://obrazki.elektroda.pl/7329866000_1... Miernik częstotliwości o całkiem niezłych parametrach, bo potrafiący mierzyć częstotliwości od 1Hz do 10MHz (9,999,999Hz) z rozdzielczością 1Hz w całym zakresie. Idealny do generatorów funkcyjnych lub jako zwykły miernik. Do tego tani i prosty w wykonaniu, z ogólnodostępnych części, a małe wymiary...
dużo prościej byłoby jakbyś zastosował 16-bitowy licznik COUNTER1 u mnie w bascomie często "counter1 = 5878" nie działa.. nie wiem może bascom coś miesza przy operacji na tych dwóch rejestrach więc polecam coś takiego jest TH1 czyli starszy bajt counter1 i TL1 czyli młodszy jeśli starszy = 1 a młodszy 0 to całość wynosi 256 korzystając z counter1 (16bitów)...
W twoim programie wg BASCOM-AVR są błędy: Error : 42 Line : 31 Numeric parameter expected Error : 42 Line : 32 Numeric parameter expected Error : 124 Line : 32 LOOP expected Popraw program. Przepraszam za wcześniejsze błędy. Poniżej prezentuję poprawiony kod: [syntax=text] $regfile = "m8def.dat" $crystal = 16000000 $hwstack = 32 $swstack...
Jeśli chcesz uzyskać takie szybkie przedziały czasowe to proponuję popędzić licznik TIMER1 bez preskalera i ustawić go w tryb CTC by sam się przeładowywał. W przypadku gdy zliczy 1000 impulsów to przerwania właśnie będą generowane z częstotliwością 16kHz (To daje jakieś 400 instrukcji maszynowych możliwych do wykonania między przerwaniami). Niestety...
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...
masz cos tak jak kursy do bascoma, tam masz jak zrobic licznik na timerze. Pozatym masz dobra ksiazke i helpa
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
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....
Witam! Zwracam się do was o pomc w napisaniu programu do Atmeg8 w bascomie, który miałby pełnić funkcję licznika. Korzystałem z kilku programów, ale ilekroć chciałem sprawdzić działanie na symulatorze Bascom AVR tylekroć żadna cyferka nie posuwała mi się do przodu na wyświetlaczu. :(. Nie wiem czy jest to wina programów, z których korzystałem czy poprostu...
(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! ;)
No jak za każdym razem do licznika wpisujesz zero to jakim cudem ma być spełniony ten warunek timer1= A?
Dobrze kolega napisał najpierw naucz się migać diodą a później naucz się obsługi timerów. Kolejny krok jak zliczysz 648 impulsów to zwiększasz zmienną litr o jeden. Zerujesz licznik i zaczynasz od nowa. I tak w koło. To jest przepływomierz do wody czy auta?
Witam, chciałbym prosić pierwszy raz od 16 lat w zasadzie o gotowca. Lub szkic programu żebym mógł sobie go sam napisać. Chcę dokonać przeróbki licznika https://sansan.cc/en/productsinfo.aspx?P... Chcę w nim zrobić: 1. W momencie dotarcia do "umownego" czerwonego pola czyli powiedzmy zapalenia przez licznik diody LED 6000 obr. Atmega...
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ć.
No bo licznik jest bardzo szybki. Twój jeden impuls spowodowany dołaczeniem przewodu to jest kilkadziesiąt impulsów które widzi procesor. Musisz dać tzw Debouncing, albo chociażby kondenstaor na wejściu np 100n.
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...
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...
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.
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....
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.
Zawsze byłem ciekaw dlaczego BASCOMowcy tak często stosują Toggle. Może mi to kolega wyjaśni :D Nie lepiej po prostu zastosować zapis 1 albo 0? Nie trzeba wtedy pamiętać jaki był poprzedni stan. Natomiast co do programu to on raczej jest błędny. Dokonuje on Toggle LED w każdym przerwaniu. A chyba powinien dopiero po przekroczeniu wartości A00 i A100?...
Znam Turbo Pascala a Bascom jest do niego bardzo podobny prawie to samo to przerobiłem sobie ten kod pochodzący z tej strony $crystal = 4000000 $regfile "attiny2313.dat" Dim Wynik As Long Config Timer1 = Counter , Edge = Rising Cls : Lcd "Dosimeter" : Wait 1 Do Cls Timer1 = 0 Start Timer1 Wait 40 Stop Timer1 Cls Lcd ; Wynik...
Witam! Jak rozumiem, to masz licznik impulsów zewnętrznych, i chciałbyś prezentować wyniki na bieżąco. Jakiego rodzaju szyny używasz do sterowania tego wyświetlacza? UART-a czy I2C? Jeśli to drugie to na czas komunikacji musisz wyłączyć przerwania, bo może się zdarzyć, że zostaną zakłócone impulsy SCL (zegara).
Witaj! Najlepiej, żeby to a bascom basic napisać. Mam i programator i programik i zresztą kiedyś właśnie tylko w tym pisalem kilka prostych programów, ale teraz marnie pamiętam to wszystko...a czas mnie goni z tym projektem..
ok ja podpowiem co to jest :D COnfig timer0 = timer 'ustaw timer jako licznik impulsów wewn. zegara procesora Mode=1 ' tryb pracy czujnika, to jest ladnie opisane w datasheet do procesora, 1 w tym przypadku oznacza normalna prace timera czyli zlicza impulsy gate = internal ' najprawdopodobniej chodzi tu o taktowanie licznika ale nie pamietam dokladnie...
...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....
Napisałeś, że spodziewasz się ok 13000 obrotów na sekundę. Licznik 16 bit powinien przyjąć Ci to z ponad czterokrotną nadwyżką. Drugi 8bit timer odmierza Ci czas pomiaru - np.: 1/4 sekundy - zależnie od tego jakiego używasz zegara i preskalera timera. Przerwanie timera oznacza że ukończyłeś pomiar ilości impulsów licznikiem. Wtedy zatrzymujesz timer,...
Witam, Potrzebuje zrobić sterownik tranzystorów do zasilacza impulsowego topologi half-bridge. Tranzystory są tutaj sterowane PWM na przemian. Chciałem zastosować sterowanie PWM które miało by działać w następujący sposób: [syntax=vbnet]Config Portb = &B11111111 : Portb = &B11111111 Config Timer0 = Timer , Prescale = 8 Enable Interrupts Enable...
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...
Trzeba tu zaznaczyć, że metoda zliczania impulsów w czasie nie jest tożsama, pod względem efektów, z pomiarem czasu między kolejnymi impulsami. Pierwsza metoda nadaje się do wyższych częstotliwości, a druga do niższych. Problem tkwi w rozdzielczości pomiaru i szybkości uzyskania wyniku. Licznik AVR'a reaguje na impulsy o częstotliwości maksymalnej niższej...
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...
Zrobiłem taki układzik do pomiaru odległości od przeszkody: http://obrazki.elektroda.net/6_125525326... Do tego zaczątek programu: $regfile = "M8def.dat" $crystal = 16000000 'Config Lcdpin = Pin , Db7 = Portb.0 , Db6 = Portb.1 , Db5 = Portb.2 , Db4 = Portb.3 , E = Portb.4 , Rs = Portb.5 Config Portb = Output Enable Interrupts Ocr2...
Cześć. Przeglądałem archiwum ale nic dla siebie konkretnego nie znalazłem. Mam problem z programem (konfiguracją przerwań). Chciałem wykonać mały i prosty licznik obrotów. Wykonałem przetwornik obrót/impulsy na diodach, zakładam że nie występują w nim "drgania styków" :) Otrzymany sygnał chciałem podać na wejście INT0 i za pomocą Timera zliczać pojawiające...
Aha no ok to jak teraz dobrać odpowiednią ilość impulsów raz żeby na siebie nie nachodziły 2 i żeby to działało to jest uzależnione jeden impuls to 1 polecenie a że tak się jeszcze głupio zapytam ja pracuje teraz nad tym żeby wyświetlacz LED pracował multipleksowo w przerwaniach czyli jak się przepełni licznik to wykona się podprogram multipleksacji...
Dzieki wszystkim za zainteresowanie. Poszperałem wczoraj wieczorem i znalazłem że w mode=1 wartość ładuje się instrukcją 'counter [0,1]=wartość lub jak koledzy napisali np. tl0=&h5f th0=&h45, a load działa tylko w mode=2. Mam nowe pytanie przy kofiguracji takiej: Config timer0=counter , gate=internal , mode=1 powinien zliczać impulsy podawane na pin...
impulsów licznik bascom bascom licznik impulsów licznik impulsów ilość impulsów
rozbierać aparat vectra poziom sygnału miernik małych oporności
nissan nv200 radio nissan nv200 radio
Zworka J4 w mierniku KM409 - konfiguracja i funkcje Skrypt do restartu systemu Linux - przykład i analiza