1. Włącz BOD i WD 2. Utwórz zmienną na początku pamięci EEPROM i jej nie używaj: [syntax=vbnet]Dim Reserved As Eram String * 8 Dim Dane As Eram Byte ... [/syntax]
Witam. Mam problem. Chciałabym się dowiedzieć jak zaprogramować Atmegę by poinformowała mnie(np. zapaleniem diody), że skończyło się miejsce w eepromie? Czy taki problem jest omówiony w dokumentacji?
Najpewniej nie programujesz pamięci EEPROM. Niedawno był podobny temat: [url=http://www.elektroda.pl/rtvforum/vi...
Spróbuj tak: odczyt [syntax=c] if(eeprom_is_ready()) { eeprom_read_block(&ustawienia,&ustawieni... } [/syntax] zapis [syntax=c] cli();//Globalna blokada przerwań if(eeprom_is_ready()) { eprom_write_block(&ustawienia,&ustawieni... } sei();//odblokowanie przerwań [/syntax]
Jak najbardziej write_block zapisze poprawnie - kluszem jest parametr size. Jeśli pobierzesz &id_czujnika i sizeof(id_czujnika) to będzie ok.
Co w języku c trzeba przekazać do funkcji EEMEM aby zapisać/odczytać zmienną z pamięci EEPROM
Najlepiej nigdy, przenigdy nie rób takich rzeczy ;) Argumentem tej funkcji powinien być wskaźnik ale ty stosujesz tu rzutowanie i na własną rękę numerujesz komórki pamięci w EEPROM. To doprowadzi cię kiedyś do zagłady ;) jak już to najpierw zdefiniuj sobie zmienną w pamięci EEPROM: unsigned char zmienna EEMEM; a potem np: mem_year = eeprom_read_byte(...
attiny2313? Posiada wbudowaną pamięć EEPROM. Tani.
Witam. Jak najlepiej zapisać ciąg znaków np "www.elektroda.pl" do pamięci eeprom procesora Atmega 128. Czy jedynym wyjściem jest zapisywanie w pętli kolejnych znaków ze sztywno określonej tablicy, czy też istnieje jakiś łatwiejszy, bardziej optymalny sposób?
EEPROM z wear leveling też może być rozwiązaniem, o ile oczywiście czasy zapisu do tej pamięci są akceptowalne i masz duży nadmiar EEPROMu.
No w ciekawym kierunku idziesz :) z AVR na 51 :) jak Ci zależy na pamięci to zastosuj jakiś ATmega (nawet 128 KB + eeprom), A 89S52 to odpowiednik 89C52 tylko z możliwością programowania ISP i chyba ma kilka dodatkowych rejestrów, ale za to głowy nie dam, bo nie zgłębiałem tego tematu.
BOD to tylko terapia doraźna. Popraw przede wszystkim zasilanie, musisz mieć nieźle pokaszanione, skoro napięcie tak pływa, że miałeś 25% błędów. Popraw też program. Dobrą praktyką jest ustawienie EADR pomiędzy zapisami/odczytami na nieużywaną komórkę pamięci EEPROM. Dzięki temu przypadkowy zapis zostanie wykonany w nieużywanym obszarze.
Próbowałem 2 sztuki ATMEGA162. Obie pracowały stabilnie na 20MHz. Program pisany w C, niezbyt skomplikowany (operacje logiczne, arytmetyczne, skoki warunkowe, dostęp do pamięci etc, nie wykorzystywałem timerów, przerwań, pamięci EEPROM).
Witam Chciałbym przez rs232 zapisywać zmienne z pliku txt do zewnętrznej pamięci eeprom np. 24Cxx z których będzie korzystał mikrokontroler atmega128. Od czego zacząć? Czy to będzie bardziej rozwiązanie polegające na programie w mikrokontrolerze zasysającym dane z txt i wczytującym je do eeproma czy zrezygnować z drogi mikrokontrolera i programować...
W dziedzinie układów scalonych jestem raczej słaby. Myślałem nad zastosowaniem pamięci EEPROM i mikrokontrolerze ATmega 128 albo którymś firmy MAXIM (można zamówić darmowe próbki). pozdrawiam norton9
Czy Ktoś z Was mógłby mi podać linki, gdzie znajdę praktyczne rozwiązania sposobu podłączenia zewnętrznej pamięci EEPROM do ATmega ? Potrzebuję nie tylko czytać, ale i pisać po tej pamięci. Ew. poszukuję innego rozwiązania nieulotnej pamięci dodatkowej do ATmega. W sieci udało mi się znaleźć jedynie sposoby podłączenia dodatkowego RAM. ------------...
Piszę program który w założeniu ma posiadać pamięć ustawień. Dokładniej jest w nim 11 zmiennych oraz 128 możliwości ich ustawień (128 banków pamięci dla tych 11 zmiennych). Każda zmienna jest 8bitowa. No i dostaje od kompilatora (WinAVR ) dziwne komunikaty: warning: pointer targets in passing argument 1 of 'eeprom_read_byte' differ in signedness W kodzie...
Kolego a dlaczego nie korzystasz z wewnętrznej pamięci EEPROM?
Jest jeszcze jedna rzecz. Niewynika ona może bezpośrednio z postu, ale chodzi mi o dobór zewnętrznej pamięci. Faktycznie, lepszy będzie EEPROM. Pozdrawiam.
To czytałeś :: Przystępujemy do programowania karty. Sposoby programowania kart zmieniają się równie szybko, jak sam soft do tunerów, zresztą w głównej mierze to od softu w tunerze zależy jaką metodę wykorzystamy do zaprogramowania funki. Kilka miesięcy temu bardzo popularne były wsady typu 5in1 i multicam. W tej chwili najlepszym wsadem do funek wydaje...
wiem, że nie posiada i trzeba makra, tak jak w przypadku tablicy w pamięci flash. I właśnie sądziłem, że będzie analogiczna możliwość odnośnie pamięci EEprom
Wszystko zależy od zastosowań. Jeśli operuje się na tekście faktycznie najlepiej chyba bo najszybciej zdefiniować minimalny zestaw znaków (+ np. zrezygnować z małych liter i znaków specjalnych) w pamięci programu. Tylko musi być na to miejsce. Przy ATMega32 możliwości są większe. Ja myślę na razie o lcd dla cyfr (+ stopień, przecinek, / i może jeszcze...
Mam pytanie dotyczące pamięci EEPROM i mikrokontrolerów ATmega Projektuje maszynę, coś w rodzaju CNC tylko mam tam 4 silniki krokowe. I obecnie jestem na etapie sterownika. W skrócie wygląda to tak że Atmega pobiera sobie współrzędne XYZ punktu trasy, następnie obliczana jest ilość potrzebnych impulsów na silniki, następuje ruch i znowu program sięga...
Witam czy jest jakaś możliwość aby mikro kontroler potraktował zewnętrzną pamięci EEPROM (24cxx) jak swoją, to znaczy żeby potraktował ją jak rozszerzenie wewnętrznej, żeby normalnie można było nią programować razem z uc, tak jak robi się to z wewnętrzną pamięcią.
Witam, zakładam że rzeczywiście zapisujesz coś do EEPROMa. Temat był już poruszany, ponieważ ATmega przy wyłączaniu/załączaniu zasilania ( w szczególności jeśli napięcie wolno narasta/opada - wolno dla kontrolera!! oczywiście ) jesli nie są spełnione określone warunki potrafi ( i robi to często) zapisywać przypadkowe dane do pamięci EEPROM. Poświęcony...
Rejestry deklarowane przez program nie mają nić współnego z rejestrami mikrokontrolera , z resztą odczyt i zapis zawartości mikrokontrolera ich nie dotyczy , bo są fizycznie w pamięci ram której programator nie zapisuje . "Rejestr" nie oznacza tylko fizycznego rejestru rdzenia procesora czy peryferiala . Może to być jedna lub kilka komórek w pamięci...
Witam Z listingu wynika, że dane są zapisywane do wewnętrznego eepromu procesora. Jest taka możliwość, tylko trzeba przerobić program. Należy dodać obsługę I2C i przepisać podprogramy do zapisu, odczytu i kasowania pamięci. Pozdrawiam
https://obrazki.elektroda.pl/2220939900_... Mikrokontrolery AVR cieszą się niezmienną popularnością, ze względu na swoją prostotę, a jednocześnie spore możliwości. Co ciekawe, mimo, że od lat wszyscy wieszczą rychłą śmierć mikrokontrolerów 8-bitowych, mają się one ciągle dobrze, a kolejne, nowe rodziny są wprowadzane na rynek. Jakiś...
http://obrazki.elektroda.pl/9824916400_1... Witam, Korzystając z ostatnich wolnych dni przed studiami chciałbym zaprezentować moją ostatnią konstrukcję. Jest to mały przenośny barometr. Konstrukcja powstała na potrzeby osoby wrażliwej na zmiany ciśnienia oraz spełnia jej wymagania tzn. mały rozmiar( 20x40x9mm) oraz co się z tym wiąże...
No faktycznie w Pony-m moge edytować wartości pojedyńczych komórek :) Tylko co zrobić jak tych komórek będzie dużo do zmiany? A czy np. WINAvr ma instrukcje pozwalające generować plik do zaprogramowania pamięci?
Podłączę się do tematu, czy w bascomie, możliwe jest zapisanie danej jako pojedynczy bit, potrzebuje zapisać do eepromu 3360 stanów logicznych, jeśli potraktować 512kB pamięci eeprom jako bity to wystarczy, tylko czy bascom temu podoła?
Właśnie zapisuje do pamięci poprzez eeprom_write_byte(&pamt1,t1) a odczytuje poprzez eeprom_read_byte(&pamt1). Dodałem sobie opóźnienie z timera, aby po 2 s od włączenia zasilania odczytywał wartości z pamięci, na wszelki wypadek gdyby było coś z zasilaniem, ale niczego to nie zmienia.
Pamięć w urządzeniu jest taka: http://obrazki.elektroda.pl/9017804600_1... Nie mam czym jej niestety zaprogramować bo jest równoległa (musi taka być bo urządzenie w którym siedzi obsługuje tylko takie) i z takimi cudami jest straszenie ciężko. Zauważyłem teraz jednak że atmega ma 1 kb pamięci eeprom a ta 8 kb. Więc z pomysłem o którym pisałem...
masz konflikt adresow PCF tez ma adres 1010000 taki sam jak masz dla 24c1024 Niekoniecznie ;) Błąd jest tu ... ... delayms(10); // zamień ... I2C_stop(); // ... miejejscami te dwie funkcje ... ... , ponieważ sekwencja I2CSTOP jest sygnałem dla wewnętrznych "mechanizmów" pamięci , by skopiować bufor - który faktycznie jest pamięcią RAM...
... Zapamiętanie najlepiej zrealizować "na baterii".Najlepiej dać zewnętrzną pamięć ram podtrzymaną baterią patykową, albo zasilić atmegę z baterii i usypiać po zaniku napięcia zasilania. Zapis za każdym razem do pamięci eeprom jest głupi, bo szybko ilość cykli jej się wyczerpie. ... Nie tak szybko gdy zapis będzie inicjowany komparatorem na przerwaniu....
Chyba najprościej przerobić bootloader. Po pierwsze dodając funkcjonalność zapisu do tego EEPROM. Po drugie, jako że prosty plik Hex ma przestrzeń adresową 64kB, natomiast ta Atmega nie ma tyle pamięci, to przypisać część niewykorzystanej przestrzeni "wirtualnie" do zewnętrznego EEPROM, aby bootloader "wiedział", że część danych ma tam wylądować. A...
http://obrazki.elektroda.pl/2762225800_1... Jedyny taki przenośny programator układów AVR. Pomoże wszędzie tam, gdzie trzeba zaktualizować oprogramowanie, a układ docelowy znajduje się w trudno dostępnym miejscu i nie mamy możliwości (lub chęci) ciągać ze sobą laptopa i mnóstwa przewodów. Banalnie łatwa obsługa, niski koszt wykonania, super...
Może nie traci - odczytaj EEPROM i porównaj. Prawdopodobnie przekłamanie dotyczy jednego bajtu EEPROM, tego na który aktualnie wskazuje rejestr adresowy EEPROM. Stąd też, ustaw wartość tego rejestru na nieużywaną komórkę pamięci EEPROM zawsze kiedy się do tej pamięci nie odwołujesz, możesz np. na 0 i pominąć tą komórkę pamięci przy zapisie (zapisywać...
Witaj. Gdzie musiałby mieścić się plik z tekstem? (raczej nie większy niż 1000 znaków) Jeśli nie ma potrzeby zmiany tego tekstu, to w pamięci EEPROM procesora (Atmega 328 ma 1kB EEPROM) albo w kodzie programu (na kod programu jest 32kB, więc też da się go tam schować). Można zrobić w tym czytnik kart SD? Można, są w sieci przykłady podłączenia, są nawet...
Dane do zapisania do pamięci FLASH wydobywa się ze skompilowanego pliku ELF, przy pomocy avr-objcopy , zarówno dla pliku HEX i binarnego. Makefile wygenerowany przez MS7 zwiera taki wpis: ihex na binary : [syntax=text]"...\avr-objcopy.exe" -O binary -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "test1.elf" "test1.bin" [/syntax] Ale...
Zerknij sobie Dodano po 7 PS. Sam zacząłem dokładniej przeglądać listę obsługiwanych układów i są tam również uC z serii ATmega programowane przez ISP (SPI). Problemem było by pewnie podpięcie takiego programatora pod środowisko programistyczne, dlatego wygodniejszy jest programator dedykowany, bo wtedy nie ma potrzeby wykorzystywania dodatkowego narzędzia...
Czy w przypadku wykrywania zaniku zasilania układ powinien być wyposażony w bateryjkę, czy realizuje się to inaczej. Można użyć kondensatora... wystarczy podtrzymać działanie na czas potrzebny na zapisanie potrzebnych rzeczy w pamięci EEPROM. Polecam Ci tę stronę: http://mikrokontrolery.blogspot.com/
Tak oczywiście ale człowiek chce czasem podejść do rozwiązania z innej strony. Czyli z d.... strony. Jak mam jakiś "doskonały" pomysł, to sobie myślę, że pewnie przede mną wiele mądrzejszych ludzi nad tym kombinowało i coś sensownego wykombinowała, wystarczy tylko poszukać jak to zrobili... A zrobili prosto i w miarę skutecznie - to się nazywa lockbity....
MC1203/05/06 się nie nadają bo mogą włączyć urządzenie a " nie symulować" włączanie-wyłączania, które z góry musi być przypadkowe lub losowe. W EPROM to można zapisać czasy (raz-na stałe) ale nie można ich potem zmieniać np. czas HH:MM rozpoczęcia symulowania włączania-wyłączania. Tutaj trzeba użyć pamięci EEPROM. Całość można zrobić wykorzystując któryś...
Używając etykiet w .eseg nie zastanawiasz się nad fizycznymi adresami, robi to za ciebie kompilator. Tym niemniej aby operować na tych danych należy oczywiście użyć "okienka podawczo - odbiorczego" w EEDR, zgodnie z notą katalogową ( http://www.atmel.com/dyn/resources/prod_... ). Wszystko z .eseg ląduje w pliku .eep, którym możesz za...
Co do drugiej uwagi wspomniana konstrukcja w funkcji eeprom_write() jest takowa, z mysla o tym, zebym mogl jej uzywac do zapisywania ciagow. Dzieki temu moge napisac eeprom_write(EEPROM1, adres, "tekst do wpisania < 32 liter"); Obawiam się, że to będzie działać prawidłowo tylko wtedy, gdy adres będzie podzielny przez 32. Poza tym,...
przejrzałem ten dokument od atoma , podano tam że oba o-bufory mają być podobnych rozmiarów , to by w takim przypadku zmniejszało pojemność pamięci o połowę ale zużycie komórek było by mniej więcej równomierne. Natomiast w przypadku gdyby do zapisywania było nie jedna zmienna tylko powiedzmy n zmiennych (komórek pamięci) to status bufor mógłby być proporcjonalnie...
Jak zadeklarować wartość w wewnętrznej pamięci EEPROM Atmegi, żeby był dostęp do niej z różnych plików .c? Robię tak: unsigned char mem_eep EEMEM; ale mam dostęp do niej tylko w pliku w którym jest zadeklarowana, a jak wstawię do pliku nagłówkowego .h to podczas kompilacji powstaje błąd. Pytanie ciut nieprecyzyjne ;) Chcesz zadeklarować zmienną w pamięci...
Przecież nawet ATMega 8 ma pamięć EEPROM i Arduino ma bibliotekę do jego obsługi. https://randomnerdtutorials.com/arduino-...
Sprawdziłem dla pewności jeszcze raz, char pomoc Ponieważ Twoja funkcja void konwert2(char tekst nie dodaje znaku '\0' w tablicy tekst . Elementy Twojej tablicy to tekst i tekst (nie mylić z '\0'), a jaka będzie wartość komórki, która znajduje się za tablicą to czysty przypadek. Z kolei instrukcja LCD_WriteText(pomoc); będzie wyświetlać kolejne komórki...
O kilka MHz zawsze można spokojnie podkręcać każdy praktycznie procek AVR. Ja np bardzo często ATmega32 16MHz taktuję kwarcem 18,432MHz . Wyszło już wiele takich urządzeń i żadnych reklamacji ;) A co się będzie działo jak dasz więcej np 28MHz zamiast 20MHz to już sam zobaczysz. I nikt ci tu nie poda dokładnych opisów co się dzieje bo to tylko zabawa...
Witam, 1. 400kHz I2C a 20MHz ISP. Ile razy szybszy jest odczyt (i ew zapis) pamięci DataFlash od I2c EEPROM? Po pierwsze: nie osiągniesz 20MHz transmisji do pamięci DataFlash bo największa dopuszczalna częstotliwość pracy ATmega128 to 16MHz, a do tego częstotliowść pracy magistrali SPI ( a nie ISP In Cicuit Programing - programownie w układzie ) jest...
return przydałby się na końcu. I zacznij stosować ISR() Matko boska! tadzik weź ty się ze 4 albo 6 razy zastanów jak coś podpowiesz - RETURN w procedurze obsługi przerwania w C ????? Chyba że ty piszesz swoje programy w Bascomie ze wstawkami w C albo odwrotnie. do autora - żadnego polecenia return w przerwaniu bo będziesz miał tylko jeszcze gorzej....
Wiem że temat już ma już trochę czasu ale podepnę się widząc że pare osób go śledzi. Czy w tym ostatnim kodzie nie powinno być jeszcze 1wwrite &H48? bo kolejno mamy reset, skip rom, zapis do scratchpadu, bajt th, bajt tl, bajt ustawień, i brakuje funkcji kopiującej ze scratchpadu do pamięci nieulotnej EEPROM, chyba że się tutaj coś mylę.
Witam Jeśli wykonasz kasowanie pamięci flasch i eeprom to dalej nie chce działać autodetekcja?? Może jest w pamięci wpisana jakaś bzdurna wartość i program juz sobie z tym nie radzi... Pozdrawiam
Zapis nie musi zajmować dużo czasu, jeśli przed wywołaniem zapisu sprawdzisz, czy żaden inny zapis do EEPROM się nie odbywa. Jeśli nie, to wywołanie _write lub _update dla bajtu trwa chwilę, bo funkcja natychmiast wraca i nie czeka na koniec zapisu. Więc tu blokowanie przerwań będzie bezpieczne. Co innego w przypadku zapisu blokowego, ale przecież nie...
Co do wysyłana szesnastkowych wartości przez RS'a. Możesz użyć funkcji sprintf(); Wyglądało by to następująco: sprintf ( Bufor, "%X:%X:%X:%X:%X:%X", MAC[0], MAC[1] .......); Bufor powinien mieć wielkość 6*3 bajtów. Zostanie w nim zapisana np. tak postać: "0C:2A:......" Aby wykorzystać tą procedurę musisz dołączyć stdio.h. Tu pojawiają się pewne schody....
Witam, ilość odczytów nie ma znaczenia, mam układ gdzie 8 komórek 24C02 jest odczytywane cyklicznie co kilka milisekund w termometrze od ponad 7 lat i jeszcze nic się nie zmieniło. Nigdy nie spotkałem się z informacją o ilości cykli odczytu a jedynie zapisu do EEprom.
http://obrazki.elektroda.pl/1399673500_1... Witam serdecznie wszystkich forumowiczów. Po raz pierwszy przedstawiam swoją konstrukcję na forum. Jestem początkujący w elektronice i mam świadomość, że nie udało mi się uniknąć wszystkich błędów, ale do rzeczy. Pomysł na wykonanie pH-metru zrodził mi się w głowie podczas wykonywania kolejnego...
lockbity uniemożliwiają odczyt i programowanie uP maja one za zadanie zabezpieczyć oprogramowanie przed nieautoryzowanym kopiowaniem (np. kupujesz jakieś urządzenie, kopiujesz elektronikę, zczytujesz program i wgrywasz do nowego urządzenia). Lockbity można usunąć tylko poprzez Chip Erease, czyli kasowanie pamięci Flash i Eeprom układu, czyli dokładnie...
A nie lepiej zapisać tylko dwie ostatnie cyfry roku ? Przecież to urządzenie nie przepracuje 74 lat. Zmieścimy się w jednej komórce pamięci. Można też zapisać niepełne 3 cyfry czyli 0-255 w efekcie mamy w jednej komórce pamięci możliwość zapisania roku od 2000 do 2255 to chyba wystarczy.
Witam, Przedstawiam poniżej program (kompilator AVRGCC+AVRStudio5), który przygotowałem jako testowy, jest to fragment większego projektu. Jego zadanie polega na odczycie kilku parametrów z pamięci EEPROM, sprawdzenie czy jest w określonym zakresie, jeśli nie jest to wprowadza wartość domyślną i zapisuje z powrotem do pamięci EEPROM. Program działa...
Po Twoim opisie wynika że zablokowałeś mikrokontroler , możliwości są trzy : - wyłączyłeś Reset - wyłączyłeś możliwość programowania przez ISP - zmieniłeś konfigurację oscylatora jedynie w trzecim przypadku istnieje możliwość próby "ożywienia " mikrokontrolera w pozostałych tylko programator równoległy tylko że nie można go używać kiedy procesor znajduje...
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...
Witam Jaką pamięć zewnętrzną zastosować dla mikrokontrolera (Atmega8 lub Atmega 644)? wymagania mam takie: - szybki zapis - 1 bajt co 10 us (100kHz) lub 1000 bajtów co 10 ms - pojemność minimum 16kB im więcej tym lepiej - rozsądna cena -pamięć może być ulotna co wybrac? -EEProm (chyba zbyt powolny) -FRam -flash -sd/mmc -zewnętrzny SRAM (jak sie podłącza...
Pewnie, że może w dokumentacji procka powinna być podana ilość cykli programowania, Dla AtMega 128 wynosi 1000 cykli zapisu dla pamięci FLASH i 100,000 cykli zapisu dla EEPROM. Pozdrawaim
Dzięki za odpowiedź, DataFlashe Atmela by mi pasowały, mam tylko pytanie o ich kompatybilność z Atmega zasilaną napięciem 5V. Pamięci te zasilane są 2.7V czy można by je bezpośrednio do portów podpiąć?
Faktycznie dziwny sposób, nawet nie sprawdzałeś jakiego rodzaju były błędy w przypadku niedziałających kart. Używam dwóch kart. W przypadku pierwszej - 16MB (Panasonic, z jakiegoś aparatu), przechodzi poprawnie funkcję DriveInit z biblioteki MMC.lib, widać to bo daje w odpowiedzi 0, a jak wyciągnę kartę to zgłasza błąd 225 (brak odpowiedzi po Reset)....
Cześć. Nie rozumiem pewnej sprawy, proszę o podpowiedź. Do EEPROM zaszytego w procek (np. Atmega 16) można zapisać 100 000 razy. Oznacza to zapis do konkretnej komórki pamięci, czy w ogóle do EEPROMU danego procka? Co w przypadku znaczenego przekroczenia ilości zapisów - procek przestanie zapisywać czy przestanie działać całkiem (czy EEPROM ma wpływ...
To nie jest mały hint. To jest chyba to o co mi chodziło. Skorzystam z pomocy jakiej mi tu koledzy udzieliliście i zobaczymy co z tego urodzę. Podejrzewam że mogę mieć problemy jakieś z określeniem pola dotykowego przycisków jakiem mam w planie zrobić na ekranie wyświetlacza ale mogę się mylić. jeszcze jedna sprawa. Owe rysunki(grafiki) wyświetlane...
W zasadzie odpowiedziałeś sobie sam, ATmega 8, czyli mikrokontroler z Arduino. ATmega 8 ma więcej niż potrzebujesz, bo przetwornik ADC 10-bit, I2C, SPI, wejścia i wyjścia cyfrowe. W zasadzie to taki rozsądny kompromis między ilością i ceną. Możesz też użyć ATmega 48, 88, 168, 328. Kolejne różnią się przede wszystkim pamięcią: 4 kB, 8 kB, 16 kB, 32 kB....
Czy istnieje jakiś avr kompatybilny programowo z atmega32 tylko z większą od 2 do 4 razy ilością SRAM i EEPROM? Wszystkie ATmega są kompatybilne programowo - kilka literek w nazwach rejestrów zmienić to żaden problem. Nowsza wersja ATmega32 to ATmega324/644/1284, ale tez zawsze jakieś rejestry inaczej się nazywają. Jeśli nie chcesz pokazywać kodu,...
Witam Próbuje zaprojektować układ (jak narazie w teorii) który miałby za zadanie udawać pilota zdalnego sterowania. Układ byłby wyposażony w układ odbiorczy IR np TSOP4836 i miałby działać mniej więcej tak: 1) użytkownik wysyła do mojego układu kod swoim pilotem 2) zachowuje gdzieś w pamięci (atmega + eeprom) ten kod 3) potrafię go układem nadawczym...
No fakt... kurde... najprostsze rozwiązanie jak zwykle okazało się najtrudniejsze... kombinatorstwo jednak czasami niepopłaca... Dzięki za podpowiedź... zaraz będzie poprawka w oprogramowaniu :) Mam jeszcze pytanie kontrolne... 1 komórka pamięci EEPROM = 1 bajtowi tak? Jeżeli tak, to żeby zapisać uint_16 potrzebne mi są 2 komórki... Dobrze prawię?
Witaj, Nie obraź się, ale Twoje pytanie: Do tej pory w swoich projektach wykorzystywałem młodszych "braci" sześćdziesiątki czwórki: m8, m16, m32 . Jednak "nadejszla wekopomna chfyla"... Czas sięgnąć po coś z większą ilością pinów, pamięci programu, RAM, EEPROM. Póki co wybór mój padł na AtMegę 64 - nie twierdzę, że jest to wybór optymalny. jest nieco...
http://obrazki.elektroda.pl/3799930900_1... Jakiś czas temu pisałem, jak nagrywać gry z PC na PEGASUSA. Teraz pora podejść do tematu z drugiej strony – jak zgrać naszą ulubioną kolekcję kartrydży na komputer. Wiele osób może się dziwić, po co taki zabieg, zwłaszcza, że większość gier z tej konsoli krąży już po Internecie. Czasem...
(at)iguscraft Jednak postanowiłem, że czas wejść w erę mikroprocesorów i mikrokontrolerów. Jeżeli chcesz zacząć programować MCU to proponuję nie patrzeć na tego AT89C2051 czy STC15W408AS. Nie zagłębiaj się paleontologię. Proponuję abyś rozpoczął od AVR-ów. Są one bardzo proste w programowaniu. Możesz zacząć od Arduino albo od płytek typu Xplained Mini...
Witam, Mam krótkie, proste pytanie. Czy adresując pamięci atmela 24cXXX, piny A0,A1 podciągać przez rezystory do 5V, czy można bezpośrednio podłączyć do 5V? Dziękuję z góry za szybką odpowiedź.
Nie da się tego zrobić za darmo. Musisz przeznaczyć we flashu lub EEPROM-ie najlepiej na końcu komórki pamięci określające odkąd co się znajduje. etykieta Teksty: ma zaczynać się od 100 komórki a etykieta Wspolrzedne: przykładowo od 250 komórki eepromu? Wprowadzasz te 2 wartości po sobie. Aby odczytać każdy napis ostatni jego znak odwracasz, czyli XOR-ujesz...
Witam napisałem program który będzie korzystał z wewnętrznej pamięci EEPROM do przechowywania wartości ustawień, ale interesuje mnie kwestia jak w winavr określić wartości domyślne z którymi ma być zaprogramowana pamięć EEPROM. Czyli np. komórka o adresie 1 wartość 0x20, druga komórka 0x30 itp.
znam kilka możliwości: 1.Pamięć SRAM z podtrzymaniem bateryjnym 2.Są też pamięci tzw. ZeroPowerRAM są to pamięci j/w tylko że fabrycznie ma wbudowaną bateryjkę (chyba coś koło MK48Z02 2kB) wadą jest znaczne rozbudowanie układu (adresowanie + dane) 3.Zastosowanie jakiegoś zegarka RTC... - z reguły takie układy mają kilka(naście) bajtów pamięci konfiguracji...
No to jak to jest, gdzie się zmieści? jak kupujesz telewizor, to nie dziwisz się, że karton jest większy od samego tv, prawda? Te 3KB, to dane w opakowaniu. Dotychczas ładowałem oddzielnie flash i eeprom (ustawienia programatora), czy to to błąd ? nie ma to znaczenia. Ważne, aby oba typy pamięci zostały wgrane. Czy jest jakaś metoda ODBLOKOWANIE fusebyte...
Jeśli chodzi o soft, to powstał szkielet programu. Na razie odmierza to czas, i powinno obsługiwać pilot RC5. W polach „A:” – powinien wyświetlić się adres pilota, „C:” – numer przycisku z pilota. W symulacji programowej poszło, ale na razie nie mogę przeprowadzić prób z braku modelu. Ale żeby stworzyć wersje BETA...
To musisz używać jakiegoś beznadziejnego środowiska bo jest ich tutaj ogromna ilość: https://obrazki.elektroda.pl/5777279800_... Dodano po 2 Spodziewam się, że zostanie wczytana wartość czas, a następnie dodana do niej wartość 1 A w następnej pętli? Znowu zostanie wczytana wartość i dodana 1? Czyli zmienna czas zawsze będzie miała wartość...
Witam Końcówki A0,A1,A2 służa do ustalania adresu na szynie I2C - w Twoim przypadku pamięć zostaw na adresie 160,161 a w zegarze przełącz końcówke A0 do 5V i jego adres zmieni się na 162,163 - to wszystko. Wielkość pamięci nie ma tu znaczenia - możesz równie dobrze zastosować 24C16 jak 24C256. Podłączając koncówki adresowe pamięci tak by adres się nie...
Atmel w wielu dokumentacjach zwraca uwagę na możliwość przypadkowego zapisu /kasowania komórki pamięci eeprom z adresu 00 . Wniosek prosty nie używać ;)
Na razie próbuję to zrobić w tradycyjny, "Atmegowy" sposób, gdyż mam to już przećwiczone. Na razie procedurka sprawdza, czy w EEPROMie jest FF (lub FFFF dla 16 bitowych zmiennych) i ustawia wartości domyślne. Jednak po odczytaniu, wartości zmiennych nie sa na swoich miejscach. Wpisuję 5 danych typu uint8_t i 8-elementową tablicę uint_16 t. W której...
[syntax=c][/syntax]Do noty aplikacyjnej AN2634 jest dostępny przykładowy kod bootloadera UART (projekt w AS7) https://www.microchip.com/wwwAppNotes/Ap... Najprostsza metoda zapisu do flasha w nowych AVR jest po prostu bezpośrednie pisanie po pamięci: definiujemy wskaźnik na pamięć Flash gdzie ma być aplikacja (WAŻNE jest to...
Zapisy o ktorym piszesz odbywaja sie do pamieci EEPROM, a nie FLASH. FLASH mozna zapisywac tylko z sekcji bootloadera za pomoca secjalnego ciagu instrukcji, no i zapis odbywa sie po stronie. Czyli na raz w zaleznosci od kontrolera zapisujesz 16-64 bajty. EEPROM ma trwalosc 100k zapisow, potem moga sie dziac cuda (zamiast 0 bedziesz na odpowiednim bicie...
znaczy się że jak nominalnie ma 400 i godzinę się kręci 400 to masz zliczyć 1 'jeden' a jak godzinę się kręci z obrotami 200, to masz zliczyć 0,5? pół motorogodziny? Jeśli tak to musisz mierzyć czas między kolejnymi impulsami i potem to uśrednić, tyle że ci ramu nie starczy, więc musisz uśredniać na bieżąco. Zanik zasilania zgodnie z radą kolegi, masz...
Dane zapisują się w pamięci eeprom ale nie mam pojęcia jak to sprawdzić. Zapisują się,… albo też nie! Nie jest to poprawna forma zapisu do EEprom, co jest omówione niżej..... Generalnie wygląda to tak że po uruchomieniu sterownika ustawiam po kolei wszystkie parametry i wszystko działa do momentu wyłączenia zasilania ...... A powinno być w tej kolejności:...
Ano prosto - wystarczy stworzyć nową sekcję pamięci i zamiast eemem podać nazwę sekcji. Wtedy te dane tam trafią. Potem przez objcopy zamienić dane z formatu elf na np. hex, czy co tam potrzebujesz i masz gotowy plik do zaprogramowania zewnętrznego eeprom.
Witam Sporo jest pytań na temat EEPROMU, ale nie udało mi się znaleźć odpowiedzi, więc przedstawię swój problem. Wykonałem zegar szachowy na ukł. ATmega 8. Wszystko działa poprawnie oprócz zapisu i odczytu pamięci EEPROM. Procedura zapisu nie modyfikuje pamięci, procedura odczytu daje zawsze "0", bez względu na rzeczywistą zawartość. Zapis i odczyt...
Mam tyle zaległej pracy , że nie mam czasu dogłębniej tego opisać. Przecież kolega napisał wyraźnie, ze kiedy załaduje obrazek do Flash mikrokontrolera to mu się wyświetla. Możemy chyba temat podłączenia LCD pominąć? Sprawa ma kilka aspektów i dlatego pewnie nie jest pokazywana w co drugim tutorialu :P Po pierwsze trzeba zrozumieć że dołączenie obrazka...
No tak to właśnie zrobiłem... No chyba nie bardzo :D Przetestuj ten kodzik :D [syntax=vbnet]$regfile = "m32def.dat" $crystal = 16000000 Config Submode = New Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Porta.0 , Db6 = Porta.1 , Db7 = Porta.2 , E = Portb.3 , Rs = Portb.4 Config Pind.2 = Input : Set Portd.2 : Ok Alias Pind.2 Config...
Witam, zastanawiam się nad interpretacją noty katalogowej atmegi dotyczącej gwarantowanej liczby zapisów do epromu czyli 100 000 zapisów. Czy dotyczy to jednej komórki pamięci np.0x30 czy całego obszaru? Chodzi mi o to czy zapisując do tej komórki (0x30) gwarantowaną liczbę cykli straci się gwarantowany zapis do pozostałych obszarów eepromu?
Drogi kolego. Zadałeś pytanie : czy mój program można przenieść z Atmega8 na Atmega48, prawda ? Otrzymałeś jedyną odpowiedź jaką w takim przypadku mogłeś otrzymać! Nie zamieściłeś kodu... Nie napisałeś czy program używa UART-u, a może 2-ch... Nie napisałeś ile program potrzebuje pamięci na operacje... Nie napisałeś nawet co program robi. Jeżeli twój...
nie pokazuje mi temperatury niby trzeba trzymać przycisk s1 na pierwszy cujnik ds18b20 i go wpisać ale niestety to nie działa A czujnik masz dobry? Oryginalny i sprawdzony? Poczytaj ten wątek: https://www.elektroda.pl/rtvforum/viewto... Więc jeśli masz taki czujnik, szczególnie taki, który nie do końca działa zgodnie z oczekiwaniami,...
Przesyłam garść konstruktywnej krytyki. Bisz stworzona aplikacja przy kompilacji programu tłumaczy go na język IL (czyli coś w rodzaju assemblera). Instrukcje w tej postaci trafiają do pamięci flash ATmegi. Pamięć flash podzieliłem na dwie sekcje (po 64kB). Jedną zajmuje oczywiście firmware, a do drugiej zapisywane są instrukcje programu. Firmware posiada...
Witam Czy procesor AtMega 328p wyrobi się przy założeniu: Odczyt danych z RS485 Zapis danych na karcie SD Zakładam tak: PD0, PD1 - UART PD3 - przełączanie transmisji RS485 PC4, PC5 - I2C ( TWI ) pod EEPROM + PCF8563 PC0, PC1, PC2, PC3 - linie danych wyświetlacza PB1, PB2 - linie E i RS wyświetlacza PB3 ( OC2A ) - podświetlanie wyświetlacza PD4, PD5,...
odczyt pamięci eeprom atmega eeprom atmega atmega eeprom
tuleja głowicy arduino przycisk funkcji bezpiecznik zasilacza komputera
wymiana baterii telefonie motorola wymiana baterii
Kolory gniazd SATA na płytach głównych ASUS, MSI, Gigabyte – znaczenie i różnice TCL TV Single Board VGH Oscillating 30V–10V With Panel Disconnected – Fault Analysis and Repair