Mam wrażenie że przy obecnie wybranym algorytmie nie da się przyspieszyć. Gdyby dane o adresie zapisywane były w ciągu z reszta to ujdzie i nie trzeba czekać ale tak to niestety: 1. ładujesz adres początku 2. wysyłasz dane po koleji 3. czekasz te 10ms 4. zapiszujesz pod 5000 zmienną adresu 5. czekasz znowu 10ms I tak powinien wyglądać fragment zapisywania....
Nie używaj polskich liter w programowaniu Jedynie co można do komentarzy ustawiać. Co do adresu to użyj scanera do sprawdzenia, to program który się wgrywa do Arduino a później on odczytuje adresy z urządzeń, odnośnie jeszcze tych znaków Pokaż cały kod. Dodano po 5 #include <Wire.h> #include <LiquidCrystal_I2C.h> // Ustawienia wyświetlacza...
"adr MSB" możesz traktować jako górny bajt adresu (nie licząc rozszerzenia), "addr LSB" jako dolny bajt adresu, przy czym pamięć należy traktować jako zorganizowaną słowami - musisz przywyknąć, że pod jednym adresem mieszczą się dwa bajty, górny i dolny, a więc traktując pamięć jako zorganizowaną bajtami najniższy bit będzie przeznaczony do wyboru czy...
Tutaj znajdziesz niezły opis adresowania pośredniego - Rkarcz [url=http://www.elektroda.pl/rtvforum/vi... Opcji jest kilka wystarczy poszukać :) Takie FC na szybko, myślę, że sobie coś dopasujesz.
Pewny nie jestem, ale chyba powinieneś przekazać nie zmienną jako taką, ale adres tej zmiennej, czyli wywołać przez referencję.
Do konwersji łańcucha na zmienną numeryczną wykorzystaj funkcje VAL lub HEXVAL . Mając już adres zmiennej, możesz użyć instrukcje INP do pobrania wartości. [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 80 $swstack = 80 $framesize = 80 Declare Sub Show_byte(byref Adres As String) Declare Sub Show_word(byref Adres As String) Declare...
unsigned int *ple=(unsigned int*)&ulamek; wszystko jest ok, bo to mówi mniej więcej tyle, co "postaw wskaźnik na unsigned int na adresie zmiennej ulamek". Jeśli tylko zadeklarowałeś 'ple' nie definiując go, to musisz zmienić wskaźnik (czyli samo ple), a nie to co pod nim jest (czyli *ple), i ten wskaźnik postawić na adresie zmiennej ułamek (czyli &ulamek)....
uint32_t *napiecie; jest WSKAŹNIKIEM na zmienną typu uint32_t. Nie jest zmienną! Żeby wszystko grało, trzeba ten wskaźnik ustawić na jakiś adres, np.: [syntax=c] uint32_t *napiecie; //wskaznik uint32_t zmienna; // jakas zmienna napiecie = &zmienna; //teraz wskaznik napiecie przechowuje adres zmiennej "zmienna" [/syntax] Pozdrawiam
Wszystko okej, tylko nie bardzo wiem gdzie i jak skonfigurować ten port i jak skonfigurować ten data trace? Podłączyłem płytkę nucleo. Ja przerabiam ST-Link do J-link bo Segger ma lepsze oprogramowanie - u Ciebie zamiast J-Link wybierz ST-Link 1. Wybierz trace async SW w oknie cube (plik ioc) https://obrazki.elektroda.pl/2555985600_...
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...
W Twoim działającym przykładzie do rejestru wpisujesz adres tablicy ("&" może być albo może go też nie być - również zadziała wg mnie), natomiast w przykładzie niedziałającym najpierw do funkcji podajesz adres tej tablicy, a potem jeszcze raz wyciągasz adres tego adresu - żeby zaspokoić Twoje potrzeby kompilator zmienną tab umieszcza gdzieś na stosie...
A jak daję w f_read & przed zmienną to nic nie zmienia? Zastanów się nad tym sam... Funkcji każesz odczytać 480 bajtów. Gdzie ona je niby ma zapisać, skoro podajesz jej adres zmiennej o rozmiarze 2 bajty? To że wpisujesz tam '&' nie sprawia że nagle zmienna uint16_t staje się workiem bez dna... 4\/3!!
Nie ma potrzeby bawienia się szybkimi licznikami. W Microwinie ustalasz w wizardzie do panela kolejno wszystkie ekrany które mają być wyświetlane na panelu. W sumie jest chyba osiem ekranów głównych i każdy ma osiem pod-ekranów które wybierasz enterem. Zależy też chyba jaka wersja Microwina. Jeśli na którymś z tych ekranów wstawicz pole typu "Embedded...
Za bardzo nie rozumiem, wiem jak zbudowana jest zmienna typu UINT, ale chodzi mi o to czy da się bezpośrednio odwołać do danego jej bitu (np. przy użyciu odpowiedniej funkcji ). Przykładowo mam zmienną Zmienna1 typu UINT o adresie %MW4, teraz chcę aby czwarty bit tej zmiennej "załączał" styk NO. Jeżeli jako adres styku wpiszę %MW4.3 program zgłasza...
(...) 0/1023)*VoltageMsmt; Vcalc = Vcalc*2.995; lcd.setCursor(0,0); lcd.print("V1="); lcd.print(Vcalc); lcd.setCursor(8,0); lcd.print("V2="); lcd.print(Vcalc); lcd.setCursor(0,1); lcd.print("V3="); lcd.print(Vcalc); lcd.setCursor(8,1); lcd.print("V4="); lcd.print(Vcalc); } (at)ElektrodaBot Wstępna ocena dostępnych informacji Pytanie dotyczy kodu na...
oczywiście, że wystarczy $asm ... kod twojej wstawki $end asm ale oczywiście przydałoby się jeszcze wiedzieć jak można uzyskiwać w asemblerze dostęp do zmiennych itp, otóż: Dim Zmienna1 as Byte $asm lds R16, {Zmienna1} ... coś tam robimy sobie w asm ze zmienną i chcemy ją uaktualnić, więc: sts {Zmienna1}, R16 $end asm powyżej...
Pord szeregowy COM jest w komputerze widziany jako adres - taki sam jak adres pamięci. Wysyłasz poprostu zmienną 1 lub 0 pod odpowiedni adres. Na porcie com pojawiają się wtedy napięcia 0V i +12V. Do przełączania możesz użyć MosFetów, jeśli nie musisz przełącząć tego częściej niż raz na kilka minut, możesz zastosować przekaźnik. Na stronce http://www.edw.com.pl/...
Witam. Napisałem już trochę programów w życiu, ale -aż wstyd się przyznać- do dzisiaj nie rozumiem roli jaką odgrywają wskaźniki, nie potrafię ich używać, nie wiem do czego one służą, czemu z nich korzystać itd. Marcin Wskaźniki - no cóż, to takie twory, które potrafią bardzo ułatwić życie (czytaj programowanie), albo doprowadzić załamania nerwowego....
Nie ma możliwości zapisywania poszczególnych BAJTÓW (w uproszczeniu), a wygląda że to próbujesz zrobić. Funkcje zapisują zwykle 2 bajty na raz, adres zapisu powinien być więc parzysty, a Ty powiększasz zmienną Address tylko o 1 między wywołaniami.
Rozwiązanie z postu powyżej jest najlepszym według mnie: if(v) PORTB |= (1<<PB3); else PORTB &=~(1<<PB3); Żeby jednak traktować pojedynczy bit portu jako osobną zmienną można wykorzystać fakt, że rejestry io posiadają swój adres w przestrzeni danych, przez co można uzyskać adres i rzutować wskaźnik na jakąś bardziej...
Tworząc zmienne w bloku DB odwołujesz się do nich rozdzielając kolejne "zagłębienia" kropką.. przykładowo utworzyłeś w bloku DB1 zmienną Guzik Bool.. to dajesz... "db1.guzik". Możesz sobie tworzyć struktury (struct) co jest bardzo wygodne do pogrupowania jakiś fragmentów DB. Po utworzeniu struktury w niej umieszczasz zmienne. Przykładowo jeśli w bloku...
ad.1 Aby zrozumieć co się dzieje w tej linijce musisz dowiedzieć się co to są wskaźniki i rzutowanie typów. Jeżeli restart to tablica, to: [syntax=c]x=restart[0];[/syntax] przepisze pierwszy element z tablicy do zmiennej x. Nazwa tablicy to jednocześnie wskaźnik (adres w pamięci) do tej tablicy. I na przykład: [syntax=c]x=restart[1];[/syntax] zadziała...
W Derso wyczytałem: "Jeżeli wideodomofon ma wykonywać połączenia na urządzenie znajdujące się poza siecią LAN konieczne jest zastosowanie serwera SIP" - innymi słowy jeśli ma łączyć tylko do urządzeń w LAN nie musi mieś połączenia z serwerem SIP. Czy w SafeIP też tak jest ? Z tego co pamiętam tak. Technicznie powinny być też możliwe połączenia poza...
Pomyliłem się, znajdziesz go w folderze Drv a nie Bin. W razie "w" dorzucam do postu. Wczytaj się. Jest tam dokładnie napisane jak konfigurować sterownik i bloki w s7-1200/1500. Co do licznika to jest źle skonfigurowany. Jeżeli działasz na zmiennej Dint to ustaw licznik na takie wartości (patrz screen). http://obrazki.elektroda.pl/9322119500_1...
Całe mnóstwo. Zadeklarowałeś zmienną wskaźnikową data bez wartości początkowej. Używasz tej samej nazwy dla argumentu procedury. Piszesz pod adres zawarty w data, ale również używasz wartości data i to zapewne nie jako adresu. No i ciekawostka: raz na jakiś czas wyświetlany czas przeskoczy o dwie sekundy, bo wyświetlasz czas na LCD nieco rzadziej niż...
Witam! chodzi o to, że liczba[] jest tablicą elementów typu int a funkcją printf każesz interpretować tę zmienną jako hmm... tego... no... stringi. Musisz zmienić w formacie %s na %d i to załatwi sprawę. Oprócz tego w funkcji "printf(adres sieci... usuń ampersand "&" PS Zdaje się, że używasz Dev C++. Spróbowałem, i zauważyłem, że w chwili uruchomienia...
No niech będzie. void f(int *x) {//funkcja otrzymuje adres i pod ten adres "wpisuje" 12 *x = 12; } int x = 5; f(&x);// & oznacza pobierz adres zmiennej x i przekaż go do funkcji f //x jest = 12 a: void f(int *x) { x[2] = 12; *(x+5) = 15;//równoważny zapis } int x[10]; f(x);...
Możesz użyć funkcji UNSCALE z Basic instructions -> Conversion operations. Na IN dajesz zmienną typu REAL, którą będziesz ustawiał z HMI. HI_LIM / LO_LIM - górny i dolny zakres dla IN. OUT wyjście na peryferia (QW adres wyjścia w ET200). Szczegółowy opis znajdziesz we wbudowanej pomocy (F1 na bloczku).
${"obraz{$i}"} = basename($_FILES['userfile']['name'][$i]... tu jest przepisanie nazwy z tablicy globalnej na zmienną lokalną (sama nazwa bez rozszerzenia tam było przyjęte pisanie do bazy jedynie nazwy i obsługa jednie jpg. Potem było to składane na zasadzie $adres.$plik.".jpg" gdzie 1 człon to adres względny 2 nazwa pliku 3 rozszerzenie).
Z tego co się doczytałem zmienne tworzone w funkcji "giną" w raz z wyjściem z funkcji ale jak to jest naprawdę?? Radzę znaleźć jakąś dobrą książkę do C. W skrócie: takie zmienne (automatyczne) giną ponieważ przechowywane są w trakcie wykonywania danej funkcji na stosie. Jeśli program wchodzi w nową funkcję na stosie zapisywany jest kontekst powrotu...
Teraz nie wiem ile pamięci zajmują mi zmienne w trakcie realizacji kodu. Są jakieś proste metody na taki debuging, typu: odczytuje jakiś rejestr i wiem ile zajęte/wolne? Wiedza ile ram jest zajęte w danej chwili niewiele daje, bo po tej chwili może być wysyłana funkcja z char bufor[1000]; Istotniejsze jest jakie jest max zapotrzebowanie na...
Tak wyglada "schemat" moich procedur, trochę masz śmieszny sposób sprawdzania magistrali. Powinno sie to tak robić że jak wywyołasz adres urządzenia, to układ ma wystawić bit ACK. Na marginesie (bo podejżewam że się w końcu na to natniesz) aby wystawić zmienną na wyjscie DAC'a nalezy ją wysłać dwa razy!
Definiujesz tablicę 20 stringów (cout wyświetla początkowy adres tej tablicy)... to jest kompletnie źle. Nie wiesz jakie pola może przechowywać klasa string ani w jakiej kolejności - nie możesz całego obiektu (a raczej tablicy) tak po prostu nadpisać. Zrób tak jak wyżej i będzie ok (zamień na tablicę znaków). Jeśli chcesz skorzystać z dobrodziejstw...
Wystarczy spojrzeć na adres jednej z otwartych stron, wygląda to tak: http://mesmariusz.pl/kalkulator.php?... Pobiera się ich wartość podobnie jak zmiennych przesłanych POST: $raz = $_GET['raz']; $dwa = $_GET['dwa']; Trzeba dodać jeszcze trzecią zmienną oznaczającą numer strony. Pozdrawiam, Krzysztof.
Piszę na "ślepo". Nie ingeruję za mocno w twój kod, a w szczególności poprawność zastosowanego warunku w funkcji IF (nie mam po takim wyrywku wiedzy by to z sensem analizować) Zamieniłem zmienną "k" na zmienną "lp". (bo lepiej się kojarzy i przy okazji zastąpi zadanie dane zmiennej "k". Chyba o to chodziło? SDMduplikatZnalezione.AddItem lp linią: SDMduplikatZnalezione.AddItem...
A poprawiłeś tą linijkę z błędem o której mówiłem: [syntax=basic4gl]Karta = Buffer_in(1)(2)[/syntax] ? Po jej poprawieniu działa. I jeszcze trzeba zainicjalizować zmienną In_pos na 1. Bez tego też będzie działało ale zgubi pierwsza ramkę. [syntax=basic4gl]... Adres = 01 In_pos = 1 Enable URXC Enable Interrupts Do Loop ...[/syntax] A i trzeba się upewnić...
...więc się zgadza wszystko... Wprost przeciwnie - nic się nie zgadza :!: K ma być 8 bitowa wartością wpisana do rejestrów 16-31 :) No właśnie , a Ty jako argument K , podajesz time , który to jest adresem(wskaźnikiem) do komórki pamięci RAM i na dokładkę , ten adres w procesie kompilacji nie jest znany , bo time jest zmienną lokalną. Argument K ,...
Nie dziw się, że nie działa, skoro ignorujesz ostrzeżenia kompilatora. Funkcja: void LCDPutStr( char *pString , int x, int y, int Size, int fColor, int bColor) A ty wywołujesz ją: LCDPutStr(temp,95,20,LARGE,BLACK,PINK); gdzie temp to short int. O tym co się dzieje, kiedy potraktować zwykłą zmienną jako wskaźnik na łańcuch znakowy chyba wiesz. Jeśli...
Trawić w tym kodzie nie ma zbytnio co: struktura jest tylko żeby nie trzeba było za każdym razem przekazywać oddzielnie 3 wskaźników i maski bitu. Aby uzyskać dostęp do rejestru, są tylko dwa sposoby: statyczny kiedy kompilator zna adres rejestru i może go wkompilować do kodu, albo dynamiczny, kiedy kompilator nie zna adresu. Drugie rozwiązanie opiera...
Waż Waszmość słowa. Nie twierdze, że nie każdy może programować ale jak już chce naprawdę to robić to niech włoży w to trochę wysiłku i nie zaśmieca for podstawymi pytaniami, na które można znaleźć odpowiedzi w wielu książkach, czasopismach, dokumentacjach czy nawet na innych grupach dyskusyjnych. Zauważ, że jest masa ludzi, którzy stwierdzili, że napiszą...
Wstaw w kod arkusza "Wydatki" i kliknij w "Zapisz" [syntax=vb]Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim ostWrs As Long 'warunkiem działania makra jest adres scalonej komórki (tej z tekstem "Zapisz") 'zwrócony przez zmienną Target If Target.Address(0, 0) = "E18:E19" Then 'sprawdzamy, czy wymagane pola są wypełnione /przy okazji...
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...
Możesz też użyć takiego zapisu, chyba częściej spotykany, tylko należy pomiętać o dolarach w adresie komórki: Overflow . Możesz użyć typu Long, co znacznie rozszerzy ten zakres, lub nie deklarować ich w ogóle / zadeklarować je jak Variant, pozwalając kompilatorowi (?) samemu dobrać odpowiedni typ. Teoretycznie będzie to mniej wydajne niż bezpośrednia...
A co to jest to BYTE? prawdopodobnie: [syntax=c] typedef char BYTE [/syntax] "Jaka funkcja mozna zamienic char na byte?" To jest ten sam typ. Swoją drogą Ty masz trochę inną sytuację. Nie wiem jak to chciałeś zrzutować. Jak masz zmienną: [syntax=c] BYTE buffer[512]; [/syntax] to jest to w myśl tego co wyżej poprostu tablica 512 wartości typu char. [syntax=c]...
A w jaki sposób zmienić lang_polish? Nazwa tablicy jest stałym wskaźnikiem do pierwszego jej elementu (o ile pamiętam z książek i studiów). Nie da się w programie zrobić tak, żeby tablica zawierała elementy znajdujące się pod innym adresem. Żeby uprościć: Sama nazwa tak, ale tu chodzi o to, co trzymasz w tej tablicy, a tam w niej musisz trzymać coś...
Wszystko działa prawidłowo. Musisz pamiętać, że nie można monitorować obszarów wyjść, których adres znajduje się poza obszarem "process image" (odwzorowanie procesu). Odwołując się do wyjścia analogowego odwołujesz się bezpośrednio do modułu. Literka "P" na początku adresu PQW o tym mówi. Poniżej test Twojego programu na symulatorze PLCSIm: http://obrazki.elektroda.pl/6832175700_1...
[syntax=bash](at)echo off &:: tester_modemu_xp.bat set _ras_ip.last= rem przywracanie stanu sprzed zamknięcia skryptu if exist "%~dpn0.last" set /p _ras_ip.last=<"%~dpn0.last" :start ::-n (liczba sekund+1) ping 127.0.0.1 >nul -n 3 rem poniższe działa tylko na XP (na Win7 niestety już nie) set _ras_ip= for /f "tokens=4,5" %%a in ('route print...
... Bez eeprom też 0. Zanim wkleję kod , to trochę ponarzekam ;) Powiedz , dlaczego nie analizujesz kodu , który zadziałał i nie wyciągasz wniosków :?: Czyżbyś go nie rozumiał :?: Zauważ , że po zaadresowaniu układu , sprawdzam zmienną systemową ERR , która "mówi " , czy zaadresowany układ odpowiedział (ERR=0) , czy nie (ERR=1).Ty w swoim kodzie olewasz...
http://obrazki.elektroda.pl/2570476900_1... Czasami, niektóre projekty wymagają rozdzielenia jakichś zadań na kilka modułów Arduino lub umożliwienie im wzajemnej komunikacji. Interfejs IIC ( Inter-Integrated Circuit ang. pomiędzy układami scalonymi) czyli I²C jest idealnym rozwiązaniem tej kwestii. I²C to bardzo interesujący...
To jest konwersja na ASCII, np. do wyświetlenia na LCD lub terminalu. Pytania, które zadajesz, nie dotyczą mikrokontrolerów, a podstaw języka C. p jest zmienną wskaźnikową, czyli adresową. *p ++ = x - to zapis x pod adres zawarty w p i zwiększenie tego adresu, tak, aby p wskazywała następny bajt bufora. Jedynka w apostrofach - to znak ASCII - cyfra...
wyświetlić zmienną string zmienną zmienną rejestrze
interfejs symulatora płyta elektryczna indukcyjna akumulator forda escorta
ladowarka indukcyjna problemy diagbox
Jak zdjąć obudowę z ekspresu Melitta F27? Ładowanie kondensatora prądem jednopołówkowym: zmiany ładunku i tętnienia