Zdefiniuj wszystkie zmienne na jakich robisz operacje dzielenia i modulo jako INT. Zmienna jednobajtowa się przekręca do zera po osiągnięciu wartości 256.
Witam, Dawno nie korzystałem z BASCOM'a, więc nie pamiętam już składni, ale algorytm jest następujący: 1) zapisujesz sobie w zmiennej temperaturę w stopniach 2) wykonujesz dzielenie całkowite temperatury przez 10 -> otrzymujesz cyfrę dziesiątki, zapisz do zmiennej x 3) wykonujesz dzielenie modulo temperatury (reszta z dzielenia) przez 10 -> otrzymujesz...
Zamieniasz poszczególne znaki na ich liczbowe odpowiedniki za pomocą funkcji: ASC i XORujesz z poprzednią wartością, za pomocą funkcji XOR. O rozbijaniu stringa na poszczególne znaki było parę( dziesiąt) postów temu. A sam XOR to inaczej suma modulo 2: 0 xor 0 -> 0 1 xor 0 -> 1 0 xor 1- > 1 1 xor 1 -> 0 Oooo, znalazłem: http://www.elektroda.pl/rtvforum/topic15...
Niebardzo rozumiem o co dokładnie tu chodzi ale: 1. Każde wystąpienie Lcd Chr(3) powinno być Lcd Chr(3); żeby nie były dodawane znaki nowej linii. 2. Żeby modulo 10 się obliczało poprawnie, to zamiast Dim Volt_d As Byte musi być Dim Volt_d As Word To jest związane z tym, że BASCOM nie potrafi rzutować typów z większego (Word) na mniejszy...
jak jusz to modulo 256.. a pozatym to jest to samo co dodawanie z przepełnieniem... jak do x o wartości 255 dodasz 1 to wynik będzie wynosił 0 (zmienna 8 bitów)...(natomiast bit C będzie ustawiony).. odrazu mówie.. modulo 256 z bajtu jest stratą cykli, miejsca w programie, a pozatym nic niedaje (to tak jak dodawanie zera)
Co do PCF8583 - do zapisu pełnego roku wykorzystaj wolny RAM na końcu układu. Od adresu chyba 0x10 masz wolne komórki - w 2 z nich zapisz sobie pełny rok i sprawdzaj jego modulo z danymi w 2-bitowym rejestrze roku układu i w razie konieczności aktualizuj dane w tych 2 komórkach.
Nie rób modulo, bascomowi zeżre to w cholerę cylki Zrób tak, jak jest, czyli AND 3 - to jest to samo, co modulo 4, a ogólnie wszystkie operacje typu modulo potęga dwójki można zastąpić taką konstrukcją: a MOD (2^b) = a AND ((2^b)-1) np. a MOD 32 = a AND 31, a MOD 512 = a AND 511 Ten sposób działa szybciej na każdej architekturze, bez wyjątków :) w wypadku...
niewiem dokładnie jak to jest z procesorami programowalnymi w tem sposub ( jeszcze) W zwykłym asemblu robił bym to na podstawie kilku operacji arytmetyczno/logicznych pierwszą liczbe (jedności i dziesiątek) otrzymasz poprzez uruchomienia polecenia funkcjonującego jako modulo z argumentem 100 ( reszta z dzielenia przez 100) Drugą liczbę możesz otrzymać...
w jaki sposób rozwiązujesz rok w 8583 ? Jak "rozwiązuję rok" ;) to dość trudno tak w kilku zdaniach wytłumaczyć, chociaż sprawa generalnie jest prosta... Może więc zamiast się rozwodzić, pozwolę sobie wkleić dobrze (mam nadzieję) skomentowane fragmenty swojego programu. ' ****************************************... 'Odczyt:...
Tzn. ja napisałem tego potworka na podstawie wzoru: [syntax=text] Wieczny kalendarz - oblicza numer dnia tygodnia na podstawie daty dzień tygodnia = ([23m/9] + d + 4 + y + [z/4] - [z/100] + [z/400] - 2 (if m >= 3) ) mod 7 gdzie [ ] oznacza dzielenie bez reszty z zaokrągleniem w dół mod - funkcja modulo m - numer miesiąca (od stycznia = 1 do grudnia...
010203 to string danych Jeśli to string, to CRC liczysz w następujący sposób: -Sumujesz kody ASCII tych znaków. Suma powinna być zadeklarowana jako unsigned char, żeby była brana bez znaku i działała modulo 256. -sumę zmieniasz na liczbę ujemną (a w kodzie uzupełnien do 2: negacja bitowa, zwiększenie o 1) no i gotowe :) skleciłem prosty kodzik na poczekaniu,...
Witam. Mam zbudowany od 3 lat inkubator na jaja kurze, gęsie i kacze. Cała konstrukcja działa w oparciu czujnik temperatury i wilgotności DHT22. Stary program działa bardzo dobrze, ptaszynki klują się ładnie. Ale żeby nie było tak pięknie to co jakiś czas, powiedzmy raz a może dwa razy na sezon coś się zawiesza i zamiast 37,7 stopni temperatura rośnie...
jak chcesz do 1 miejsca po przecinku, to mnożysz liczbę zmiennoprzecinkową przez 10 (jak do dwóch miejsc, to przez 100, itd.) zamieniasz ją na człkowitą i masz dwie (no w sumie to trzy) drogi. 1. zamieniasz liczbę całkowitą na tekst, wyświetlasz wszystko oprócz ostatniej cyfry (ostatnich dwóch, trzech...) wyświetlasz kropkę i dopiero ostatnią (ostatnie)...
wyswietlanie takiej liczby nie jest problemem. Jezlei masz narazie tylko to to zwykłe dzielenie i modulo (reszta z dzielenia) ... ala=235 ela=ala mod 10 '235 podzielone przez 10(=23) i to co zostanie (=5) ala=ala/10 led_cyfra(3)=ela ela=ala mod 10 '23 podzielone przez 10 (=2) i to co zostało (=3) ala=ala/10 led_cyfra(2)=ela...
Ale skad potem np 50??... licze 2*3,14/32*1 .... nie chce mi wyjsc sin((360/32)*1)*256=49,8xxx czyli około 50 sin((360/32)*2)*256=97,9xxx czyli około 98 .......... i tak dalej co do pierwiastka to faktycznie troche mu to zajmuje (około 600 instrukcji) ale w sumie jest to robione jakieś 64 razy na odświeżenie i w skali glogalnej nie zabiera aż tak duzo...
Najtrudniej analizuje się własny kod, bo zawsze patrzy się przez pryzmat wiedzy o tym co on powinien robić i nie dostrzega się drobnych błędów :) Zgadzam się z tym w 100%. Przy Bascomie rzadko sięgałem do PDF'ów kontrolerów, przy C nie da się bez tego wszystkiego zrobić. Bez tych 500 "przekręceń" licznika nawet w Bascom by nie poszło, jak zwykle zbyt...
dzielenie całkowite + modulo. Przy dzieleniu przez 10 uzyskasz górną cyfrę, przy modulo 10 dolną.
Na wstępie chciałbym podziękować osobom, które odpisały na moje zapytanie. Od razu powiem, że ich sposoby były mocno niepełne i nie działały (działały tylko dla, że się tak wyrażę, "normalnych" dat) jednak doprowadziły mnie do mety za co jeszcze raz dzięki :) Aby zrobić całkowicie poprawny algorytm skorzystałem ze strony http://kalender-365.de/kalendarz.php?yy=...
1. Najważniejsze jest modulowanie świecenia diody IR. Od strony programowanej sprawa jest dość prosta. Trzeba wygenerować impulsy o częstotliwości kilku lub kilkudziesięciu kHz i przy ich pomocy włączać diodę IR. 2. Jeśli elementy jakimi dysponujesz to fototranzystory to możesz zbudować taki odbiornik: https://obrazki.elektroda.pl/8607391600_...
W celu wygenerowania można spróbować pobierać wartość ADC, który "wisi" w powietrzu. Powinny tam się pojawiać losowe wartości od 0 do 255, później robisz tylko modulo 8 i sprawdzasz, czy dana wartość już nie wystąpiła.
jak naraziie ASM to "za wysokie progi na moje nogi", jak ja widze te 2 literowe komendy, i wszystko w języku niskopoziomowym, od odwoływania sie do pamieci, poprzez operacjie w stylu mnożenia czy dzielenia... nie mówiąc o dzieleniu modulo...
co prawda przekracza 255, ale wynik z dzielenia przez 10 i Modulo 10 już nie, czyli 28 i 3 Tyle, że najpierw przekracza i tu masz błąd. W żadnym przypadku, nie można przekraczać zakresu, zrób operację na bajcie np bajt = bajt * 10000 / 10000. Człowiek tą operacje skróci, kompilator nie.
Hmmm... Ciężko mi cokolwiek wydumać, żeby nie walnąć gafy... Ale ryzyk fizyk: 1. Losuj 2. Sprawdź, czy wylosowana mieści się w zakresie między LED_on_min .. LED_on_max 3. Jeżeli tak to włącz LED na czas opisany przez wylosowaną. 4. Losuj 5. Sprawdź, czy wylosowana mieści się w zakresie między LED_delay_min .. LED_delay_max 6. Jeżeli tak wyłącz LED na...
w przypadku uzycia niewielkiej ilosci modulow i czujnikow obie wersje sa do przyjecia ale jesli chcesz rozbudowac system do wiekszych rozmiarow to opcja 2 wyglada na lepsza. masz jeden modul trzymajacy dane a reszta go odpytuje. nie masz wtedy tak duzego ruchu na linii 1W i masz mozliwosc dodania kolejnych czujnikow i modulow w dowolnej (prawie) ilosci....
W bascomie też masz liczby zmiennoprzecinkowe- np. typ single. Jest też konwersja i dzielenie z resztą modulo. Tylko Attiny2313 może się w pewnym momencie okazać za mały. Ta część całkująca- to w zasadzie ograniczenie od góry PWM- oczywiście nie może być większe niż 100%. Znalazłem kiedyś taki link: http://elm-chan.org/works/smc/report_e.h... Ale go...
Jeśli inny sposób wykrywania pociągu (modelu pociągu?) nie wchodzi w grę to żeby wyeliminować wpływ słońca na odczyt z czujników możesz sygnał modulować/demodulować. Dioda sobie mruga z częstotliwością X i czekasz aż sygnał odbierany przestanie mrugać :) Do demodulacji można użyć zintegrowanych TSOP. Jeżeli nie wchodzi to w grę to dobrym pomysłem jest...
Nastawianie najprościej jest zrealizować przy pomocy dodatkowej zmiennej (o odpowiednim zakresie) i zmieniać ilość sekund: czas=minuty*60+sekundy czas++ lub czas-- minuty=czas AND 60 sekundy=czas MODULO 60 Powyższa "kombinacja" wydaje się zasobożerna dla AVRka, ale przecież nie będzie ona wywoływana non stop, a jedynie w momencie naciśnięcia klawisza...
Przeorganizowałem twój kod z pierwszego postu bo w tym z dzieleniem i modulo to może działać ślamazarnie. Jeśli ci pasuje oczywiście. Licznik obsługuj w przerwaniu timera. A zmieniaj tylko wartość zmiennej za pomocą przycisków. To musisz sobie dopisać. Gdyby obliczenia w przerwaniu były za długie, przenieść je do głównej pętli, ale tutaj zawsze będzie...
Nota o której piszesz robi to inaczej. Nie wzorowałem się na niczym, sam ją wymyśliłem, potrzebowałem dekodować piloty stałokodowe oparte na SM5028 i keeloq HCS200/300/301. Przerwanie od ICP jest uniwersalne i świetnie nadaje się do takich celów. Jeśli chodzi o procedurę dekodowania części crypto to procedura w bascomie też jest prosta. Podam tylko...
A widzisz :!: Gdybyś wkleił kod ,który już napisałeś , to bym sie tak nie "gimnastykował" ;) Teraz napisz , jak chcesz modulować "nośną" , czy to ma być RC5 , czy jakiś inny sygnał :?: Przy jakim stanie pinu dioda "świeci" :?: Nie bądź taki tajemniczy ;) Piotrek
Coś masz popsuty uC, bo właśnie wgrałem tę moją wersję do procka (do tiny13 dla jasności :D ) i dioda podpięta do pb.4 miga. Jak spowolniłem zegar do 128kHz to wyraźnie widać, że to mignięcie to w rzeczywistości jakiś kod, bo składa się chyba z ośmiu mrugnięć i przerw między nimi. Jak będzie działać i u ciebie, to jesteś mi winien piwo, przynajmniej...
. 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ś...
Z tym że czas propagacji 93 jest 10-70 ns, 42 10-30 -razem może być 20-100 ns. Trzeba sprawdzić czas reakcji atmela na przerwanie. Jak za szybko zareaguje to da odczyt poprzedniego wyświetlacza. Przeważnie na poczatku procedury obsługi przerwania zrzucane są wszystkie rejestry - choć nie jetem pewien jak w BASCOM-ie, podejrzewam, że też. To będzie...
Witam. Mam w zmiennej bitowej jakąś liczbę z zakresu 0-60, np. 34. Czy można tą liczbę rozbić na 2 cyfry - przypisując do pierwszej zmiennej bajtowej cyfrę 3, a do drugiej 4? Czy są jakieś instrukcje w Bascomie, czy muszę to robić za pomocą SELECT CASE: Proponowana metoda dzielenia zmiennej przez 10 (lub 100 , 1000 przy wiecej ilości cyfr), i stosowanie...
blecky -> a poczytałeś troszkę n/t np nadawania kodów IR w standardzie RC5 ??? podstawą tego typu kodowania jest częstotliwość nośna, dla RC5 ok 36KHz i ona jest właśnie modulowana. W Bascomie tak jak i w innych rozwiązaniach trzeba jakoś taką nośną wygenerować. Jak widać można to zrobić w b.prosty sposób korzystając z PWM i tak właśnie zrobili autorzy...
Podzielam zdanie zerpo sprawa nie jest taka prosta daniel93 jeżeli chcesz w prosty sposób rozwiązać zakłócenia emitowane przez przeciwników to istnieje coś takiego jak modulacja wiązki promieniowania IR , poszukaj sobie tematów związanych z barierami optycznymi zrozumiesz o co chodzi przy takiej konstrukcji uC otrzyma tylko sygnał z Twojego nadajnika...
A jednak, ruszylem projekt na kilku prockach.Przypomnialem sobie ze glownym zalozeniem jakie sobie postawilem to modulowa struktura.Dzieki takiej konstrukcji uklad jest banalny do bulu (dla mnie).Robilem kiedys i robie dalej male ''sterowniki'' do termoformierek, wiem ze 89 jest bardzo trudno ''powiesic'' zakluceniami wszelkiego rodzaju.:)
Jakby ktoś chciał zrobić coś podobnego, to pewne informacje są w poniższym linku: http://forums.hackaday.com/viewtopic.php... To moje pierwsze próby napisania programu. Jeszcze nie testowałem go w praktyce [syntax=basic4gl]$regfile = "m168def.dat" $crystal = 8000000 '$sim Config Timer1 = Timer , Prescale = 64 , Capture Edge = Falling , Noise...
Hehehe, jak już chcesz tak optymalizować to: if(liczba) wystarczy ;-D Jesli chodzi o sposob zapisu to masz 100% racji, ale kompilator dokladnie taki sam kod wygeneruje w obu przypadkach :) i to else break; też tak trochę jak na mój gust nadmiarowe jest... Nie jest nadmiarowy, gdyz bez niego petla bedzie mlocic indeksy dla zerowej wartosci liczby, a...
Witam. Moje pytanie jest takie. Jak z bascoma odczytac wartosc zapianą w sygnale o modulowanym wypełnieniu?(taki jak do sterowania serw.). Pełen okres syg. twa maksymalnie do 2.5 mS. w sumie to moze tez byc jakis c albo asembler ale jezeli to prosił bym linijka po linijce :) co do czego.
Hmm pomysłowe tylko jesli zastosowałeś juz w projekcie attiny to po co tam mp3? ciągnie tylko dodatkowe mA a wystarczyło nadziergac zwykły generatorek akustyczny np w BASCOM to wręcz banalne i po problemie. Myśle że dziki beda sie tak samo bac modulowanych wyższych czestotliwości co inne tym podobne stwory.
ad 3. Nie będzie identyczny, a nawet podobny, z powodu dziwaczności BASCOMa. Obsługa UARTów na mikrokontrolerach jest zwykle kontrolero-specyficzna, bo oprócz realizacji transmisji szeregowej mają one wiele innych bajerów, np. modulowanie sygnałów do IrDA itd.
Witam, mam pewien problem. Bowiem musze zroić układ taki aby sterował przerobionym serwem modelarskim w nastepujacej sekwencji: lewo waitms prawo waitms lewo ...... Zrobiłem coś takiego na atmedze. ............. Z tego co zrozumiałem to przeróbka serva miała na celu dostosować go do pracy ciągłej.(?) Czyli wystarczyłoby odłączyc mechaniczne sprzężenie...
Zajmuje się pisaniem programu (procek to Attiny13A) do diody ir współpracującej z czujnikiem TFMS 5560.Zaznaczam że jest to po prostu układ typu załącz / wyłącz. Nie żadne kodowanie itp. Tutaj link do noty katalogowej tego czujnika (w tabelce drugi pdf od góry) : http://www.datasheetarchive.com/tfm%2055... Z tego co udało mi się rozszyfrować...
Kolego WADER_669 ja doskonale rozumiem jak ma działać to urządzenie. 1.Nadaje lewą diodą Ir z częstotliwością 36kHz odczytuje tsop-a i jak coś odebrał to zapalam diodę sygnalizacyjną. Tak samo robię z drugą stroną. I do tego miejsca program działa dobrze. 2.Nadaję lewą i prawą diodą i odczytuje czy tsop coś odebrał, jak odebrał to zapalam lewą i prawą...
Witam Napisałem program w Bascomie - i w kilku miejscach mam odwołanie do funkcji gettime. Układ pracuje na Atmega1280. Zegar RTC skonfigurowany prawidłowo: [syntax=basic4gl]Config Sda = Portd.1 Config Scl = Portd.0 I2cinit [/syntax] układ podpięty to I2C prawidłowo(zgodnie z dokumentacją) [syntax=basic4gl]Sub Gettime I2cstart 'inicjalizacja magistrali...
Fajny projekt. Jakbys potrzebowal modulow, ktore zmieszcza sie w puszce instalacyjnej to daj znac. Opublikowalem o tym jeden artykul i mam kilka modulow na zbyciu.
Witam! Ja mam troszkę inne pytanie do tych co się już zajmowali RFID. Jak odczytać dane np 3 kart które się znajdą w zasięgu. Napisałem kart, mogą to być inne tagi rfid. Czy w tej technologii to jest jakiś problem? Zastanawiam się bo w takiej sytuacji nośna jest modulowana przez 3 tagi na raz...
W końcu sukces. Dzięki koledze Mirekk36 procek generuje piękną nośną na portb.3. Wielkie dzięki. A tak na marginesie to sposób kolegi Atom1477 nie chce się kompilować, wyskakuje błąd w tym miejscu: ICR1 = 222 OCR1A = 22 '0...222 . Dodano po 3 Nie długo trwała moja radość że wszystko działa. Mam dwie diody IR na które podaję przebieg 36kHz a z drugiej...
Witam , zainteresowały mnie 2 rzeczy , czujniki pojemnościowe i transoptory zbliżeniowe. Co do transoptorów to czy sygnał idący na led powinien być modulowany, (np 20KHz) a na wyjściu fototranzystora filtr odpowiadający częstotliwości nadawania? Ad do czujnika pojemnościowego, czy [url=http://www.elportal.pl/pdf/k07/04_0... będzie działał dobrze?...
modulo bascom dzielenie modulo potęga modulo
samsung dioda świecić czerwona circuit diagram połączenie rejestratorów
prostownik samochodowy nauka elektroniki
Sterowniki do oscyloskopu VOLTCRAFT DSO-2020 na Windows 11 Modele tunerów FM z wyświetlaczem LC7265