Wydaje mi się że jak byś nie zrobił i będzie działało to tak jest dobrze ;] ilu programistów tyle podejść do tematu... Jeżeli już zadeklarujesz taką dużą tablicę to tak czy siak będzie ona zajmowała jakąś przestrzeń w pamięci więc czemu nie użyć jej i odczytać z eeprom wszystkiego na raz. Kiedyś robiłem podobny sterownik do CO ze sterowaniem temperaturą...
tablica "koza" jest tablicą lokalną, więc jest alokowana na stosie, nie śmiesz wywołać funkcji "free" która jest związana z alokatorem pamieci na stercie (jeśli użyjesz tej funkcji, to zostanie wkompilowany alokator domyślny). Po wyjściu z funkcji i tak ta tablica zostanie zwolniona.
Wcześniejsze kwestie wyjaśnił już kol. (at)michalko12 . Mowiąc o tym, że funkcja z eeprom.h dokonuje kasowania przed zapisem powoływałem się na Twoją książkę (str.235 wytłuszczonym drukiem) oraz na https://www.nongnu.org/avr-libc/user-man... gdzie jest napisane: "All write functions force erase_and_write programming mode." Nowsze...
Prawdopodobieństwo "trafienia" w taką jednoczesną zamianę bitów w sumie CRC i tablicy jest znikome. Poza tym CRC32 z samej siebie zabezpiecza wystarczająco. Nawet CRC16 jest dość silnym zabezpieczeniem (ale to zależy od ilości zabezpieczanych danych i ich ważności). Zabezpieczenie sumy CRC inną sumą nie ma za bardzo sensu (wykrycie błędu tak czy inaczej...
Z tym zerem jest tak, że jak tworzysz zmienna typu string (null-terminated) to ma ona automatycznie zakończenie w postaci 0 na końcu. Lecz jeśli zrobisz tablicę znaków i chcesz uzywać jako stringa to musisz dodać 0 na końcu (żeby było kompatybilne ze stringiem). Czyli każdy string = text+0 a tablica bedzie u ciebie tylko text, dlatego aby swobodnie...
Masz podawane złe długości pól. Skoro odwołujesz się np. do pola okrążenia typu DANE_ZAWODNIKA to nie możesz robić sizeof(DANE_ZAWODNIKA) bo to nadpisze ci kolejne pola, powinno być sizeof ale pola okrążenia. Takich błędów masz więcej. Definicja: DANE_ZAWODNIKA numer_zawodnika_tab[sizeof(DANE_ZAWODNIK... też na oko jest bez sensu. Bo robisz tablicę...
Można wyświetlać temperaturę w podmenu "wybór_Ds" ale trzeba zmienić cały program. Chyba nie jest tak trudno zapisać sobie cztery ID czujników i wiedzieć później który gdzie przypisać. Najlepiej osobno podłączać każdy czujnik i na naklejce na kablu przy czujniki zapisać jego ID. Wiedząc gdzie jakie jest ID czujnika można już mu w podmenu przypisać odpowiednią...
http://obrazki.elektroda.pl/4553573800_1... Przy tworzeniu projektów z mikrokontrolerami, oprócz uniwersalnych płytek stykowych, często przydają się gotowe moduły testowe, które można szybko podłączyć. Można kupić takie w wielu sklepach, ale ich ceny są na ogół absurdalne, np. w Kamami sprzedają płytkę z ATmega128 za 109 zł! Poniżej...
Twój TV to chassis CY02V0 Mam coś takiego: ST92195/ST92l85 Opis dotyczy odbiornikow telewizyjnych, zbudowanych w oparciu o chassis w ktorych zastosowano mikrokontroler ST92195 dla wersji z teletekstem oraz ST92185 dla wersji bez teletekstu Nastawy zwiazane z obsluga trybu serwisowego dokonywane sa przy uzyciu standardowego nadajnika zdalnego sterowania....
Witajcie. proszę o wytłumaczenie, jak poradzić sobie z takim problemem. Mam dwie tablice. Jedna umieszczona jest w RAM Dodano po 1 W sumie udało mi się temat rozwiązać przy pomocy stron: https://www.ibm.com/docs/pl/i/7.5?topic=... https://cpp0x.pl/forum/temat/?id=16370 Pomogła funkcja "strcpy" Jest może inna metoda ?
Udało mi się w przerwie świątecznej posiedzieć trochę nad radyjkiem. Projekt wciąga :) - dołożyłem czcionkę DotMatrix - edytowałem plik BDF czcionki Spleen tak aby mieć polskie litery i przekonwertować go na format U82G - w załączniku gdyby ktoś chciał sobie dodać Co prawda w zakresie 33-255 da się wkodować tylko ISO-8859-2 i Windows-1250 ale zawsze...
http://obrazki.elektroda.pl/1378640500_1... Opis zamieszczam w dziale Niedokończone, ponieważ tablica jest w trakcie budowy. Od jakiegoś czasu zajmuję się programowaniem matryc LED. Do tej pory nie miałem możliwości złożenia dużej tablicy z powodu kosztów zrobienia dużych płytek. Niedawno wpadły mi w ręce gotowe duże płytki (40x20cm...
http://obrazki.elektroda.pl/6038046600_1... http://obrazki.elektroda.pl/9492337500_1... http://obrazki.elektroda.pl/8744464400_1... http://obrazki.elektroda.pl/7450126200_1... Jak to w życiu bywa, człowiek kolejny raz staje przed wyborem kupienia wątpliwej jakości chińskiego produktu,...
Dzień dobry Mam mały problem ze zmianą kolejności adresów czujników DS18B20. Mam tablicę uint8_t z adresami czujników. Każdy adres zajmuje 8 pozycji tablicy. Napisałem menu ustawień z możliwością zamieniania kolejności. W menu po wejściu w wybrany czujnik mogę przypisać mu adres ze "świeżo" przeskanowanej magistrali. Problem w tym, że o ile po zapisie...
Hmm. Tak też nie mogę. Zmienna w EEPROM to tablica uint16_t, do której elementów chce się odwoływać w pętli poprzez indeksację, więc stałe odpadają, tak mi się wydaje. Nie chcę deklarować stałych do każdego elementu tablicy. Chce to zrobić najprościej, jak możliwe. R
http://obrazki.elektroda.net/1_126476553... Witam :) Prezentowany w tym temacie projekt jest realizacją pewnej idei - elektronicznego długopisu ściągi z wbudowanym wyświetlaczem, pamięcią itp. Długopis powstawał w czasie od września do grudnia 2008. Projektu nie będę rozwijał, niedokończonego kodu nie udostępnię. Kontynuacji nie będzie, ale...
Witam , Wracam do tematu . Zegar skończony i przetestowany . Podziękowania dla autora za pomoc . Kilka krótkich filmów z pracy zegara wykonane telefonem . https://filmy.elektroda.pl/11_1551555088... https://filmy.elektroda.pl/90_1551555174... https://filmy.elektroda.pl/15_1551555225... https://filmy.elektroda.pl/89_1551555287... Jedna z dwóch gier...
Ponieważ ani I ani i_ee nie są tablicami, tylko zmiennymi 16-bit, powinieneś użyć eeprom_read_word / eeprom_write_word
Witam. Czy mógłby mi ktoś pomóc w napisaniu,dopisaniu ,poprawieniu kodu. Arduino steruje 2 belkami ledowymi. Opcja włącz i wyłącz jest wspólna dla obu belek i tak jest ok. Chciałbym jednak aby swieciły one z różna jasnością dlatego dołączyłem 2 potencjometry które mają to zadanie wykonać. Potrzebuje dopisać w menu kolejny krok (7) gdzie bede mógł poustawiać...
https://obrazki.elektroda.pl/1655231800_... Microchip, po zakupieniu Atmela, utrzymuje nadal projekty, jakie realizowała ta firma przed przejęciem. Wypuszczane są kolejne układy z rodzin AVR (tinyAVR i megaAVR) jak i 32-bitowe mikrokontrolery z rdzeniem ARM-Cortex. Do układów tych dodawane są nowe rozwiązania, czego przykładem może...
Z tych filmów jednoznacznie nie wynika , że zostało uszkodzone oprogramowanie firmware + tablica kształtów znaków znajdujące się w EPROMIe. Tablica wyraźnie działa, problem może być z tzw. rejestrami sterującymi obsługujące kolumny/wiersze matrycy LED. Widzę na filmach m.in cień (nic się w tym miejscu nie wyświetla a powinno). Jeżeli firmware + tablica...
https://obrazki.elektroda.pl/2212041800_... Niniejszy projekt to nic odkrywczego, ale może się komuś przyda. Czasem potrzebujemy wygenerować sygnał PWM dla większej ilości kanałów a akurat nie mamy pod ręką dedykowanego układu - tak było w moim przypadku gdy robiłem mały projekt z oświetleniem i wentylatorami przy "modowaniu PC" -...
Oto przykłądowy kod z tablicami integer w ram i eeprom. W ram nie ma problemu liczby integer zapisują i odczytują sie poprawnie. Niestety taka sama tablica w eeprom jóż nie działa poprawnie. Przy próbie odczytu dostaje wartość -1. Gdy używam w eeprom tablic bajtowych jest ok. Jak rozwiązać ten problem. $regfile = "8535def.dat" $crystal = 6000000 Config...
Witam Mam takie pytanie: czy kompilator może przydzielić bloki w pamięci EEPROM w kolejności innej niż zadeklarowano je w programie? Jeżeli tak, to wpłynie to na adres bloku pamięci,prawda? Mam taki problem: W programie mam zadeklarowane 2 bloki pamięci EEPROM w kolejności jak poniżej: znaki. Tak jakby ponowne wgranie tego samego kodu, spowodowało że...
No mi się wydaje, że trzeba by zdefiniować strukturę tablicy, coś w ten deseń: ee_adr jest adresem komórki tablicy np. tablica[5] mystr jest zmienną, której wartość chcesz przypisać danemu elementowi tablicy. Pewnie może to być element tablicy pobrany z RAMu, ale jeszcze tego nie próbowałem, adziś już mi się nie chce. strlen(mystr) możesz pobrać z sizeof(nazwa...
Nie wiem jakiego używasz kompilatora, ale z reguły wystarczyło nakazać żeby tablica była pod określonym adresem (oczywiście zakładając że EEPROM jest wbudowany w uP.
http://obrazki.elektroda.pl/3622659500_1... Witam, chciałbym przedstawić swoją prototypową konstrukcję dotyczącą 1wire i słynnych czujników DS18, jak każdy układ powstał z potrzeby. Ten projekt jest Aktualizacją obecne używanego starego dosyć układu AVT AVT5330(8 x DS18) opartego na Attiny2313 - Link do dokumentacji: crontab -e i na...
czekanie na dostępność EEPROM nie jest potrzebne, bo to już załatwiają funkcje odnoszące się do EEPROM Podeślij proszę do tego jakiś odnośnik, zaglądałem tutaj https://www.nongnu.org/avr-libc/user-man... oraz na dysku do bibliotek ale nie znalazłem implementacji tych funkcji, chętnie zobaczę jak one wyglądają. To co znalazłem...
no przeciez kazda tablice mozna zapisac po 1 dowolnym elemencie i tak samo jest z tablica w eeprom. ja tak robie i jest oki.
Witam Mam następujący problem, do pamięci eeprom atmegi 8 chce zapisać taka oto tablicę: const uint16_t EEMEM C_rtd[] = {0,233,466,699,933,1166,1400,1634,1...
Używam starszą wersję AVRStudio 3.56 w której nie ma ATtiny 2313 ale jest AT 2313. Nie wiem jakie są różnice pomiędzy tymi mikroprockami dotyczące obsługi pamięci EEPROM. Może to być problemem? Dodano po 9 Deklaracja tablicy poprzez dyrektywę .eseg powinna spowodować to że po kompilacji programu - po otworzeniu widoku zawartości pamięci EEPROM w AVRstudio...
Tablica = 1 Adresh = High(961) Adresl = Low(961) I2cstart I2cwbyte &H4A I2cwbyte Adresh I2cwbyte Adresl Do For A = 1 To 21 T(1) = Mid(kod(tablica) , 1 , 1) Ta(1) = Asc(t(1)) I2cwbyte Ta(1) T(2) = Mid(kod(tablica) , 2 , 1) Ta(2) = Asc(t(2)) I2cwbyte Ta(2) T(3) = Mid(kod(tablica) , 3 , 1) Ta(3) = Asc(t(3)) I2cwbyte Ta(3) T(4) = Mid(kod(tablica) , 4 ,...
Witam Tablica SAGEM (eeprom 93c46) Czy ktos z kolegow zmieni mi przebieg we wsadzie ?? jest teraz niby 191084 km potrzeba 140000 km Pozdrawiam
Siemano. Jeżeli chcesz umieścić np. tablicę jednowymiarową w sekcji EEPROM to możesz wykonać to w taki sposób const unsigned char Tablica[] EEMEM = { 0x3e,0x51,0x49,0x45,0x3e, 0x00,0x42,0x7f,0x40,0x00, 0x42,0x61,0x51,0x49,0x46, 0x21,0x41,0x45,0x4b,0x31 }; Niestety przy takiej deklaracji pierwszy element tablicy nie będzie znajdować...
Czy ktoś może powiedzieć jak utworzyć tablicę w obszarze EEprom procesora ATMega 8. chodzi mi o coś takiego jak to: prog_char tablica[]={....}; tylko w obszarze EEPROM. (AVRGCC). Pozdr. Luk
Nic nie trzeba zamieniać, nie potrzebujesz a0,a1, ... itp Zamiast a0 używasz taba[0].
http://obrazki.elektroda.pl/4630645200_1... Animacje i napisy tworzone są przy użyciu napisanego przeze mnie kreatora. Po zaprojektowaniu animacji plik zapisujemy na kartę pamięci i wkładamy do tablicy. Johny_Bit Czyli procek odgrywa tylko klatka po klatce to co zapisane na karcie SD bez animowania? Czyli taka wersja light :) Ciekawe...
Na początku uszczupliłem kod do wejścia jedynie w tryb konfiguracyjny: funkcja_trybu_konfiguracyjnego() wykonuje się tylko raz, dlatego pętla do-while jest pusta w końcu zabrałem sie za przeniesienie bibliotek. Na początku spróbowałem po prostu w ten sposób: https://obrazki.elektroda.pl/5661741000_... Jak zamiast danej biblioteki...
nie żadne "volatile", tylko po prostu "const". Zmieniłem. Swoją drogą to nie wiem czy atrybuty można łączyć tak jak pokazałeś, na pewno można je łączyć po prostu po przecinku wewnątrz nawiasów. Kiedyś o to pytałem i wyszło że można i tak. Choć krócej będzie po przecinkach. Pozamieniam. Twoja tablica nie jest wgrywana, bo dałeś noload - to chyba powinno...
A w takim wypadku w pamięci EEPROM będzie cała struktura? Czyli np TMENUENTRY.id lub TMENUENTRY.behaviour także będzie zapisywane w EEPROM? Najlepiej to by mi pasowało, żeby tylko ta tablica cText była w EEPROM. A drugie pytanie to czemu muszę tworzyć nowy typ? Mam taki zapis: [syntax=c] typedef struct _Menu_Entry Menu_Entry; [/syntax] Nie można tutaj...
a tak w ogole to ty programujesz ten EEPROM? do tego celu jest osobny plik (rozszerzenie *.eep), ktory trzeba wgrac do procka Tak, programuje eeprom i ta tablica rzeczywiscie tam siedzi bo jak juz napisalem odczyt eepromu poza pętlą while działa, dzięki czemu mogłem to sprawdzić. Swoją drogą, może być prościej stosować właśnie "eeprom_read_byte". Wtedy...
jeśli a zadeklarowane jest jako tablica: char a[128]; to adresem danych w tej tablicy jest: - a - &a[0] &a to ... w sumie nie wiadomo co [; 4\/3!!
I właśnie o tą tablicę mi chodzi, czy dany czujnik temperatury zawsze przyjmie to samo miejsce(pozycje) w tej tablicy???, czy np po restarcie zasilania, czy po ponownym wyszukaniu jego pozycja w tablicy się zamieni??? Jak one się sortują na tej tablicy??? Kol. BlueDraco już odpowiedział. Ja tylko dodam, że ta tablica jest sortowana po adresach i warto...
Jak wgrać do EEpromu 4KB danych ? Miałem tablicę ok. 1.5 KB (czcionki). Tablica umeszczona była we FLASHu. Skopiowałem ją do EEPROM bez problemu. Teraz chcę skopiować "strukture" ok 4 KB( całe menu do wyświetlania). Do SRAM sie nie mieści. Czy mogę umiescic ją we FLASHu np: struct dane PROGMEM menu[]={ ......};? Pytanie: Jak sobie poradzić, aby przenieść...
Tak jak pisze Freddie Chopin mozna ale to bedzie reczne rzezbienie i skladanie kodu tak by zostawic dziure... Ale to jest rzezba okropna i utrudni na pewno prace nad kodem. Takiego rzezbienia nawet w binarce jest jeszcze kilka opcji, ale to nie najlepsze rozwiazanie. Wystarczy zapełnić tą jedną czy dwie strony rzeczami które praktycznie nigdy nie zmieniają...
sprawdziliśmy połāczenie miedzy kostka pod maska a kostka wewnatrz auta przy ecu i jest zasilanie. koleś przyjechał i do kostki pod maska która idzie do sterownika do przewodu (chyba) czarno-niebieski (6pin bodajże 3gorny pin od lewej ide na dół więc zrobie foto)podłączył kawałek przewodu bezpośrednio do aku i odpaliłem silnik, jak podłączył do...
To było dokładnie to czego brakowało, wykrywanie końca ciągu znaku. Bardzo wam dziękuje. Teraz już wszystko działa tak jak powinno. Wprawdzie nie wiem skąd te losowe znaki na końcu się wzięły, ale teraz to nie ma znaczenia bo wiem kiedy kończy się tablica bez znajomości jej długości.
Dotyczy budowy wyświetlacza LED dwukolorowego, problem z wyborem CPU.?? Widzę, że jesteś programistą samoukiem, bo nie potrafisz optymalizować kodu programu. W bascom da się zrobić wydajny kod, bez asemblera, ale wymaga to już sporej wiedzy i umiejętności, lecz przyznaję że np. C jest tutaj trochę lepszy. Do budowy wyświetlacza 8*80 nie trzeba szybkiego...
Chciałbym się odnieść do linku https://www.elektroda.pl/rtvforum/topic3... w którym w skrócie udało się zrobić cos takiego, że w zależniści od bajtu nr 0 w pamięci EEPROM ESP wchodzi albo w tryb konfiguracyjny, gdzie tworzy sieć wifi do wprowadzenia parametrów dla docelowej sieci wifi. Po zapisie ESP32 sie resetuje i wchodzi w tryb normalnej...
Popraw mnie jeśli się mylę, ale mamy do dyspozycji 128B pamięci eeprom i 128B pamięci sram. Jak by tablica miała stałe wartości, to można by umieścić ja w pamięci flash, ale tu zawartoś tablicy będzie zmieniana.
Konwersje byte->string otrzymuje się przy użyciu funkcji Str. W drugą stronę działa funkcja Val.
tablica eeprom zapis tablica eeprom tablica tablica stringi
tworzenie płyty gelhard zmieniarka zarezerwowana pamięć
bateria kuchenna mikrokomputer cobra1
Lokalizacja bezpiecznika w Kymco Grand Dink 250 Whirlpool AWE 2316 - Wszystkie diody świecą na zielono