Przypisuj jako dwie zmienne w postaci stringu. Podstawiaj jako nazwy. Np ark= ActiveSheet.Name       'nazwa obiektu rng= ActiveCell.Address       'nazwa zakresu odwołanie: Sheets(ark).Range(rng)
ie pasuje mi brak powiązania numeru buttona z tymi zmiennymi R i I. I to jest pewnie ten problem. Zastanów sie też nad innym nieco odczytywaniem odpowiednich komórek z ramu: Powiedzmy że tak: for I=1 to 10 for R=1 to 8 ala=R*8 'Tu bedzie sie zmieniać wartość co osiem: 8, 16, 24 itd ela=ala+I Readeeprom Button_number , ela If Button_number = Register_number(i)...
Temat odrobinę podpada pod "zaniżanie poziomu". Jeśli argumenty są w cudzysłowach, to znaczy, że są typu String. Prawda? Podstaw je pobierając z komórek lub InpuBox'a... Przeanalizuj taki[syntax=vb]Dim zmienna As String, zmienna2 As String zmienna = Range(InputBox("wpisz Np a1:g65")).Address MsgBox zmienna 'adres zakresu zmienna2 = Range(InputBox("wpisz...
W "Arkusz2" w komórkach B2-D2 umieściłem liczby 12, 13, 14. http://obrazki.elektroda.pl/8196412400_1...
[syntax=vbscript]Range("Adres").Select[/... Nie zadziała, ale [syntax=vbscript]Range(Adres).Select[/sy... zadziała, pod warunkiem, że Adres, to zmienna tekstowa, zawierająca adres komórki/zakresu. Zamiast tylu wierszy, wystarczy: [syntax=vbscript]Range("F" & ActiveCell.Row).Select[/syntax]
A co z tą komórką o adresie 0? Kiedy 'zmienna' ma wartość 0 są jakieś problemy?
No, może tak. Każda zmienna w programie ma jakąś wartość. Ale każda z nich jest przechowywana w jakiejś komórce pamięci. Wskaźnik jest to adres tej komórki pamięci w której jest ta zmienna przechowywana. W językach wysokiego poziomu nie masz dostępu do adresu komórki. A w C- który jest nazywany czasem makroasemblerem- masz. A jak masz adres- to możesz...
Coś ala tak, pod zmienna wartość będziesz miał zawartość komórki "A2" po filtrowaniu. [syntax=vbscript]wartosc = ActiveSheet.AutoFilter.Range.Offset(1).S... 1)[/syntax]
Drogi kolego , popełniłeś szkolny błąd :D W procedurze obsługi przerwania Timer0 masz ... SIGNAL(SIG_OVERFLOW0) //obsługa multipleksowania wyswietlaczy { //extern unsigned char wyswietl[7]; unsigned char licznik;//<-- ********** błąd !!!!!!!!!!! ... zmienną licznik , tyle że jest to zmienna lokalna , czyli istnieje w pamięci...
chyba nie rozumiem twojego problemu lub czegos nie zrozumiales w helpie: Zapisuje dane do wbudowanej pamięci EEPROM. Składnia: WRITEEEPROM zmienna , adres gdzie: zmiennazmienna, której wartość wpisana będzie do adresowanej komórki EEPROM, adresadres komórki pamięci EEPROM.
Potrzebuje wytłumaczenia na chłopski rozum, bo wszędzie zbyt specyfinczym językiem jest napisane żeby zrozumieć i raczej początkujący to nie ma szans zrozumieć języka tych śmiesznych specjalistów. Oni chyba tylko rozumieją co piszą. Rn - rejestry robocze n=0,1,...,7 (R0,R1,...,R7) Ri - rejestry robocze i=0,1 dana - 8 bitowa wartość liczbowa # - liczba...
Brakuje etykiety (adresu) Powinno być tak: $eeprom Adres: Data 140 , 134 , ... Adres - zmienna z adresem komórki w pamięci eeprom Wartość 140 zapisze się w pierwszej komórce, jaką podasz, a 134 w kolejnej i tak dalej. PS: Pamiętaj, aby nie zapisywać danych w pierwszej komórce(o adresie 0) pamięci eeprom, podczas włączania się układu, lubi sama zmieniać...
Wstałem rano z wyspaną głową i patrzę na Twój kod przy kawie. Deklarujesz 80 bajtów na adresy czujników. Start każdego adresu określasz tak, że mnożysz razy dziesięć wartość zmiennej "Zmienna" Pierwszy Dallas zajmuje więc komórki 10,11,12,13,14,15,16 i 17 Siódmy Dallas zajmuje 70,71,72,73,74,75,76 i 77 ... i tutaj zadeklarowane 80 bajtów się kończy......
Można zadeklarować prawidłowo zmienną eeram W ten sposób Dim Adres_er(size_t_mac) As Eram Byte At Adres_p_mac Poprzez komende AT znam adres, po jaki będzie się odwoływać zmienna eeram w pamięci. Niestety, ale z Eepromem ten numer nie przejdzie , ponieważ Bascom ignoruje etykiety w Eepromie. Deklaruje, jakie wartości powinny być zapisane w eeram...
Co to makro ma robić? Na moje oko wystarczy sprawdzić te dwie komórki przy Change (zmienna 'Target' przekazuje adres) i porównać daty. Dlaczego sprawdzasz formaty przed, a nie po? A jeśli ktoś wpisze tekst zamiast liczby?
Jeśli w Excelu używasz funkcji ŚREDNIA do zakresu komórek, to Excel bierze pod uwagę tylko komórki wypełnione liczbami. Nie przeszkadzają mu komórki puste ani komórki z tekstami. Przeszkadzają tylko błędy, bo to uniemożliwia obliczenie. Więc jeśli za każdym razem potrzebujesz tylko bieżącą średnią, to możesz użyć pełnego zakresu z zapasem i stopniowo...
Ram musiałbym rezerwować, żeby zabezpieczyć się przed konfliktem adresu. Po drugie potrzebuję zapisać 3360 komórek czyli moja zmienna inkrementuje się od 0 do 3359, dziele ja przez 8 i mam adres bajtu pamieci, a reszta z dzielenia to wskaźnik bitu do zapisu. Po trzecie pisałem już, na szybkości mi nie zależy.
Już zgłupiałem. Niemniej jednak fizyczny zapis dokonywany jest po 4 bajty na raz jeśli ustawiłeś zapis 32-bitowy. Więc: mam w buforze daną o wartości 0xAB <- 1 bajt. Zapisuje ją pod adres = 0, więc komórki od 0 do 3 zawierają 0x000000AB tak? Następna zmienna powiedzmy 0xCD zostaje zapisana pod adres 4. I komórki od 4 do 7 zawierają 0x000000CD. Więc...
Mój sposób nr 1: -zakładasz w jednej lub dwóch komórkach wskaźnik do bieżącej struktury roboczej, składającej się z licznika zapisów (3 bajty) oraz rejestru przechowującego zmienną (o dowolnym rozmiarze), -następnie tworzysz funkcje do zapisu oraz odczytu zmiennej. Fun do odczytu ustala za pomoca wskaznika poczatek struktury w EEPROM, a nastepnie odczytuje...
Co do drugiej uwagi wspomniana konstrukcja w funkcji eeprom_write() jest takowa, z mysla o tym, zebym mogl jej uzywac do zapisywania ciagow. Dzieki temu moge napisac eeprom_write(EEPROM1, adres, "tekst do wpisania < 32 liter"); Obawiam się, że to będzie działać prawidłowo tylko wtedy, gdy adres będzie podzielny przez 32. Poza tym,...
Witam. Mam pytanie jak na wizualizacji ifix zmienić wartość rejestru który będzie użyty w sterowniku PLC siemens S7-400? Możesz bardziej rozwinąć pytanie, bo nie jest jasne czy chcesz zmienić wartość zmiennej z iFIX, która przypisana jest do pewnej komórki w PLC Simens, czy też zmienić adres komórki do której jest przypisana zmienna? Ogólnie jeśli...
Witam wszystkich! Mam pewien problem z obsługą biblioteki I2C niejakiego Petera Fleury. Nie mam zielonego pojęcia, jak zapisać w pamięci 24C256, zmienną typu integer, a następnie odczytać ją i wysłać poprzez UART, korzystając również z biblioteki Pana Fleury. Jeżeli jest zapis zmiennej: [syntax=C] int zmienna; zmienna = 5; i2c_start(Dev24C256+I2C_WRITE);...
Problem dla mnie pojawił się ze zrozumieniem wektorów przerwań które obsługują timer1. W dokumentacji jest tabela na stronie 46 W czym problem? Jak korzystasz z przerwania np. Timer/Counter1 Compare Match A czyli przerwanie w momencie gdy zawartość licznika (TCNT1) zgadza się z tym co wpisałeś do OCR1A to jeśli wcześniej w TIMSK ustawisz odpowiedzialny...
a nie jedną zbiorczą, natomiast jak zrobić żeby wynikiem tej petki była zmienna adresy z mailami oddzielonymi średnikami? To trzeba było tak od razu pisać. Jak ma być jedna zbiorcza wiadomość to wystarczy poniższy kod. Przykład dla adresów wpisanych w kolumnie A. Kod funkcji (Private Function...) możesz sobie skopiować na sam koniec Twojego modułu...
To jakas padaka z tym C, w Pascalu podawalo sie: readln(licznik); i wszystko gralo. Tutaj muze podac jak formatuje %d bo oczywiscie sie nie domysli. Skoro Pascal jest lepszy, to w nim pisz :) Po co porzucać lepsze narzędzie na rzecz gorszego? C jest językiem niższego poziomu niż Pascal. Read i ReadLn w Pascalu to specyficzne konstrukcje językowe, a...
Ad. 1. Po prostu Write(g) (możesz też w jednej procedurze podawać kilka parametrów oddzielonych przecinkami i mogą to być zarówno teksty jak i liczby w postaci stałych lub zmiennych. Ad 2. Każde odwołanie do tablicy zapisuje się poprzez nawias kwadratowy ( tablica ), gdzie tablica to zmienna typu array, a numer to wartość z zakresu indeksu (nie koniecznie...
Witam. Jeśli deklarujesz zmienną typu eram , to bezcelowe jest korzystanie w dalszej części programu z poleceń readeeprom i writeeeprom . Po to zapewne wprowadzono (w którejś z nowszych wersji Bascoma) możliwość deklaracji takiej zmiennej, by móc uniknąć korzystania z tych mało wygodnych (jak na Bascoma ;)) poleceń. Jeśli chcesz, aby Twoja zmienna została...
Witam, mam pytanie, być może trywialne, dysponuję pamięcią FRAM/EEPROM (ogólnie nieulotną pamięcią zewnętrzną) która ma pamięć zorganizowaną 512 x 8 bitów. Więc jej jedna "komórka" o określonym adresie może zapisać zmienną do 8 bitów. Jeśli np. zechcę zapisać typ uint16_t to wtedy taka zmienna zapiszę się bez problemu tylko na 2 blokach? Czy będzie...
Dzień dobry, A co w tym kodzie oznacza "ark"? Czy nie jest to arkusz aktywny (ActiveSheet)? Poza tym czy 6 to stała? Jeśli tak, to po co tak komplikować ten adres, wystarczy [syntax=vbscript]ark.Range("E6:F" & dstW)[/syntax]Poza tym, jak często zmienia się wartość "dstW"? W sumie można makrem uruchomić też sprawdzanie poprawności danych, tylko tę procedurę...
Pytanie może proste , ale nie mogłem znaleźć na nie odpowiedzi. Wiem że do pamięci 24c04 można zapisać 512 zmiennych typu byte żeby to zrobić trzeba podać : 1 adres pamięci do zapisu 2 adres komórki 3 zmienna_1 4 zmienna_2 5zmienna_3 itd. I tu pytanie: ile jest tych komórek i ile zmiennych można zapisać do jednej komórki? Czy może każda zmienna zapisywana...
(at)zdzisek Dodano po 1 Nie wiem czy wszystkie nie wszystkie. jest jeszcze 32 bajtowy bufor wykorzystywany przez rozkazy L(oad) i S(ave) zaczynający się od adresu 0bf60h. w zasadzie monitor w różny sposob wykorzystuje komórki od adresu 0bf30h. pod adresem 0bf54h-0bf55h przechowywana jest pozycja kursora na ekranie. np "zmienna" 0bffdh to tak naprawdę...
Które obiekty Range były błędnie zdefiniowane? Na przykład tu (i dalej): tekst adresu w stylu A1. Zmienna ostd określa ostatni wypełniony wiersz w kolumnie "Wartosc calkowita PLN" w kolejnych przetwarzanych arkuszach. Offset jest używany kilka razy i nie wiem, o które użycie konkretnie pytasz. Jeśli o to: [syntax=vbnet]With kWceur.Offset(1)[/syntax]to...
BASCOM 8051: //ZAPIS I2Cstart I2Cwbyte 160 //adres pamieci na magistrali dla zapisu I2Cwbyte //H adres I2Cwbyte //L adres I2Cwbyte(7); //przykladowy bajt danych I2C_stop(); //ODCZYT I2Cstart I2Cwbyte //adres pamieci na magistrali dla zapisu I2Cwbyte //H adres I2Cwbyte //L adres I2Cstart I2Cwbyte 161 //adres pamieci na magistrali dla...
zobacz sobie jeszcze opis funkcji peek i poke. Po krótce służą one do zapisywania danych do pamięci i odczytywania z niej. Dajesz np. tak: zmienna=peek(176) i załaduje ci do zmiennej wartośc z komórki pamięci ram z pod adresu 176(dziesiętnie). Podobnie poke: poke 176,45 załaduje wartość 45 (dziesietnie) pod adres 176 w pamięci ram. Teraz wystarczy że...
Czy istnieje jakiś sposób, aby dostać adres aktualnej komórki. Tzn. chodzi mi o to, żeby w komórce A1 było wpisane A1, w B2 B2 itd. Czy istnieje jakaś zmienna, która po przechowuje? Próbuję w ten sposób rozwiązać następujący problem: Mam tabelkę, w której niektóre kolumny i wiersze są sumami pozostałych i one są chronione, a ja nie znam hasła. Dzielą...
1. inicjalizacja zmiennej polega na nadaniu jej konkretnej wartości. np I=1 to jest inicjalizacja ponieważ wiesz, że po tym napewno w I będzie liczba 1, jeśli w pętli stosujesz zmienną I do odliczania to samo zdefiniowanie pętli jest inicjalizacją gdyż nadaje jej pierwszą wartść oraz kolejne według pewnej reguły. 2. poto podaje sie adres komórki żeby...
Może coś od strony wejściowej tzn. przed moim kompem stoi mój router...może wyłapać z podanego adresu strone z kodem, który idzie do mnie (po przez np. iptables lub czegoś innego) i zmodyfikować wartość zmiennej 25 na np. 2 i póścić dalej do mnie... tylko jak zrobić taki obieg tej strony :?: .Ale chyba to nie wyjdzie to może jakiś monitor ruchu danej...
Możesz się niezgadzać, ale mylisz się całkowicie. Dyrektywa assemblera .equ jest rożsama dyrektywie preprocesora C - #define. Pisząc pomoc .equ 25 jedyne co robisz, to każesz assemblerowi wstawić w miejsce wystąpienia frazy 'pomoc' liczbę 25. Równie dobrze możesz napisać FREQUENCY .equ 10000000 i chyba nie jest to według Ciebie deklaracja zmiennej pod...
Witam, Prosze o pomoc, próbuje skorzystac z wewnętrznej pamięci eeprom w mikrokontrolerze At8928252. Udało mi się napisać procedure odczytu i zapisu tej pamięci w języku C (środowisko RIDE). Niestety po odcięciu zasialania zmienne nie są pamiętane. Dodatkowo na wyświetlaczu wyświetlany jest stan adresów komórek eeprom'a i...nie jest do końca zgodny...
Zmieniłem trochę. Punktem odniesienia dla działania całej funkcji jest teraz adres komórki z tekstem "Dni robocze". Function zapas(tydz, wiersz) Application.Volatile 'Excel 2k7 'Application.Volatile = True 'Excel 2k wt = Cells.Find(what:="Dni robocze", lookat:=xlWhole).Row wk = Cells.Find(what:="Dni robocze",...
Witam Mam problem z zapisaniem danych do układu 24c32 przeszukałem forum ale nie znalazłem odpowiedzi. Posiadam atmege32 do niej poprzez magistrale i2c podpięte 3 układy: pcf8563 (adres0xA2), max6955 (adres0xCA) i pamięć 24c32 (adres0xAE piny A0-A2 podpięte pod Vcc) Problem polega na tym ze nie mogę nic zapisać do pamięci udało mi się to tylko jakieś...
Witam Oczywiście programując mikrokontroler zaprogramowałeś także EEPROM. Wnioskuję że programujesz procesor także bezpośrednio w Bascomie, (EEPROM jest na drugiej zakładce) :) A tak dodatkowo.... czy wydanie polecenia: Readeeprom Z, 1 powoduje odczyt danej z pierwszej wprowadzonej przez Ciebie komórki (bo zerowej nie używasz). Zmienna Z powinna być...
Komórki pamięci są 1 bajtowe! Word ma 2 bajty. Z tego co wiem to Bascom pozwala DIMować jakąś zmienną tak aby była umieszczana w EEPROM. Wypróbuj to. Drugi wariant to taki żebyś za pomocą HIGH i LOW rozbił 2 bajtowy Adres na 2 pojedyncze bajty, zapisał je do eeprom, a następnie znów złożył przy odczycie w 2 bajtowy word. Piszesz że przy wartości np...
[syntax=php]<?php function doubler($value) { return $value << 1; } $a = 3; $dodatkowa = doubler($a); echo $dodatkowa; function doubler2(&$value) { $value = $value << 1; } $b = 3; doubler2($b); echo $b; ?>[/syntax] Jak dobrze pamiętam to wskaźnik to coś takiego co skazuje na adres w pamięci, czy jakoś tak, w tablicach daje adres...
Witam, Jeszcze przy okazji niejako, może mi ktoś wyjaśni, bo spotkałem się z dwiema metodami zapisu i chciałbym zrozumieć, czym różni się taki zapis eeprom_write_byte(&zmienna, wartosc); od zapisu takiego eeprom_write_byte((uint8_t *)zmienna, wartosc); zakładając, że uint8_t to unsigned char? Jeśli używasz &zmienna, to zapisujesz...
Tak zgadza się tylko jak szukałem materiałów to trafiłem na A1. ________________________________________... Witam problem z zapisem zmiennej do pamięci EEprom typu string lub innej zmiennej rozwiązałem tak: 'Parametr opcjonalny AT pozwala na umieszczenie zmiennej 'w ściśle określonej komórce pamięci lub rejestrze. 'Gdyby...
Sub Korekta(wrs, kol) Application.ScreenUpdating = False If Cells(wrs - 8, kol) < 0 Then Exit Sub If Cells(wrs + 6, kol) < Cells(wrs + 7, kol) Then knyps = 1 If Cells(wrs + 6, kol) > Cells(wrs + 8, kol) Then knyps = -1 Do Until Cells(wrs + 6, kol) >= Cells(wrs + 7, kol) And...
Po pierwsze Po drugie zmienna globalna "Dane" ma wartość równą zero, więc jeśli odczytasz wartość 200 i porównujesz do zera, to rzeczywiście dane będą różne. (kod jest tak nieczytelny, że nie zauważyłem przypisania do zmiennej Dane wewnątrz funkcji zapisującej).
Jeśli zaś wywołana funkcja wywołana nawet z takiej pętli będzie miała argument bez volatile to w odróżnieniu od pętli głównej main() która nie wie co się dzieje w komórce pamięci 0x0060 - to nasza funkcja otrzyma prawidłowy adres argumentu ! i na wejściu odczyta aktualną - zmienianą w przerwaniu wartość tej komórki. Absolutnie nie. To zależy od kompilatora...
Dzień dobry! Nie znam się ni w ząb na programowaniu, a potrzebuję wykonać w Excelu szereg powtarzalnych czynności. Otóż: w kolumnie B, w każdym jej kolejnym wierszu, chciałabym zamienić wartość "x" na wartość "y". Wartość "y" będzie zmienna w zależności od od zawartości sąsiadującej komórki w kolumnie A, wartość x jest stała Np. w komórce B4 --> ciąg...
Witam, przepraszam że dopiero teraz odpisuje ale dopiero teraz znalazłem troche czasu na wznowienie projektu. Dziękuje za pomoc. Wcześniej miałem zrobione tak: Select Case Text Case 0 : Pion = Lookup(linia_zmian , Dig_0 ) ...itd... Case 104 : Pion = Lookup(linia_zmian , Big_pz2 ) End Select A tablice znaków wyglądały tak: Dig_0:...
zmienna=(ADRESH<<8); zmienna|=ADRESL; Potem skalujesz wartosc jesli zachodzi taka potrzeba i juz mozesz zniej korzystac ;) Dziękuję za pomoc, wpisałem taki oto kod: VARIABLE zmienna=(ADRESH<<8); zmienna|=ADRESL; I mam kolejne pytanie jak na amotara w assemlerze. Gdzie w pamięci zapisywana jest ta zmienna, chciałbym zobaczyć...
WITAM PO KRÓTKIEJ PRZERWIE!! :) Wracam do tematu. :) Zamówiłem zapas procesorów ;) Można ruszać dalej. Zrobiłem już w programie obsługę pamięci 24c64 ale mam problem z odczytem komórek. Przypomnę tylko... Program odczytuje 4 bajtowy NR ID z DS1990A, przeszukuje pamięć i jeżeli nie ma numeru, to go zapisuje. zapisuję bajt po bajcie i wszystko jest OK....
Witam Jeżeli program ma być wykonywany w przerwaniu cyklicznym OB35 i ma być to 10 pomiarów to można go uprościć: Sposób 1. Wskaźnik przechowywany jest w merkerze MD20 (musisz pamiętać , że przy ustawieniach domyślnych CPU merkery powyżej adresu 16 (włącznie) nie są podtrzymywane po restarcie CPU): OPN DB XX //Otworz Blok Danych pośrednio //Sprawdzenie...
Hej, Z góry przepraszam za jakiekolwiek błędy, ale jestem tu nowy. Mam problem z elementem dość rozbudowanego makra. Wyciąga ono dane z n.xlsx'ów(po kolei) i wkleja do wspolne.xlsx. Problem polega na tym, że w wspolne.xlsx na danych z n.xlsx'ów wykonuje następne analizy per wiersz. Dane z n.xlsx'ów wprowadzają się same do kolejnych wierszy, ale formuly...
W c ten program gdzies w internecie widziałem.. Bedzie wymagał być moze małego dostosowania. Mam go ale niestety w asm pod atmege 16. ; Programowalny pilot RC5, obsługa interfejsów optycznych i pamięci EEPROM ; Rafał Baranowski (C) 2004 .INCLUDE "m16def.inc" ; SEGMENT DEKLARACJI .EQU OSC_FREQ= 1000000; częstotliwość pracy w Hz .EQU...
Podałem Ci sposób na podstawianie n iksów (wartość zmiennej ile ) do jednej komórki o adresie składającym się z 2 zmiennych. Jak i skąd podstawisz wartości tych zmiennych (pole tekstowe formularza, wartość komórki arkusza, wynik obliczeń) to już Twoja decyzja. Przeanalizuj kod, pomyśl i resztę wykombinuj sobie sam. Na pewno potrafisz! Najprościej będzie...
Nie po przedrostku tylko: Dim Eliczba as ERAM byte Co do zaś zanikania danych z komórki 0 to jest to dawna sprawa, a przy tym musi być spełnione kilka warunków by doszło do takiego zdarzenia. W dodatku możesz przecież ręcznie wskazać gdzie będzie zapisana twoja zmienna za pomocą At przy deklaracji zmiennej jako pierwszą zmienną bajtową,lub zadeklarować...
Raczej mi nie pomogło:( A czytałeś w ogóle? Zwłaszcza uwagę "IMPORTANT:" w sekcji What is a Pointer? Jeżeli tylko zadeklarujesz pointer (Frame_LCD1) to nie wskazuje on w żadne sensowne miejsce. Jeżeli zadeklarowałeś globalnie (tak jak na początku) to jest to NULL pointer, a zatem wskazuje pierwszą dostępną komórkę pamięci, adres 0. Dla AVRów jest to...
Z tego co wyliczyłem ostatnia zadeklarowana zmienna wchodzi na obszar zarezerwowany dla stosu i właśnie dlatego wyskakuje błąd braku pamięci. Zmniejsz rozmiar stosu a zobaczysz, że uda się skompilować bez błędów. Tak samo jak zwiększysz stos to jeszcze mniej zmiennych zadeklarujesz. Bardzo dużo projektów na Bascomie zrobiłem, w większości używałem EEPROMu...
Pamiętaj jeszcze o tym że jeżeli UART nie nadąży wysyłać próbek to żadne FIFO Ci nie pomoże (w końcu się zapełni). Zauważyłem, że moja kolejka FIFO się zapycha :/. Sprawdzam to tym fragmentem kodu: [syntax=c]if (FIFO_READ - FIFO_WRITE < 2) { LPC_GPIO1->FIOCLR |= (1<<28); }[/syntax] w funkcji void FIFO_Write (uint16_t); i obserwuje na oscyloskopie...
Tu nie ma co modyfikować, to trzeba napisać poprawnie od początku :) & pobiera adres zmiennej, obojętne czy to zwykła zmienna, czy wskaźnik. * robi operację odwrotną oraz deklaruje wskaźnik. Np. int *i to wskaźnik na typ int, *i to operator wyłuskania, w efekcie i=0x1100 przypisuje wskaźnikowi adres 0x1100, a *i operuje na komórce pamięci o typie int,...
tak samo jak wgrywasz flash z programem możesz wgrać zawartość pamięci eeprom pomiń tylko komórkę z adresem 0h bo bywa że się przypadkiem zapisze przy starcie układu reszta do twojej dyspozycji ;) w zakładce programatora memories masz w górnej linijce ścieżkę do wyboru pamięci flash a w kolejnej ścieżce wpisujesz ścieżkę do pliku z zawartością eeprom...
Posiadam eeprom szeregowy 32 kb 24c256 firmy Atmel któy ma organizacje 64 bajty na bank. Problem mam taki że zapisuje w nim czas (3bajty) załóżmy od komórki 0 i banku 0. Zapisuje się poprawnie od podanego adresu ale ten sam zapis dubluje od innego adresu w pamięci który zawsze jest przesunięty o 24576 bajtów. Np jeżeli zapisze 3 bajty załóżmy że(122030)...
Witajcie. Nie bardzo wiedziałem jak zatytułować ten post. W moim projekcie przyszedł czas na zewnętrzną pamięć nieulotną, wybór padł na 24c64, taki był w sklepie i taki kupiłem a poza tym masa faq do tego jest w necie. Obsługę kostki wziąłem z tąd : eepromwrite(0x00,0x01, 'a'); eepromwrite(0x00,0x02, 'b'); eepromwrite(0x00,0x03,...
1. Mógł byś zrobić coś takiego (nie polecam): bufor , może to być jakaś inna zmienna, śmieci itp. Tutaj od razu coś wytłumaczę. Wykorzystałem taki fragment: adres ? Na element adres na początku wskazuje na zerowy blok ale możemy go przesunąć w jedną lub drugą stronę. Więc można zrobić coś takiego: 1. Jak w taki sposób czytać wewnątrz tej funkcji, żeby...
Komunikat "implicit declaration of function" oznacza, że funkcję masz zadeklarowaną w kodzie niżej niż miejsce, w którym używasz tej funkcji. Musisz dodać przed funkcją wywołującą prototyp funkcji wywoływanej. W samej funkcji sprawdz_komende jest kilka błędów: - zmienna używana przez pętlę zdecydowanie powinna być zmienną lokalną. - sizeof zwraca rozmiar...
Cześć. W nocy ci opiszę wszystko ;) poczekasz? Dodano po 11 Po pierwsze w bloku DB musisz stworzyć strukturę. Struktura musi istnieć. W PLC siemensa istnieją zmienne o określonych typach w zależności jakie dane są w nich przechowywane bądź obrabiane. Najpopularniejsze typy zamiennych to Real (4 bajty), DINT (4 bajty), INT (2 bajty), SINT (1 bajt), BYTE...
Z bankiem chodziło mi o to do czego jest dostęp bezpośredni (mniej jak 80h) i pośredni, przez (at). Nie o faktyczne adresy R0-R7, tak że się już rozumiemy. No właśnie jak ustawie stos >7Fh to jednak jeździ po SPR, a nie po "dodatkowym" RAMie. Skoro ty dajesz E0 to wskazujesz początek na ACC, chyba że trzeba to jakoś inaczej ustawić, nie przez MOV SP,...
No cóż poprawiłęm program trochę na miarę moich umiejętności. Dodałem trochę komentarzy, a efekt wrzucam w tym poście. Pomoc by mi się naprawdę przydała. Po kompilacji nie ma błędów ani warningów. #include <avr/io.h> unsigned char word = 0x01; // Adres komórki pamięci unsigned char dane = 0x7A; // Dane wysyłane i odbierane z pamięci int bitstartu(void);...
Wiem, że to odgrzewanie , ale u mnie też to nie działa prawidłowo. Tzn zapisuję do RAMu i odczytuję z niego te dane, ale.... ZApala mi tylko segmenty z COM1 i COM2 lub COM3 i COM0. Po prostu tylko 2 z czterech - jeden dzień dwa inne, inny dzień dwa inne. Nie znalazłem zależności. Cokolwiek bym nie wpisał do tych komórek to nie reaguje. Dodano po 2 Dodam...
Zasilacz jest dobry, stawiałbym bardziej na jakieś zakłócenia od sterownika silnika krokowego. Sprawdzę na oscyloskopie. Na razie podaję jawnie adresy. Mam pełną kontrolę. Użycie struktury to dobry pomysł, tylko, czy wtedy pierwsza zmienna jest na początku eeprom, czy nie jest to określone? No i jak będę chciał dołożyć coś między obecne zmienne, a nie...
hm.. przy i2cwbyte niewidze delay'a 10ms na to aby eeprom mógł zapisac dane, z tego 'loadera' do eeproma wywnioskowałem że ten 'obrazek' (tablica bajtów) jest ładowany pod adresy od 0 do 255. kolejny błąd jaki widze to 'to' że tablica ta ma 504 bajty i w żaden sposób niezostanie cała zapisana do eeproma przez ten pierwszy kod. kolejny problem jest taki...
1. a od kiedy to zmienna byte przechowuje wartości od 0 do 131000 ? 2. a cio to?: Goto Mode1 Mode1: Const Adresw = 174 Const Adresr = 175 Goto Szukanie_folderu a) stałe są stałe i nie ważne czy umieścisz je w takim ifie, czy nie i tak nie zmienisz ich wartości b) zapomnij o goto... to da się rozwiązać pętlą... i paroma warunkami... goto się w takich...
Witam, zgodnie ze specyfikacją PIC16F1459 posiada on: "High Endurance Flash Memory (HEF) 128 B of Non-volatile Data Storage" komórki te znajdują się zgodnie z datasheetem od adresu 0x1F80 do adresu 0x1FFF. Ponadto zgodnie z przykładem dotyczącym zapisu do Flash z "Help'a" mikroC PRO for PIC v7.1.0 i używaniu poniższej funkcji http://obrazki.elektroda.pl/2832708000_1...
Jeśli to ma być formatowanie, to wchodzi w grę tylko formatowanie warunkowe. Jako format podstawowy zostawiamy format Ogólny (dla liczb całkowitych), a w formatowaniu warunkowym mamy kilka możliwości: 1) sprawdzenie czy liczba ma przecinek - jeśli tak stosujemy format liczbowy z wybraną liczbą miejsc po przecinku. Ten wariant dostępny od wersji 2007....
Witam Jak wiadomo dane umieszczone za dyrektywą $EEPROM zostają po skompilowaniu umieszczone w pliku *.eep Moje pytanie brzmi czy jest jakaś możliwość umieszczania tych danych pod konkretnymi "adresami" czyli podobnie jak przy poleceniu WRITEEEPROM. Obecnie jeżeli chciałbym mieć jakąś dana np. w 100 komórce to pozostałe muszę wypełnić 0 aby w pliku...
przeanalizuj sobie dobrze ten kdzik poniżej bo on jest dobrze napisany - naprawdę ;) ja wprawdzie kiedyś przy okazju swojej wytrawiarki też zrobiłem sterowanie w Bascomie 2 odbiorników przy 75 krokach ale dałoby radę więcej kroków i jeszcze kilka odbiorników. Z tym, że już nie pamiętam dokładnie zagadnienia więc trudno mi się teraz znowu w to wgryzać....
Najlepiej nigdy, przenigdy nie rób takich rzeczy ;) Argumentem tej funkcji powinien być wskaźnik ale ty stosujesz tu rzutowanie i na własną rękę numerujesz komórki pamięci w EEPROM. To doprowadzi cię kiedyś do zagłady ;) jak już to najpierw zdefiniuj sobie zmienną w pamięci EEPROM: unsigned char zmienna EEMEM; a potem np: mem_year = eeprom_read_byte(...
Udało mi się trochę odchudzić program. Wykorzystałem tablice + inkrementacja numeru komórki w tablicy. Chciałem wykorzystać FOR - NEXT, ale coś nie działa jak trzeba Do Locate 1 , 1 Lcd A Locate 1 , 7 Lcd B Locate 2 , 1 Lcd C Locate 2 , 7 Lcd D Locate 1 , 13 Lcd E Locate 1 , 19 Lcd F 'If Szukaj = 0 Then Call Przeszukaj_i2c 'End If Loop End '***********************...
Witam wszystkich, Mam układ, który po I2C zapisuje mi do pamięci 24c256 16 bajtów jeden po drugim. Robi tak co 3 minuty, procedura wygląda w ten sposób, że odczytuje adres zapisany w 4 i 5 komórce, zwiększa go o 1 po każdym zapisie a potem zapisuje do komórki 4 i 5." W komórce 1 i 2 zapisana jest ilość pozycji, pod koniec procedury zapiszdane wartość...
Witam. Poniżej przedstawiam dość specyficzny problem. Mamy np zmienną k zadeklarowaną następująco: volatile int k; Jest ona zadeklarowana nie w głównej funkcji main tylko w funkcji bitin(); Na początku jest ona zerowana. k = 0; I tu zaczyna się ciekawie. W programowej symulacji działa wszystko ok. Natomiast gdy odpalam na rzeczywistym układzie zmienna...
Jest ogrom stron traktujących o mikrokontrolerach, ale jakoś na żadnej nie jest napisane wprost co robi mikrokotroler bezpośrednio po włączeniu i potem dalej... tak żeby ktoś wprost napisał. Chętnie zerknę na każdy link jeśli ktoś się ze mną nie zgadza, pozwolę sobie przedstawić mój tok myślenia. Na początku po włączeniu zasilania mikrokontroler odczytuje...
Witam... Znów mam problem z excelem. Skrótowo... pracuje w pewnej sieci handlowej - firma przygotowywuje sie do wdrożenia TMS'a, ale do czasu musimy zastosowac dziwne rozwiązanie zamienne. Sklepów ostatnimi czasy robi się cała masa. Coraz częsciej zdarzają się więc sytuacje, że kierowcy mylą punkty dostaw i jadą w nie te miejsce które ma być (kilka...
Tam i w moim kodzie, i w kodzie kolegi cały czas operuje się na komórkach adresowanych liczbowo. Po prostu powiel zmieniając odpowiednio wartości indeksów (zmienna, zmienna + 1, zmienna + 2 itd.). Mój masz o tyle czytelniejszy, że w zasadzie na tacy wyłożone, wystarczy skopiować. Kolegi kod za to jest szybszy, bo operuje na całym zakresie od razu i...
1. Zacznij jednak od lektury, książek - taniej wychodzi, a potem kursy jeśli już ... tutaj parę pozycji: https://www.elektroda.pl/rtvforum/topic3... 2. Makro kolegi JRV : r jest zmienna, ale dlaczego równa się 1 a) r = 1, wartość wyjściowa/startowa zmiennej wierszy - od czegoś trzeba rozpocząć ich odliczanie b) With Sheets("raport") ... End...
Okej, tamten poprzedni kod można uznać za nieważny. Poniżej przesyłam pełnąą wersję, którą można skompilować. Usunąłem wskaźniki, tak aby kod był możliwie jak najprostszy. Jak zadziała to potem zrobię to na wskaźnikach. Co do adresacji, to w nocie katalogowej napisane jest, że komórki adresowane są od 000h do 1FF czyli od 0 do 511, więc pomyślałem,...
Po pierwsze to zależy na jakim procku to masz napisać, komendy trzeba sobie przejrzeć jakie są dostępne i na tej podstawie coś próbować zrobić. Nie wiadomo, jakie instrukcje są wykonywane więc ciężko ułożyć jakiś scenariusz. Wywołanie podprogramu zapisuje się na stosie, a to ile dokładnie zajmuje ten narzut (przynajmniej adres powrotu z podporgramu...
Komórka na której możną łączyć się z internetem przez bluetooth ma zmienny IP czy stały ? Jak to jest ? Ma także adres MAC ?
Zmienną J deklaruje w następujący sposób: unsigned char J; Widzę , że pomyliłeś C z Bascomem :D Bascom automatycznie konwertuje sobie typy danych(przez co jest pamięciożerny) , a w C musi zrobić to programista , czyli Ty. Wiesz , że J to zmienna umiejscowiona w pamięci RAM(data) , więc z funkcji lcd_print(0, 1,"Jakis tekst"); nie możesz korzystać.Mało...
objaw jaknajbardziej prawidlowy. zapomniales o tym, ze jak masz komorki o adresach: 00 01 02 03 04 05 06 07 to na raz odczytac mozesz tylko pod takim warunkiem: - 1 komorke zawsze - 2 komorki na raz (16b) tylko jesli adres jest podzielny przez 2 - 4 komorki na raz (32b) tylko jesli adres jest podzielny przez 4 :) Dzięki, czekałem na potwierdzenie tej...
trochę kolega flapo213 starsznie pokrętnie to wytłumaczył dlatego ja postaram się jeszcze po swojemu ;) Jeśli deklarujesz zmienną globalną, z której będziesz korzystał zarówno w procedurze obsługi przerwania a także w pozostałych częściach (funkcjach) swojego kodu, to bez słówka volatile będzie to się działo w uproszczeniu w ten sposób, że w ramach...
Dziękuję za odpowiedź. Oki rozumiem co koledzy pisali i myślę że dam radę. Jeszcze mam pytanie: Załóżmy że nastąpił zanik prądu miedzy godzina 15:30 a godzina 17:30 (nie mam podtrzymania bateryjnego poza zegarem) wiec będzie brakować dwóch pomiarów w tym przypadku. Pomyślałem że może zrobić tak. Jeżeli do tablicy wpada wynik temperatury to gdzieś się...
Witam raz jeszcze, Formuła jest tablicowa jednokomórkowa, tzn. trzeba ją zatwierdzać przez CTRL+Shift+Enter, ale tylko w jednej komórce. Potem taką formułę można kopiować w zwykły sposób. [syntax=text]=SUMA(JEŻELI.BŁĄD((spolka!$...
Grafcet - czyli SFC? O ile dobrze się zorientowałem to potrzebowałbym S7 Graph, ale darmowego nie znalazłem... Może i dobrze, bo ostatecznie algorytm zrobiłem normalnie w drabinie, dodałem tylko zmienną "krok" która steruje "przepływem" programu. Program liczy automatycznie sudoku, mamy np przykładowe sudoku: http://obrazki.elektroda.pl/1293433900_1...
Wyjątkowo nie chce mi się czytać kodu, ale musisz wiedzieć że karta ma swój wewnętrzny sterownik. To nie jest zwykła pamieć adresowalna. Ten sterownik ma zaimplementowany wear leveling co w skócie dla Ciebie oznacza że szanuje komórki karty i wybiera do zapisu te które były użyte najdawniej. Chodzi o to by nie zapisywać ciągle w tych samych komórkach...
Witam! Ostatnio próbuję swoich sił z tym mikrokontrolerem i napotkałem się na dziwne zachowanie, otóż w przypadku takiego kodu [syntax=c] counter_temp =0; unsigned long temp; temp = (*(Table_temp + 4) - '0'); counter_temp += (*Table_temp - '0') * 100000000; counter_temp += (*(Table_temp + 1) - '0') * 10000000; counter_temp += (*(Table_temp + 2) - '0')...
Witam, Nie miałem okazji przedtem pobawić się EEPromem zawartym w Atmega16, aż do dzisiaj. Pogrzebałem po necie i napisałem taki oto programik: [syntax=c] #include <avr/eeprom.h> #define ASRES1 1 #define ADRES2 5 #define ADRES3 10 uint8_t zmienna1, zmienna2, zmienna3; int main(void) { zmienna1= eeprom_read_byte ((uint8_t*)ADRES1); //czytanie z...
Nie wiem po co się tak męczyć. Pamięć zewnętrzna jest zamapowana do tej samej przestrzeni, w której jest wewnętrzna pamięć ram. Można więc posiadać wskaźnik, który będzie wskazywał komórkę w wewnętrznej pamięci, a po przypisaniu innego adresu może wskazywać na zewnętrzną pamięć. Gdyby napisać: struct jakis_skomplikowany_obiekt* my_obj = (void*)0x2345;...
Witam, problem udało mi się rozwiązać zupełnie przypadkiem. Okazało się, że zmieniam adres komórki do odczytu nie tu gdzie trzeba. Zmieniałem to: Zastanawiam się również dlaczego u siebie używam: [syntax=c]czasPCF8583 = TWI_read(0x02);[/syntax] Dokładnie chodzi mi o to 0x02 - skąd to tam się wzięło? Moje aktualne funkcje, których używam i które działają:...
adres zmienna adres komórka adres komórki zmienna
toyota radio zasilać prędkość przepływu sprawność klimatyzatora
uniden ubc125xlt wykrywacz metali schemat
Samoczynne odtwarzanie muzyki w telefonie – Samsung, Xiaomi, iPhone, Android, iOS, auto-resume, adware Skoda Felicia 1.3 MPI – wymiana filtra węglowego EVAP: kiedy i po jakim przebiegu?