Obie metody są dobre. W metodzie A definiujesz wskaźnik na tablicę obiektów typu struktura, a następnie alokujesz pamięć na 10 tego typu obiektów. I to jest metoda prostsza. Metoda B jest bardziej złożona. Nie alokujesz od razu jednej tablicy na wszystkie elementy, ale tworzysz tablicę wskaźników, z których każdy dopiero wskazuje na obiekt typu struktura,...
Należy pamiętać, że w nowszych wersjach avr-libc nie należy używać PROGMEM do deklaracji typu: Typedef Documentation prog_char Note: DEPRECATED This typedef is now deprecated because the usage of the __progmem__ attribute on a type is not supported in GCC. However, the use of the __progmem__ attribute on a variable declaration is supported, and this...
Programowane są godziny włączeń i wyłączeń różnych doświetleń ( różna kolorystyka), a ponieważ są 4 kolory, więc par czasowych włącz - wyłacz jest wiele. Jeśli do tego dołożę, że mają być też dni, aby niepotrzebnie bajery te były właczane w godzinach pracy, to robi się tego naprawdę dużo. Nie widzę problemu. Struktura powinna być z parametrami JEDNEJ...
Po kiego grzyba Ci pola bitowe? Nie wolno w ten sposób odwoływać się do kolejnych elementów struktury. Działa tylko dlatego, że przy kompilacji włączona jest opcja -fpack-struct . No i po co Ci struktura do trzymania kilku elementów tego samego typu? Od tego są tablice, a jeżeli chcesz koniecznie mieć tam wpisane nazwy, to sobie je możesz zdefiniować...
Wszystkie zmienne automatyczne w funkcjach są niszczone po wyjściu z funkcji. Jeśli chcesz, żeby funkcja tworzyła strukturę i ją jakoś zwróciła, to w C zazwyczaj robi się to brzydko: - strukturę deklaruje (lub alokuje) się na zewnątrz funkcji, a do funkcji podaje wskaźnik do niej, żeby funkcja tę strukturę zainicjalizowała; - na zewnątrz funkcji deklaruje...
Daje wskaźnik do właśnie zaallokowanej struktury. Uwaga: taka struktura nie jest zainicjowana!
Freddie Chopin : To nie jest aż takie proste. Z tego co ja zrozumiałem, to chodzi o zadeklarowanie typu zmiennej, coś pokroju: [syntax=C]typedef func_t (*func_t)(void *ptr);[/syntax] z tą tylko różnicą, że powyższe się nie kompiluje. Najbliższe rozwiązanie, to zwracanie struktury, wewnątrz której znajduje się wskaźnik na funkcję - strukturę można używać...
dokładnie będziesz miał 8 (lub 9, jeśli znaki interpunkcyjne dodać). I na każdym liściu będzie lista słów i ewentualny wskaźnik na kolejne 8.
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...
No przecież napisałem, że się nie da. Wskaźnik nie przechowuje żadnej innej informacji poza adresem (początku) zmiennej. W związku z tym, jeżeli funkcja potrzebuje rozmiaru, to trzeba go przekazać jako dodatkowy argument. Kolejny raz już nie będę tego powtarzał. Oczywiście, można sobie wszystko opakować w pseudoobiekty w stylu typedef struct {...
To: jpeg_mem_dest(&cinfo); // store jpeg image in memory ustawia wyjcie danych do pamięci RAM zdaje się. A gdzie jakiś wskaźnik? Czyżby tu: cinfo->dest = (struct jpeg_destination_mgr *) ? jpeg_mem_dest() jest wywoływana przez funkcję compress_jpeg(). Więc w niej należało by szukać tego wskaźnika. Z nagłówka funkcji widać że do funkcji...
1.Co oznacza wskaźnik xCxx?? Wskaźniki wykazuje obecności struktur: T – tablica partycji E – wpis w tablicy B – sektor rozruchowy woluminu C – kopia sektora startowego/tabeli GPT F – Struktury podstawowe FS (na przykład, plik pierwszy rekord MFT dla NTFS) f – MFTMirr dla NTFS x – struktura jest nieobecny lub...
1. W keilu musi. Anonimowe struktury i unie nie są domyślnie obsługiwane. Jakiekolwiek rozszerzenia języka C są obsługiwane przełącznikiem -gnu (trzeba go dopisać do argumentów kompilatora). Nie sprawdzałem czy dzięki temu zostanie umozliwione pisanie anonimowych struktur czy unii, ale całkiem możliwe, że tak. 2. Keil zawsze numeruje pola bitowe od...
Ta funkcja zwraca wartość ukrytą pod adresem który jest jej argumentem. Proste. Ponieważ w twoim przypadku, pod tym adresem kryje się wskaźnik, funkcja zwraca jego wartość czyli adres tego co ten wskaźnik wskazuje. O to chodzi w twoim kodzie bo rzutujesz to na inny wskaźnik potem. Wskaźnik na wskaźnik (**) to najfajniejsza rzecz w C (za wyjątkiem wskaźnika...
Ok przyjrzałem się trochę temu. Patrząc na implementację funkcji s3c_adc_read() w pliku /arch/arm/plat-s3c24xx/adc.c, zwraca ona wartość -22 (czyli EINVAL) tylko w przypadku gdy wywołana w niej funkcja s3c_adc_start() taką wartość zwróci. Idąc dalej. s3c_adc_start() zwróci taką wartość tylko wtedy gdy globalna struktura adc_dev (wskazana poprzez wskaźnik...
Przy czasach na poziomie sekund, minut to nie jest to żaden problem. Jeden timer ustawić na stałe przerwanie np co 100ms, w przerwaniu od tego timera przeglądać jakąś tablicę, w której każdy jeden element odpowiada jednemu programowemu licznikowi. Zmniejszać liczniki w elementach w tej tablicy, po czym po wyzerowaniu się wywołać jakąś funkcję. W moich...
a skąd moja biblioteka ma wiedzieć co to jest PINB i PORTB?;) Wskaźnik przekazuje się z zewnątrz, biblioteka nic nie wie co to jest PINB i PORTB. Biblioteka ma w tym przypadku dostęp tylko do wskaźników wskazujących na coś, akurat to my zakładamy, że to coś wskazuje na PINx lub PORTx. Co do uniezależnienia się od io.h: A skąd wtedy program ma wiedzieć...
No nie bardzo. ad.1. Lista cykliczna, czyli zapętlona. Aby zapętlić listę dwukierunkową mając wskaźnik na jej dowolny element, musisz przejść całą listę w przód aby znaleźć ostatni element i w tył, aby znaleźć pierwszy element, a następnie zmienić wskaźniki next ostatniego elementu aby wskazywał na pierwszy i prev pierwszego elementu, aby wskazywał...
Załącz w pliku sektor 1 615 872 lub od razu 3000 pierwszych sektorów począwszy od początku $MFT. Spróbuj wejść na $Volume 03 - da się? Patrząc mimo wszystko na obecny wskaźnik F należy przypuszczać, że DMDE powinnien pokazać jej zawartość. Uszkodzony na pewno jest sek. 6 klas. 0 pliku $MFT.
W nawiązaniu do porad kolegi tmf proponowałbym coś w tym stylu (być może strach przed kwalifikatorem __flash wynika z braku przykładów kodu :?: : [syntax=c] // przykład jak używać kwalifikatora __flash do umieszczania // danych w pamięci programu i jak się do nich odwoływać // kod gotowy do odpalenia w symulatorze Atmel Studio 6 // można zaobserwować...
U mnie (Katowice) z DCF77 nie ma problemu, oczywiście zdarza się, że przez jakiś czas nie działa, ale przecież nie musi - wystarczy że złapie sygnał od czasu do czasu. Z tego co zauważyłem, to strasznie przeszkadza w odbiorze DCF77 komputer. Kiedy miałem zasilane układy przez USB to generalnie był problem, gdy je zasilałem osobno - z sieci lub z baterii...
Po łebkach opisany algorytm... 1.Rysowanie wektora robisz tak a)rysujesz kreskę b)rysujesz trójkąt na końcu (pozycję obliczasz z wykorzystaniem zamiany wartości x/y c)wypełniasz trójkąt czarnym kolorem d)jeżeli jest włączona opcja przesuwania wektora to dodatkowo rysujesz 3 kólka (na początku, na środku do przesuwania całego wektora i na końcu) 2.Dane...
https://obrazki.elektroda.pl/4024708700_... Witajcie moi drodzy. Przedstawię tu pierwszy na świecie tutorial programowania modułu WiFi WB2S, czyli BK7231. Moduł ten występuje w wielu urządzeniach smart home, a w internecie panuje opinia, że nie można stworzyć dla niego własnego firmware. Nic bardziej mylnego - pokażę tu krok po kroku...
ale jak już przy tym jesteśmy to rozumiem że ta operacja *(struktura.wsk) = ... zadziała tak jak chciałem? czyli podstawi wartość do zmiennej wskazywanej przez ten wskaźnik ??? tak a jeszcze przy okazji, gdyby ten wskaźnik był wskaźnikiem na jakąś tablicę i chciałbym go zwiększyć o N żeby wskazywał N-ty element tablicy, to hmmm mam to tak zapisać???...
(at)ElektrodaBot Jak konwertować kod 64-bit na 32-bit? /** (at)file Copyright (c) 2025, Gelip Copyright (c) 2024, Andri Kurniawan Copyright (c) 2020, Seungjoo Kim Copyright (c) 2016, Dawid... Bezpośrednia odpowiedź „Konwersja” istniejącego binarnego modułu UEFI X64 na IA32 nie jest możliwa - trzeba ponownie skompilować kod źródłowy z ustawieniem architektury...
MikeC - Pisałem o tym już kilkukrotnie; Na Aliexpress można trafić na niższą cenę i to bardzo często i czasem dużo niższą. Niestety- trzeba też uważać, bo można się naciąć na złom. Kiedyś skuszony niską ceną w ten sposób i ja się naciąłem ; kupiłem 5 szt LM3886 i okazało się że wszystkie miały wadę fabryczną (wewnętrzne zwarcie). Oczywiście , trzeba...
Dodano po 1 w ogóle to nie wiem po co korzystasz z 2ch funkcji jak spokojnie możesz to zrobić w jednej: [syntax=c] #include<stdio.h> #include <stdlib.h> typedef struct{ int x; int y; }polozenieS; int getXvalue(void); //your functions int getYvalue(void); int random(int min, int max); polozenieS* add_structure(void); int main(void) { int...
Mam problem ze wskaźnikiem tzn. Jest struktura xdata struct _8bajt{ int adres; char wolna; struct _8bajt *nastepna; }_8bajt_; W komórce adres będzie zapisana wartość 0x8000 i chciałbym żeby wskaźnik xdata struct _8bajt *wsk; przyjmował tą wartość tzn. gdy będe zapisywał coś do struktury to żeby strukrura zaczynała się od 0x8000 Napisałem taki...
// tablica "napis" znajduje się w PROGMEM - w kodzie jest pgm_read_byte: OK char napis[] PROGMEM = {"test"}; // zmienna "text"również jest w PROGMEM: wywołanie fun(text.wsk) odwołuje się do złej pamięci t_text text PROGMEM = {napis}; zamień: fun( text.wsk ); na coś pokroju:...
https://obrazki.elektroda.pl/8368409700_... Celem projektu było stworzenie amatorskiego programowalnego sterownika logicznego. Motywacją do stworzenia tego sterownika była potrzeba posiadania uniwersalnego urządzenia pozwalającego w warunkach laboratoryjnych na szybkie przetestowanie różnych algorytmów sterowania przy przebiegach szybkozmiennych....
http://obrazki.elektroda.pl/2126980700_1... System monitorowania środowiska, oparty o interfejs LoRa IoT składa się z stacji bazowej zbudowanej z wykorzystaniem modułu Arduino Mega z bramką LoRa oraz zdalnych stacji opartych na Arduino Feather, które łączą się z stacją bazową poprzez radiowy interfejs LoRa. System pozwala na monitorowanie...
https://obrazki.elektroda.pl/4196928500_... Witajcie moi drodzy Tutaj opiszę moje doświadczenia z uruchamianiem sterownika LED MAX7219 oraz bibliotekę do jego obsługi którą opracowałem dla mikrokontrolerów PIC. W skrócie MAX7219 to kostka która pozwala sterować bardzo dużą liczbą diod LED za pomocą tylko kilku pinów mikrokontrolera....
Rozumiem, że chodzi o linie oznaczone numerami 1 i 2? Bo pozostałe linie to deklaracje zmiennych. Ad. 1. test.c:17:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] j = (uint16_t)&*(uint8_t*)j; ^ test.c:17:6: warning: cast from pointer to integer of different size...
(at)ElektrodaBot trochę poprawiłem stepgen.c, przeanalizuj go i jeśli ma błędy, wygeneruj nowy. Bezpośrednia odpowiedź na pytanie Poniżej prezentuję przykładowy, kompletny plik „stepgen.c”, który integruje input shaper (ZV lub MZV) pracujący domyślnie z częstotliwością rezonansową 22,2 Hz i tłumieniem 0,1. Kod zawiera bazową funkcjonalność stepgen...
Może tak się wydawać ale struktura w diodzie LED czerwonej jest odwrotna niż w niebieskiej ale są dobrze podpięte katody nie pomylono z anodami Moim zdanim źle się Tobie wydaje.
Teoretycznie w C/C++ nie ma problemu i struktura może być zwracana normalnie przez wartość: [syntax=cpp]struct Costam { int pole1; int pole2; }; Costam funkcja( void ) { Costam temp; temp.pole1 = 1; temp.pole2 = 2; return temp; } main() { Costam wynik; [...] wynik = funkcja(); [...] }[/syntax] Jednakże, jeżeli struktura jest duża, to nie jest to zbyt...
Po pierwsze - sumuj w funkcji cały wektor i zwracaj np. w trzecim parametrze. Po drugie - nagłówki funkcji muszą być wskaźnikami na strukturę, a nie liczbami (czyli magiczna *) Po trzecie kod nowy.va[2]; nowy.vb[2]; Nic nie robi! Po czwarte - struktura wektor ma być chyba wektorem, a nie dwoma wektorami.
Muszę szybko rozwiązać ten problem. Proszę o poradę czy taka przetwornica będzie dobrze współgrać u mnie. Czyli zasilanie-napięcie maksymalne akumulatorów 28,8V z możliwością spadku (rozładowania)do 23V. Sterownik zasilany może być od 12V do 28V. Na przetwornicy ustawiłbym na 23Vlub 24V a może i 18V aby silniki mniej pobierały A. Prąd maksymalny jaki...
Twoja funkcja musi pobierac wskaznik do struktury GPS. Przykładowo jesli struktora nazywa się strukturaGPS: typedef struct{ int wysokosc; int szerokosc; int czas int packet3[8]; }strukturaGPS; //za jej pomocą tworzysz strukturę GPS: strukturaGPS GPS; //Funkcja bedzie wyglądała tak: void gps_dm_dms(strukturaGPS* GPSpointer...
Proszę o pomoc, bo nie rozumiem dlaczego kompilator zwraca błędy. W programie tworzę strukturę, która zawiera tablicę struktur. Innymi słowami: [syntax=cpp]Struktura 1 { element1; element2; }[/syntax] [syntax=cpp]Struktura2 { wskaźnik do tablicy, która zawiera struktury 1 }[/syntax] W programie głównym tworzę wskaźnik do struktury2 i przydzielam mu...
Dla przykładu ja lubię taką formę: https://github.com/marcinszajner/Half-br... Idealnie tutaj to praktycznie kopia z exampla od ST z ich z zestawu STM32Cube_FW_G4, ale dobrze pokazuje że w embedded zamiast klasy, struktura nadaje się wyśmienicie. What? Temat o C++17 a Ty wrzucasz najzwyczajniejszy kod w C z...
(...) 5) trochę dotycząca pkt.1) jak zrobić czcionkę, w której potrzebują tylko cyfr, lub paru liter (niekoniecznie po kolei wg kodów ASCI, np T, O, M, I), pomyśl o jakichś deskryptorach ułatwiających i optymalizujących takie potrzeby Zaproponuj jakieś rozwiązanie w AVR GCC zgodnie z powyższymi założeniami Projektowanie biblioteki czcionek dla systemów...
Odwołując się do tego co napisał mirekk36 próbowałem ominąć funkcję typu eeprom_write_block(...) def. przykładowo (globalnie): EEMEM struct _sEEPROM_default sEEPROM_default = {0x23, {1,2,3,4,5,6}}; EEMEM struct _sEEPROM_default *pEEPROM_default = &sEEPROM_default; z symulacji wychodzi, że jest ta struktura umieszczona jak...
Witam; mam taki problem. Zrobiłem sobie strukturę w EEPROMIE w której trzymam ustawienia sterownika: [syntax=c]eeprom struct seting { char k; int temp1; long czas; char name[5]; } ustawienia; eeprom struct seting * ptrsr = &ustawienia;[/syntax] Chciałbym w sposób automatyczny , poprzez RS232 ustawić wszystkie pozycje struktury. A więc przykładowo dostaje...
Pokaz lepiej kod ilustrujacy twoj problem. Bo oczywisci emozna przekazywac adres do struktury lokalnej jesli z tej lokalnej funkcji jest wywolywana funkcja do ktorej ten adres przekazujesz. Ja bym obstawial, ze ta twoja struktura nie jest poprawnie inicjalizowana.
Tylko zamiast przekazywać tyle wskaźnikó, ekonomicnziej wychodzi stworzenie struktury, która ma pola odpowiadające poszczególnym parametrom i przekazywać jako argument wskaźnik do takiej struktury. Struktura może przy okazji mieć pola, które przez funkcję będą uzupełniane - od tego już tylko krok do programowania obiektowego i C++. Można też zwracać...
Albo można - dla ćwiczenia - pobawić się strzelaniem z armaty do wróbla i zająć się dynamiczną alokacją pamięci. W takim wypadku stworzysz listę struktur. Na pierwszy element takiej listy musisz posiadać w pamięci wskaźnik. Zamiast tworzyć zmienną "pozycja" tworzysz strukturę "pozycja" a w niej zmienną "indeks" oraz wskaźnik na następny element listy....
W sumie to nie wiem co gorsze. Czy brak const czy większość zmiennych volatile. Nie ma sensu wybierać i się ograniczać - `const volatile register void * const * volatile * (register ptr Niektórzy idą dalej i stosują volatile nie tylko w stosunku do buforów ale również całych struktur danych (nawet tablic struktur:)). W końcu to embedded i musi być...
Witam. Parę pytań, przemyśleń, proszę o wypowiedzenie się. Temat dotyczy programowania embedded C głownie mikrokontrolerów raczej większych 32 bitowych. 1. Stosowanie wielu zmiennych globalnych jest bee Czy w świecie embedded bez dynamicznej alokacji pamięci da się inaczej? Zakładając, że mamy jakieś stałe duże struktury globalne (zawierające mnóstwo...
Użyj po prostu operatora adresu (&) a następnie dokonaj prostego rzutowania na (unsigned int)
zasilać wskaźnik struktura wskaźnik struktura tablica stm32 struktura wskaźnik
zasilacz regulowany komputera natężenie powerbank magnum wtrysk
pogoda gorzów przetwornica 24vdc 12vdc
Zasilanie wideorejestratora w Volkswagen Passat B8 – skrzynka bezpieczników, fuse-tap, hard-wire kit Passat B8 – zasilanie wideorejestratora z lampki sufitowej, BCM, hard-wire kit, ACC