tablica chara progmem

Znaleziono około 165 wyników dla: tablica chara progmem
  • Jak nazwać tablicę z inkrementacją w C dla PROGMEM?

    Stwórz 3 elementową tablicę wskaźników na tablice; unsigned char PROGMEM *buzia = {buzia0,buzia1,buzia2}; a następnie przekazuj jakoś tak: lcd_send(pgm_read_byte((buzia[a])[][]); Kod poglądowy pewnie nie zadziała od razu :)

    Mikrokontrolery AVR   23 Maj 2011 13:06 Odpowiedzi: 3    Wyświetleń: 837
  • AVR, const char[] PROGMEM - Jak zadefiniować tablice stałych char[] w PROGMEM?

    Marnowanie pamięci....

    Mikrokontrolery AVR   22 Lis 2013 11:52 Odpowiedzi: 6    Wyświetleń: 2934
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (1min)...
  • [AVR-GCC] Jak wyświetlić menu z tablicy PROGMEM na GLCD KS108A?

    Spróbuj: glcd_str_P((char *)pgm_read_word(&menus[idx]));

    Mikrokontrolery   27 Kwi 2014 12:15 Odpowiedzi: 3    Wyświetleń: 1452
  • REKLAMA
  • Czy można zmienić zawartość tablicy PROGMEM w trakcie działania programu?

    Czy da sie zmienic zawartosc tablicy zdefiniowanej w pamieci programu (np char TABLICA [] PROGMEM = " blablabla") podczas dzialania programu?? Wydaje mi sie, ze nie ale chcialbym sie upewnic.

    Początkujący Elektronicy   18 Lis 2009 00:01 Odpowiedzi: 3    Wyświetleń: 762
  • REKLAMA
  • Jak poprawnie używać PROGMEM z tablicą stringów w ATmega8?

    Spróbuj zadeklarować tablicę 7x3, czyli 7 elementów trzy znakowych (do stringów potrzebny jest jeszcze znak null). [syntax=c]const char text_w_rom11[7][3] PROGMEM = {{"Pn"},{"Wt"},{"Sr"},{"Cz"},{"Pt"},{"So...

    Mikrokontrolery AVR   16 Lut 2012 18:12 Odpowiedzi: 6    Wyświetleń: 1687
  • Tablica char, błąd: incompatible types in assignment, kod.

    Tak powinno być dobrze const char *bufor[8] = ... ale napisz jaki mikrokontroler, dla AVR należy odpowiednio użyć atrybutu PROGMEM.

    Mikrokontrolery   12 Sie 2008 15:07 Odpowiedzi: 14    Wyświetleń: 3245
  • REKLAMA
  • [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
  • [C] Optymalizacja zapisu liczb na kartę SD z FatFS - problem z buforem 100 liczb

    Jeśli zrobiłem tablice globalne, to przy wykorzystaniu pamięci RAM 83,6% jeszcze działało, Natomiast gdy zwiększyłem tablice i pamięć wynosiła 86% to już przestało działać ;D Funkcja która wysyła dane na kartę wygląda tak: passing argument 2 of 'f_write' makes pointer from integer without a cast Czym jest to spowodowane?

    Mikrokontrolery AVR   20 Cze 2011 18:54 Odpowiedzi: 18    Wyświetleń: 1661
  • Jak zadeklarować stałą tablicę w pamięci Flash zamiast RAM w C/C++ (np. AVR)?

    Musisz uzyc polecenia PROGMEM np const char tablica1[] PROGMEM="cos tam";

    Mikrokontrolery   20 Maj 2006 17:02 Odpowiedzi: 5    Wyświetleń: 1267
  • [AVR][C][RTC-PCF8583] dni tygodnia, deklaracja tablicy znaków

    Przesadzone! Nie zgadzam się. Po to wymyślono struktury, aby je stosować. Jeśli ktoś chce - może wszystko zapamiętywać jako tablicę char-ów (bajtów) - wszak tak jest zorganizowana pamieć 8-bitowców, prawda? Tylko po co sobie utrudniać życie? Zadeklaruj stałą tablicę w PROGMEM, a ze struktury odnoś się przez wskaźnik. Kolega słusznie zauważył. Tablicę...

    Mikrokontrolery   03 Kwi 2013 22:42 Odpowiedzi: 7    Wyświetleń: 2793
  • [ATMEGA32][C]Jak zrobić proste menu na LCD ? koncepcja

    Szybki wstęp to takiego menu: Oznaczamy na potrzeby programu każdą pozycję w menu: enum{ 0, menu1, menu2, menu3, menu11, menu12, ...}; tworzymy tablicę przejść menu unsigned char menu_stage [32][4] PROGMEM = { // next prev up down {0,0,0,0}; {}; {}; {}; {}; } nieistotne...

    Mikrokontrolery AVR   26 Paź 2010 22:43 Odpowiedzi: 25    Wyświetleń: 10732
  • REKLAMA
  • [ATmega8] [ATmega8][C] Nieprawidłowe wyświetlanie tekstu na LCD dip128j-6n5lw

    a co masz w deklaracji tablicy czcionki? taki zapis: static const char font5x8[] PROGMEM = { ... } ???

    Mikrokontrolery AVR   15 Mar 2014 19:07 Odpowiedzi: 11    Wyświetleń: 2707
  • C AVR - Jak stworzyć wielojęzykowe menu w pamięci flash?

    Jednakże potrzebowałbym stworzyć takie menu w którym użytkownik wybiera sobie język i myślałem żeby rozwiązać to w taki sposób, aby każdy z tekstów był tablicą dwuwymiarową... A dlaczego to miałoby nie działać? Po prostu jako tekst związany z daną pozycją menu dajesz wskaźnik do tablicy, a w programie masz zmienną globalną określającą nr języka (indeksu...

    Mikrokontrolery AVR   24 Lut 2016 23:35 Odpowiedzi: 8    Wyświetleń: 1161
  • Jak poprawnie użyć pamięci FLASH do obsługi tekstów?

    Proszę o pomoc. Używam AVR Studio7 i pierwszy raz próbuję skorzystać z pamięci programu do zapisania i odczytów tekstów. Moje dotychczasowe próby kończyły się niepowodzeniem. Poniższy kod kompiluje się bez błędów ale z odczytem było już tylko źle. [syntax=c] #include <avr/io.h> #include <avr/pgmspace.h> int main (void) { static const char...

    Mikrokontrolery AVR   04 Lut 2023 19:52 Odpowiedzi: 14    Wyświetleń: 576
  • [C] [C][atmega8] Błędy wyświetlania przy tablicy char powyżej 48 znaków na matrycy 8x8

    char FontTable[97][8] PROGMEM = { { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, // (blank) //0 (...) }; i RAM będzie wolny :wink:. I pamiętaj że do czytania takiej tablicy musisz wykorzystać wbudowane w winAVR pgm_read_byte(address_short);

    Mikrokontrolery AVR   01 Gru 2009 10:43 Odpowiedzi: 9    Wyświetleń: 2079
  • Atmega32: Brak reakcji na przyciski w programie C - analiza kodu

    Dodam tylko że ta tablica nie pomieści tylu znaków: char PROGMEM tab2[] = {"Zmienna:"}; A dlaczego ta tablica nie pomieści tylu znaków? Z czego to wynika że nie pomieści?

    Mikrokontrolery AVR   28 Lut 2011 23:14 Odpowiedzi: 10    Wyświetleń: 1458
  • Jak umieścić napisy w pamięci flash na ATmega8/128 w C/Assemblerze?

    (...) .db "Jakis napis",0x0a,0x0d, 13,12, 0 lpm acc, z (lub z+) A co to za potworki? Znak końca linii (i do tego windowsowy :/) też nie jest potrzebny, wystarczy samo zero, chyba że urządzenie komunikuje się z windowsowym terminalem tekstowym przez rs-232. I skąd się wziął akumulator w AVR? W C robisz tak (avr-gcc): #include <avr/pgmspace.h>...

    Mikrokontrolery   08 Wrz 2006 20:50 Odpowiedzi: 5    Wyświetleń: 4432
  • Jak ustawić rozmiar stosu w kompilatorze avr-gcc (WinAvr).

    Lepiej wykorzystaj do tego celu pamiec programu , ewentualnie eeprom. Sposob deklaracji tablic dla winavr : dla eeprom : #include <avr/eeprom.h> #define EEPROM __attribute__ ((section (".eeprom"))) unsigned char temp [20] EEPROM ={1,2,3,4,}; dla pamieci programu : #include <avr/pgmspace.h> static unsigned char temp_1 [2] PROGMEM = {1,2,3,4};

    Mikrokontrolery   05 Maj 2005 10:38 Odpowiedzi: 13    Wyświetleń: 3585
  • [avr-gcc][PROGMEM] - Wskaźnik do tablicy wskaźników na teksty

    Atrybut progmem wymusza włożenie do sekcji tylko do odczytu, a tylko do odczytu może być zmienna const. Inną mógłbyś próbować zmienić, a tak się nie da. 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...

    Mikrokontrolery AVR   26 Wrz 2013 20:17 Odpowiedzi: 8    Wyświetleń: 3969
  • Optymalizacja pamięci RAM przy wyświetlaniu bitmap na ST7565 i ATmega328P

    Jeśli to GCC (a wszystko wskazuje, że tak) to musisz na początku dodać: [syntax=c]#include <avr/pgmspace.h>[/syntax] Tablice deklarujesz tak: [syntax=c]unsigned char logo_bmp[] PROGMEM ={....[/syntax] Przekazanie tablicy do funkcji najlepiej robić przez wskaźnik do tablicy (w c sama nazwa tablicy to wskaźnik do jej pierwszego elementu). Czyli:...

    Mikrokontrolery   15 Paź 2013 21:02 Odpowiedzi: 8    Wyświetleń: 1779
  • [C] [C][atmega88] Optymalizacja pamięci dla dużej tablicy cyfry w C

    Aby zoptymalizować program możesz rozważyć poniższe podpunkty: 1)Mozesz dać tablicę do flash-a.wystarczy dołączyć plik nagłówkowy <avr\pgmspace.h> sposób definicji zmiennej ładowanej do flash: np. static unsigned int LCD_SegTable[] PROGMEM = { 0xEAA8, // '*' 0x2A80, // '+' 0x4000, // ',' 0x0A00, // '-' 0x0A51, // '.' Degree sign 0x4008,...

    Mikrokontrolery AVR   21 Paź 2008 23:40 Odpowiedzi: 7    Wyświetleń: 1809
  • winavr itp. - Poszukiwany program do konwersji plików binarnych na tablicę char

    Witam serdecznie Trochę czasu już spędziłem na poszukiwaniach, ale niestety bez rezultatów. Poszukuję narzędzia (programu) który konwertował by pliki dowolnego formatu, na ich odpowiednik w postaci tablicy hex w języku c do umieszczenia w pamięci programu. Chodzi mi o zapis w formacie: [syntax=c] const PROGMEM unsigned char tablica[]={ 0x1a, 0xff, ......

    Mikrokontrolery   01 Kwi 2013 09:43 Odpowiedzi: 9    Wyświetleń: 1350
  • [at90s2313] AVR Studio 4 - Błąd stosu przy tablicy char TABLICA[][6]

    Ten procesor ma tylko 128 bajtow RAM, a twoja tablica ma 6*24=144 bajty. Zainteresuj sie atrybutem PROGMEM i umieszczaniem stalych w pamieci FLASH.

    Mikrokontrolery AVR   27 Gru 2009 08:44 Odpowiedzi: 7    Wyświetleń: 1271
  • [AVR-gcc] Jak zmniejszyć sekcję .data przy użyciu stringów?

    A moze tak send(PSTR("Falomierz V2.0")); a gdzies tam deklaracja send void send(u08 *pBuff) { while(PRG_RDB(pBuff)) putc(PRG_RDB(pBuff++)); } ewentualnie typ prog_char prog_char a[]="Ala ma kota"; i chyba PROGMEM powoduje umnieszczenie tablicy sekcji .text...

    Mikrokontrolery   13 Lis 2005 23:16 Odpowiedzi: 6    Wyświetleń: 1293
  • Kopiowanie tablic w ANSI C na mikrokontrolerze m32 - jak to zrobić?

    [syntax=c]void CPY_FLASH_RAM (char *TAB)[/syntax] a do [syntax=c]char BUF_LCD[33] = "a"; char TX1[32] PROGMEM = "abcdefghijklmnop1234567890123456"; [/syntax] się nie czepia?

    Mikrokontrolery AVR   01 Kwi 2011 09:58 Odpowiedzi: 9    Wyświetleń: 1963
  • AVR-GCC: Różne wyniki mnożenia w argumentach funkcji w różnych plikach

    Porobiłem wszystko tak jak trzeba ale mam pytanie. W programie mam przerwanie zewnętrzne. Gdzie takie przerwanie umieścić? Teraz mam tak, że mam plik przerwania.h i tam znajduje się to przerwanie (SIGNAL(SIG_INTERRUPT7){}. Czy dobrze? Nie mam do tego pliku przerwania.c, chyba nie jest potrzebny? Mam też tablicę w pamięci procka (const PROGMEM unsigned...

    Mikrokontrolery   01 Lut 2009 19:47 Odpowiedzi: 55    Wyświetleń: 7139
  • [c] Atmega32 - problem z wyświetlaniem tekstu z PROGMEM na LCD

    Dzięki za przykład działa dobrze, tylko nadal mnie zastanawia czemu to nie działa, tym bardziej że ten kod powyżej jest o wiele łatwiejszy. Chyba wartość kodu ocenia się w pierwszej kolejności na podstawie jego skuteczności, a nie tego, czy jest łatwiejszy. No bo co z tego, że jest łatwiejszy, jeśli nie działa? Przykład, który podałem nie jest mojego...

    Mikrokontrolery AVR   24 Paź 2011 22:51 Odpowiedzi: 4    Wyświetleń: 1669
  • [avr mega8] Jak poprawnie adresować duże tablice w strukturze Font?

    Podpowiedź: Definicja tablicy we fleszu: char WCholereDuzaTablica[1000] PROGMEM = {/*tutaj wartości*/}; I odczyt wartości: Zmienna = pgmReadByte(&WCholereDuzaTablica[... Mega8 ma 1 kB SRAMu, nie wciśniesz tam tej tablicy, bo jeszcze stos i inne zmienne gdzieś muszą się zmieścić.

    Mikrokontrolery   15 Maj 2008 07:35 Odpowiedzi: 4    Wyświetleń: 1505
  • [AtMega 32] [C] Nieudane ładowanie bitmapy na GLCD ST7565 - analiza kodu

    Może tak ? : LCD_DisplayPicture(*Obraz, 0, 0, 25, 7) Tak na pewno nie jest dobrze. *Obraz to liczba (z początku tablicy, czyli 0), a potrzebujemy wskaźnika. Nie wiem, czy dobrze mi się wydaje, ale dogm_core_data(pgm_read_byte(dpt... Nie inkrementuje zmiennej dptr sam z siebie. Spróbuj to zmienić na: dogm_core_data(pgm_read_byte(dpt...

    Mikrokontrolery AVR   30 Gru 2010 16:28 Odpowiedzi: 16    Wyświetleń: 4064
  • [AVRStudio] [AVRStudio][C] Deklaracja zmiennych globalnych w ATMega8 - błąd kompilacji

    Dzięki. Zrobiłem osobny plik wyswietlacz.h. Podlinkowałem w main.c i wyswietlacz.c Deklaracja wysw_bufor ../wyswietlacz.h:16: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PROGMEM' oto tablica: // tablica znaków wyświetlacza unsigned char tab_znakow[20] PROGMEM = { 0b11011101, 0b10000001, // 0 , 1 0b10111100,...

    Mikrokontrolery   13 Lis 2010 00:30 Odpowiedzi: 16    Wyświetleń: 1845
  • [WinAVR] Jak uzyskać dostęp do struktury w pamięci programu w WinAVR?

    (at)tmf: ...ale autor tematu napisał, że print_str(strr też mu nie działa prawidłowo. Myślę, że prawdopodobnie kompilator ma problem z określeniem rozmiaru struktury i - co za tym idzie - obliczeniem wskaźnika do następnego elementu tablicy struktur. Proponuję dodać w strukturze rozmiar ciągu znaków: Musisz to tylko przerobić na swoje potrzeby, czyli...

    Mikrokontrolery AVR   15 Paź 2012 15:57 Odpowiedzi: 15    Wyświetleń: 2778
  • Programowanie C Wskaźnik na Tablicę wskaźników w pamięci programu

    Witam Chcę aby tablice Z1...Z5 były zapisane w pamięci programu, różnią się rozmiarem pomiędzy sobą: const char Z1[] __attribute__((__progmem__)) = {...}; ... const char Z5[] __attribute__((__progmem__)) = {...}; Tutaj mam tablice wskaźników również zapisaną w pamięci programu const char* TABLICA_WSKAZNIKOW[] __attribute__((__progmem__)) = { Z1, Z2,...

    Mikrokontrolery   11 Lis 2011 13:14 Odpowiedzi: 15    Wyświetleń: 2195
  • Język C dla Atmeli: ograniczenie ilości wpisów w tablicy const char

    Oj! Rzeczywiście, przecież tablica cmds też była PROGMEM , a nie była właściwie odczytywana (a palnąłem, że „powinno działać” :oops: ). pytanie więc brzmi czy cmd? znajdują się w RAMie czy też w pamięci programu. Tylko w pamięci programu. Ciekawe dlaczego to składowanie tablicy w pamięci programu nie działa właściwie. Może chodzi o to, że...

    Mikrokontrolery AVR   21 Paź 2014 17:24 Odpowiedzi: 12    Wyświetleń: 1734
  • AVR [C] - Jak zainicjować tablicę 4D we FLASHU na ATmega16?

    hmm, a nie powinno być: unsigned char klocki [x][y][z][a&... PROGMEM={...};

    Mikrokontrolery   02 Cze 2013 16:43 Odpowiedzi: 4    Wyświetleń: 1983
  • Jak odczytać dane z tablicy 2D w pamięci flash AVR-GCC?

    Jak w temacie. Mam zdefiniowaną tablicę: extern unsigned char Fonts Nie bardzo rozumiem , co oznacza powyższy zapis.Tablica jest albo "na zewnątrz" , albo "wewnątrz" , a nie i tak i siak.Ja robię to tak: plik.s .globl Fonts .section .progmem.data Fonts: .byte 1,2,3,4,5,6 .byte 11,22,33,44,55,66 plik.c ... //deklaruję extern char Fonts [2]...

    Mikrokontrolery   28 Sie 2005 21:49 Odpowiedzi: 4    Wyświetleń: 3755
  • [AVR-GCC] Jak przenieść napisy z RAM do pamięci flash?

    Przykład zapisu tablicy w pamięci flash i trzymania jej tylko tam: unsigned char temp[3] PROGMEM = {0,1,2}; aby odczytać dane z takiej zmiennej wykorzystać należy polecenie postaci: data = pgm_read_byte(&temp[j])

    Mikrokontrolery AVR   05 Wrz 2010 09:44 Odpowiedzi: 13    Wyświetleń: 3892
  • Jak odczytać dane z pamięci Flash powyżej 64kB w C/C++?

    OK. To moze tak: #include <avr/io.h> #include <avr/pgmspace.h> #include "tab.h" char wysylaj = 0xAA; uint8_t i = 0; uint32_t j = 0; uint8_t licznik = 1; void SPI_MasterInit(void) //inicjalizacja SPI { /* Set MOSI and SCK output, all others input */ DDRB = (1<<DDB2)|(1<<DD... /* Enable SPI,...

    Mikrokontrolery AVR   19 Mar 2010 12:08 Odpowiedzi: 21    Wyświetleń: 2773
  • Jak użyć: 'strcmp_P' w instrukcji switch? Potrzebuję przykładowy kod.

    Witam Mój projekt polega na komunikacji przez moduły NRF24L01 podłączone do dwóch Atmeg (16 i 32). Nadajnik wysyła z tablicy np. [syntax=c]const char wej1[] PROGMEM = "WEJ1";[/syntax] odbiornik odbiera taką funkcją, która jest częścią biblioteki [syntax=c] void parse_nrf_data( char * buf, uint8_t len ) { if (!strcmp_P( buf , wej1)) { WEJ1 |= WEJ1; }...

    Mikrokontrolery AVR   27 Sty 2021 21:15 Odpowiedzi: 2    Wyświetleń: 387
  • [C] Wypełnianie tablicy uint8_t liczbami 0-9 po deklaracji – jak zrobić to szybko?

    O mem copy nie słyszałem, więc może nie będę się zagłębiał, Stosując mają pętlę wszystko działa, ale zajmuje strasznie dużo pamięci. Pomyślałem sobie zrobie to tak: do tablicy przetrzymującej obrazek dodam PROGMEM, Czyli mam [syntax=c]unsigned char PROGMEM obrazek[504]={0x00,0x00, ...CIACH..,0x00}; [/syntax] Oraz moja pętelka:[syntax=c] for (uint16_t...

    Mikrokontrolery   10 Cze 2011 22:38 Odpowiedzi: 6    Wyświetleń: 1545
  • [AVR] [AVR][C] Błąd przy pgm_read_word w funkcji zmiany języka programu

    mam problem, a mianowicie nie wiem jak usunąć błąd, aby program dobrze działał. Program ma wybierać język w którym będziemy się dalej posługiwać. Dziękuję z góry za pomoc. W kodzie ( na samym dole w komentarzach ) jest napisane jaki błąd wyskakuje przy const char *phrase = pgm_read_word(¤t_language prog_char NEWLINE[] = {'\n','\r',0};...

    Mikrokontrolery AVR   16 Lis 2009 15:56 Odpowiedzi: 11    Wyświetleń: 1995
  • Sterowanie triakami w ściemniaczu 230V na Atmedze328P - problem z PD5 i PD6

    Kondensator co wspominasz o nim to jes podłączony rozumiem do masy jednym biegunem a drugim do portu ? NIE NIE NIE ABSOLUTNI NIE! Kondensator wpięty jest szeregowo pomiędzy portem a diodą nadawczą optotriaka. Dlatego na porcie musi być wystawiany sygnał prostokątny a nie stan wysoki lub niski. Ale dzięki temu zyskujesz 100% pewności na wypadek awarii...

    Mikrokontrolery AVR   17 Maj 2012 12:40 Odpowiedzi: 6    Wyświetleń: 3148
  • Jak dodać większą czcionkę 16x16 do biblioteki TVout w Arduino?

    (at)ElektrodaBot jak dodać większą czcionkę np. font16x16 do biblioteki arduino TVout? Bezpośrednia odpowiedź na pytanie - Aby dodać większą czcionkę (np. 16×16) do biblioteki Arduino TVout, należy przygotować własną tablicę danych (bitmapę) dla poszczególnych znaków i zaimportować ją do biblioteki jako czcionkę w formacie PROGMEM. - Następnie w plikach...

    Arduino   14 Mar 2025 19:26 Odpowiedzi: 6    Wyświetleń: 138
  • [AVR][C] jak działać ze stringami lub wskaźnikami

    Porównaj, komentarz chyba zbędny. #include <avr/pgmspace.h> const char st_w_RAM[]="abcd"; const char st_w_ROM[] PROGMEM ="tekst w pamieci flash"; Nie tylko tablice znaków: const float PI PROGMEM=3.14159; const float PARAMETRY[3] PROGMEM={1.212, 2.4, 3.56};

    Mikrokontrolery AVR   07 Cze 2008 16:44 Odpowiedzi: 35    Wyświetleń: 12601
  • OLED 128x64 SSD1306 - błąd wyświetlania małych bitmap w Arduino

    Nie odpowiedziałeś na zadane pytanie. Czy przy dużych i przy małych obrazkach używasz dokładnie tego samego kodu? Podmieniasz dane w tablicy, czy całe tablice, tak że jest szansa, że w którejś z nich zgubiłeś PROGMEM? Czy wspomniane "duże obrazki" to również Twój wyrób, czyli wygenerowana w ten sam sposób tablica? Czy jakaś grafika z przykładów? Dodano...

    Arduino   04 Lis 2018 10:56 Odpowiedzi: 21    Wyświetleń: 2634
  • [AVR] [AVR][C] - Jak efektywnie tworzyć rozbudowane menu wielopoziomowe?

    Niestety nie mam żadnego filmiku. Sprawuje się REWELACYJNIE. Za to podrzucę Ci gotowca bo ten na stronie wymaga sporo poprawek i domysłów co gdzie jest. Jest to wersja pierwotna która przechowuje w tablicy RAM. Funkcje których tutaj nie ma robią: LCDINIT - inicjalizacja wyświetlacza LCD_POS - ustawia pozycję: wiersz, kolumna LCD_CLS - czyści ekran LCD_PSTR...

    Mikrokontrolery AVR   08 Paź 2012 11:50 Odpowiedzi: 16    Wyświetleń: 20346
  • [C][Atmega8]presclaler,licznik T1, tablica stałych w PROGMEM

    Obliczenia są +/- poprawne, pod warunkiem, że procesor rzeczywiście jest taktowany 12,8MHz. Domyślnie atmega8 działa na wewnętrznym rezonatorze 8MHz który jest dodatkowo dzielony przez 8. Żeby to zmienić musisz przeprogramować fuse bity. Najlepiej to zacznik od uzyskania częstotliwości 1Hz na jakimś pinie - miganie LED przy czasach rzędu 3,1ms dość...

    Mikrokontrolery AVR   27 Kwi 2009 18:41 Odpowiedzi: 3    Wyświetleń: 2903
  • C - Przekazywanie wskaźnika na tablice PROGMEM do funkcji

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

    Mikrokontrolery AVR   07 Lip 2015 18:51 Odpowiedzi: 15    Wyświetleń: 2163
  • AVR - błąd ../main.c:20:2: warning: '__progmem__' attribute ignored [-Wattribute

    Kiedy nawet jak próbuję utworzyć tablce w ten sposób to dzieje się to samo i[syntax=c]#include <avr/io.h> #include <util/delay.h> #include <avr/pgmspace.h> int main(void) { const int img[3] PROGMEM = { 1, 2 ,3}; while(1) { _delay_ms(10); } } [/syntax] Mogę utworzyć tylko tablicę const char tab[] = {"blabla"} i to działa.

    Mikrokontrolery   12 Sie 2012 15:04 Odpowiedzi: 3    Wyświetleń: 2040
  • Wyświetlanie napisów. Dlaczego wypisuje krzaczki?

    ...I już się ucieszyłem, lecz stworzył się kolejny problem!! Ponieważ napisów jest ok 40-50, to po powyższej zmianie zajęty obszar pamięci data(RAM) nie wynosi już 31,3%, lecz 93,4%. I CO Z TYM DALEJ ROBIĆ:cry::?: Chyba się nie zrozumieliśmy :( Dane możesz umieścić w pamięci programu ... prog_char PM_UST_ZEG[] = "Ustaw zegar: ";...

    Mikrokontrolery   29 Lis 2006 22:07 Odpowiedzi: 16    Wyświetleń: 1908
  • Uproszczenie kodu C dla sterowania LED na atmega8 bez wielu delay'ów

    Pisane "z palca" i nie sprawdzane: [syntax=c]unsigned int ledy[100][2]={{1,2},{3,4}... i tak dalej}; //pierwsza liczba w {} to piny portu D, druga liczba to czas opóźnienia, kolejna klamra to kolejna para liczb //100 to ilość par for(unsigned char i = 0; i<100; i++){ PORTD = ledy[i][0]; _delay_ms(ledy[i][1]); }[/syntax] Możesz także umieścić tablicę...

    Mikrokontrolery AVR   04 Wrz 2011 11:37 Odpowiedzi: 22    Wyświetleń: 4111
  • Atmega328: Jak umieścić tablicę Int i String w pamięci Flash za pomocą PROGMEM?

    Użyj rozszerzenia gcc dla AVR: __flash [syntax=c] struct record { uint16_t pos; const __flash char *txt; } ; const struct record tab[] = { {940, (const __flash char[]){"txt940"}}, {789, (const __flash char[]){"txt789"}}, {115, (const __flash char[]){"txt115"}} }; [/syntax] PS: oczywiscie sama tablica również może rezydować w pamięci flash: [syntax=c]...

    Mikrokontrolery AVR   06 Lut 2018 19:55 Odpowiedzi: 8    Wyświetleń: 846
  • win AVR - błędne adresowanie tablic po dodaniu nowych danych

    aby kompilator/linker był na tyle niedopracowany, aby stałe z pamięci typu FLASH, przepisywać do pamięci typu RAM w tej samej przestrzeni adresowej. Wszystko zależy od skryptu linkera i jak ktoś bardzo potrzebuje, to nie ma problemu w tym, żeby const były kopiowane do RAMu i tam używane. BTW, z tym progmem prawidłowy zapis wygląda tak: __attribute__...

    Mikrokontrolery   30 Sie 2007 12:04 Odpowiedzi: 10    Wyświetleń: 1531
  • Jak wyświetlić pojedynczy znak z tablicy na LCD HD44780 w AVR[C]?

    Witam chciałem wyświetlić pojedynczy znak z tablicy i nie wiem jak to zrobić może pokaże na przykładzie : [syntax=c] char PROGMEM tab1[] = {"FLASH"}; char tab2[]={"AVR ATMEL"}; lcd_str_P(tab1[2]); //znak A lcd_str(tab2[2]); //znak R [/syntax] Wyświetlacz LCD to hd44780 biblioteka do obsługi lcd pochodzi z książki od mirekk36 niestety po skompilowaniu...

    Mikrokontrolery Początkujący   12 Lut 2012 13:56 Odpowiedzi: 4    Wyświetleń: 2410
  • [Atmega][GCC] Dziwne zachowanie przy podawaniu napięcia.

    Przy załączeniu napięcia atmedze na wyświetlaczu zamiast oczekiwanego napisu pojawiają się randomowe śmieci. Przy zwyczajnym resecie wszystko jest ok. Z resztą najlepie to widać na filmiku: //MAIN--MAIN--MAIN--MAIN--MAIN--MAIN--MA... portSHORT main(void) { //Inicjalizacja...

    Mikrokontrolery AVR   18 Lip 2009 12:34 Odpowiedzi: 6    Wyświetleń: 1326
  • Avr-Gcc: Jak poprawnie wywołać funkcję poprzez zmienną w tablicy funkcji?

    Mam tak zadeklarowane funkcje. [syntax=c] void drawFrame1() { print("Ramka 1"); } void drawFrame2() { print("Ramka 2"); } [/syntax] Wiem że w main mogę wywołać tak funkcję [syntax=c] int main(void) { char a; a=1; if(a==0) drawFrame1(); if(a==1) drawFrame2(); .... .... while(1); } [/syntax] Nie jest to ładne, wiem że można zrobić tablicę funkcji i wywołać...

    Mikrokontrolery   07 Lut 2016 12:00 Odpowiedzi: 3    Wyświetleń: 882
  • AVR-GCC tablica wskaźników na funkcje i ich wywoływanie

    Witam, mam pytanie, ponieważ namieszałem już tak bardzo, że sam nie wiem o co chodzi... (1) Załóżmy, że mam kilka deklaracji funkcji: void f_1(void); ... void f_5(void); (2) Następnie mam deklarację łańcuchów, umieszczonych w pamięci Flash: char f_Command1[] PROGMEM = "01"; ... char f_Command5[] PROGMEM = "05";...

    Mikrokontrolery   15 Wrz 2007 15:18 Odpowiedzi: 5    Wyświetleń: 4166
  • Jak użyć wskaźnika do tablicy PROGMEM w AVR-GCC?

    Witam, Mam funkcję, która odczytuje tablicę zadeklarowaną jako: const PROGMEM unsigned char ikonka[32] = {0xFF, 0x03, 0x05, 0x09, 0xF1, 0x11, 0x11, 0x91, 0x91, 0x11, 0x11, 0xF1, 0x09, 0x05, 0x03, 0xFF, 0xFF, 0xC0, 0xA0, 0x90, 0x8F, 0x88, 0x88, 0x89, 0x89, 0x88, 0x88, 0x8F, 0x90, 0xA0, 0xC0, 0xFF}; i zapisuje ją do wyświetlacza. void...

    Mikrokontrolery AVR   13 Sty 2013 17:23 Odpowiedzi: 11    Wyświetleń: 3711
  • Odczyt i wyświetlanie danych z FLASH w AVR: problem z PROGMEM

    Witam próbuję zapisać i odczytywać tablice z napisami w pamięci FLASH, niestety nie udaje mi się to, wyświetlacz nie wyświetla nic próbowałem po przez PROGMEM jak i przez __flash co kompletnie nie zadziałało nie chciało utworzyć zmiennej. poniżej kod programu. [syntax=c]const char T1[] PROGMEM = {"DS1307"}; const char T2[] PROGMEM = {"TESTER"}; const...

    Mikrokontrolery AVR   19 Sie 2020 11:48 Odpowiedzi: 13    Wyświetleń: 960
  • [C] Kompresja animacji BMP na Nokia 3310 w C - jak zoptymalizować?

    Twoja funkcja wyświetlająca wygląda pewnie jakoś tak: [syntax=c]void drawPicture (const unsigned char * picture[][84]) { unsigned char temp, x=0, y=0; for (unsigned char i = 0; i<6; i++) { for (unsigned char j = 0; j<84; j++) { temp = pgm_read_byte(&(picture[i][j])); for (unsigned char k=0; k<8; k++) { if (temp & (1<<(7-k)) )...

    Mikrokontrolery AVR   24 Maj 2011 19:10 Odpowiedzi: 16    Wyświetleń: 5564
  • [ATTINY2313] [ATTINY2313][Bascom] Czy można generować pełny dźwięk, nie tylko MIDI?

    Spoko, tylko to jest na ATmega128. Co do kart pamięci to musiałbyś napisać obsługę sam. Generalnie poczytaj notę katalogową. //inicjalizacja Timera 0 jako generatora PWM void Timer0_PWM_mode() { DDRB |= (1<<4); TCCR0 |= (1<<WGM00) | (1<<WGM01) | (1<<COM01) | (1<<CS00);...

    Mikrokontrolery AVR   25 Sie 2008 14:11 Odpowiedzi: 11    Wyświetleń: 4629
  • Zwiększenie liczby znaków specjalnych w LiquidCrystal_I2C na wyświetlaczu 20x4: Arduino MEGA vs DUE

    Dziękuje za konkretną i zrozumiałą odpowiedź. Tylko jeśli zrobię to tak : byte const LGc[8] PROGMEM = { B00111, B01111, B11111, B11111, B11111, B11111, B11111, B11111 }; to w jaki sposób to wyświetlić i przenieść ? // Read a byte of character data OneByte = pgm_read_byte(&Seg7_segtbl[i... mało mi to mówi, jakaś...

    Arduino   25 Sty 2021 17:35 Odpowiedzi: 2    Wyświetleń: 573
  • [Bascom][C]Atmega oraz radiowe moduły RFM01, RFM02, RFM12

    [syntax=c]char test[5];[/syntax] Bufor do którego odbiornik wpisuje odebranego stringa (przesyłana jest temeperatura bez przecinka) np 234 to tablica znaków mojego wyświetlacza [syntax=c]prog_char cyferki[15] PROGMEM = { 0x3F,//0 0x09,//1 0x6E,//2 0x6D,//3 0x59,//4 0x75,//5 0x77,//6 0x29,//7 0x7F,//8 0x7D,//9 0x00 //nic };[/syntax] Jak bezpośrednio...

    Mikrokontrolery   20 Cze 2021 23:15 Odpowiedzi: 707    Wyświetleń: 240191
  • [C] [C]Lampa RGB na Attiny13 z programowym PWM - ograniczenie liczby kolorów w tabeli

    Z tym że jak wrzucisz do eepromu to ustaw bity BOD. Dlaczego? Dodano po 4 1. Zmień typ dla danych COLORS i brightness z int na unsigned char. Pętla wtedy będzie dla i < 255; i 10 kolorów wystarczy. Mógłbym prosić o wprowadzenie zmiany w kodzie ? Tablicę COLORS umieść w flash przez PROGMEM. Jak wywali błąd to dołącz odpowiedni plik (poszukaj gdzie...

    Mikrokontrolery AVR   16 Lip 2017 21:52 Odpowiedzi: 38    Wyświetleń: 2748
  • GCC + ATMEGA: Jak umieścić tablice w pamięci programu(FLASH)

    Czy można umieścić tablicę bajtowych danych w pamięci programu(FLASH) a nie RAMie tak jak to robi kompilator ? ( do elementów tej tablicy odwołują się funkcje ale nic do niej nie zapisują ) W Keilu wystarczylo uzyc slowa CODE przy deklaracji tablicy czy zmiennej, a w GCC mozna?? Pozdrawiam TEMAT NIEAKTUALNY !! WSZYSTKO JEST W MANUALU. Rozdzial: "7.3.15...

    Mikrokontrolery   28 Lut 2005 21:26 Odpowiedzi: 6    Wyświetleń: 3388
  • Sterowanie matrycą przycisków za pomocą Arduino - jak to zrobić?

    moja zabawkowa Yamaha na której eksperymentuję ma nuty od 41 do 72. Czyli tak tylko dla przykładu, nuta 41 to połączenie w układzie o numerze 12, nuta 42 to 18. Jak to najprościej zrobić? Tu się chyba nie obędzie bez przemapowania nuta->klucz. Najlepiej może w postaci stałej tablicy. Na Arduino przy dużych tablicach powstaje problem i trzeba korzystać...

    Arduino   07 Wrz 2024 07:20 Odpowiedzi: 25    Wyświetleń: 660
  • [AVR][Atmel Studio] - Wskaźnik na tablicę wskaźników

    Witam, Panowie dziękuję za cenne uwagi. Mam jednak do nich pytanie: [syntax=c]// Definiuje nowy typ - tym razem dla mniejszej wygody typedef char Int8; // Napisy w pamięci programu static const Int8 PROGMEM Text_A[] = {" blebleble1 "}; static const Int8 PROGMEM Text_B[] = {" blebleble2 "}; static const Int8 PROGMEM Text_C[] = {" blebleble3 "}; static...

    Mikrokontrolery AVR   16 Cze 2016 11:21 Odpowiedzi: 7    Wyświetleń: 1386
  • Pixel Factory - generator fontów graficznych LCD (do C)

    No to jest kolejna wersja : 1.0.0.5 teraz w przypadku konieczności generowania fontu binarnego tworzony jest nawet dodatkowy plik źródłowy w którym możemy sobie przetrzymywać nazwy plików na karcie pamięci SD. Dlaczego ? powód jest banalny no i znowu kolejne ułatwienie sobie pracy, bo przecież PetitFat nie może korzystać z LFN (długich nazw plików),...

    DIY Konstrukcje   07 Lis 2013 07:31 Odpowiedzi: 43    Wyświetleń: 22124
  • Jak przekazać tablicę struktury z pamięci programu do funkcji w C?

    Witam Stworzyłęm sobie strukturę, a następnie stworzyłem tablicę typu tej struktury. Wykorzystuję to do wyświetlania menu. Tablicę umieściłem w pamięci programu. Problem objawia się w tym, że nie wiem jak przekazać tą tablicę do funkcji. Czy można przypisać jej jakoś wskaźnik i później przekazać wskaźnik do funkcji czy zrobić to za pomocą indeksó tablicy....

    Mikrokontrolery   02 Sie 2005 12:32 Odpowiedzi: 2    Wyświetleń: 1823
  • ATTiny2313, C – jak przechowywać dużą tablicę w pamięci flash zamiast SRAM?

    Robię sobie tablicę unsigned char tablica To zależy od kompilatora. Dla avr-gcc trzeba dodać do deklaracji PROGMEM i do odczytu używać makr pgm_read_byte/word itp. W przypadku IARa wystarczy _flash.

    Mikrokontrolery   27 Maj 2006 09:44 Odpowiedzi: 2    Wyświetleń: 1148
  • Jak napisać funkcję BIN2BCD w C do konwersji wartości char (0-99) na BCD?

    Dlatego poprzestałem na dzieleniu. Zmienne "CyfraX" (X=1,2) są pointerami do tablicy (progmem) i nowe wartości podawane są już na port procka, do którego (przez oporniki) podłączone są katody wyświetlaczy. Anodami sterują inne piny. Nic wielkiego.

    Mikrokontrolery AVR   22 Lis 2014 17:13 Odpowiedzi: 12    Wyświetleń: 1185
  • [AVR] [AVR][C][Atmega64] - Implementacja menu z PROGMEM i funkcją callback

    Witam zaimplementowałem (z drobnymi modyfikacjami) u siebie menu z tematu [url=http://www.elektroda.pl/rtvforum/to... w skrócie wyszstkie deklaracje wyglądają tak [syntax=c] typedef struct { unsigned char next_state[4]; //przechodzenie pomiędzy pozycjami menu void (*callback)(unsigned char event);//funkcja callback const unsigned char*...

    Mikrokontrolery AVR   27 Wrz 2013 13:50 Odpowiedzi: 4    Wyświetleń: 2016
  • Zmiana fimware testera elementów LCR T4 M328 z gadżetów elektroda.pl

    https://obrazki.elektroda.pl/6497415700_... W temacie o testerze elementów https://obrazki.elektroda.pl/1770461400_... Wybieramy project->properties wybieramy use external makefile i wybieramy plik Makefile z katalogu "mega328_st7565", w katalogu projektu. https://obrazki.elektroda.pl/1105525900_...

    Artykuły   03 Mar 2022 17:20 Odpowiedzi: 72    Wyświetleń: 64206
  • ATmega8 - Nieprawidłowe działania programu - Czary :(

    Witam, Męczę się z kawałkiem kodu, który wbrew (mojej) logice, działa nie tak jak powinien. Chcę wyświetlić element tablicy stringów z pamięci PGMEM, a w niektórych wypadkach otrzymuję śmieci. 05, Piątek 05, ŔGŔFŔEŔDŔCŔBŔAŔ(at)Ŕ?Ŕ>Ŕ=Ŕ<Ŕ;Ŕ:... 05, ŔGŔFŔEŔDŔCŔBŔAŔ(at)Ŕ?Ŕ>Ŕ=Ŕ<Ŕ;Ŕ:... Zmienne idx i d.WeekDay zawierają tą samą wartość,...

    Mikrokontrolery AVR   10 Kwi 2015 07:32 Odpowiedzi: 7    Wyświetleń: 1095
  • WinAVR i AT90S2313 - Procesor nie widzi zawartości tablic w kodzie C

    nie mam już siły może ktos zerknąc???? Ten sam objaw nie ładuje nic do tablicy REC_MES #include <avr/io.h> #include <util/delay.h> #include <string.h> #include <stdlib.h> #include <stdio.h> #include <avr/pgmspace.h> static char sms[] = "0791"; static char smscd[] PROGMEM ="01000B91";...

    Mikrokontrolery   11 Gru 2008 09:01 Odpowiedzi: 24    Wyświetleń: 2191
  • Atmega328 - Jak poprawnie umieścić tablicę tekstową w pamięci programu?

    Witam. Chcę upakować tablicę tekstową ( około 3000 bajtów ) w pamięci programu. Tablica ma taki wygląd. Próbuje ją deklarować tak jak widać w poniższym oknie ale efekt jest mizerny. [syntax=c] const char *trans[][3] PROGMEM = { { "L1 tekst" , "0x00" , "L1-tekst opis" }, { "L2 tekst 2" , "0x80" , "L2-tekst opis" }, ..... { "L90 ostatni tekst" , "0x33"...

    Mikrokontrolery AVR   05 Wrz 2016 16:14 Odpowiedzi: 1    Wyświetleń: 1119
  • [avrgcc] Jak wkompilować zewnętrzne pliki jako tablice w czasie kompilacji?

    Mamy przykładowo plik test.htm. Użycie polecenia _binary_test_bin_start _binary_test_bin_end _binary_test_bin_size (czyli po kolei: adres początku, adres końca i rozmiar danych) dodajemy deklarację[syntax=c]extern const char _binary_test_bin_start[] PROGMEM;[/syntax]i już możemy korzystać z naszych danych. A tutaj przykładowe kawałki makefile http://www.atmel.com/webdoc/AVRLibcRefer...

    Mikrokontrolery AVR   26 Cze 2015 18:25 Odpowiedzi: 7    Wyświetleń: 666
  • [AVR][C] Struktury w pamięci flash i wskaźniki do funkcji

    Witam, Po pierwsze. Chciałbym przenieść całą strukturę do pamięci flash: typedef struct { unsigned char state; unsigned char input; unsigned char nextstate; } MENU_NEXTSTATE; typedef struct { unsigned char state; unsigned char *pText; unsigned char (*pFunc)(unsigned char input); } MENU_STATE; Czy możecie mi wyjaśnić...

    Mikrokontrolery AVR   14 Paź 2009 16:42 Odpowiedzi: 5    Wyświetleń: 2996
  • [ARDUINO] - Jak przekonwertować float na const char[]?

    const char text nie mozesz inicjalizować tablicy tablcą. Podstawy C/C++ trzeba poznać najpierw. Na AVR-ach poza parametrami funkcji na razie wogóle zapomij o const bo temat jest dość śliski. Nie tylko nie powinien zapomnieć, ale wręcz powinien używać const. I to z kilku powodów, z których najważniejszy jest taki, że zmienne z PROGMEM muszą być const....

    Arduino   03 Gru 2016 16:51 Odpowiedzi: 6    Wyświetleń: 1350
  • Pytanie o program [C]. Przerwanie. Spóźnienie zegarka.

    Wybierz prescaler większy bądź równy 128 i wartość porównywania na '8000000/prescaler' Kolega chyba zapomniał , że TIMER2 jest tylko 8-bitowy :( Ja natomiast zaproponuje F_CPU/256/250 czyli ,F_CPU=8000000 , preskaler=256,OCR2=249 i co 125 przerwanie , mamy sekundę.Timer 2 w trybie CTC.Cały zegarek , łącznie z tymi 10 porównaniami czasu , można spokojnie...

    Mikrokontrolery   03 Paź 2007 21:17 Odpowiedzi: 7    Wyświetleń: 1590
  • AVR -składniki struktury (klasy) rozdzielone na flash i sram

    Przy przewadze stałych składników klasy (struktury) najlogiczniejszym wydaje mi się w takim wypadku utworzenie struktury w pamięci flash tylko z tych stałych składników. Jako obiekt zadeklaruję tablicę o typie tej struktury, a następnie utworzę tablicę dla każdego składnika pierwotnie projektowanej struktury, który miał być niestały. Prawdopodobnie...

    Mikrokontrolery   25 Paź 2007 20:47 Odpowiedzi: 12    Wyświetleń: 3496
  • [ATMEGA][C] - LCD T6963 240*128 i ładowanie bitmap z karty SD.

    Nie rozumiem jeszcze dlaczego ale kompilator czasami podkreśla mi składnię na żółto tego: res = pf_open(strcpy_P( files, plik i podaje komunikat passing argument 2 of 'strcpy_P' discards qualifiers from pointer target type . Dlatego że przez całą książkę piszę, przypominam o tym wszędzie na forach, ale jakoś mało kto słucha, robi po swojemu a potem...

    Mikrokontrolery AVR   18 Paź 2012 10:27 Odpowiedzi: 109    Wyświetleń: 16869
  • Gotowa tablica znaków ASCII 8x8 dla wyświetlacza LCD bez trybu tekstowego

    Proszę. // font.h // // Tablica czcionek 5x7 // //#include <avr/pgmspace.h> static const char /*PROGMEM*/ font5x8[] = { 0x00, 0x00, 0x00, 0x00, 0x00,// (spacja) 0x00, 0x00, 0x5F, 0x00, 0x00,// ! 0x00, 0x07, 0x00, 0x07, 0x00,// " 0x14, 0x7F, 0x14, 0x7F, 0x14,// # 0x24, 0x2A, 0x7F, 0x2A, 0x12,// $ 0x23, 0x13, 0x08, 0x64,...

    Mikrokontrolery   22 Wrz 2009 10:12 Odpowiedzi: 17    Wyświetleń: 6355
  • [Atmega162][WINAVR][C]Prośba o sprawdzenie inicjalizacji RS

    Witam Mam problem z inicjalizacją portu RS232 na Atmedze162, szybkość transmisji 115200. 8, N, 1 oto kod: //Zmienne volatile unsigned char buffers[55]; volatile unsigned char counter=0; const unsigned char frame1[] PROGMEM={0x1E,0X00,0X0C,0X7F,0X00,0... const unsigned char frame11[] PROGMEM={0x1E,0X00,0X0C,0X17,0X00,0...

    Mikrokontrolery AVR   14 Paź 2010 07:08 Odpowiedzi: 7    Wyświetleń: 1535
  • [M162][GCC] - Jak umieścić strukturę w pamięci programu FLASH?

    Witam. Piszę program z obsługą MENU i w tym celu stworzyłem strukturę: Dodano po 2 Wystarczy zamiast: [syntax=c]const menu_item menu[] = {...[/syntax] wpisać: [syntax=c]const menu_item menu[] PROGMEM = {...[/syntax]

    Mikrokontrolery AVR   01 Paź 2012 15:13 Odpowiedzi: 2    Wyświetleń: 1614
  • [C/C++] Tablica wskaźników na chary. Podgląd adresów.

    Ja też się przesiadłem z AVR-ków na ARM-y od ST i akurat na to nie narzekam. W Atmelkach trzeba było stosować enigmatyczne atrybuty PROGMEM, a teraz po prostu const, co wygląda nieco bardziej elegancko i łatwiej pisać przenośny kod. Najprostszym sposobem żeby stwierdzić gdzie trafiły deklarowane dane jest obserwacja rozmiaru sekcji po kompilacji (czasem...

    Programowanie   04 Paź 2017 20:30 Odpowiedzi: 8    Wyświetleń: 933
  • Umieszczanie łańcuchów znakowych we FLASH - step by step

    Dzięki! Działa :) Dodano po 17 Mam jeszcze dodatkowe pytania odnośnie makra PSTR i pochodnych z użyciem __flash. Definicja PSTR to: compound literal qualified by address-space qualifierpamiec_flash . Nie wiem o co chodzi kompilatorowi, przecież wyraźnie zaznaczyłem, że tablica ma się znaleźć we FLASH. 4. Z kolei makro #define PGM_STR1(X) ( (const __flash...

    Mikrokontrolery Początkujący   10 Mar 2018 10:51 Odpowiedzi: 2    Wyświetleń: 795
  • [ATMega8] [ATMega8][C][Atmel Studio] - Jak stworzyć przenośne menu dla sterownika silnika DC?

    Witam, Potrzebuję zrobić sobie menu do sterownika silnika DC, aby było to menu łatwe do przenoszenia i edytowania między projektami postanowiłem je zrobić na strukturach. Tu pojawia się problem i od 3 dni nie mogę wpaść na to co źle robię. Oto wycinki kodu aby ułatwić zobrazowanie problemu: plik Menu.h [syntax=c] #ifndef MENU_H_ #define MENU_H_ #include...

    Mikrokontrolery AVR   07 Lis 2013 09:32 Odpowiedzi: 7    Wyświetleń: 1824
  • [ATmega16] Wyświetlenie znaku klawisza na wyświetlaczu LCD

    Witam kolegów. Po długim boju z poprawnym skomunikowaniem klawiatury komputerowej PS/2 z mikrokontroleram stanałem na rzeczy teoretycznie prostej, ale która troche mnie przerosła. Mianowicie chcę przekształcić kod odebranego klawisza na znak i wysłać tenże znak na wyświetlacz LCD. Na początku zdefiniowałem tablicę znaków, co próbowałem robić na dwa...

    Mikrokontrolery   01 Kwi 2010 22:15 Odpowiedzi: 4    Wyświetleń: 1578
  • AVR Atmega16 - zapis i odczyt łańcucha znaków z pamięci Flash

    Witam Od jakiegoś czasu próbuję odczytać łańcuch znaków z pamięci flash. jeżeli chodzi o dane 8 bitowe lub 16 bitowe nie ma problemu wszystko jest ok. Sytuacja komplikuje mi się jeżeli chcę umieścić napisy w pamięci Flash. Żeby bardziej zobrazować o co mi chodzi to przedstawię fragmenty kodu które mi działają a które nie. funkcja która odpowiada za...

    Mikrokontrolery AVR   08 Mar 2014 18:43 Odpowiedzi: 5    Wyświetleń: 2364
  • Gra Sudoku AVR: Konflikt typów zmiennych w kodzie, kompilacja w Eclipse, biblioteka TFT 2,8

    Z dodatkowych rzeczy, które mógłbyś poprawić to: - stosowanie wielkich liter dla makr for . Mamy 21 wiek i stosujemy co najmniej "-std=c99", więc nie ma potrzeby deklarowania wszystkich zmiennych na początku funkcji enum i stosować zmienne i argumenty tego typu, np: enum class , który wprowadza zakres widoczności, ale musiałbyś wtedy zmienić język z...

    Mikrokontrolery AVR   22 Gru 2021 20:54 Odpowiedzi: 11    Wyświetleń: 861
  • Atmega][C] I2C dwie atmega w sieci , brak odpowiedzi

    Witam, Chcę połączyć ze sobą dwie atmegi po TWI korzystam ze standardowej biblioteki do obsługi sprzętowego TWi tak jak w datasheetach. Jak podłączę jednego AVR do np Ds1307 to obsługa jest ok w dwie strony. Problem mam gdy połączę Atmega32 (master) z Atmega8 (slave) tzn gdy z Atmegi32 wysyłam coś np literkę 'q' to jest ona wrzucana do buf2 i ma się...

    Mikrokontrolery AVR   30 Cze 2011 18:17 Odpowiedzi: 1    Wyświetleń: 2380
  • Avr wynik dzialania przetwornika AC na postac dziesietna

    pisze programik w C ( nie jestem programista) dla atmegi88 moj problem to wywolanie odpowiedniego elementu z tablicy ktory jest wyswietlany na ekranie telewizora w postaci cyfry dziesietnej - odpowiadajacej wartosci z przetwornika AC static unsigned char cyfry[10][11][5] PROGMEM = //static unsigned char cyfry[10][11][5]...

    Mikrokontrolery AVR   14 Sty 2009 08:36 Odpowiedzi: 11    Wyświetleń: 1269
  • [c] Jak uniknąć ostrzeżeń o niejawnej deklaracji funkcji w AVR Studio + GCC?

    Pisałeś w temacie: http://www.elektroda.pl/rtvforum/topic18... I zastosowałem się do tego w taki sposób: Plik: main.h extern unsigned char reset_MCUCSR ; // zapamiętanie flag powodu restartu systemu extern unsigned char DDT_stan ; // flagi stanu urządzenia #define DDT_ON_OFF 0 // bit 0 - włączone / wyłączone extern unsigned char SOUND_stan; //...

    Mikrokontrolery   14 Lis 2010 12:32 Odpowiedzi: 12    Wyświetleń: 3164
  • Błąd kompilacji Arduino Nano: 'FreeSmallFont' jako tablica referencji

    (at)ex-or przyjrzyj się dokładnie tej sekcji kodu w pliku UTFTGLUE.h. Sądzę, że dyskusja jest czysto akademicka i jest to oczywiste ;) Ale nie w deklaracji, nieprawdaż? Tutaj użyte zostało to jako nazwa typu tzn. przynajmniej były takie intencje autora. Masz rację, że tego typu definicje typu się nie robi przez #define, a już na pewno nie w C++ ;)...

    Arduino   04 Wrz 2021 23:19 Odpowiedzi: 11    Wyświetleń: 726
  • ATmega reset i utrata EEPROM silne zakłócenia EMI

    Witam, dzisiaj miałem czas na zgranie kodu i wyrzucenie z niego tego co nie dotyczy tematu: Dodano po 7 Przepraszam za dziwne znaki w komentarzach ale przerzucałem z Windowsa na Linuxa i nie konwertowałem kodowania. Będę wdzięczny za pomoc. Sławek

    Mikrokontrolery AVR   08 Sty 2020 21:50 Odpowiedzi: 7    Wyświetleń: 999
  • [ATmega32] Jak zaimplementować menu wielopoziomowe na ATmega32 w C przy użyciu Eclipse?

    [syntax=csharp] enum{ 0, menu1, menu2, menu3, menu4, menu11, menu21, menu31, menu41, ustaw1, ustaw2, ustaw3, ustaw4}; unsigned char menu_stage [13][4] PROGMEM = { // ok esc prev next {0,0,0,0}; {menu11,menu1,menu4,menu2}; //menu1 {menu21,menu2,menu1,menu3}; //menu2 {menu31,menu3,menu2,menu4}; //menu3 {menu41,menu4,menu3,menu1}; /menu4 {ustaw1,menu1,menu11,menu11};...

    Mikrokontrolery   11 Gru 2014 20:44 Odpowiedzi: 6    Wyświetleń: 1047
  • [Atmega32][C]Odtwarzanie PCM przez PWM. Częstotliwości.

    A teraz pytanie o to kiedy używać PROGMEM "tutaj": const unsigned char data[] TUTAJ= { 0x2E,0x73,0x6E,0x64,0x00,0x00, Bo program ruszył bez tego? Chyba ma to znaczenie przy optymalizacji kodu? Mam nadzieje że używasz PROGMEM, to słówko wywołuje to że twoja tablica zostanie zapisana w pamięci programu czyli we flashu, a nie gdzieś w RAMie....

    Mikrokontrolery AVR   18 Sty 2011 14:24 Odpowiedzi: 37    Wyświetleń: 5897
  • Przeniesienie kodu SPWM z Arduino UNO (ATmega328P) na ATTiny85A – kompatybilność

    Wrzucam kod dla Attiny13A: ilość próbek częstotliwość wyjściowa 356 49.3 355 49.4 354 49.65 353 49.8 352 50 Wygenerowane przebiegi na oscyloskopie: https://obrazki.elektroda.pl/4382277800_... na skraju cykli https://obrazki.elektroda.pl/4450814000_... Zbliżenie sygnałów 50Hz (brak kolizji, czyli obu sygnałów w stanie...

    Arduino   20 Lip 2022 05:51 Odpowiedzi: 25    Wyświetleń: 879
  • Generowanie sinusoidy 980Hz na Arduino/ATTiny - jak zrobić?

    Tu masz tablicę Dodano po 23 Świetnie... To jak, pomożesz mi czy chciałeś się tylko pochwalić wiedzą? Podałem informacje inżynierskie, to najważniejsze :) Dodano po 2 BTW Ty też skąpisz. NIC nie mówisz o przeznaczeniu projektu. Jeśli ma tylko piszczeć, dlaczego nie coś analogowego? Są liczne projekty, gotowe chipy itd...

    Arduino   01 Sie 2020 17:15 Odpowiedzi: 8    Wyświetleń: 1224
  • EA DOGM204N-A, I2C nie działa z SparkFun ESP32 Thing - brak reakcji

    To jest 20x4 znaki bo nie upewniłem się? Jakies problemy z nim miałem, poniżej działający kod (biblioteki IIC nie załaczyłem) [syntax=c] LcdDOGM204Init(); //LcdDOGM204Charset( 1 ); LcdDOGM204Kontrast( 35 ); //LcdDOGM204view( 1 ); // Negatyw/pozytyw //======================================... void LcdDOGM204Init() { WriteLcdIIC(...

    Arduino   07 Sty 2018 15:52 Odpowiedzi: 8    Wyświetleń: 1512