Dobrze by było podac w czym programujesz asembler, C++, bascom??
Poczytaj w pomocy o instrukcjach: DATA , RESTORE, READ. Kiedyś robiąc skomplikowane menu używałem tego do przechowywania stałych tekstów/opisów. Wszystkie były tej samej długości. Aby nie używać SELECT CASE zrobiłem wstawkę asemblerową. O ile dobrze pamiętam rejestry R8 i R9 są używane jako wskaźnik dla funkcji READ. Możesz też wszystkie swoje dane...
Stwórz tablicę za pomocą: Dim Zmienna(5) As Byte 'lub Word, Integer, Long, Single, Double... Przed zapisem aktualnej wartości do Zmienna(1), przesuń wartości z 1, 2, 3, 4 o jeden indeks (na 2, 3, 4, 5). Pamiętaj aby zrobić to tak, by nie "zamazać" wartości przy przesuwaniu. Potem zapisujesz aktualną wartość do Zmienna(1) i masz komplet, który...
' Na początku kodu Index_tab=0 ...... ...... If Licznik = 1200 Then IF Index_tab=3 Then ' przesuniecie w tył jeżeli pozyskano co najmniej 3 pomiary Pomiar(1)=Pomiar(2) Pomiar(2)=Pomiar(3) Else ' Fragment kodu wykonywany dla Index_tab=0,1 i 2 Incr Index_tab IF Index_tab>3 Then Index_tab=3 End If Pomiar(index_tab)...
I2crbyte Z(i) , Nack Wcześniej masz for i=0 to 5 Nie wyrzuci ci takiego błedu ale zapis jest zly. W bascomie adresowanie tablicy zaczyna się od 1 (z(1) - to jest pierwszy element tablicy) Błąd wyświetla dopiero chyba bascom avr. Daj pętle przesuniętą o 1 i będzie dobrze. Ale uważaj - to przesuniecie (for i=1 to 6) może ci też pogmatwać inne...
Po pojawieniu się PINB.0 = 1 zwiększaj indeks tablicy Idx. Idx to zmienna którą będziesz indeksował tablicę w poleceniu: Lcd Tablica(idx). Ponieważ program może być na tyle szybki, że mógłby przesunąć indeks tablicy o parę kroków naprzód jeśli na PINB.0 utrzymuje się stan wysoki, to musisz też zapamiętać czy zwiększenie zostało już wykonane i pozwolić...
Tak problem został rozwiązany. Zamiast tworzenia tablicy o wielkości 6*Ilość_znaków - w której są przetrzymywane wartości wierszy danej kolumny litery. Stworzyłem Tablicę 30-elementową do której wpisywana jest tylko jedna litera w jednej pętli (od 30-25 komórki tablicy - tak aby jej nie było widać na matrycy), w kolejnej pętli litera jest przesuwana...
Witam Jakoś nie widzę problemu. Po pierwsze można sobie zadeklarować zmienną tekstową, która może przechować do bodajże 255 znaków. Można sobie też zadeklarować tablicę z takimi zmiennymi i odpowiednio operować tymi danymi. Na przykład każdy nowy SMS będziesz wpisywał do pierwszej komórki w tablicy po tym jak poprzednie SMSy przesuniesz o jedną pozycję....
16 (liczba nie cyfra) ponieważ temperatura odczytywana jest z dokładnością do 4 cyfr po przecinku, dlatego odczytaną wartość trzeba podzielić przez 16 (przesunąć o 4) Bd(1) = 1wread(9) tu do Bd jest wpisanych 9 bajtów ( liczba bajtów w nawiasie) odczytanych przez 1wread(9) z czego 2 pierwsze to temperatura OK pierwszą rzecz rozumiem Co do drugiej,...
dla opisu programu w pseudokodzie(nieznam bascoma.. wole asm itp..) przyjme że bity sterujące znajdują się w dolnych częściach zmiennych.. i zamiast a..h przyjme tablice stan[0] do stan[7] TMP = 0 pętla wykonywana od 0 do 7 ze skokiem o 1 przesuń tmp o jeden bit w lewo tmp = stan[numer wykonania pętli] koniec pętli w tmp jest skompresowany stan 8 bitów...
Małe pytanko do jakiego to jest scalaka? Jesli do ds1822 to strona 3 manuala LSB 62(dec)=3e(hex) MSB 2(dec)=02(hex) cała liczba 023e(hex) cztery najmlodsze bity to wartosc po przecinku temp= 023,e (hex)= 35.... e=1110 0,e=(1/2+1/4+1/8)=0,875 zatem masz za niska temp ciała 35.875 *C :) kod przykladowy dla delphi: temp:=(buf[1] and 7)*16+((buf[0] and...
Dopieścić m dobre słowo , lubię dopieszczać , ale Bascoma to nie potrafię zbytnio , pocę się już 2 tygodnie i dopiero dziś po sugestiach kolego coś wydłubałem. A może jak bym przepuścił SIN-us przez 2 klucze otwierane z przesuniecie 90 st. zrobił pomiar napięcia , napisał tablicę X i Y i na tej podstawie stwierdzał przesunięcie ? ale następny temat...
Tak na szybko - pierwsze skojarzenie: skopiować element tablicy do zmiennej tymczasowej, na niej przeprowadzić przesunięcie, a następnie nadpisać pole tablicy zmodyfikowaną zmienną tymczasową. pozdrawiam
Witam, proszę o poradę. Wykonałem matrycę świetlną LED 8x8, program sterujący pisałem w BASCOM AVR, matrycą steruję przez układ 74164 plus tranzystory, chciałbym uzyskać efekt przesuwających się liter, schematy zapalanych diod dla danej litery są zdefiniowane w ośmiu tablicach oddzielnie dla każdego wiersza zapalanego w matrycy. Mój pomysł jest taki...
Bascom jest tak beznadziejny, że adresuje tablice od 1 a nie od zera. To by jednak dawało przesunięcie o jeden a nie 2.
Otóż ten "adres" nie przesuwa o bajty, ale o długość zmiennej. Czyli jak masz Word to przesuwa o 2 bajty. Ale zawsze jest to wielokrotność 8 bitów. I przypuśćmy że nie jest istotne czy przesunie o długość zmiennej byte czy o długość zmiennej word... Jeżeli więc odczytujesz do zmiennej typu Word, to Lookup zawsze będzie odczytywało po 2 bajty. ...ale...
Wklej kod zobaczymy co wyrzeźbiłeś. Tutaj masz o tym jak wygląda ramka wysyłana przez klawiaturę PC: http://www.beyondlogic.org/keyboard/keyb... Samo odebranie znaku jest proste, gorzej z kodami przyciśnięcia zwolnienia itp, aby algorytm się nie rozrósł trzeba pominąć obsługę tych dodatków i rozpoznawać wyłącznie określone przyciski, myślę że mikrostyki...
Jeżeli między znakami masz jedną kolumnę odstępu, to na pierwszej stronie będą dwie, a nie jedna kolumna z drugiego znaku, no ale to szczegół ;) Nie wiem, jak masz zapisaną "czcionkę". Jak na moje oko, to może być po bajcie na każdą linię i takich linii 7, jedna po drugiej, potem następny znak itd. Nieużywane bity (te z prawej, znaki wyrównane sa do...
Mam takie urządzenie ktore mierzy szczyty sinusoid przesuniętych w fazie z trzech przekładników prądowych. Jako, że jest to też Modbus Slave z baudrate 250kbps to nie chciałem robić ADC na przerwaniu bo te już mają co robić z obsługą komunikacji. Tak więc ADC jest obsługiwane przez pooling flagi ADC. Zamieszczam tylko kawałek kodu. W tym urządzeniu...
(at)zumek Dzięki za kod, ale nie do końca wiem jak on działa. W1 to tablica wskaźników na W, przesunięta o dwa miejsca? O co chodzi z tymi 4466 cyklami zegara? Pozdrawiam
Witam. Niestety to nie działa, gdy inkrementacja zmiennych "przesunięcie1 i 2" się zeruje po osiągnięciu len(x) w warunku if...then w głównej pętli, cały napis z Bufor_text zanika i tworzy się na nowo. widoczne na nagraniu: na Lcd pierwszy wiersz jest bufor_text + " "+ zmienna(przesunięcie) 1022010 const gdyż nie są wpisywane w moim projekcie na sztywno...
Sorry zmyliłeś mnie tym koden na 1820(18s20). DS18B20 w pierwszych dwu bajtach temperatura zapisana jest na 12bitah (11 + bit znaku), a w 1820 na dziewięciu (8+1 znaku). 50h i 05h to 0550h (0000 0101 0101 0000binarnie) jeżeli przesuniesz 4 bity w prawo otrzymasz 0000 0000 0101 0101 czyli 0055h czyli 85stC (gotowe stopnie). A w mlodszym niblu mlodszego...
beta to kąt 0 ReX Jeszcze jedna rzecz mi nie pasuje. Beta osiagnie maks wartosc 465 , po podzieleniu przez 32 = 15 ,czyli maks wartosc jaka mozemy wyciaganc z tablicy sinus: Tmp_c = sinus(15 + 8) * Dane tojuz chyba wyjaśniłem ale moge napisac jeszzce raz beta AND 31 daje jako wynik reszte z dzielenia przez 32 czyli liczby z zakresu od 0 do 31. powtażaja...
Witam mam problem z programem do trawiarki mianowicie znalazłem na necie program do sterowania trawiarką chciałem do tego dopisać wybór menu żeby było jeszcze był drugi tryb sterowania trawiarką. Wgrałem program do uC i działało poprawnie potem chciałem wgrać ten sam program bez żadnych zmian na inna ATmege8 i okazuje się że teraz program działa trochę...
I działa to tylko dlatego że bufor został przesunięty???? Tak. Jeżeli zastosujesz taki kod: $regfile = "M32Def.dat" $crystal = 16000000 $hwstack = 128 $swstack = 64 $framesize = 64 '---------------------------------------... Dim Timer1_licznik As Byte Dim Buffer(256) As Byte At 1024 Dim Write_position...
Kurcze ale malutki jestem... :D Po skrócie 1. Nie używałem JTAG-a i ta wiedza póki co nie jest mi raczej potrzebna. 2. Wiem jak ustawia się fusebits, ale jak napisałem na AT mam wyłączony JTAG a na AT168 nie. Jednak magistrala na AT168 działa bez problemu i to na porcie C z włączonym JTAG-iem 3. Rezystor podciągający dobrałem metodą prób i błędów staneło...
Zdaje się że kolega rapid. dał rozwiązanie ale sprawdzę ją dopiero jutro wieczorem bo mam kolokwium :D Myślałem że da się to rozwiązać bez dodatkowych zmiennych no ale trudno. Wszyscy mówią że C daje dużo większe możliwości programiście niż bascom a w bascomie wystarczyło by zmiennaa.1 = zmiennab.7 zmiennaa.0 = zmiennab.6 i tyle.
Witam. Chciałem zrobić sterownik wzmacniacza audio na bazie kitu AVT2829. Szczególnie zależy mi na uczeniu się dowolnego pilota. Zrobiłem płytkę przystosowałem do niej program, użyłem większego procesora (atmega8) no i program działa ale strasznie ułomnie. Procedura zapamiętania kodów z pilota przebiega jak należy ale już samo działanie jest strasznie...
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...
Nie da się ustawić, bo jest to fizycznie niemożliwe, chyba że dostaniesz się do struktury i sobie mostek drutem zrobisz ;]. Multiplekser sygnałów zegarowych, którego wyjście jest jedynym źródłem zegara dla ADC, nie ma doprowadzonego sygnału bez podziału, najmniejszy dostępny to 2. Nie będzie próbkował z taką częstotliwością, bo się po prostu układy...
Witam! Od pewnego czasu usiłuje napisać program do obsługi zegara na pcf8583 i wyświetlaczach siedmiosegmentowych lecz bez efektu. Jest sporo tematów tego typu, ale większość zegarów realizowana jest na LCD. Główny problem polega na wyświetleniu czasu na wyświetlaczach 7segmentowych. Proszę o jakąkolwiek pomoc i podpowiedzi. Schemat układu: http://obrazki.elektroda.net/13_12708371...
Witam. Buduję zegarek oparty o Atmegę32 i wyświetlacz na sterowniku ST7565R. Układ podobny do mojego [url=http://www.elektroda.pl/rtvforum/to... zdalnego. Skopiowany jest z niego program, oczywiście przerobiony odpowiednio i powycinane co trzeba. Na razie tylko go uruchamiam. I tak jak przy pisaniu programu pod "Panel zdalny" nie...
Musisz albo dodać 3 x DAC do procesora, albo wygenerować 3xPWM (o rozdzielczości > 1024) i odfiltrować to dolnoprzepustowo. Do tego dojdzie jeszcze wzmacniacz, żeby uzyskać amplitudę 10V. Przesunięcie o 120° to tylko kwestia odpowiedniego indeksowania tablicy z wartościami chwilowymi sinusa.
Raczej najpierw musisz sie nauczyć C No właśnie próbuję. Przez ostatnie kilka dni przewertowałem więcej PDF od kontrolerów, niż przez ostatnie 3 lata :D Na razie największy problem dla mnie to operacje bitowe - wiadomo w Bascom łatwiej. Kupiłem nawet Attiny4313, coby nie brakło pamięci. Problem był jednak w momencie polecenia włączenia przerwań, były...
http://obrazki.elektroda.pl/9090946500_1... Witam. Chciałbym dziś zaprezentować niewielkie, pokazowe urządzenie. Idea zbudowania takiego cyfrowego portfolio sięga czasów, gdy gdzieś tu na elektrodzie pojawiła się "Elektroniczna Wizytówka". Bardzo zaciekawił mnie ten projekt, lecz większość podeszła krytycznie do nazwy "wizytówka". Postanowiłem...
Witam po dłuższej przerwie. Może komuś przyda się gotowa procedura obsługi LCD niebuforowana czyli taka w której nie potrzeba deklarować dużej tablicy w RAMie - przydatne jak próbuje uruchomić się jeszcze AVRDOS który tez trochę RAMu potrzebuje. Po krótce mówiąc cała konwersja znaków i wysłanie do LCD odbywa się w locie. Dodałem również: * obsługę czcionek...
Cześć, witajcie. uruchomiłem komunikację dwóch atmeg po spi. w bascomie z pominięciem wbudowanych komend, tylko na rejestrach procesora. hardwarowo wszystko chodzi, dane sie przesyłają w obie strony z jednym dużym problemem. drugi dzień nad tym siedzę i mam już kwadratowy łeb. potrzebuję przesyłać tabele, których specyfika jest taka, że nigdy nie wystąpią...
Witam, pojawił się u mnie problem (pewnie banalny) z obsługą matrycy led. Posiadam podręcznikowy przykład M. Wiązani i próbuje go przerobić tak aby działał z moim schematem: [syntax=basic4gl]'wiersze Config Pinb.4 = Output Config Pinb.3 = Output Config Pinb.2 = Output Config Pinb.1 = Output Config Pinb.0 = Output 'kolumny Config Pind.7 = Output Config...
Witam Zrobiłem termometr na Ds18b20 i wynik wyświetlany jest na 3 wyświetlaczach 7 segmentowych Led. Dodatnia temperatura działa bardzo dobrze jednak gdy pojawia się ujemna temperatura poniżej - 10 stopni na wyświetlaczach pokazują sie same 8 8 8 . Może to dlatego że pojawia się - ? Nie wiem jak w bascomie można napisać moduł z liczby np. |-10| = 10...
przesunąć tablica przesunąć wartość tablica bascom tablica
pilot poduszka volvo membrana pompa paliwo mieszanka paliwo
mikrokomputer cobra1 sterowanie roletami supła
TCL 50P615 TV No Image, VGH Oscillating 30V to 10V – Panel or T-CON Fault? Seat Alhambra Mk1 1.9 TDI 1999 – brak rozruchu po naprawie drzwi, immobiliser, bezpieczniki, przekaźnik 109