rzutować wskaźnik

Znaleziono około 251 wyników dla: rzutować wskaźnik
  • [C] Jak rzutować wskaźnik do struktury APS_DataInd_t w C?

    Bo, zasadniczo, strBuf powinieneś mieć zadeklarowany jako char, a nie uint8_t. Widocznie u Ciebie char jest typem ze znakiem.

    Programowanie Początkujący   23 Lis 2010 13:38 Odpowiedzi: 10    Wyświetleń: 1840
  • C - Rzutowanie wskaźnika na unsigned long* w formule prog_address

    Tablica data to bufor (z komendą), jeżeli jej drugi bajt oznacza komendę USBASP_FUNC_SETLONGADDRESS, to następne cztery bajty (od data[2]) zawierają adres wpisywany do prog_address. Tak wynika z tego programu. Rzutowanie na wskaźnik na unsigned long jest po to, aby ta pierwsza gwiazdka "wyciągnęła" z pamięci unsigned long. Inaczej, takie użycie to bezpośrednia...

    Programowanie Początkujący   13 Lut 2013 17:47 Odpowiedzi: 14    Wyświetleń: 1536
  • REKLAMA
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • (uint8_t*)s wskazniki, rzutowanie, rola "gwiazdki"

    Jest to rzutowanie na wskaźnik do zmiennej typu uint8_t, a nie na zmienną. Ta gwiazdka to oznaczenie wskaźnika. Samo z siebie nic nie robi, powoduje tylko, że kompilator nie rzuca ostrzeżeniem lub błędem.

    Programowanie Początkujący   17 Kwi 2018 13:08 Odpowiedzi: 5    Wyświetleń: 828
  • [C] Jak poprawnie rzutować wskaźniki funkcji i struktury w C?

    Witam, Próbuje usunąć kilka warningów wyrzucanych przez kompilator, tyczących się przypisywania i inicjalizacji niewłaściwych typów ( brak rzutowania ). Nie jestem jednak pewien czy dobrze wykonuje rzutowanie. Mógłby ktoś rzucić okiem? 1. Przypisanie do wskaźnika na funkcję innego typu wskaźnik na funkcję: typy wskaźników: - void (*callback)(uint8_t,uint16_t)...

    Programowanie   28 Maj 2014 10:16 Odpowiedzi: 1    Wyświetleń: 999
  • REKLAMA
  • [C++] Jak poprawnie rzutować wskaźnik void* na obiekt klasy list?

    Witam, mam pewien problem z rzutowaniem. Mianowicie w jednej z klas mam wskaźnik voida, do którego umieszczam inną z klas. Gdy chcę użyć rzutowania, kompilacja przechodzi, natomiast, jeżeli jak już wywołam tą funkcję gdzie jest te rzutowanie to już podczas kompilacji wywala błąd: error C2664: 'print_list' : cannot convert parameter 1 from 'void...

    Programowanie   10 Gru 2011 16:39 Odpowiedzi: 7    Wyświetleń: 2033
  • Pierwszy wywiad z sztuczną inteligencją ElektrodaBot - zapraszam do zadawania pytań!

    jak poprawnie rzutować na wskaźnik void w języku C Aby poprawnie rzutować na wskaźnik void w języku C, należy zastosować następującą składnię: ```c (void*) pointer ``` Przykładowo, jeśli chcemy rzutować wskaźnik typu `int*` na wskaźnik typu `void*`, można to zrobić tak: ```c int x = 10; int* ptr = &x; void* void_ptr = (void*) ptr; ``` Warto zauważyć,...

    Tematy tygodnia   29 Mar 2023 11:02 Odpowiedzi: 2194    Wyświetleń: 36777
  • [c++] Wyjaśnienie rzutowania i wskaźników w C++: std::string name(...)

    Tak więc - abstrahując od karkołomności tej konstrukcji- czy mógłbym prosić o opisanie, choćby w kilku zdaniach, co dzieje się w tej linijce?? std::string name( (char *)*componentName+1, (*(UInt8 **)componentName)[0] ); Pozdrawiam W tej linijce deklarowana jest zmienna name typu std::string. Zmienna ta...

    Programowanie Początkujący   20 Lip 2010 21:49 Odpowiedzi: 6    Wyświetleń: 1661
  • REKLAMA
  • Kompilator pomija pętlę do-while w kodzie C - jak to naprawić?

    Wyjaśnię może na spokojnie: Kompilator patrząc na PINA widzi: dereferencję wskaźnika na volatile u8 spod inta rzutowanego na wskaźnik na volatile u8. Krok po kroku? "Zrób to sam" ;] - przykład dla wskaznikow 16bitowych, i 8bitowej danej: 1. Wez fizyczny adres chcianego SFRa , np. 0x6666 2. Rzutuj ten adres na wskaźnik na volatile u8: ((volatile u8*)0x6666)...

    Mikrokontrolery AVR   15 Lut 2012 22:41 Odpowiedzi: 40    Wyświetleń: 3282
  • [Stm32] Jak zapisać liczby float w emulowanej pamięci EEPROM na STM32?

    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)....

    Mikrokontrolery ARM   03 Paź 2011 18:46 Odpowiedzi: 10    Wyświetleń: 2666
  • [STM32] - zwis przy próbie użycia przerwania (używam jednego stosu?)

    Nawet dla takiego małego Miki jak ja już na pierwszy rzut oka jest jasne że te kody to potężne źródło problemów. Co widać bez wgłębienia się w szczegóły: * Funkcja main() jako rozbiegówka to słaby pomysł. Kolega stmx napisał coś na ten temat (nawet podaje link w promowanych tematach), warto to przeczytać. * Stos musi mieć odpowiednie wyrównanie, zwykle...

    Mikrokontrolery Początkujący   10 Maj 2019 08:53 Odpowiedzi: 20    Wyświetleń: 993
  • CooCox, GCC, STM32 - Po wykonaniu skoku bootloader nie startuje

    - po co było rzutowanie *(__IO uint32_t*) i dlaczego adres wyliczał się błędnie Nie wiem czemu to usunąłeś, ale to jest KONIECZNE. A to dlatego, że ty nie masz skoczyć pod adres (tablica_wektorów + 4), tylko pod adres który jest zapisany w (tablica_wektorów + 4). I właśnie po to było tam rzutowanie i dereferencja wskaźnika. 4\/3!!

    Mikrokontrolery ARM   17 Sty 2014 08:50 Odpowiedzi: 3    Wyświetleń: 1941
  • REKLAMA
  • Jak bezpośrednio przypisać zmienną bitową do pinu PORTD7 w WinAVR?

    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...

    Mikrokontrolery AVR   05 Kwi 2010 16:57 Odpowiedzi: 7    Wyświetleń: 1337
  • Zmienna nieulotna w funkcji. [C]. Jak ją zadeklarować?

    ...dla takiego wskaznika sa niezdefiniowane operacje ++ i --, generalnie arytmetyka na void nie dziala (bo nie ma jak). Nawet w przypadku rzutowania? (char*)ptr++; Akurat postinkrementacja ma wyższy priorytet niż rzutowanie, więc Twój kod wykonuje arytmetykę na wskaźniku typu void*. Jeśli użyjesz nawiasów, to masz ((char*) ptr)++ i kompilator...

    Mikrokontrolery   16 Sty 2010 23:38 Odpowiedzi: 56    Wyświetleń: 5594
  • Szukam biblioteki DCT, iDCT, JPEG dla ARM7TDMI do programu Standalone

    moj_dest_ptr dest = (moj_dest_ptr) cinfo->dest; Tutaj rzutujemy element dest struktury cinfo na typ moj_dest_ptr. Ten znak "->" to jest po prostu dostęp do elementu struktury która jest określona wskaźnikiem czyli: typ_moja_struktura struktura1; typ_moja_struktura * struktura2; //do elementu w struktura1 dostajemy się tak: struktura.element...

    Mikrokontrolery ARM   08 Paź 2009 11:13 Odpowiedzi: 77    Wyświetleń: 9825
  • [atmega 32][c] struktura danych we flashu i wskazniki

    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...

    Mikrokontrolery AVR   25 Paź 2011 15:30 Odpowiedzi: 6    Wyświetleń: 1236
  • [C] Błąd kompilatora Codesourcery przy inkrementacji wskaźnika DWORD

    Według standardu języka C wynik rzutowania nie jest l-wartością. Dawniej gcc zezwalało na takie konstrukcje, ale od którejś wersji wyrażenia tego rodzaju generują błąd podczczas kompilacji. Radziłbym posługiwać się cały czas wskaźnikiem i ew. rzutować go na DWORD w przypadku gdy potrzebny jest adres. Edit: źle rozumujesz. Wyrażenie w Twoim poście używa...

    Mikrokontrolery   15 Wrz 2009 15:10 Odpowiedzi: 5    Wyświetleń: 1166
  • AVR-GCC tablica wskaźników na funkcje i ich wywoływanie

    Może coś takiego będzie działać, sprawdziłem tylko, że się kompiluje: // definicja tablicy wskaźników do funkcji void (*f_Function_table[])... PROGMEM = { f_1, ... f_5 } //----------- // wywołanie void (*f)(); // pośredni wskaźnik na funkcję f = (void*)(pgm_read_word(&&...

    Mikrokontrolery   15 Wrz 2007 15:18 Odpowiedzi: 5    Wyświetleń: 4166
  • Zrozumienie zapisów w języku C: Struktury, wskaźniki, typy uint16_t i uint8_t

    Trochę się zmaieszałem. Pomocy :-) chodzi mi o rzutowanie wskaźnika np mam taka deklarację (uint32_t *) ?

    Programowanie Początkujący   12 Sty 2021 23:20 Odpowiedzi: 12    Wyświetleń: 990
  • ARM GCC - Wyjaśnienie wskaźników do funkcji i rzutowania w C

    Pierwszy zapis o który pytasz, to tablica wskaźników na funkcję, która to funkcja nie zwraca wartości i nie przyjmuje wartości. Zapis const oznacza, że tablicy nie będziemy modyfikować. Zapis, moim zdaniem bardziej czytelny, który sam stosuję w takim przypadku (z głowy): typedef void (*pVector_t)(void); __attribute__ ((used,...

    Mikrokontrolery ARM   11 Kwi 2013 13:21 Odpowiedzi: 4    Wyświetleń: 1356
  • [AVR] Jak poprawnie przekazać 4 bajty z bufora do struktury w AVR?

    tmf : Nie zupełnie. Problemem tutaj jest to, że autor tematu rzutuje wartość, a nie wskaźnik na adres w pamięci. Poprawne rzutowanie w tym wypadku podał kolega szelus . gafek : Te dwa kody robią to samo. Nie mogą działać różnie. Jeśli tak jest, to problem jest gdzieś indziej. Co do reszty, kompilator nic sam nie robi. Jak każesz mu skopiować obiekt...

    Mikrokontrolery AVR   04 Sty 2011 10:15 Odpowiedzi: 16    Wyświetleń: 2638
  • Język C: Kiedy używać operatora pobierania adresu & w wskaźnikach?

    To wiele wyjasnia, dziękuję bardzo. Korzystając z okazji chciałbym jeszcze zapytać o wyrażenie : *(int*)20000=7 Ja to rozumiem jako wpisanie do zmiennej typu int mieszczącej się pod adresem 20000 wartości 7. Samo (int*)20000 oznacza rzutowanie na wskaźnik do zmiennej typu int, zmienna mieści się pod adresem 20000, Dodanie gwiazdki * przed nawias powoduje...

    Programowanie Początkujący   06 Maj 2018 20:15 Odpowiedzi: 6    Wyświetleń: 825
  • [AVR][GCC] wskaźnik w strukturze - przekazanie parametru

    // 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:...

    Mikrokontrolery   13 Kwi 2010 19:53 Odpowiedzi: 8    Wyświetleń: 3874
  • AVR-GCC - Optymalizacja dostępu do struktury przez GCC?

    Obejść prosto - wystarczy jawnie rzutować typ wskaźnika.

    Mikrokontrolery AVR   12 Cze 2014 22:15 Odpowiedzi: 25    Wyświetleń: 2943
  • C - jak przekonwertować struct do void* i zapisać w pliku?

    "Mu?" ;-) Z pomocą operatora + możesz dodać liczbę do wskaźnika - to przesunie wskaźnik o liczba × rozmiar typu po wyłuskaniu. Oczywiście z void* nie przejdzie, bo void* nie da się wyłuskać. Ale w C tak naprawdę nie trzeba rzutować wskaźnika struktury na void*, bo w C istnieje niejawna konwersja wskaźników. Wychodzi na to, że ten wskaźnik void* jest...

    Programowanie   04 Paź 2014 09:23 Odpowiedzi: 20    Wyświetleń: 1035
  • stm32 - zapis zmiennych do trwałej pamięci, podczas pracy procesora.

    Tak wiem, że nie muszę przywracać zabezpieczenia, tylko spróbowałem ale się nie udało :). Rzutujesz wskaźnik na int16_t, a zmienna uparcie jest "short int" - po co? Bo tylko tak działa! Nie wiem jak inaczej mogę to zrobić ?

    Mikrokontrolery ARM   16 Gru 2011 22:43 Odpowiedzi: 29    Wyświetleń: 6682
  • Dlaczego `(BYTE *)pD += pD->bLength;` nie kompiluje się w GCC?

    Czyli zostaje tylko taki potworek Tak właśnie powinno być jak napisałeś. Poza tym czemu "potworek"? Powiedziałbym, że to eleganckie wyrażenie. Widać ładnie, jak poszczególne typy kolejno "maszerują". Praktyka programowania wymusza często bardziej skomplikowane twory. Trochę jeszcze skoryguję to, co napisałem poprzednio, bo nie było to do końca poprawne....

    Mikrokontrolery   06 Wrz 2007 17:02 Odpowiedzi: 3    Wyświetleń: 1122
  • [AVR][C] Struktury w pamięci flash i wskaźniki do funkcji

    Czy możecie mi wyjaśnić gdzie mam dopisać PROGMEM czy coś w tym rodzaju? Powinno wystarczyć przy deklaracji konkretnej zmiennej, a jak nie to wszędzie gdzie popadnie Polecenie: pStateFunc = pgm_read_byte(&menu_state[i]... nie działa. Jak to się robi prawidłowo? Wskaźnik do funkcji na pewno jest dłuższy niż 1 bajt, zapewne 2, ale...

    Mikrokontrolery AVR   14 Paź 2009 16:42 Odpowiedzi: 5    Wyświetleń: 2999
  • [uVision 4.7] - Błąd konwersji przy użyciu funkcji offsetof w C

    Musisz poszukać w dokumentacji do Keila jak realizują offsetof - masz też wsparcie ze strony producenta. To makro nie jest standardem dla C i jeśli jakiś kompilator jest za bardzo papieski to się czepia, że rzutujesz wskaźnik na int. Niemniej na pewno jest jakieś specyficzne dla Keila rozwiązanie.

    Mikrokontrolery ARM   08 Lut 2014 10:03 Odpowiedzi: 5    Wyświetleń: 1146
  • Jak zarezerwować ciągły obszar pamięci dla struktury w C?

    W C rozmiar struktury jest zawsze stały. W C++ pewnego rodzaju rozwiązanie mogą stanowić klasy pochodne (ale też rozwiązanie statyczne). W C można co najwyżej zastosować pseudoobiektowość, tzn. zadeklarować wiele struktur z takim samymi danymi na początku (dane wspólne) i odpowiednio rzutować wskaźnik przy dostępie.

    Programowanie   25 Sie 2010 22:38 Odpowiedzi: 9    Wyświetleń: 1458
  • Wyjaśnienie zapisu `id = *(uint16_t *)(restart + 1)` w C i inne pytania

    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...

    Mikrokontrolery Początkujący   03 Sty 2013 17:13 Odpowiedzi: 14    Wyświetleń: 1782
  • [ATmega32][avr-gcc] - Ostrzeżenie przy czytaniu EEPROMu

    Kompilator domaga się wskaźnika zamiast liczby całkowitej. Musisz dodać rzutowanie typów: [syntax=c] wsppk = eeprom_read_word((uint16_t*)36); [/syntax]

    Mikrokontrolery AVR   31 Sie 2012 00:07 Odpowiedzi: 32    Wyświetleń: 3678
  • [ATMEGA32] [ATMEGA32][C] Błąd kompilatora przy użyciu eeprom_read_byte() i eeprom_write_byte()

    adres należy rzutować na wskaźnik. ostatnio był podobny temat

    Mikrokontrolery   09 Mar 2011 19:39 Odpowiedzi: 7    Wyświetleń: 2588
  • C++ - Co oznacza zapis (struct K *)0 w pętli for?

    Przypisanie do kolejnych pól tabeli liczby 0 rzutowanej na wskaźnik do struktury K.

    Programowanie Początkujący   29 Kwi 2014 06:36 Odpowiedzi: 9    Wyświetleń: 900
  • [ATmega8] [ATmega8][WinAVR] Odczyt EEPROM - różnice w signedness wskaźników

    Zamiast int16_t użyj uint16_t (dla tablicy w eepromie, rzutowanie też jest zbędne)

    Mikrokontrolery AVR   15 Lip 2010 14:13 Odpowiedzi: 11    Wyświetleń: 2367
  • [AVR][C] Optymalizacja wykorzystania zasobów, Ethernet

    Pamięć wewnętrzna 2KB - 1514B na ramkę, reszta na stos. Sekcję data, bss oraz opcjonalną stertę wyrzucić do zewnętrznego ramu, chociaż nie wiem na czym niby polega trudność w rzutowaniu wskaźnika - pamięć i wewnętrzna i zewnętrzna są dostępne w dokładnie ten sam sposób. Co do odczytywania przy odbiorze i składania przy nadawaniu można wykorzystać dwie...

    Mikrokontrolery   26 Sie 2009 19:47 Odpowiedzi: 18    Wyświetleń: 3110
  • Jak podzielić 16-bitowy port dsPIC na dwa 8-bitowe w C?

    Zrób sobie pole bitowe jakie sobie chcesz (wiki), a potem rzutuj sobie PORTB na ten typ danych lub zrób wskaźnik tego typu i przypisz mu wartość PORTB.

    Mikrokontrolery PIC   25 Lut 2010 07:12 Odpowiedzi: 6    Wyświetleń: 1876
  • [c] Odczytywanie struktury `pomiar_typ` bajt po bajcie w C - jak to zrobić?

    Rzutując wskaźnik na tym char. char *bajtpobajcie = (char*)&Pomiar; EDIT Proszę pamiętać, że w przypadku przesyłania danych bajt po bajdzie pomiędzy różnymi urządzaniami w przypadku danych większych niż jeden bajt w interpretacji ma znaczenie architektura (konkretnie kolejność bajtów aka BIG_ENDIAN, LITTLE_ENDIAN)

    Mikrokontrolery   23 Gru 2010 10:36 Odpowiedzi: 17    Wyświetleń: 3250
  • ARM-COrtex-M poziom optymalizacji w docelowym układzie

    Keil jest ciut inny niż GCC. Z O2 i O3 kod z Keil armcc jest praktycznie niedebugowalny. Jednak z moich obserwacji wynika, że czasy, gdy optymalizacja powodowała, że program nie działał, raczej już minęły. Odkąd bawię się Cortexami, tylko jeden raz zauważyłem, że optymalizacja O2 na ARM "zepsuła" program, ale tak naprawdę to był błąd w programie (zmieszanie/rzutowanie...

    Mikrokontrolery ARM   06 Maj 2021 09:05 Odpowiedzi: 8    Wyświetleń: 753
  • [C] Wskaźnik na element struktury czy całą strukturę? Jak poprawnie użyć?

    No może faktycznie trochę przesadziłem zaprzęgając struktury do przechowywania takich prostych, "jednotypowych" danych. Ostatecznie skorzystam chyba z rady kolegi shg i zastosuje do tego celu zwykłe tablice. Jednak chciałbym do końca wyjaśnić zagadnienia poruszane w tym temacie. Czy jedynym sposobem na rozwiązanie tego typu problemu jest tablica wskaźników...

    Mikrokontrolery   23 Kwi 2009 14:01 Odpowiedzi: 10    Wyświetleń: 7150
  • [STM32F4] [STM32F4][C] - Rozmiar tablicy pixels w strukturze framebuffer w SRAM

    Adres zmiennej _main_ram_start który jest równy wartości 0x20000000 jest rzutowany na wskaźnik na strukturę framebuffer. W konsekwencji wskaźnik fb też przyjmuje adres 0x20000000.

    Mikrokontrolery ARM   28 Sie 2014 11:12 Odpowiedzi: 20    Wyświetleń: 2055
  • rzutowanie obrazu na ścianę za pomocą wskaźnika laserowego

    witam ma ktoś może pomysł jak zrobić wskaźnik laserowy wyświetlający obraz na ścianie?? coś w rodzaju zabawek laserowych,które sprzedają mających nakładki do wyświetlania różnych kształtów. http://obrazki.elektroda.net/50_12786226... Z tą różnicą,że potrzebuje żeby to wyświetlało prosty obraz zaprojektowany przeze mnie ( jakiś napis albo nieskomplikowany...

    Optoelektronika   25 Wrz 2014 20:19 Odpowiedzi: 9    Wyświetleń: 6710
  • [AVR] [AVR][C][Atmega64] - Implementacja menu z PROGMEM i funkcją callback

    tak ale : [syntax=c]temp2=(unsigned char*)pgm_read_word(temp);[/syntax] [syntax=c]temp = (unsigned char*)pgm_read_word(&menu[pozycjaMenu].L... [/syntax] i bez rzutowania na char na wskaźnik na char

    Mikrokontrolery AVR   27 Wrz 2013 13:50 Odpowiedzi: 4    Wyświetleń: 2016
  • [C/C++] Tablica wskaźników na chary. Podgląd adresów.

    Próbowałeś wyświetlić adres przekazując wskaźnik na char do cout, ale cout interpretuje zawsze wskaźnik do char jako tekst i wyświetla tekst. Właśnie dlatego trzeba zrobić rzutowanie do (void*), żeby "przekonać" kompilator, że chcemy widzieć wartość wskaźnika. To powinno wyjasnić wszystko: [syntax=c]for(int i = 0; i < 7; i++) { cout << "wsk....

    Programowanie   04 Paź 2017 20:30 Odpowiedzi: 8    Wyświetleń: 933
  • [AVR][C] ZApis i odczyt z pamięci EEPROM - adresowanie

    Dla ścisłości dodam, że uint8_t nie jest strukturą . A tym bardziej uint8_t* również nie jest strukturą... (uint8_t*)5 robi z literału 5 wskaźnik No robi, robi. Bądźmy precyzyjni: literał 5 jest rzutowany na "wskaźnik na uint8_t". Czyli jest to informacja dla kompilatora, że literał 5 ma zostać potraktowany jak wskaźnik na uint8_t...

    Mikrokontrolery   15 Mar 2011 16:44 Odpowiedzi: 9    Wyświetleń: 11436
  • [C] [C][AVR] Jak działa makro #define T_BIT(adr) w kodzie C?

    Linia z #define to makro preprocesora, po, nomen omen, definicję i opis odsyłam do Googli. :) To makro przyjmuje wskaźnik, rzutuje go na wskaźnik na strukturę pole_bitowe (słowo kluczowe volatile to zakładam, że wiesz, co robi) i zwraca samą strukturę. Prawdopodobnie da się to opisać jaśniej, bardziej poprawnie i wciąż po polsku, ale mi się już spać...

    Mikrokontrolery AVR   26 Sie 2010 11:09 Odpowiedzi: 7    Wyświetleń: 1574
  • Wskaźnik na funkcję przyjmującą wskaźnik na void

    Można użyć wskaźnika na void do przenoszenia wskaźnika na funkcję, wszak oba zajmują tyle samo. Można wskaźniki tego typu między sobą przepisywać bez potrzeby rzutowania. Pod tym względem nie trzeba zwracać wskaźnika na funkcję. Jakkolwiek, nie dało by się zrobić (dziwnie wyglądającego - swoją drogą) czegoś typu funkcja(ptr1)(ptr2)/*...*/, jak i traci...

    Mikrokontrolery   27 Paź 2011 19:52 Odpowiedzi: 8    Wyświetleń: 1659
  • [AVR-GCC] Jak wyświetlić menu z tablicy PROGMEM na GLCD KS108A?

    Spróbuj: glcd_str_P((char *)pgm_read_word(&menus No TAK, to takie oczywiste! Odczytujemy adres, a więc 2 bajty (word) i rzutujemy na wskaźnik na char. bo przecie funkcja tego oczekuje. Wiedziałem, że pomroczność mnie zaćmiła. Dziękuję! robiw

    Mikrokontrolery   27 Kwi 2014 12:15 Odpowiedzi: 3    Wyświetleń: 1452
  • Warning w WinAvr. Makes pointer from integer without a cast.

    Sprawdz jakich parametrów oczekuje funkcja eeprom_write_byte() Z tego co pamiętam oczekuje ona wskaźnika a nie int'a, Dokładnie o tym informuje Cię kompilator że zrobił rzutowanie. Włóż tam wskaźnik a powinno pomóc.

    Mikrokontrolery   05 Gru 2006 13:06 Odpowiedzi: 2    Wyświetleń: 1742
  • Sterowanie komponentami w Delphi za pomocą dynamicznych bibliotek DLL

    Nie wiem, czy nie bezpieczniej byłoby użyć wyłącznie wskaźnika i rzutowania (timer: Pointer; TTimer(timer).Enabled:=false). Biblioteki DLL bardzo nie lubią niestandardowych rozwiązań, jako choćby nawet Stringi :) Pamiętaj, ze DLL nie widzi wywoływanego jej programu, stąd zapis form1.timer1 jest zupełnym nonsensem dla DLL.

    Programowanie   08 Maj 2008 11:45 Odpowiedzi: 12    Wyświetleń: 2135
  • Jak rozbić liczbę float na 8-bitowe słowa do przesyłu przez RS232?

    #include <stdio.h> #include <memory.h> int main(int argc,char**argv) { float f = 13.1456789; printf("%f\r\n",f); //13.1456789 char *s; s = (char*)&f; //rzutowanie na wskaźnik do tablicy charów float b = *(float*)s; printf("%f\r\n",b); //13.1456789 int i; memcpy(&i,&f,sizeof(int&...

    Programowanie   09 Sie 2006 11:45 Odpowiedzi: 17    Wyświetleń: 4220
  • STM32F76x SPI+DMA nie mogę uruchomić transmisji na magistrali

    Co ten zapis w/g Ciebie oznacza? Bo tak w sumie to: &SPI2->DR - bierzesz wkaźnik na rejestr, 32 bit (volatile uint16_t *) - konwertujesz na wskaźnik na liczbę 16 bit, ale wskaźnik, jak to wskaźnik ma tutaj dalej 32 bit (uint32_t) - i rzutujesz 32 bit wskaźnik na 32bit liczbę Na pewno takie rzutowanie jest potrzebne przy długości transmisji poniżej...

    Mikrokontrolery   12 Lut 2020 20:03 Odpowiedzi: 17    Wyświetleń: 912
  • STM32F0DISCOVERY + LCD 3310 - problem z wyświetlaniem znaków przez SPI

    Dziwne rozwiązanie z tym rzutowaniem wskaźnika. W STM32F1 nie było takiego kombinowania. Może jednak dane są wyrównywane do lewej, a nie jak pisze w RM do prawej. Co będzie jak dasz tak: [syntax=c]SPI1->DR = dane<<8;[/syntax]

    Mikrokontrolery ARM   26 Cze 2012 14:57 Odpowiedzi: 9    Wyświetleń: 2209
  • [C] Jak przesyłać zmienną float między Atmegami8 przez TWI/SPI?

    Freddie Chopin : Masz drobny błąd w kodzie - na wskaźnik rzutujesz nie adres zmiennej "data", tylko jej wartość. Ogólnie warto jest posiadać funkcję do wysyłania bloku danych - wystarczy podać wskaźnik oraz długość danych.

    Mikrokontrolery AVR   14 Maj 2009 16:36 Odpowiedzi: 13    Wyświetleń: 4160
  • Optymalizacja pamięci RAM przy wyświetlaniu bitmap na ST7565 i ATmega328P

    W takiej sytuacji kompilator wygeneruje błąd niezgodności wskaźników. Wskaźnik na FLASH nie można niejawnie rzutować na zwykły wskaźnik. Jeśli potrzebujesz przesyłać do jednej funkcji wskaźnik na FLASH i na SRAM należy użyć __memx. Ta przestrzeń jest kompatybilna z przestrzeniami FLASH i SRAM, a kompilator generuje kod odbsługujący obie możliwości....

    Mikrokontrolery   15 Paź 2013 21:02 Odpowiedzi: 8    Wyświetleń: 1779
  • Czy odejmowanie wskaźników (char *)NULL daje zero czy UB w C?

    Zgodnie z podpunktem 9 p. 6.5.6 oba odejmowane wskaźniki muszą wskazywać na elementy tej samej tablicy lub na element tuż za tablicą. Jeszcze podpunkt 7 mówi, że na potrzeby punktu 6.5.6 wskaźnik do obiektu, który nie jest tablicą, liczy się jak wskaźnik do tablicy elementów danego typu o długości 1. Czy (char*) NULL wskazuje na obiekt? Zgodnie z punktem...

    Programowanie   25 Sty 2020 00:42 Odpowiedzi: 3    Wyświetleń: 381
  • [STM32f103ZET6][C/CooCox] - Automatyczna aktualizacja oprogramowania

    Wygląda to na błąd wynikający z niezrozumienia przez programistę tego, czego właściwie jest to adres. Komuś wydawało się zapewne, że ma być +5, bo najmniej znaczący bit wartości ładowanej przez instrukcję skoku w Cortex M musi być jedynką. Rzutowanie na wskaźnik do kodu załatwia to automatycznie, a w tym konkretym przypadku nie chodzi nawet zapewne...

    Mikrokontrolery ARM   07 Mar 2014 14:39 Odpowiedzi: 10    Wyświetleń: 2034
  • Jak zapisać stałą jako bajt w funkcji writeRegisters na I2C?

    Wyświetla 0x55 co by oznaczało, że do funkcji została przekazana stała 0x55, czyli innymi słowy takie rzutowanie wskaźnika na int na stałą jest prawidłowe. Muszę się zastanowić nad jego mechanizmem, skoro jest prawidłowe, chyba, że dondu to szybko wyjaśni. Z góry dziękuję...prefix PS. Pozostaje temat nadmiaru kodu, skoro chcę przekazać wyłącznie jedną...

    Mikrokontrolery   20 Kwi 2014 14:39 Odpowiedzi: 35    Wyświetleń: 4047
  • Jaką przewagę ma C++ nad C w przypadku mikrokontrolerów

    Jak ta książka ma być wzorcem, gdy autor na pierwszych już stronach już daje przykłady używając typedef struct?? Przecież to nic złego... Tak jak nadużywanie preprocesora, operacji na wskaźnikach, rzutowanie wszystkiego co się da na "void*" i tym podobne "normalności" (;

    Mikrokontrolery ARM   05 Gru 2016 08:28 Odpowiedzi: 82    Wyświetleń: 7707
  • C++ Szablon Bitów: Kompilacja z Rejestrem TIMSK - Jak Poprawić?

    No to połowa sukcesu za Tobą :) Druga połowa to pokazanie, że kod generowany przez kompilator jest taki sam (lub lepszy) jak przy łopatologicznym: TIMSK |= _BV(3); I tutaj chyba polegniesz, bo z tego co pamiętam to pobranie adresu rejestru, rzutowanie na uint a następnie rzutowanie na wskaźnik będzie skutkowało wygenerowaniem nie sbi/cbi, tylko...

    Programowanie   10 Lut 2009 16:00 Odpowiedzi: 8    Wyświetleń: 2026
  • Ostrzeżenie dereferencing type-punned pointer w kodzie z makrem LD_WORD

    Bardzo ważne info - memcpy() jest specjalną funkcją. Kompilatory wiedzą co ona robi i zwykle jeśli np. wywoła się memcpy() dla jednego czy kilku bajtów (które są odpowiednio wyrównane!), to kompilator sam to "zoptymalizuje" i przekopiuje sobie co trzeba "ręcznie", bez wywoływania funkcji. To taka uwaga jakby ktoś chciał napisać, że "to na pewno mniej...

    Mikrokontrolery   16 Lip 2017 07:29 Odpowiedzi: 15    Wyświetleń: 1269
  • C# - aplikacja drag&drop, kafelki, database itp.

    To jest rzutowanie . Tzn. jeśli jedna klasa dziedziczy po drugiej i mamy wskaźnik do klasy która jest starsza w hierarchii (tzn. jest "rodzicem", w tym przypadku object) to możemy z pomocą rzutowania otrzymać wskaźnik klasy która jest młodsza w hierarchii (tzn. jest "dzieckiem", w tym przypadku Button).

    Programowanie   08 Paź 2014 18:52 Odpowiedzi: 79    Wyświetleń: 6576
  • [C++] Odzyskanie adresu po podwójnej alokacji (memory leak)

    jesli dane nie zostały ruszone to mozesz rzutować adres na typ wskaźnika lub nawet na strukturę i tak odzyskasz dane. [syntax=c] unsigned char* ptr = (unsigned char *) 0x16e0c20; [/syntax]

    Programowanie   18 Maj 2018 16:22 Odpowiedzi: 4    Wyświetleń: 678
  • Jak poprawnie zaalokować dynamiczną tablicę 2D w ANSI C do danych PGM?

    Język C nie wspiera dynamicznych tablic wielowymiarowych. Masz dwie możliwości: 1- wykorzystać "tablicę tablic" czyli tablicę wskaźników; 2- użyć tablicy jednowymiarowej i liczyć indeksy "na piechotę". Twój przykład jest zbliżony do metody pierwszej, tzn. tabpix jest u Ciebie wskaźnikiem na wskaźnik, a ponieważ w C wskaźnik na element jest równoważny...

    Programowanie Początkujący   02 Gru 2009 20:43 Odpowiedzi: 2    Wyświetleń: 4717
  • Jak działa warunek `if(bufor)` w programowaniu w C na mikrokontrolery?

    Po pierwsze jest to kod c++ a nie c. Odpowiednik w c: [syntax=c] int wbuffer[]={1,1,1,1,1,1}; const int *bufor; //1 bufor = (const int*)wbuffer; //2 printf("B: %d\n", bufor[1]); //3 error bufor[1] = 3; printf("B: %d\n", bufor[1]); [/syntax] To co tutaj zachodzi to tak zwane rzutowanie. Umożliwia ono zmianę jednego typu na drugi (o ile jest to możliwe)....

    Programowanie   29 Mar 2017 07:47 Odpowiedzi: 38    Wyświetleń: 2622
  • AVR-GCC - Jak znaleźć nazwy rejestrów dla ATxmega16A4 w Atmel Studio?

    (*(TC0_t *) 0x0800).CTRLA = TC_CLKSEL_DIV8_gc; i to to jest? o co tu chodzi? nie kumam tego. (TC0_t*)0x0800 - liczba 0x800 rzutowana na wskaźnik, czyli to wyrażenie jest wskaźnikiem na strukturę TC0_t (która jest pod adresem 0x800, tam gdzie akurat sa odpowiednie rejestry timera) *(TC0_t*)0x0800 - zawartość struktury TC0_t umieszczonej pod adresem...

    Mikrokontrolery AVR   03 Lis 2012 14:17 Odpowiedzi: 24    Wyświetleń: 2877
  • Działająca funkcja, niepoprawna z mojego punktu widzenia

    Nie można było tak od razu? Teraz przynajmniej mogę Ci powiedzieć dlaczego działa. Deklarując te 8 tablic i wkładając je do tablicy liczb całkowitych, dokonujesz niejawnego rzutowania z wskaźnika na tablicę (którym jest nazwa tablicy) na liczbę całkowitą. Potem jak wkładasz kolejne elementy tablicy tab do funkcji rejestr to dokonujesz znowu konwersji...

    Mikrokontrolery Początkujący   18 Mar 2012 12:17 Odpowiedzi: 15    Wyświetleń: 1680
  • Kalkulator do zapisu liczby float jako HEX (w pamięci)

    Witam, Poszukuję metody napisanej w C++ która zamienia liczbę Hexadecimal na float (hex to float). Do tej pory znalazłem kod: unsigned char adres[4]; //bo float ma 4 bajty unsigned char *wtab = adres; float liczba = 15.6; *(reinterpret_cast<float*>(... = liczba; //do z rzutowanego wskaźnika char na float przypisujemy...

    Programowanie   22 Sty 2012 01:58 Odpowiedzi: 12    Wyświetleń: 8564
  • [ATmega32] - nieskończone wartości zmiennej float wysłane po RS

    Usunięcie tablicy nie przyniosło oszołamiających efektów, choć poprawiło sytuację. Dane są wysyłane poprawnie do mniej więcej 32 czy 64-tej próbki, a ja chciałbym wysłać ich 255. Kolejne próbki po bodajże 64-tej znów są przekłamane. Nie wiem w czym piszesz, ale dziwnie działasz na wskaźnikach/adresach. Poza tym rzutując na unsigned char ograniczyłeś...

    Mikrokontrolery Początkujący   06 Wrz 2013 20:05 Odpowiedzi: 17    Wyświetleń: 2166
  • [ESP-IDF] Pobranie informacji o częstotliwości pracy wybranego rdzenia w ESP32

    Kod jest niezrozumiały. Pojawiły się takie znaczniki, jak """ czy ">". Jaki plik nagłówkowy jest wymagany, aby móc skorzystać z funkcji esp_clk_cpu_freq()? Przepraszam za zamieszanie związane ze znakami specjalnymi w kodzie. Prawdopodobnie wynika to z formatowania HTML. Oto poprawiony kod w C++20, który wykorzystuje wyrażenie lambda do uzyskania...

    ESP8266 i ESP32   29 Gru 2023 20:47 Odpowiedzi: 22    Wyświetleń: 1155
  • AVR - jak radzić sobie z fusebitami i ograniczeniami 8-bit?

    That's the point. Dla producenta procesorów pisanie softu i dokumentacji to upierdliwa konieczność a nie cel ich działalności :( - No oczywiście poza sztucznie wykreowanym powodem braku "const" przy wskaźniku. No ale z drugiej strony dla kogoś, kto wie o co chodzi z "const" i ogarnia temat nie jest też problemem zrobienie rzutowania wskaźnika z (const...

    Projektowanie i Tworzenie Po godzinach   30 Sty 2020 18:45 Odpowiedzi: 368    Wyświetleń: 17295
  • [AVR GCC] AVR GCC - Niepoprawne działanie programu przy włączonej optymalizacji kodu

    Ja miewałem takie problemy i zawsze problem wynikał z mojej winy. Ja dysponuję debugerem więc ze zlokalizowaniem przyczyny nie miałem większego problemu. Przyczyn może być dużo, niezainicjowane wskaźniki, niewłaściwe indeksy, rzutowania, braki sufiksów na stałych, niewłaściwe wektory przerwań itp itd. Kod który przedstawiłeś nie jest cały to tylko funkcja...

    Mikrokontrolery AVR   02 Sty 2014 12:31 Odpowiedzi: 21    Wyświetleń: 2985
  • [STM32][eclipse z CodeSourcery]błedna kompilacja programu do komunikacji USB HID

    Z tego co wymieniłeś wszystko jest OK (zakładam, że 3. to wskaźnik na funkcję, a nie jakieś dziwne rzutowanie). Ja bym się jednak początkowo skupił na zainicjalizowaniu w main() wszystkiego co inicjalizuje Keil w startupie, czyli po prostu wywołaniem SystemInit() - jeśli to zrobiłeś to następnym krokiem będzie zastanowienie się, czemu kod w Keilu generuje...

    Mikrokontrolery ARM   14 Lip 2012 14:57 Odpowiedzi: 38    Wyświetleń: 7957
  • [Pascal] Jak stworzyć uniwersalną funkcję sortującą dla różnych typów?

    No to tylko ta tablica variantów (array of variant) mi przychodzi do głowy, ale musiałbyś ją tworzyć przed każdym przekazaniem do funkcji sortującej. Od biedy tablica wskaźników, ale w funkcji musiałbyś odpowiednio rzutować (a więc i poinformować funkcję, na jaki tym ma rzutować oraz taką tablicę wskaźników utworzyć - sama z siebie by nie musiała być...

    Programowanie Początkujący   18 Kwi 2018 08:19 Odpowiedzi: 6    Wyświetleń: 480
  • [LPC1343] [LPC1343][C] - Interpretacja wskaźnika podwójnego w kodzie USBHID-rom

    Ale dlaczego dwie gwiazdki? Po co to rzutowanie wartości hexadecymalnej?

    Mikrokontrolery ARM   05 Maj 2013 22:16 Odpowiedzi: 6    Wyświetleń: 1341
  • [Pascal] Borland Pascal 7.0 - jak obejść limit 300 zmiennych?

    Alternatywnie możesz skorzystać z dynamicznej alokacji pamięci. Sprawdzi się szczególnie w przypadku dużych tablic. Deklarujesz najpierw typ type tZmienna = array [min...max] of jakis_inny_typ; następnie zmienną wskaźnikową rzutowaną na ten typ var zmienna = ^tZmienna; W inicjalizacji programu musisz przydzielić pamięć new (zmienna);...

    Programowanie   03 Gru 2008 13:35 Odpowiedzi: 23    Wyświetleń: 3029
  • ARM7: Anomalie przydziału pamięci dla tablic static i normalnych w C

    Tablica uint8_t może nie być wyrównana (jej pierwszy adres może być równy np 1 albo 3, a ARM7 nie obsługuje niewyrównanego dostępu. Jeśli odczytasz uint16_t z niewyrównanego (niepodzielnego przez 2) adresu rezultat jest nieprzewidywalny, włącznie z zawieszeniem układu. Sam dodatkowo wprowadzasz zamieszanie, bo adres rzutujesz na wskaźnik ze znakiem,...

    Mikrokontrolery   09 Gru 2010 18:10 Odpowiedzi: 5    Wyświetleń: 1226
  • [Turbo Pascal] Czym jest zmienna typu Pointer w Turbo Pascal?

    typ pointer to jest w Pascalu odpowiedni w C to będzie void * , jest to najbardziej ogólny typ wskaźnika który można potem rzutować na dowolny typ struktury.

    Programowanie   07 Cze 2004 14:12 Odpowiedzi: 3    Wyświetleń: 1949
  • Konwersja kodu C 64-bit na 32-bit – jak dostosować typy i wskaźniki?

    (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...

    Programowanie Początkujący   23 Cze 2025 21:32 Odpowiedzi: 1    Wyświetleń: 117
  • [Ansi C] [WinAVR] Różne wyniki porównań przy użyciu CalcCheckSum - dlaczego?

    A co to by miało dać w/g Ciebie?:) Po co chcesz rzutować to co zwraca ciało funkcji na wskaźnik ?

    Mikrokontrolery   21 Maj 2010 10:16 Odpowiedzi: 6    Wyświetleń: 1063
  • [ARM] [ARM][C] Jak unikać zmiennych globalnych w embedded C? Struktury i wskaźniki

    Czyli z Twojej wypowiedzi wynika,że volatile jest tak wskawione bezzasadnie i przez to pogłębia się problem? Otóż nie, nie wstawiając volatile, program jest optymalizowany i nie będzie działał. A rzutując wskaźnik na wskaźnik na typ volatile (a nie wskaźnik volatile) nic się nie zmienia w kodzie wyjściowym. Po co bezpieczeństwo typów nie lepiej pomyśleć...

    Programowanie   15 Lis 2017 10:13 Odpowiedzi: 19    Wyświetleń: 924
  • Generator czcionek dla wyświetlaczy LCD

    Działa, zmienione kody bibliotek do pcf8833 w załączniku. Jako ostatni parametr funkcji podajemy wskaźnik na czcionkę rzutowany jako (unsigned char*). Czcionki w mojej wersji zapisujemy w pamięci FLASH układu. Dzięki za programik jeszcze raz za świetny programik;-)

    DIY Konstrukcje   15 Maj 2012 19:41 Odpowiedzi: 38    Wyświetleń: 21530
  • [Cpp/C] Jak rzutować tablicę unsigned char na strukturę w C/C++?

    Dlaczego nie działa rzutowanie tego typu ? A mógłbyś wyjaśnić, co znaczy nie działa? Bo zazwyczaj działa... [edit] Musisz tylko pamiętać, że kompilator jest uprawniony do wyrównywania ułożenia pól w strukturach w zależności od wymagań architektury procesora. Jest prawdopodobne, że pole wskaźnika payload zostanie przesunięte w pamięci (wyrównane) do...

    Programowanie   18 Lut 2013 17:14 Odpowiedzi: 3    Wyświetleń: 1890
  • Jak poprawnie używać sprintf do wypełnienia tablicy wskaźników w C?

    Niestety, ale jeśli chcesz tablicę wskaźników, przy czym wskaźniki wskazują na konkretne bloki pamięci, musisz je inicjalizować. Jeśli obie tablice są globalne, to bez problemu powinno dać się to zrealizować jakoś tak: [syntax=C]static char buff0[5][20]; char *menu_main[5] = { buff0[0], buff0[1], buff0[2], buff0[3], buff0[4] };[/syntax] lub równoważnie:...

    Mikrokontrolery AVR   04 Lip 2011 12:49 Odpowiedzi: 13    Wyświetleń: 1428
  • Prośba o pomoc w odzyskaniu danych po szybkim formacie z NTFS na FAT32

    MBR jest w pierwszym sektorze dysku - LBA0. Błędny kod typu partycji nie będzie Ci rzutował na jej rozpoznawanie. Zwróć uwagę na numer sektora początkowego partycji 1 048 576 000. Nie mas wskaźnika F w oknie DMDE - dlatego obawiam się, że operacja naprawy partycji ostatecznie zakończy się niepowodzeniem, ale jeśli już zabezpieczyłeś możliwe do odzyskania...

    Naprawa nośników i odzysk danych   27 Wrz 2021 17:39 Odpowiedzi: 28    Wyświetleń: 1377
  • [atmega32] [atmega32][C++] Implementacja operatorów << dla klasy LCD

    Podsunąłeś mi pewien pomysł... zrzutowałem sobie wskaźnik na tekst w pamięci programu na typ void* Kompilator rozpoznaje typ void* i odróźnia go. Później znowu sobie go rzutuje na const char*. o t6akiej opcji tez myslalem :)... ale stwierdzilem, ze przesada... i, ze w razie innych funkcji podobnych, trzebaby ciagle o tym pamietac :)... ale skoro dziala...

    Mikrokontrolery AVR   17 Cze 2008 17:04 Odpowiedzi: 11    Wyświetleń: 3272
  • Wskaźnik do zmiennej umieszczony w strukturze w "Atmel Studio"

    W prosty sposób nie uda ci się tego zrobić. Ostrzeżenie można łatwo wyeliminować jwnie rzutując typ, ale to tylko maskuje problem. Musisz wiedzieć na jakiego typu zmienną wskazuje wskaźnik. Ty napisałeś kompilatorowi, że wskaźnik wskazuje na zmienną typu uint8_t. Jeśli zrobisz dereferencję wskaźnika to uzyskasz wartość o typie uint8_t. Jeśli wskaźnik...

    Mikrokontrolery AVR   15 Lip 2017 19:17 Odpowiedzi: 11    Wyświetleń: 1911
  • [C++] Jak dynamicznie zarządzać tablicą obiektów klasy drzewo?

    Yakhub: wsk->wsp_x //dokładnie taka notacja.. co do definicji wskaźnika samego do siebie można zrobić wskaźnik typu void a potem go rzutować..

    Programowanie   24 Maj 2004 23:29 Odpowiedzi: 9    Wyświetleń: 8805
  • RS232 w C – jak zbudować bufor nadawczy do wysyłania floatów na PC?

    Tak przeczytałem. Sposób z rzutowaniem na wskaźnik char* wydaję sie w miarę prosty. Tylko jak pozniej złożyć to juz na PC w Builder C+? Czy można zastosować to w drugą stronę? Na początku spróbuję zrobić transmisje bez przerwań ale w przyszłości będę modernizować program z wykorzystaniem przerwań od UART.

    Mikrokontrolery   15 Gru 2006 16:56 Odpowiedzi: 13    Wyświetleń: 2901
  • [AVR] Jak przekonwertować 16-bit hex na dec w AVR C dla modułu pomiarowego?

    W Twoim przypadku zapisujesz pierwszy (starszy) przychodzący bajt w dane_RX[1] a drugi (młodszy) - w dane_RX[0], bo, jak sam napisałeś, masz dane nadchodzące w big endian a AVR pracuje w little endian, więc musisz odwrócić kolejnośc bajtów w pamięci. I teraz możesz sobie przykładać wskaźnik do typu uint16_t tam, gdzie chcesz, czyli do tablicy dane_RX:...

    Mikrokontrolery   31 Sty 2018 14:52 Odpowiedzi: 18    Wyświetleń: 2337
  • Free Pascal, ARM, 32-bitowe rejestry, "aligned writes"

    Witam, na wstępie przepraszam za użycie sformuowania "Aligned writes", bo żadnen polski odpowiednik nie przychodzi mi do głowy. Jakiś czas temu udało mi się dzięki pomocy developerów Free Pascala zmusić kompilator do prawidłowego generowania kodu dla platformy Thumb2. Wszystko fajnie hula, nie muszę już się męczyć z przyswajaniem C. Mam tylko jeden...

    Mikrokontrolery   06 Sie 2012 18:11 Odpowiedzi: 1    Wyświetleń: 1357
  • Jak przekonwertować long uint na bajty w C dla MAX7219?

    Kompilator jak zwykle ma rację ;-) Wskaźnik jest na inny typ niż wskazywana zmienna. Ale zabieg ten jest celowy - zmienna ptr służy do wyłuskiwania kolejnych bajtów z typu uint32_t. Twoja poprawka nie jest dobra - eliminuje warning wraz z ideą. Takie wylanie dziecka z kapielą. Rozwiazaniem jest jawna konwersja (rzutowanie). Ale typ wskaźnika powinien...

    Mikrokontrolery   27 Cze 2012 21:02 Odpowiedzi: 17    Wyświetleń: 2348
  • [C++] Rzutowanie reinterpret_cast zmienia endian na big-endian

    Witam wszystkich Próbuje zapisać dane wygenerowane przez program do pliku ale podczas rzutowania za pomocą reinterpret_cast wskaźnika na prostą strukturę, przykładowo: [syntax=cpp-qt] struct test { unsigned int mark; unsigned int w; unsigned int h; }; [/syntax] na wskaźnik typu char*, rezultat rzutowania ma zmieniony endian na big-endian, co jest bardzo...

    Programowanie   04 Mar 2012 16:19 Odpowiedzi: 3    Wyświetleń: 1146
  • [C++] Jak przekazać statyczną tablicę 2D do funkcji w C++?

    ...Ponadto tablica w kodzie mickpr jest zadeklarowana globalnie, czego podobno należy unikać. Czy dzięki wskazaniu pierwszego elementu tablicy zyskamy dostęp do całej? Czy wewnątrz funkcji da się wtedy zainicjalizować tablicę w ten sposób : tab = {{.....},   {.....},   {.....}} ? Ja założyłem, że zawsze znamy rozmiar tablicy. Autor nie powiedział,...

    Programowanie Początkujący   05 Lut 2012 12:50 Odpowiedzi: 9    Wyświetleń: 3146
  • c++ - Bardziej "profesjonalny" kod (matura roz.)

    Już jest lepiej, ale wciąż nie zastosowałeś się do rady ze wskaźnikiem/referencją oraz rzutowanie na char w tym przypadku nie jest potrzebne.

    Programowanie   11 Lip 2015 21:48 Odpowiedzi: 31    Wyświetleń: 5925
  • [C++] Wskaźnik na funkcje w klasach, nie można przypisać

    Chcę zrobić biblioteki do programowania okienek, coś w takim stylu jak C++ Builder, Jak w Borlandzie te manipulowanie wskaźnikami jest wyczarowane, w normalnym C++ takiego czegoś nie ma :cry:, więc jak inaczej to rozwiązać, chyba pozostaje tylko te manipulowanie typami. P.S Jaka jest różnica pomiędzy reinterpret_cast<>() a rzutowaniem z C

    Programowanie   10 Maj 2011 10:34 Odpowiedzi: 7    Wyświetleń: 1635
  • Jak odczytywać tablice PROGMEM powyżej 64kB na ATmega1284?

    To wiem, jak jednak wyjść wskaźnikiem na tablicę poza obszar 64kB? Rzutowaniem? robiw

    Mikrokontrolery   07 Mar 2017 18:28 Odpowiedzi: 19    Wyświetleń: 1119
  • [STM32F103C8T6 System Workbench] Ostrzezenia przy kompilacji.

    Jak dla mnie powinieneś używać funkcji pgm_read_ptr(), która służy do odczytywania wskaźników. Całe to rzutowanie z jednego typu na drugi a potem jeszcze na trzeci to coś na czym bardzo prosto sie przejechać. Istnieje szansa, że tak czy siak to nie usunie wszystkich warningów, wtedy trzeba to zrobić "porządnie": [syntax=c]memcpy_P(&currentFont.Char...

    Mikrokontrolery ARM   26 Kwi 2018 20:44 Odpowiedzi: 6    Wyświetleń: 744
  • Atmega128 [C] - Jak działa wskaźnik w definicji #define ATAPI_Data?

    kod ktory cie tak zaciekawil polega na tym: 1. jest sobie liczba 0x8000 2. chcesz zeby liczba ta traktowana byla jako adres, jak wiadomo adres = wskaznik, wiec dokonujesz rzutowania (u08*)liczba . od teraz dla kompilatora ten zapis bedzie dokladnie tym samym, co gdybys uzyl najzwyklejszej zmiennej wskaznikowej 3. skoro jest to zwykly wskaznik, to mozesz...

    Mikrokontrolery   28 Paź 2008 21:01 Odpowiedzi: 4    Wyświetleń: 4927
  • Jak przekazać wskaźnik na tablicę w strukturze do funkcji WriteFile?

    Utworzyłem typ strukturalny : typedef struct Interface { int Time; BOOL Thread; unsigned char Buffer_I[100]; unsigned char Buffer_O[100]; unsigned char NumberOfBytes; unsigned char CountError; unsigned char Status; }; następnie zmienną tego typu : Interface InterfaceRS; Teraz w funkcji obsługującej wątek, chcę podać adres tablicy...

    Programowanie Początkujący   05 Lis 2009 18:57 Odpowiedzi: 2    Wyświetleń: 1136
  • Algorytmy odbioru danych przez UART w ATtiny2313 - buforowanie czy bajt po bajcie?

    Idea polega na tym, że wskaźniki krążą po buforze w tym samym kierunku, tak jakby koniec bufora połączony był z początkiem, stąd nazwa "bufor cykliczny". Po dojściu do końca bufora wskaźnik przeskakuje na jego początek. Pierwszy zawsze jest wskaźnik zapisu, za nim podąża wskaźnik odczytu. Jeżeli oba wskazują na to samo miejsce to znaczy że bufor jest...

    Mikrokontrolery   10 Lis 2007 03:54 Odpowiedzi: 7    Wyświetleń: 3187