Witam. Zabawnie się składa, że obecnie programuję ten sam chip (tylko z użyciem PIC18F4450). Ja problem odpowienich częstotliwoście rozwiązałem w tem sposób: - numer nuty dziele przez 12, dzielenie oznacza numer oktawy, reszta to nuta w oktawie - w programie zadeklarowałem tablice czestotliwości jednej najwyższej oktawy - niższe można uzyskać przez...
ok, już wyjaśniam - operacje bitowe wykonują się dużo szybciej niż dzielenie, przykładzik: liczba AND 255 - zerujemy wszystkie bity oprócz ostatnich ośmiu które pozostają bez zmian. Jest to odpowiednik reszty z dzielenia przez 256. przesunięcie bitowe w prawo jest odpowiednikiem części całkowitej z dzielenia przez jakąś potęgę dwójki - przesunięcie...
Tu masz dzielenie liczb czterobajtowych przez dwu bajtowe (16 bit).Co prawda nie moje opracowanie, podaję w orginale. ;procedura dzielenia 4-BAJTOWYCH liczb przez 2-BAJTOWE ; wejscie: ;r0 - adres najstarszego bajtu dzielnej, ;r1 - adres najstarszego bajtu dzielnika, ; wyjscie: ;R0 - adres ilorazu ;R6:R5 - reszta ;W deklaracji zmiennych programu wykorzystujacego...
Czy nie ma szybszych alglorytmów? Oczywiście, że są. Wykorzystaj algorytm mnożenia i dzielenia pisemnego. Dzięki temu znacznie ograniczysz ilość dodawań czy odejmowań. Na przykład 1234 * 5678 zrobione metodą powyższą to 1234 dodawania (zakładam, że program jest chytry i sprawdza na początek która liczba jest mniejsza i ją bierze jako licznik pętli)....
Witam skrobię mały program na armie. Problem jest następujący: Z ADC'a dostaję 12bitową paczkę danych zakodowaną w U2, program w procku przepisuje ją do zmiennej typu int. Kodowanie U2 jak wiecie zależy od tego ile bitów ma dana, int ma 32 a ja mam daną 12 bitową. Jak to ugryźć by tą daną do tego int-a właściwie włożyć. Metoda naokoło tj wygląda następująco...
dzielenie16_16: ;dzielenie 16 bitow przez 16 bitow ;we: r2 - H dzielna ; r3 - L dzielna ; r4 - H dzielnik ; r5 - L dzielnik ;wy: r2 - H czesc calkowita ; r3 - L czesc calkowita ; r0 - H reszta ; r1 - L reszta ;zmienia: acc, psw, r7 ;algorytm: ; Hi:=0 ; Lo:=dzielna ; wy:=0 ; repit 16 razy ; { ; shift_left_32bit (Hi,Lo) ; if Hi>=dzielnik ; {wy:=2*wy+1;...
No ladnie. Sliczne procedurki. Twoja proc odnosnie dzielenia jest olbrzymia. Moja jest mniejsza. Moze by tak maly konkursik na procedurke dzielenia 16 bitowego w kilku kategoriach: szybkosci wykonywania, wielkosci kodu. dzielenie16_16: ;dzielenie 16 bitow przez 16 bitow ;we: r2 - H dzielna ; r3 - L dzielna ; r4 - H dzielnik ; r5 - L dzielnik...
jak zadajesz takie pytanie, to zawsze podaj: -jaki procesor -ile ew. masz miejsca w pamieci (na tablice itd.) -raczej podawaj dokladnie problemy, bo to jest dosyc ogolne... -jaka ma byc dokladnosc tego jest cos takiego jak fixedpoint math - to taka matematyka na liczbach ulamkowych z uzyciem liczb calkowitych. Polega to na tym, ze zamiast...
Program wygląda dużo lepiej. I = 1wread(2) pobiera dwa bajty w których znajduje się temperatura. Polecam zajrzeć do karty katalogowej DS18B20 str.4. W I znajdzie się liczba 16 bitowa, gdzie pierwsze 4 bity to znak, następne 8 bitów to część przed przecinkiem, a cztery ostatnie to to co po przecinku. Liczby ujemne są w kodzie U2. S = I / 16 Powyższe...
Siemka! Tak patrzę w ten Twój kod i pewnych rzeczy nie kumam, ale spróbujmy go przeanalizować. - Resetujesz 1-Wire i wykonujesz polecenie konwersji po czym czekasz 750ms i super :) tylko zastanawiam się po co odczekujesz kolejne 750ms po poleceniu odczytu scratchpad? To jest niepotrzebne, możesz odczytywać dane od razu. Poza tym rozbijanie Waitms 750...
Taka ciekawostka, mnie przynajmniej zaskoczyła a i może się przyda - jest implementacja 'kompresującego bitsetu' dla c https://lemire.me/blog/2017/03/31/compre... . Włączenie linuksowego zram może by dało ciekawy efekt. Fajnie. Może się kiedyś przydać taka biblioteczka. Ale nie wiem czy w tym programie jest sens, za radą...
Dziękuje za ten jakże profesjonalny wpis, ale jak się to ma do migania żarówki? Chciałem zaznaczyć, że nie konstruuję wehikułu czasu, czy tam napędu międzygwiezdnego, tylko losowy przerywnik obwodu, do migania żarówką. Wrzuciłem to co napisałeś _jta_ do Groka i poprosiłem o wyjaśnienie. Oto co przygotował w... 4 sekundy: Autor opisuje sposób generowania...
Oczyściłem nieco kod, zablokowałem domaganie się pilota Grundig o zmianę baterii oraz przede wszystkim dodałem obsługę pilota RC6. Przy odczycie Trailer bit występuje pewien problem, ale przy ustawieniu odpowiedniego czasu odczyt pilota działa prawidłowo. Na razie jest obsługa trybu 0, sprawdzanie trybu jest zhaszowane dla testów - pilot od HP Pavilion...
http://obrazki.elektroda.pl/1852929500_1... http://obrazki.elektroda.pl/5115381900_1... Mimo upływu lat w dalszym ciągu lubię od czasu do czasu odświeżyć sobie w pamięci elektroniczne brzmienia lat 80tych, kiedy to po raz pierwszy miałem okazję usłyszeć „syntetyczną” muzykę pochodzącą z wielkich drewnianych...
Witam, mam prosbe i byłbym wdzieczny za pomoc, :) chodzi mi o taki krotki mniejwiecej opis (schemat blokowy) np. MOV A # .... i opisac "dodaj do akumulatora lub Delay 100MS EQU 8112H itd programiki pisalismy w Programie KEIL uVison pomoce moga tu na forum lub na emaila rafi07750(at)interia.pl Z góry dziękuje .. :) lub mzoe jakies linki z Opisami pomocami...
Ale właśnie nie bardzo wiem jak zrobić przesuwanie dzielnika w lewo aż do zrównania się z najstarszym niezerowym bitem dzielnej...
Problem jest banalny:) Dzielisz swoją liczbę przez 10 i masz cyfrę dziesiątek. Reszta z dzielenia przez 10 (czyli %), to cyfra jedności. Dziesiątki przesuwasz o 4 pozycje w prawo (operator <<) i dodajesz bitową sumą do jedności.
wrzucam całośc, co do Twojego rozwiązania sprawdzze jutro. Wcześniej nie wywoływałem funkcji w przerwaniu to pojawiały się 'krzaki' na LCD - przerwanie od T0 przerywało chyba funkcję wyświetl() dlatego dałem w przerwaniu. /*======================================... WinAvR wersja WinAVR-20050214 **Program obsługujący woltomierz/generator...
Tablica alokacji FAT jest takim jakby spisem treści dla plików znajdujących się na partycji. Informacja o pierwszym klastrze pliku znajduje się w rekordzie katalogu opisującym ten plik. Ponieważ pliki często zajmują więcej, niż jeden klaster, kolejne numery klastrów musisz odnaleźć na podstawie tablicy. Jeśli znasz numer pierwszego klastra, musisz znaleźć...
https://obrazki.elektroda.pl/6510354700_... Witajcie moi drodzy. Pokażę tu wnętrze inteligentnego gniazda Tuya LSPA9 które oferuje pomiar zużytej energii elektrycznej oraz sterowanie przez WiFi, a następnie omówię jego wewnętrzny protokół komunikacji z układem scalonym mierzącym energię elektryczną. Następnie pokażę jak zaimplementowałem...
Witam, Napisanie programiku który konwertuje liczbę jedno- bajtową binarna na BCD jest dość proste i zajmuje to nie wiele cykli procesora. Niestety kiedy usiadłem do napisania konwersji 16 bitowej liczby, już na samym wstępie zauważyłem, że prawdopodobnie procesor wykonać bedzie musiał tyle operacji, że spowolni to prace całego urządzenia i nawet użytkownik...
Tylko że jak pomnożę całość przez 10 to już nie zrobię tego na 8 bitach. Czy jak dziele 2 liczby inie dzielą się całkowicie to ustawiany jest jakiś bit lub kilka ? Poza tym nie mam zielonego pojęcia jak wyświetlić pojedynczą cyfrę na wyświetlaczy z jakiejś 3 cyfrowej liczby zapisanej w końcu w postaci hex. Zakres liczb przy podanym przeze mnie wzorze...
https://obrazki.elektroda.pl/9290552300_... Witajcie moi drodzy. Zapraszam na kolejną część mojego tutoriala PIC18F2550 i kompilatora SDCC . W tej części poznamy sterownik wyświetlacza LED MM5450, połączymy go z PIC18F2550 i napiszemy od 0 implementację ich komunikacji. Docelowo użyjemy MM5450 do wysterowania wyświetlacza LED 5 na...
https://obrazki.elektroda.pl/3743484600_... Witajcie moi drodzy Przedstawię tutaj mojego shielda (nakładkę) na Arduino UNO opartego o układ ENC424j600. Shield ten pozwala podłączyć Arduino do internetu bez żadnego lutowania, a nawet bez użycia kabelków i płytek stykowych. W temacie dam jedenaście pełnych przykładów jego użycia z moimi...
Dla początkujących http://www.pascal.eu.org/index2.htm Powiedzmy, że masz zmienną wejściową x typu longint: Konwersja szesnastkowa: 1. zapisujesz x w zmiennej pomocniczej xp 2. wydzielasz 4 najniższe bity xp (and 15) i tak powstałą liczbą adresujesz sobie zmienną tekstową Hx zdefiniowaną jak niżej: { const hx:string='01234546789ABCDEF'; } pamiętając,...
najprościej budujesz matrycę 16*13 i sterujesz takim wyświetlaczem z 208 punktami, ale wtedy atmega robi tylko i wyłącznie sterowanie tym wyświetlaczem i zostają ci tylko 3 wolne piny IO do komunikacji. ewentualnie dzielisz całość na mniejsze matryce np. 8*8 i sterujesz nimi na ekspanderach. acha i jeśli to ma wyglądać mniej więcej tak jak na obrazku...
Witam Już wiem co miałem nie tak. Opóźnienia to jest to na co trzeba uważać w dallasie (jak tego nie zrobisz porządnie, to nici z Twojej pracy). Ja wykorzystywałem na początku delay’a który najmniej mógł zliczyć (teoretycznie) 5,7814us (bo #include <avr/io.h> #include <stdlib.h> ///////////////////////// LCD define /////////////////////////////////////...
https://obrazki.elektroda.pl/1570592100_... Witajcie, zapraszam na relację z konstrukcji zegara na PIC18F2550 napisaną w formie tutoriala, wszystko krok po kroku. Pokażę tu jak i z czego tworzyłem prosty projekt DIY na prośbę jednego z czytelników. Wykorzystamy tu wyświetlacze 7-segmentowe, rejestr przesuwny, obsłużymy przyciski a...
http://obrazki.elektroda.pl/1510796900_1... Kurs: Operatory Powiedzmy sobie na początek czym są i jakie mamy operatory w języku C . Operatorem nazywamy konstrukcję językową jednoargumentową, bądź wieloargumentową zwracającą jakąś wartość. Operatory określają jakie operacje mają być wykonane i w jakiej kolejności. Oto operatory w języku C...
Witam, Pracuję na zestawie ZL3AVR z Kamami. Kwarc mam ustawiony na wewnętrzny 8MHz. Przerabiam lekcję 15 z Kursu programowania mikrokontrolerów w języku C z EdW. Podłączyłem wyświetlacz zgodnie z kursem, ale nic się nie pojawiło na wyświetlaczu. Sprawdzałem połączenia, przylutowałem przewody do drugiego wyświetlacze i też nic. Poniż zamieszczam kod:...
przesunięcie bitowe dzielenie reszta dzielenie przesunięcie bitowe portach
pomiar czasów fotokomórka zaprojektować schemat elektroniczny kupie wirnik pralki
pralka miele zakup pralka miele
Bosch 1607502211 AL 1115 CV Charger Schematic, Circuit Diagram, Common Faults Samsung SCX-3405FW Factory Reset, Firmware, and NVRAM Clear Methods