Tak wiem że należy odpalić timer na początku i zatrzymać na końcu i odczytać jego wartość.. no nic. Dziękuję za wypowiedzi tak czy inaczej.. Odp. kol. Draco była troche sarkastyczna, bo na tak prostą procedurę nikt, kto ma choć troche rozeznania w tej dziedzinie chyba (!) nie szuka pomocy. Mopzesz to zrobić na kilka sposobów: 1. mierzyc czas metodą...
On będzie się zwiększał o 1 w tym przypadku, bo wartość przesunięcia przekazywana do funkcji też się tak zwiększa. Jeśli jednak np. zacząłbyś przesuwać w prawo to funkcja nie działałaby prawidłowo, poza tym musiałbyś tą wartość zapamiętać poza funkcją dla danego napisu (tak, jak teraz przesuniecie ). Dlatego trzeba to liczyć.
po mojemu powinieneś zmienić "Inc" na "Incr" Inc jest mnemonikiem asemblerowym i działa na bajcie Incr jest poleceniem Bascom i powinien działać na longu.
Lcd "<- " ; Liczba_krokow ; " "
W twoim programie wg BASCOM-AVR są błędy: Error : 254 Line : 17 Variable expected Przepraszam za pomyłkę. W BASCOM-AVR, do przerwań od timera, powinniśmy użyć 'TIMER1_OVF' zamiast 'TIMER1 OVERFLOW'. Podobna sytuacja jest z przerwaniem od INT0, powinniśmy użyć 'INT0_ISR'. Najpierw musimy skonfigurować Timer1 i INT0, następnie włączyć przerwania. Kiedy...
No to jeszcze zapowiadana wersja turbo (przy założeniu że zmienna Dystans jest zmienną 16-to bitową): [syntax=basic4gl]On Compare1a Timer1_isr Nosave ... ... Timer1_isr: push R16 In R16, SREG push R16 push R17 lds R16, {Dystans+0} lds R17, {Dystans+1} subi R16, 255 sbci R17, 255 sts {Dystans+0}, R16 sts {Dystans+1}, R17 pop R17 pop R16 !Out SREG, R16...
Pisze programik w bascomie (51'), który między innymi ma zliczać czas od włączenia układu. T0 i T1 będą wykorzystane do liczenia impulsów (ale to dopiero później) Wymyśliłem sobie, że czas będzie mierzony na podstawie licznika w głownej pętli programu tzn: Do Debounce P3.0 , 0 , Przycisk , Sub Gosub Opcja Incr Czas Waitms 50 Wczas = Czas * 20 Loop No,...
Tak poza tematem, czy to sie nie pisze "Load Timer0, 100" ? i zrob timer0=cos na starcie i w przerwaniu.
Cześć. Właśnie liczę crc32 ze stringu '123' na trzy różne sposoby (C++, Bascom AVR, kalkulator online). Wyniki C++ i kalkulatora online się pokrywają. To co wylicza Bascom AVR nie pasuje do reszty: Program w C++ http://obrazki.elektroda.pl/5493373900_1... Z kalkulatora online wynika to samo: http://obrazki.elektroda.pl/6030248600_1...
Nie liczę.
Ja już chyba na to odpisywałem, albo deja vu:) Nie Timer nie liczy stanów a zbocza... tak można na takie i takie zbocze liczyć... Ty zapewne chesz liczyć na zbocze opadające...
No to zaprezentuj układ i swój program, a my pomożemy. Na gotowca nie licz.
Pind.2=0 to chyba masz prawie cały czas- przy przejściu przez 0 diody w transoptorach przestają świecić, tranzystory się zatykaja i przez chwilę na kolektorach- czyli na wejściu procesora masz 1. Może licz jedynki.
Ja tylko tak luźno dodam, że na pomiar impulsów z trzypinowego wiatraczka przy sterowaniu masą przez PWM bym nie liczył.
Jeśli chcesz użyć wyłącznie Incr więc liczenia co 2 nie zrobiśz inaczej niż Incr x Incr x :)
Witam ! Spróbuj tak: [syntax=vbnet] 'Licz = 1234 Jedn = Licz Mod 10 Licz = Licz / 10 Dzie = Licz Mod 10 Setk = Licz / 10 Setk = Setk Mod 10 [/syntax]
Witam ! Spróbuj tak: [syntax=vbnet] 'Licz = 1234 Jedn = Licz Mod 10 Licz = Licz / 10 Dzie = Licz Mod 10 Setk = Licz / 10 Setk = Setk Mod 10 [/syntax]
Te coś takiego , to jest układ do resetowania procesora w momencie włączenia zasilania i nie służy do eliminacji drgań S1 (R10 jest nie potrzebny). Jak chcesz zliczać szybkie impulsy to zrób to na zewnętrznych przerwaniach , jeżeli ma to być tylko liczenie ile razy przycisk został naciśnięty , to powinno wystarczyć If Pinc.4 = 0 Then waitms 200 Incr...
Powodzenia, a na pomoc w C zawsze możesz liczyć :)
1) tak 2) tak 3) nie wiem o co chodzi ;) 4) Wszystko jest w datasheecie ladnie opisane, mozesz tez sciagnac sobie program avrcalc jak nie chce ci sie samemu liczyc ;)
Zrób tablice z wartością końcową dla 60 wartości, będzie szybciej niż liczyć na piechotę! Bascom powinien liczyć tangens funkcji, ale przecież to mały AVRek, a wartości jest tylko 60
Może napisz 2 częstościomierze oc1a ,octb - oczywiście liczysz ilość impulsów -tak jak napisałeś. ilość imp. odpowiadać musi stopniom 'C skrypt na hertz'miarke : 'Częstościomierz nieco dokładniejszy Config Timer1 = Counter , Edge = Rising Do : Timer1 = 0 : Start Timer1 Waitms 999 'tu można skorygować wynik Stop Timer1 : Cls : Lcd "F="...
A ile maksymalnie możesz (chcesz) policzyć bo np: przy kwarcu 12Mhz taktów zegara po 10s jest 120 000 000, taktów maszynowych 10 000 000. Widzisz, że liczby robią się dosyć poważne wiec ten LCD musi mieć dużo miejsca do wyświetlenia. Do liczenia najlepiej użyć timera w trybie 16bitów. Za każdym razem jak policzy do końca wiesz że taktów zegara było...
Witam. Pewnie się da to co w tytule ale do rzeczy. Stanąłem przed trudnym zadaniem (trudnym dla mnie bo jak do tej pory to udało mi się mignąć diodą przy pomocy uC). Chciałem zrobić układ sterownika do bramy wjazdowej do domu. http://www.elektroda.pl/rtvforum/viewtop... Sterownik będzie miał za zadanie : 1. czekać na sygnał z pilota (odrębny...
Na jakich typach liczysz? Na chwile pominę same wyliczenia. Word pomieści 65535 bo to dwa bajty 256x256(osiem bitów w kombinacji ośmiu bitów) Jak taką zmienną przepełnisz to wynikiem jest reszta. Znaczy się jak do 65534 dodasz 1 to binarnie wygląda to tak 11111111 11111110 + 1 Przepełni się za chwilę :D i wynik będzie ale przekłamany. Spróbuj zadeklarować...
Witam po raz kolejny. Zrobiłem to za pomocą przerwań, jak radziliście i można powiedzieć że działa. Niestety pojawił sie kolejny problem. Mianowicie, jak pogodzić obsługę przerwań z dwóch źródeł na raz? Mniej więcej chodzi o to, że na przerwanie int0 mierzy ten czas, zapisuje do zmiennej np "a" zeruje timer, a następnie czeka na przerwanie int1, mierzy...
Datasheet podaje, że przy odbiorze pobiera około 12mA, co mniej więcej potwierdza się w rzeczywistości (mój miernik pokazał 15mA, ale nie pamiętam dokładnej konfiguracji). No właśnie zastanawia mnie to stwierdzenie "przy odbiorze" czyli czy pobór ten jest różny w czasie rzeczywistego odbioru a poborem w czasie czekania na dane (mam nadzieje że ktoś...
przykład zmienna1=liczba.8 oznacza ze zmienna1 przyjmie wartość bitu osiem ( tu będzie 1) twojego słowa 101101100 licząc od prawej strony, liczenie zaczynamy od pozycji zero.
GPIOB->BSRR=0b00000000000000000000000... //ustawi 1 na PB.0 bez zmiany pozostałych pinów? GPIOB->BSRR=0b00000000000000010000000... //wpisze 0 na PB.0 bez zmiany pozostałych pinów? Jednak wolę Bascom niż zabawę w liczenie 32 bitów To nie Bascom, nic nie trzeba liczyć. Piny mają zdefiniowane nazwy symboliczne np. w odniesieniu do...
Nie ma, timer2 na as i liczysz na piechotkę , oczywiście kwarc musi być podłączony (32768 na osci osco).
tylko co sprawdzić ? próbowałem jeszcze z filtracją napięcia zasilania uP i z filtracją na wej. Pinb.0 - nic to nie dało . Niewiem co liczy timer0
spojrz powyzej odbierasz ją jako LONG jeśliby się nie dało to proponuje dim Licz as long at 120 DIM B1 as Byte at 120 overlay DIM B2 as Byte at 121 overlay DIM B3 as Byte at 122 overlay DIM B4 as Byte at 123 overlay inputbin b1,b2,b3,b4 oczywiście adres 120 jest przykładowy- wiadomo ze zmienna licz zajmuje 4 kolejne bajty
Z tym procesorem czy problem konkretnie jest to nie wiem, ale przy wielu procesorach (m. in. m644p, m1280, m2560) na pewno są problemy z tym timerem. Ale do rzeczy, bo cały program nie ma prawa działać... 1. If W1 = 0 And Portb.i = 0 Then A cio to? rozumiem, że tu mają być sprawdzane stany pinów skonfigurowanych jako wejścia? Jeśli tak to czemu masz...
Zamiast liczyć coś na floatach (typ Single w BASCOMie) to licz na integerach (tyle że dane trzeba będzie przeskalować w górę aby mieć symulacje części ułamkowej). Od razu co najmniej 1KB mniej ze względu na brak bibliotek do floatów, ze 2 razy mniej kodu na każde wywołanie funkcji, 10 razy szybsze działanie no i mniejsze zużycie RAMu. Program w EEPROMie...
Proszę sobie przeczytać o PRINT i INPUT, a nie liczyć na gotowce.
ADS1100 komunikuje z AVR 90S4433, mam karte katalogową ale komunikacja przy użyciu I2C nigdy mi nie wychodziła a i nigdy mi nie była potrzebna (aż do teraz). Programy pisze w BASCOM i jak do tej pory mi wystarczył Nie rozumiem, liczysz że bascom napisze w zamian za Ciebie program?
Witam, Do wejść Portu mam podłączone 5 odbiorników zbliżeniowych. Odczytują zagłębienia w tarczy kodowej. Niestety nie są one uporządkowane tzn bit0 na tarczy jest przypisany do PORTx.4 a bit1 do PORTx.2 itd Próbowałem wcisnąć do zmiennej typu string *6 odczyt z poszczególnych czujników na zasadzie I = $bit5; $bit4; $bit3.... a później przekształcić...
To są 7-seg? Co chcesz liczyć? Poczytaj o multipleksowaniu.
Nie zapomnij zrobić układ eliminujący podskakiwanie styków, inaczej bedzie dziwnie ci liczył.
Po prostu raz odczytujesz id termometrów i potem na stałe zapisujesz je w odpowiednich tablicach, zamiast stosować instrukcji wyszukujących układy na magistrali. --- Choć z tego co wiem o magistrali 1wire czujniki powinny być zawsze wyszukiwane w tej samej kolejności, stąd może masz jakieś błędy w komunikacji (np. poprzez za długi kabel złej jakości...
Witam Podany kawałek nie liczy czasu tylko ilość impulsów w czasie. Pozdrawiam
Spróbuje napisać sam, ale w razie wątpliwości liczę na pomoc. Pozdrawiam
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ć...
Poczytaj help bascoma nie licz na gotowca.
Zrobiłem bez tego set, bez rezyztora poprostu hamsko zwarłem i chyba działa. Na "chyba", to ja bym nie liczył. A jak masz podłączone te przyciski i o jakim rezystorze piszesz :?:
Stoi zegar. Nie działają przerwania zewnętrzne w tym przypadku. Dodano po 1 Ok, temat zamykam bo to nie jest chyba problem programu, tylko zegarka
W Bascomie wszystko sie da, ale będziesz musiał napisać całą obsługe od początku a to jest dość mozolne i nudne... Raczej nie licz na to że uda Ci się wysterować ten LCD przy pomocy poleceń np: "LCD HELLO" czy "CLS"
CRC8 liczy CRC z określonej liczby bajtów danych. Checksum liczy sumę kontrolną ze stringa. Czyli nie dość że działa na innych parametrach, to jeszcze to nie to samo (CRC <> suma kontrolna). Ja bym zrobił tak: W nadajniku liczysz CRC. W odbiorniku też liczysz CRC i sprawdzasz czy zgadza się z tym któro było policzone w nadajniku. Tyle. Licz co...
Spróbuj tego tylko odpowiednio adresy usaw jeśli masz inne... Oczywiście zdeklaruj inne rzeczy... Wg. Twoich ustawień Config Sda = Portc.1 Config Scl = Portc.0 Dim M As Byte Dim S As Byte Dim H As Byte I2cstart I2cwbyte 162 I2cwbyte 2 I2cstart I2cwbyte 163 I2crbyte S , Ack I2crbyte M , Ack I2crbyte H , Nack I2cstop S = Makedec(s) M = Makedec(m)...
Polecenie encoder jest na tyle powolne ze na pewno procesor nie bedzie reagował na szybkie impulsy...Lepiej napisać swoją obsługę. Opis obsługi enkodera w bascomie [url=http://www.elektroda.pl/rtvforum/to...
Jak nie będzie lepszego schematu i opisu działania to chyba nikt ci nie pomoże. Jak zamkniesz A4 to silnik będzie kręcił aż go nie rozłączysz. Chyba że A4 to przycisk. To skoro tak to podłącz go bezpośrednio do kontrolera i zostaw obwód silnika tylko na przekaźniku A5. Generalnie schemat elektryczny to trochę do bani jest. A liczyć obroty silnika to...
Może zajżysz tutaj. http://www.elektroda.pl/rtvforum/viewtop... Jest tam źródło w bascomie dla komputerka do Dewoo. Tam chyba znajdziesz to czego ci potrzeba.
Jakiś użytkownik też miał z tym kiedyś problem, rozwiązał to w taki sposób: Pinb.0 = 0 ' pin RW Waitms 100 Initlcd Nie sądzę, że jest to potrzebne, gdy pin został skonfigurowany w config lcdpin . Co z tą częstotliwością? W symulatorze raczej jest podany czas wykonywania kodu (sprawdź bez $sim ). Nie podałeś, jaki masz kod, ile się wykonuje na mikrokontrolerze,...
Emarcus on liczy przepełnienia timera, który generuje przerwania, co 4ms i coś tam robi w przerwaniu. Ostatnia linijka postu, który cytujesz.
Poza zmianą nazwy portów będziesz musiał odpowiednio skonfigurować obsługę timera bo z pewnością on jest wykorzystany do liczenia czasu i obsługi wyświetlacza led .
Przydał by się kod programu... Jeżeli wyłączasz timer to po jego ponownym włączeniu zaczynasz pewnie liczyć od 0 pomimo, że nie udało się doliczyć do potrzebnej wartości licznika. Ale to tylko przypuszczenia...
1. brakuje set portb.0 - tą linie musisz mieć podciągniętą do plusa 2. odliczenie 10ciu jednostek zwiększenia zmiennej A to i tak ułamek sekundy. Jeśli chcesz liczyć dłuższe odstępy, zastosuj zmienną Word i wówczas masz liczenie do 65535
Człowieku! Po co ci zmienne typu Single do liczenia kroków! Zastosuj Long jak już chcesz mieć zmienne 4 bajtowe.
A może takie liczenie:[syntax=c]Wynik = 47; L1 = Wynik % 10; L2 = Wynik / 10;[/syntax] Nie wiem czy to w Bascomie będzie działać.
I jak tam postępy z projektem, udało ci się go zrealizować?, jeśli tak to może byś zamknął temat. Rozumiem że na kliknięcie "pomógł" nie mam co liczyć, bo przecież cel osiągnąłeś, a "jeleń" nie jest już do niczego potrzebny.
Dzięki za odpowiedź Sprawdzałem taką opcje - z tego co pamiętam nie chodziła jak należy to chyba dla tego że jest Ampl = 62 - Ampl Może sie miesza coś , bo jak chcemy coś wyświetlać to trzeba liczyć od dołu .
Ale ja proponowałem 1000000Hz a nie 10000000Hz To jest 10x więcej! (przekopiowałem z postów-więc może się nie pomyliłem) Jeśli nie zmieniałeś fusebitów to daj: $crystal=1000000 Sprawdzam i liczę: 1MHz=1000000Hz. Uff. Może jeszcze nie mam ciężkiej sklerozy.
No właśnie jest ten problem, że wcale nie liczy nawet jak nie naciskam nic pilotem. Co do stworzenia własnej funkcji to ciężko będzie:)
Witam. Czy ktoś wie dlaczego dziwnie liczy mi wartość Impw? W symulatorze jeżeli na pind.5 caly czas daje 0, to po osiągnięciu przez timer 0,1s (6249) wartość Impw wynosci 9300. Skąd to się bierze??? $crystal = 4000000 Config Timer1 = Timer , Prescale = 64 poczatek: Start Timer1 Impw = 0 Timer1 = 0 Do If Pind.5 = 0 Then Incr Impw Loop Until Timer1...
Powiem tak, wielu jest sympatyków C, którzy w swojej naturze widzą tylko ten język, i dobrze, mają w pewnych kwestiach rację ale nie należy się nimi przejmować, wykorzystałeś ide arduino i dobrze, umiałeś odchudzić biblotekę i to się chwali, owszem mogłeś użyć attiny 13 i np bascoma, i wierz mi też by się przyczepiono bo to bascom, liczy się że cel...
Aby ten program, który napisałem zadziałał, trzeba urchomić dwa Timery. Timer0 do odliczania 100 milisekund a Timer1 do odliczania 1 sekundy. Albo tylko 1 timer cyklicznie co 100 ms i liczymy do 10... ;)
Wystarczy wpisać warunek w dodatku prosty If I = 100 then stop timer1 I=0 timer1= 0 start timer1 end if a tutaj Kasowanie: stop timer1 I=0 Timer1 = 0 start timer1 Return W ogóle nie bierzesz pod uwagę z jaką częstotliwością będzie liczył licznik chyba potrzebujesz jakiś konkretny czas...
9600000Hz/70000Hz=137 takty 9600000Hz/150000Hz=64 takty Z takimi rozdzielczościami się tam musisz liczyć. Dla 37kHz i innych konfig uzyskasz klikając CTRL+SPACE. Bascom sam podpowiada jakie masz możliwe ustawienia. Nie pamiętam tylko czy jest to FastPWM czy PhaseCorrect który jeszcze spowolni sprawę o połowę. W Tiny85 masz Timer który może być taktowany...
Nie wiem jak liczyć naciśnięcia , a jak czas . bascom wywala mi błędy w składni - proszę o poprawki .
Operuj cały czas na zliczonych taktach, nie przeliczaj ich na ms. Licz takty i odliczaj takty.
A jaki zegar taktujący? 1MHz z wewnętrznego generatora? Bez tego możemy sobie liczyć banany na wierzbie.
lepiej licz czas między impulsami będzie dokładniej przy słabych wiatrach lub zamiast 20 imp./obr. daj >200
Jest to podobne -owszem. Oczywiście, że jest algorytm do obliczania CRC jak i LRC. Trzeba skorzystać z google i z pewnością coś się znajdzie. Na tym forum jak i na Wikipedii na pewno coś znajdziesz jak obliczyć CRC. Mogę tylko powiedzieć, że całość opiera się na przesuwaniu i używaniu funkcji XOR. Są też gotowe funkcje do znalezienia w necie które przyspieszają...
jednak jak bym chciał zrobić to w bascomie to i tak i tak muszę liczyć na zmiennym przecinku bo bascom funkcje trygonometryczne liczy tylko na zmiennych typu single więc sprubuje zrobić to przez DFT i IIR i zobacze co działa szybciej a tak w ogule to mam jeszcze pytanie czy dobrze rozumiem to IIR najpierw muszę zaprojektować analogowy filtr wedłóg schematu...
Deklarujesz zmienną do liczenia czasu po wciśnięciu przycisku. Gdy puścisz przycisk, określona wartość wykonuje GOSUB do wykonania zadania(LCD czy sterowanie portami) i zeruje zmienną. Kolejne naciśnięcie przycisku zaczyna liczenie od początku i czeka na puszczenie przycisku. Możesz też wykorzystać TIMER do liczenia czasu.
tak jest to licznik do maszyny offsetowej - ma to zastąpić fabryczny mechaniczny licznik, który często zawodzi :(
A po co mi w C ?ja C nie znam poza tym w C można sobie znaleźć dużo przykładów w Google a i w arduino tez jest sporo Nie będę ukrywał ze liczyłem na pomoc w bascom a nie w innych językach
A mnie właśnie działa bez problemu z BASCOMEM, mam impulsator od kuchni mikrofalowej i jest OK. Jak chciałem zrobić na przerwaniach to liczył cuda. Więc dałem sobie
Ja liczę razem z początkoym '$' i wychodzi w Bascomie OK
W końcu udało mi się pojąć ten program i mniej więcej przerwania, ale nastało kolejne pytanie z mojej strony. W jaki sposób mogę obliczyć wartość timera, żeby mógł odliczyć np 0,5 sek lub 2 sek. Chodzi mi na razie o Timer0 8 bitów. W jaki sposób mogę też liczyć przepełnienia?
No tak masz racje uciekło mi to, a czy wywołanie funkcji jest ok? Bo mnie chodzi o to aby funkcja liczyła reszte z dzielenia.
No program się kompiluje- ale oczywiście nic nie robi. Co robisz z pojawiającym się na Pinb.1 sygnałem? -nic. Końcówką przechwytującą jest Pinb.0. Ale co z tego że zapisze stan- i tak uruchamiasz Timer1 i on sobie liczy coś co nie ma żadnego związku z danymi. Impulsy przychodzą z halotronu co 1ms-to dość szybko- ale nic się z nimi nie dzieje. Zdecyduj...
Myślę kolego że nie do końca masz rację. Zaprzeczeniem tego jest kolega (at)bart-projects , który w bascomie potrafi zrobić wszystko. Liczę na to że jeszcze się odezwie, i pomoże rozwikłać zagadkę ;)
Kolega piotrva zamiast pomagać zadaje dodatkowe zagadki, no ale cóż tak też można - zmusza nas do myślenia - może to i dobrze. Problem polega zapewne na tym, że przyciski nie są podciągnie ani fizycznie ani programowo do + , czyż nie o to chodzi kolego piotrva ? Czekamy z niecierpliwością na odpowiedz. W przypadku prawidłowej odpowiedzi liczę na nagrodę.
Prosty program nawet w BASCOMie. Podajemy impuls z PLC na pin startujemy timer i liczymy czas. Jest impuls reset timera nie ma impulsu - reset PLC Start odliczania 60 sekund. I tak w koło. Dziesięć linijek kodu.
:| Witam wszystkich. Mam taki problem bo bascom zle liczy ulamki (mniej wiecej wiem o co chodzi) np. w pewnym momencie zamiast 0.4 pokazuje0.399999999989 oczywiscie uzywam zmiennej single. czy da sie to jakos obejsc w prosty sposob czy bascom jest skazany na takie problemy? Bardzo prosze o pomoc.
Dzięki za chęci Powodem było dzielenie różnych zmiennych. Po ujednoliceniu licznika i mianownika liczy już dobrze pozdrawiam Czarek
Timer0 ma też tryb CTC i przy ustawieniu prescale 1024 i odpowiednim ustawieniu rejestru OCR0 da się z niego uzyskać 100Hz. Wtedy można użyć Timer1 do liczenia.
Witam, potrzebuje zaprogramowac układ AT89C4051 tym oto programem http://www.edw.com.pl/library/pliki/prz4... ale wersja demo bascoma, którą posiadam nie pozwala na skompilowanie, czy mogę liczyć na waszą pomoc?
Hej! Owszem jest to błąd ale kolega Wojachowski dobrze kombinował ponieważ 2 do 8 wynosi 256 tylko, że zapomniał o tym, że od tego wyniku należy odjąc jedną pozycję ponieważ zero też się liczy (0-255). Pozdrawiam
Oczywiście w dokumentacji gdzieś tam pisze o tym :) (To jest główna wada bascoma, liczenie jakichkolwiek wzorów zajmuje strony textu:/).
W procedurze wyświetlania zapisany jest warunek wygaszanie zer nie znaczących, a po przekroczeniu 255 cyfra setek wyświetla 0 i ono nie gaśnie. Czyli zmienna liczy się nadal, co wskazuje rzeczywiście na problem z wyświetlaniem a nie liczeniem. Po wpisaniu "na twardo" Liczba_nok = 987 Liczba_ok = 654 wyświetlacz pokazuje 287 i 154
Gdzieś kiedyś widziałem taką opcję a Bascom, ale jej nie szukałem i nie włączałem. Liczyłem na to że jeśli ktoś podejmie się analizy, również ma Bascom i po przyklejeniu kodu będzie miał już ponumerowane. Temat zamykam, gdyż postanowiłem sam napisać program od nowa bardziej spójniej. Dziękuję.
Najprosciej jest odpalić symulacje programową i jadąc krok po kroku patrzeć co się dzieje z czasem. Albo dissasembler i liczenie kroków :)
Czyli (9600000/8)/(64*510)=37 Hz Dobrze liczę czy zamiast 510 powinno być 256?
Nowy mikrokontroler dopóki tego nie zmienisz pracuje z prędkością 1000000 Hz (1MHz) Wpisz na samej górze w kodzie [syntax=basic4gl]$crystal = 1000000 '1MHz crystal[/syntax] To poinformuje kompilator o prędkości i będzie już liczył poprawnie.
:arrow: melon, najwyższy czas porzucić polecenia "wait" i zaprzyjaźnić się z timerami. To tak zwana wędka - na rybę nie licz ;)
Dodajesz pamięć zdarzeń, tzn na jakimś bicie oznaczasz sobie, czy ostatnio liczyłeś w górę, jeśli tak to zmieniasz znak bajtu i liczysz w dół; jednym słowem: BANAŁ
Witam, Właśnie napotkałem na ten sam problem, co śmieszniejsze jest tak tylko na Attiny2313 ale na starym AT90S2313 tak nie było. Ciekaw jestem jakie jeszcze niespodzianki podczas kuru BASCOM napotkam? Kolego jacek232 napisałeś "Dim Licz As Byte" czyli zdefiniowałeś "Licz" jako zmienną bitową? Ale dokładnie co oznacza Dim?
Tak tylko ze w bascomie takie obliczenie zje ci z 20-30 % pamieci !!! Lepiej zrob sobie tablice z wartoscami i potem na podstawie napiecia odczytuj stezenie.... Dodatkowo bascom cholernie dlugo liczy takie obliczenia. Zdecydowanie nie polecam
bascom liczenie impuls liczenie impulsów bascom bascom liczenie obrót
rejestrator trasy wtyczka angielska staż elektryk
blaupunkt bno881 schemat centralny zamek kangoo
Objawy uszkodzonego czujnika położenia bębna pralki Lokalizacja czujnika położenia wału Ford Fusion 2006 benzyna