[url=http://www.elektroda.pl/rtvforum/to... ,8 post masz cala obsługę spi
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.
Ostatnia rzecz jaka przychodzi mi do głowy, to zabezpieczenie pamięci przed zapisem. Do odbezpieczenia może być konieczne ustawienie pinu WP w stan wysoki, po czym zapisanie do rejestru statusu (instrukcja WRSR) wartości 0x00 (cała pamięć odbezpieczona, brak zabezpieczenia rejestru statusu pinem WP) [zapis musi być poprzedzony przez WREN]. Innych firmwareowych...
Witam Owszem pamięć komunikuje się za pomocą magistrali I²C. Bascom ma wbudowane procedury obsługi takiej magistrali więc nie powinno być większych problemów. Warto przeczytać kilka razy helpa, żeby zrozumieć jak tą magistralę obsługiwać. Nie jest to skomplikowane ale zrozumienie tego ograniczy ilość nerwów, przekleństw i czasu. -- pozdrawiam
Symulator w Atmel Studio 6.0. Twoje funkcje u mnie działają poprawnie, tzn dane z jednej są kopiowane do drugiej. To kopiowanie jest "bezmyślne" w sensie że, kopiuje obszar pamieci bajt po bajcie, bez znaczenia jest typ zmiennej. Może problem tkwi w dobieraniu się do pól struktury?
To co robisz jest absolutnie błędne. Nie wolno zwracać wskaźnika do zmiennych lokalnych - po wyjściu z twojej funkcji wskaźnik ten nie wskazuje na żaden poprawnie zaalokowany obszar pamięci. To co wcześniej zajmował twoj string będzie od razu nadpisane przez kolejne funkcje - wszystko przecież znajduje się na stosie. Jeśli chcesz zwracać wskaźnik na...
Można też zastosować pamięć FRAM.
A gdyby podejść do tematu w taki sposób: Po sformatowaniu karty w komputerze zapisać na nim jeden duży plik wypełniony spacjami, taki blik byłby spójny i wiadomo od którego do którego sektora zajmuje obszar (ewentualnie w ATMega można doimplementować funkcję formatującą poprzez odpowiednie zapisanie bajtów FAT lub NTFS w celu otrzymania takiego właśnie...
Jak najbardziej write_block zapisze poprawnie - kluszem jest parametr size. Jeśli pobierzesz &id_czujnika i sizeof(id_czujnika) to będzie ok.
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...
dyż muszę ją dodać do mojego projektu, który tworzę na studia. Co się stanie, jeżeli plik się zapełni całkowicie? Kolejne rekordy nie będą już dopisywane? Napisz programik testowy i sprawdź Zdaję sobie z tego sprawę, lecz dydaktyczny kod programu, który analizujemy tutaj, docelowo będzie częścią obszernego programu. A w tej chwili wspomniany kod już...
Mój sposób nr 1: -zakładasz w jednej lub dwóch komórkach wskaźnik do bieżącej struktury roboczej, składającej się z licznika zapisów (3 bajty) oraz rejestru przechowującego zmienną (o dowolnym rozmiarze), -następnie tworzysz funkcje do zapisu oraz odczytu zmiennej. Fun do odczytu ustala za pomoca wskaznika poczatek struktury w EEPROM, a nastepnie odczytuje...
Nie można, gdyż nie można typom przypisywać atrybutów i to po prostu w zależności od wersji kompilatora nie zadziała. Jeśli chcesz cText trzymać w EEPROM to zmień char na wskaźnik na tekst i ten tekst umieść w EEMEM. Swoją drogą jeśli tekst w czasie życia programu się nie zmienia, to lepiej go trzymać we FLASH - raz, że masz go więcej, a dwa, że dostęp...
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...
odczytuję z tej samej komórki w 1/4 przypadków inną wartość niż zapisałem. Natomiast, gdy hurtem zapiszę np. 256 komórek tą samą wartością, to zawsze odczytuję prawidłowe wartości. Nadmienię, iż przy hurtowym zapisywaniu nie używam metody "FAST-PAGE-MODE EARLY-WRITE CYCLE". Szereg komórek zapisuję tak jak pojedyńczą komórkę. Czy po zapisie do pamięci...
Pamięć jest zorganizowana w komórki 16-bitowe, objawia się to np tym że wskaźnik programu wskazuje na słowo (2 bajty) a nie na bajt. Wszystkie instrukcje muszą być więc wyrównane do granicy dwóch bajtów. Jakkolwiek z poziomu samego programu pamięć flash jest zorganizowana bajtami, więc spokojnie można w niej umieszczać tablice bajtów bez utraty pamięci....
Temat jest jak najbardziej do ogarnięcia wymaga jednak sporej wiedzy nie tylko z zakresu obsługi spi i obawiam się ze bascom nie sprosta .
No to zostajemy przy zewnętrznych kościach ...... myslę że coś takiego >>I2C RTC DS1307 AT24C32 moduł zegar czasu rzeczywistego dla ramienia AVR PIC malutkie RTC I2C I2C moduł pamięci DS1307 zegar<< załatwi dwie piczenie na jednym ogniu , będzie zegarek i pamięć do zapisu nastaw zegara sterującego wyjściami.
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...
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
Hej! Mam do was prośbę. Planuję właśnie zbudować taki układ do zapisu dzwięku: ATMega + pamięć AT45DBxxx (nie pamietam dokladnie ale mam 16Mbit) + przetwornik C/A. Kiedyśjużcośtakiego próbowałem zrobić ale nie wyszło i wracam do tematu. Chodzi o to, że odczytywanie danych z pamięci zajmuje dużo czasu bo trzeba wysłać kilka bajtów rozkazów i chyba jakieś...
Dzięki za odpowiedzi, taki czas jest dla mnie idealny, nawet "potrojony" mnie zadowala :) Teraz pytania bardziej konkretne. Wstępnie będzie to Atmega128, pamięć typu 628512 podłączona zgodnie z helpem bascoma. Wg. dokumentacji, mogę "sprzętowo" obsłużyć 64kb, czy przejdzie taki myk, by podzielić 512kB SRAM na 8 banków i sterując je adresami A16-A18...
temat jest o zupie a wy o d... Pomijając wywody natury ogólnej masz kolego do wyboru wewnętrzną pamięć RAM od pcf-a i to nie małą bo 240 bajtów albo stałą od eeproma. Jedno i drugie jest dobre bo pcf ma podtrzymywanie bateryjne (chyba go uzywasz) ale kiedy bateria padnie to zapisy znikną więc pewniejsze jest umieszczenie tych informacji w pamięci eeprom....
dlaczego nie c? po krótce: dawno, dawno temu w sterownikach do urządzeń które projektowaliśmy zastosowałem 8080 a wtedy dostępny był asembler. Później na przeszło 25 lat zmieniłem zawód i nie miałem nic do czynienia z elektroniką. A co oznacza 25 lat w elektronice....... Teraz nauka c to zbyt "pracochłonne zajęcie" , gdy już "pamięć nie taka" .Teraz...
Witam, możesz zastosować pamięć mram lub fram, tu krótki art [url=http://www.easy-soft.tsnet.pl/modul...
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...
Witam. Bez problemu możesz, ja tak robiłem, tylko pamietaj, że przy takich wyświetlaczach strasznie pożera to pamięć. Nie wiem jak w IAR ale w codevision deklarujesz stałą jako flash. Musisz zaglądnać do helpa. Pozdrawiam DJ_.
(at)R-MIK Czytaj, proszę, ze zrozumieniem i bez nerwów. Pamięć NOR-flash jest względnie powolna i jest głównym ogranicznikiem taktowania rdzenia. Dodatkowo wymaga bardzo dużo miejsca na powierzchni układu, a jej skalowanie (zmniejszanie) jest bardzo kosztowne. Wielu producentów stosuje pamięć o szerokości znacznie większej niż szerokość magistrali...
Cześć Mam pytanie/prośbę. Robię projekcik który zbiera dane z wejść analogowych i puszcza po bluetooth do komputera. Chciałbym wykorzystać maksymalnie możliwość próbkowania ADC, jednak sama prędkość transmisji BT na to nie pozwala. Pomyślałem, o zrobieniu buforu na zebrane próbki i wysyłaniu ich na bieżąco po BT do komputera, jednak zrobienie takiego...
Dziękuję wszystkim za podpowiedzi. Zdecydowałem, że przy takiej liczbie danych najlepiej będzie dorobić pamięć FRAM do układu. Pozdrawiam. Nie ma jak sobie wziąć starego trupa i potem próbować go reanimować:) ATMega32 to historia, weź sobie np. ATMega328 i tam po pierwsze całkowity czas zapisu to już tylko 3,4 ms, w dodatku można go rozdzielić na kasowanie...
tutaj jest wszystko co potrzebne ( nawet chyba taki sam przyklad zastosowania :D) http://www.captain.at/electronic-atmega-... Wlasnie tez niedawno wykonalem ten projekt i wszystko dziala. Pozdrawiam
Wszyscy są ludźmi i nie wszystko wiedzą, ale to raczej nie powód, żeby od razu stwierdzać o kompletnym braku wiedzy? Nie wszystkich uczyli C na studiach... Studia nie mają nic do tego, szczególnie gdy ktoś się sam za coś zabiera - należy to robić porządnie :wink: Prześledziłem i kombinowałem z wszystkim co znalazłem w sieci, lecz nic z tego nie działało:/...
Podałeś trochę za mało informacji na temat układu. Co i w jaki sposób ma zapisywać dane w pamięci DRAM? Jaka jest magistrala od strony hosta? Generalnie DRAM musi być odświeżana cyklicznie, i jesli jesteś w cyklu odświeżania to musisz poczekać z dostępem do danych. Robiłem kiedyś obsługę pamięci dynamicznej ale to było w FPGA. Jakoś trudno mi to sobie...
Pamietaj tylko o tym, ze odczyt sekwencyjny działa tylko w obrębie jednego bloku i ulega zapętleniu do jego początku... Z tym twierdzeniem się nie zgodzę. Po wykonaniu zapisu adresu startowego dla odczytu można odczytać całą pamięć. Robiłem tak osobiście i jeszcze mnie to nie zawiodło. Wspomniane stronicowanie dotyczy się tylko zapisu.
Witam, zakupiłem na znanym portalu partie ATmega168PA w okazyjnej cenie prosto z chin. Atmegi przeleżały kawał czasu aż naszła potrzeba użycia w projekcie. Niestety próba programowania nie powiodła sie. Okazało sie ze procesor ma sygnaturę 0x1E 0x93 0x0F czyli od atmegi 88PA. Mój pomysł na sprawdzenie czy jest to atmega 168 jest taki żeby zapisać cała...
http://obrazki.elektroda.pl/7819079000_1... Witam. Przedstawiam kolejną konstrukcję wyświetlającą modele 3D. W tym projekcie mikrokontroler odczytuje modele zapisane w formacie OBJ bezpośrednio z karty pamięci typu RS-MMC lub SD. Całość pełni funkcję miniprzeglądarki modeli OBJ. Wybrany model po wczytaniu jest skalowany do rozmiarów...
Witam, Dane projektu: Atmega128 zasilana 3,3V Karta uSD 1GB wlutowana na płytkę jako główna pamięć zapisu zdarzeń Gniazdo karty SD do kopiowania danych z uSD na SD SD co działa: Inicjalizacja - działa zawsze bez problemu Zapisywanie - przy 250kHz zapis drugiego bajtu kończy się niepowodzeniem, przy 100kHz co dziesiąty kończy się niepowodzeniem Odczytywanie...
Chciałbym użyć przykładowego bootloadera z AES z Microchipa AVR231 [url=http://ww1.microchip.com/downloads/... ]Link (oryginalnie dla Atmega 328PB) Jednak chciałbym go używać na Atmega4809. Najpierw zrobiłem drobne przeróbki i przeprowadziłem testy na 328P, wszystko działało poprawnie. Następnie przerobienie obsługi USART dostosowując...
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...
Jeżeli te pamięci nie obsługują trybu zapisu/odczytu sekwencyjnego, to można pozamieniać. Chciałeś powiedzieć, jeśli te pamięci nie obsługują zapisu/odczytu losowego? Reszta się zgadza: pamięci dynamicznej nie można by tak podłączyć, jednak wspomniana w temacie pamięć jest pamięcią statyczną z możliwym zapisem/odczytem losowym oraz brakiem sekwencji...
Od czegoś trzeba zacząć :). Co do paięci w atmega - owszem jest ona, ale ma ograniczoną liczbę zapisów, a u mnie w pamięć bedzie szło co zmiana stanu jasności żarówki, stąd konieczna jest zewnętrzna. Ja próbowałem w AVR Stuidio i gcc.. ale jakoś mi się nie spodobało... Co nie zmienia faktu, że żarówka migocze :)
Witam serdecznie; Mam pewien problem z magistrala i2c. Mianowicie mam podłączony pod atmege32 zegar RTU(ds1307) oraz zewnętrzną pamięć eeprom(24c32) komunikujące sie z atmega po i2c. Pamięć i zegar oddzielnie działają poprawnie tzn np: wyświetlam sobie aktualną godzinę i datę na LCD czy tez zapisuje dane z termometra(ds18b20) do eeprom i później przesyłam...
Używam AtmelStudio. Tak te błędy są związane z brakiem ; na końcach poszczególnych linijek kodu, zmianą #define PRZYCISK_DOWN (PINC & PRZYCISK_CZAS) na #define PRZYCISK_DOWN (PINC & PRZYCISK) oraz z brakiem biblioteki #include <util/delay.h> Ok. Natomiast pozostaje problem z zapisem i odczytem pamięci. Z tego co rozumiem, a okazuje się,...
Czyli rs działa. Co do pamięci to zakres wg twoich ustawień masz od $0000-$1fff i jeżeli ją podłączyłeś tak jak mówisz (a0-a12 ram <--> procesor a0-a12) to odczyt z pod $2000 lub wyżej może dawać zły odczyt. Spróbuj zapisać i odczytać ram między $0500-$1fff. Dodam że twój procesor ma swoją pamięć od $0060-$04ff to twoja pamięć częściowo się marnuje,...
Fakt, I2C definiuje 'MSB first' , mój błąd :] Więc skoro pierwszy wysuwany na SDA bit '1' powoduje, ze pamięć odrzuca cały bajt, to znaczy ze cos jest nie tak z zegarem, lub I2CSTART (wlasnie tu bym szukał) Spróbuj do bólu zwolnić transmisję... W twoim przypadku najbardziej oplacaloby sie wpiąć się w to I2C sondą logiczną...
ad 1/ Nie, nie wymaga on zewnętrznej pamięci. Wbudowana pamięć wystarcza do buforowania ramek wychodzących i przychodzących. Kontroler może sobie dane z tej pamięci przenosić do dodatkowej pamięci w procesie pobierania pakietów. ad 2/ Najlepiej podłączyć pod interfejs zewnętrznej pamięci ram (najlepiej współdzielone z dodatkową pamięcią) - jeśli to...
Dam Ci jeszcze coś z czym sie możesz przespać (nie dosłownie) po prostu przemyśleć jak to obsłużyć :D hahahaha Podczas programowania procesora najczęściej pamięć Eeprom jest czyszczona i zapisywana wartościami &HFF dla każdej komórki. Wtedy kiedy dla każdej z ośmiu pozycji będziesz chciał wczytać zapamiętane wartości to wczyta dwa FFFF czyli 65535 Zadana...
Nie. Pamięć FLASH podzielona jest na strony. Zapis zasze obejmuje na raz całą stronę, a jest ona zapisywana ze specjalnego bufora. Przed zapisem strony FLASH (podajesz nr strony), musisz wcześniej załadować bufor danymi. W tym celu najpierw robisz load program memory page (i ładujesz zawartość strony), a potem załadowaną stronę zapisujesz do pamięci...
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...
Wygląda na problem z zasilaniem, pamięć eeprom jest niestety dość czuła na tym punkcie. Próbowałeś włączyć Brown-out detection z ustawieniem na odpowiedni poziom napięcia?
Faktycznie ta pamięć ma możliwość zapisu pojedynczego bajtu. Stronicowanie w jej przypadku dotyczyć będzie jedynie kasowania w sektorach po 4kB, blokach po 32kB lub całej pamięci.
Witam! Osobiście korzystałem z Mam pytanie: czy jesteś w stanie określić czas zapisu bloku na kartę SD przez Atmegę128 (z jakim zegarem)? Jaki jest rozmiar bloku? Muszę gdzieś zapisać kawałek z przetwornika, i myślę o karcie SD. Alternatywą jest pamięć na magistrali szeregowej i2c albo SRAM (ale to ostateczność)
W zasadzie skopiowałem przykładowy kod z noty, nie działa mi zapis do wewnętrznego EEPROM'a, odczytuje ciągle 0xFF. Piszę w C, AVRStudio4, procek kręci się na 12MHz, nie mam włączonej żadnej optymalizacji (-00), nie wykorzystuje bibliotek, programuje mkAVRcalculator. Fuse bit's: LOW = 0xFF, HIGH = 0xD9, Extended = 0xFF, lock byte = 0x3F. [syntax=c]...
http://obrazki.elektroda.net/43_12786005... Atmega fusebit doctor, jak sama nazwa mówi, to urządzenie do naprawienia nieumiejętnie przestawionych fusebitów w mikrokontrolerach z rodziny AVR. Największymi problemami jest ustawienie nieprawidłowego źródła zegarowego (fusebity CKSEL), wyłączenie programowania SPI (fusebit SPIEN), lub ustawienie pinu...
dalej nieznam odpowiedzi ,czy pamiec dataflash = mmc ?? Dataflash<>mmc .Natomiast jest wielce prawdopodobne , że mmc=dataflash+uC ;) Wracając do Twojej pamięci , to jej zapis/odczyt musisz napisać sam , przy użyciu instrukcji o których wspomniałem wcześniej. Piotrek PS Coś mi świta , że chyba kol. Marcin Wiązania napisał i udostępnił procedury...
Jeżeli dobrze rozumie, to chcesz powiększyć flash używając zewnętrznego a w nim załadować nie dane, tylko program, który ma być wykonywany? Sądzę, że raczej nie ma takiej możliwości, z powodu takiej a nie innej konstrukcji Atmegi. Ale o ile dobrze pamiętam, Atmega8 (chyba) może sama się programować. Jeżeli tak jest to można przeznaczyć jakiś fragment...
http://obrazki.elektroda.pl/3303656700_1... Wariometr, Atmega168 + LCD Nokia 3330 / 3310 + Bosh BMP085 Witam. Przedstawiam projekt, który zrobiłem na zaliczenie na studiach, a tym samym chciałem, aby był użyteczny. Wariometr elektroniczny służy do pomiaru prędkości pionowej. Można go stosować do wolnego latania paralotniarzy. Polega...
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...
Niżej głupoty :P Lepiej w wiki sprawdzić :] nie 100% głupoty ale mija się z prawdą, (Link post niżej dał kolega) HEX jest zapisany jako liczba 16 w ASCII czyli 8 bitów zajmuje 16 + do tego adresy komórek początkowych co jakiś czas (bynajmniej tak mi się wydaje) :1000000012C02CC02BC02AC029C028C027C... Tak wygląda 1 linijka pliku HEX Adres: :10000000...
ten link od Rolanda moim zdaniem jest dużo lepszy bo biblioteka jest łatwiejsza w zrozumieniu choć niestety i uboższa w obsłudze. jeśli kolega da sobie na wstrzymanie do soboty to wyślę swoje źródło "wiedzy" na atmega32 bo teraz nie mam nic pod ręką. Uprzedzam jednak że przydałoby się źródło czasu i daty w układzie bo inaczej trzeba będzie "udawać"...
Witam wszystkich, mam problem z podłączeniem zewnętrznej pamięci ram - 6264. W bascomie ustawiłem $xramstart = &H1060, a rozmiar w opcjach -> kompilator -> układ, na 8KB. Dołączam schemat podłączenia pamięci do mikrokontrolera. Układ po zdefiniowaniu zmiennej nie zapisuje danych w pamięci zewnętrznej: Dim Zmienna As Xram Byte Zmienna = 10 pamięć jest...
Witam Ok kilku dni walczę by zapisać za pomocą Atmegi 128 cosik w pamięci SD, w formacie fat32. Korzystam z dwóch bardzo ciekawych bibliotek 1. By CC Dharmani http://obrazki.elektroda.net/74_12515581... Bawiłem się pamięciami SD : 256MB Medion, 1GB Kingston, 1GB Pretec. Karty są w trybie unlocked ( taki mały żółty suwak przy każdej z pamięci) Powyższe...
Witam Na szynie I2C podłączoną mam kość PCF8583 oraz pamięć 24C64. Wykonuję zapis do pamięci a następnie odczyt. Jednak podczas zapisu następuje przekłamanie danych. Np zapisuję wartość 35 do pamięci a w rzeczywistości zapisana zostaje wartość 32 lub 33. Gdy odłączę od szyny I2C PCF8583 problem znika. W czym więc leży problem? Bardzo proszę o jakieś...
Przedewszystkim pamięć 24c08 to są 4 pamięci 24c02 w jednej obudowie. Maksymalny adres w pamięci to jeden bajt(255 max) a nie jak u ciebie 335. zmień typ zmiennej adr na byte i adresuj maksymalnie do 255. proponuje wstawić krótkie opóźnienie tak aby pamięć miała chociaż szansę się wykazać. ponieważ tam pamięć jest podzielona na cztery podstrony(każda...
Co do: Procesor32 napisał: Zapisujesz nazwy pod ten sam adres w EEprom Writeeeprom Q , 13 I odczytujesz też z tego samego adresu. Jeśli przeczytałbyś dokładnie post I po sprawie.Nie musisz pamiętać adresu pod który masz zapisywać i z pod którego odczytywać. Prosto i bez problemu. Jest to prosta metoda zapisu do EEProm, ale ma zasadniczą wadę. Użytkownik...
Co ciekawe, błąd TWI pojawia się tylko przy zapisie do AT24c1024, co ciekawsze - po wystąpieniu błędu i zresetowaniu TWI w atmedze pamięć ta dalej trwa w "zawieszeniu", wystarczy jednak odczytać inny układ na magistrali (np. odczytać czas z PCF8583) i pamięć wraca do życia. Prawdopodobnie robi to warunek STOP.
(...)prosiłbym aby ktoś bardzo łopatologicznie wyjaśnił mi co to jest impedancja? Czy jest jakaś różnica pomiędzy impedancją a impedancją falową? Wiem że chodzi tutaj mniej więcej o opór przy prądzie stałym. Próbowałem poczytać trochę o tym ale te regułki z podręczników jakoś do mnie nie trafiają. Ja tylko objaśnię czemu rezystor szeregowy pomaga w...
To w tym złego, że ilość zapisów do EEPROM jest ograniczona. Zapis do RAM jest problematyczny, bo co jak wysiądzie zasilanie? Trzeba robić sygnalizację i podtrzymanie na czas zapisu danych do EEPROM i specjalną obsługę tej sytuacji w programie. Dlatego albo zastosuj programowe rozwiązanie - wear leveling, albo wsadź pamięć FRAM.
Czuję się powalony na łopaty..... Piotrek ja nie wiedziałem, że do wewnętrznego eeprom-u można tak bezpośrednio zapisać zmienną SINGLE. Ciągle czytałem o konieczności rozbiórki, a nikt do tej pory takiej prostej rzeczy nie napisał.... Nawet w Pomocy BASCOM-a (tłumaczenie na polski) tego nie ma, ba nawet w książkach na temat AVR "tysz ni ma".... To jest...
Witam Mam układ składający się z procesora i pamięci kilka MB. Chciałbym wgrywać do tej pamięci dane z komputera np. pliki wav lub mp3. Ma to być jednocześnie proste. Chciałbym do mojego procka (prawdopodobnie jakaś ATMEGA) dołożyć konwerter FT8U232BM. Poszukujęteraz jakiegoś punktu zaczepienia. Narazie mam kilka pytań: 1) czy pamięć bedzię musiała...
W datasheecie mówi się o 10000 dla Flash i 100000 dla EEPROM. Proponuję użyć EEPROMa, albo jeśli wolisz - po prostu podłącz sobie jakąś pamięć zewnętrzną, na przykład MMC albo SD.
Witam. Mam problemik i bardzo prosze o pomoc. Robie projekt, w którym za pomocą USARTA chce zapisywać i oczytywać rejestry układu Wiznet (traktowany jako pamięć zewnętrzna). Problem polega na tym, że interfejs pamięci zewnętrznej działa ok do momentu, kiedy układ nie obsługuje przerwania. Po powrocie z przerwania pamięć zewnętrzna się nie chce zapisywać....
Witam. przerabiam właśnie program z 8051 na ATmege i mam problem z pewną deklaracją. u_int xdata Loc_var; pytanie co zrobić z tym xdata?? wyczytałem ze tak się deklaruje zmienną w zewnętrznej pamięci dla 8051. ja przerabiam to na ATmege64 i też mam do niej doczepioną zewnętrzną pamięć i chciałbym zrobić przez analogie tak samo. Czy w gcc jest jakiś...
Jeśli nie zależy Ci na kosztach specjalnie, to kupiłbym pamięć FRAM, działa po I2C, jest bardzo szybka, nie "zużywa" się, kosztuje kilka złotych.
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.
Sygnał podlega dalszej obróbce w integratorze, przerzutniki Schmita i mikrokontrolerze. Z tym nie ma problemu. Natomiast mam problem z testowaniem elektroniki – musi współpracować z czujnikiem a to nie takie proste – nie mam ciągłego dostępu do pracującego czujnika. Jaką funkcję pełni czujnik? Przy tak prostej elektronice chyba nie ma znaczenia...
Problem dotyczy wszystkich języków programowania i wszystkich mikrokontrolerów. Chodzi o uszkadzanie się zawartości pamięci eeprom kiedy program idzie w krzaki. Zauwzyłem, żę kiedy traktuję atmegę zakłoceniami emc potrafi o ona zacząć wykonywać inny fragment kodu (bascom), jakby skoczyła pod jakiś przypadkowy adres. objawia sie to czasem podwójnym pisaniem...
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...
Gdybym opisał program wszystko stałoby się oczywiste :D Użycie IF ELSE bez END IF zawsze warte jest omówienia bo potem nikt nie może się doliczyć END IF :D Chodzi o to że jeśli tylko jedna instrukcja jest od jakiegoś warunku zależna to można ją zapisać w jednej linii. Jeśli z powodu jakiegoś warunku musza juz być zmienione dwie zmienne lub wykonać się...
No dobra, oto opis, co chcę osiągnąć: 1.Jedna atmega ma zapisywać coś do pamięci. 2.Druga mam to odczytywać A gdzie arbitraż? Pisaliście, że dwie atmegi mają być podłączone do jednego portu. To je podłączyłem. Pisało "do portu" nie "do pinu"... TITO . Przekaźniki miały służyć do zamiany podłączeni atmegi a attiny miała je kontrolować. Co ja mam tam...
No widać można zdziałać rzeczy niemożliwe gdyż mój u mnie dane są zapisywane na kartę SD, na Atmedze 32. A dla kolegi który się zlitował program: Config Date = Dmy , Separator = / Config Clock = Soft Enable Interrupts Time$ = "15:00:00" : Date$ = "02.01.09" Dim Gbtemp1 As Byte ' scratch byte Gbtemp1 = Initfilesystem(1)...
Tutaj muszę najpierw dopowiedzieć, że spotkałem się z kolegą (at)piotrva (bardzo sympatyczny młody geniusz) i przekazałem jedną z dziwnie zachowujących się ATMeg do testów - dlatego teraz testy wychodzą spod jego pióra. W piątek kupiłem nową ATMegę32 (na Wrocławskiej) i już chciałem napisać, że oczywiście wszystko jest OK (bo zaprogramowałem od razu...
Zapisuje sobie ramki przesyłane po RS485 w pamięci zewn SRAM współpracującej z ATmega162. Program pisze w WINAVR. Ze wzgledu na to że współdzielony jest obszar wewn i zewn pamięci SRAM, oraz moja zewn pamięc ma pojemność 0.5 MB to podzieliłem ją sobie na 16 stronic po 32 kB każda. Wewn i zewn pamięć rozdziełam bitem A15. W ten sposób aby wpisać cos...
Dziękuje za odpowiedzi. Muszę przyznać że zainteresował mnie temat kart SD/MMC. Trochę już sobie poczytałem i mam pytania: Wiem że nie da się zapisać pojedynczego bajtu tylko paczkę 512. W moim przypadku będę tylko odczytywał dane więc czy musze odczytać całe 512 czy mogę tylko jeden wybrany z paczki. Jak z czasem odczytu? Nie będzie to wolno działać...
Witam! Mam zamiar napisać program który zapisuje dane odebrane z zewnętrznego urządzenia do pamięci mikrokontrolera, po czym później ma mieć możliwość ich udostępniania. Z racji tego że danych ma być około 100kbajtów (pamięć nieulotna) postanoiwiłem użyć do tego celu mikrokontrolera ATMega128. Sam program zajmować bedzie w pamieci mikrokontrolera około...
Witam! Ostatnio musiałem przerzucić projekt z atmega8 na atmega168 (więcej sprzętu i pamięci) ... i zaczęły się problemy. Chyba kilkanaście razy sprawdzałem cz poprawnie skonfigurowałem wszystkie rejestry i dalej nic, program lubi się czasami wysypać, lub nie działa wg. oczekiwań, gdy na atmega8 działa ok. Podejrzewałem że wina może tkwi po stronie...
Jeśli się nie myle to np. w bascomie można wyłączyć żeby podczas resetu nie czyściło sram i ramu. Wg. specyfikacji atmegi wewnętrzną pamięć eeprom możesz zapisać 100000 razy, więc przy zapisie co 1h starczy to na jakieś 11 lat, a co potem ? no chyba że zegarek nie wytrzyma tak długo ;)
Zawsze sa jakieś "cons" i "pro". W pliku Hex zawartych jest dużo więcej informacji takich jak adres gdzie dane umieścić i suma kontrolna etc. Jeśli więc w takim AVR chcesz umieścić tylko bootloader na końcu flash pod dalekim od zera adresem to taki Hex na PC`cie zajmuje mniej miejsca niż Bin bo w Bin albo cały obraz pamięci trzeba zapełnić zerami albo...
... 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....
Hmm, ... Komunikat z programowania: - odczytano poprawnie sygnaturę ATmega328p, - wykasowano pamięć, - zapisano 486 bajtów, - odczytano 486 bajtów, - zweryfikowano poprawnie. Nic dodać nic ująć - programowanie przebiegło pomyślnie. Problem leży więc w programie lub podłączeniu diody, ale twierdzisz, że wszystko jest OK. Co mogę jeszcze sprawdzić ......
W nocie katalogowej jest zapisane że przy napięciu 3,3V będzie chodzić Atmega8L. Ta bez "L" jest dla zasilania 5V. W takim razie jeśli masz kość c L-em obsłużysz pamięć bez dodatkowych buforów w logice 3,3 V Pytanie tylko jak takie napięcie zasilania wpłynie na proces programowania np. programatorem np. STK200 ? Swoją drogą zainwestowałbym w inną pamięć...
Wejdź na stronęprogramatora Dybkowskiego. Pamięci DataFlash programuje sięprawie identycznie jak procki z tą różnicą że zamiast Resetu podłączasz CS. Nie będę polemizował ale chyba nie masz racji ( uzywam DataFlash z ATmega i jakoś nie widze podobieństw - ale może się myle ?) A chciałeś programować tą pamięć za pomocą programatora podpiętego do PC...
Witam! Mój projekt ma za zadznie sterować komorą chłodniczą z jednoczesnym pomiarem i rejestracją temperatury. Temperatura ma być mierzona w 10 punktach więc wybrałem czujniki dallasa 18b20, zegar czasu rzeczywistego z kalendarzem PCF8583. Zastanawiam się nad atmega a coś z rodziny 8051. Oraz pamięć conajmniej 64kB, powinna wystarczyć na zapis temperatury...
Witam, Fusebit-y są zaprogramowane poprawnie. Ale kolega nic nie wspomniał o zabezpieczeniu bootloadera przed samonadpisaniem. Nalezy ustawić w tym celu odpowiednie Lockbit-y i tym samym uniemożliwić wykonanie operacji SPM w sekcji bootloadera. Kolejna sprawa, dlaczego kolega lokalizuje bootloader pod adresem7000?? Przy rozmiarze sekcji boot flash 2048...
Takie zgrywanie danych to niepotrzebna komplikacja. Lepiej i łatwiej mieć 2 karty SD. Jedna cały czas w urządzeniu, a trener je po prostu raz w tygodniu zamienia. Inaczej by trzeba było układ, IMO niepotrzebnie, o zewnętrzną pamięć zmodyfikować. Dodać procedury kopiowania danych itd. Ja bym tą drogą nie szedł. Pod M32 znajdziesz dużo przykładów, a najprostszy...
Witam. Da się w języku c zainicjować zmienną w określonej komórce pamięci RAM? Podłączyłem do ATmegi1280 zewnętrzną pamięć RAM i chciałbym sprawdzić czy zachodzi komunikacja pomiędzy tymi dwoma układami. Wewnętrzna pamięć RAM tego mikrokontrolera adresuje się do 0x21FF, a zewnętrzna od 0x2200 do 0xFFFF. Chciałbym więc zapisać jakąś liczbę w pamięci...
Owszem, odczyt jest faktycznie możliwy (lecz nie we wszystkich AVRach), lecz zapis fusów nie. A moja wypowiedź dla przypomnienia: W ATMega nie można zmieniać programowo stanu fusebitów. Jest kolega tego pewny ? fusebity to normalna pamięć którą można tak samo odczytać jak i zaprogramować Każdy mikrokontroler wykonujący instrukcję spm zaprogramuje fusebity...
No więc w ten sam sposób nie zapiszesz do zewnętrznej pamięci EEPROM. Po pierwsze, ona jakoś się komunikuje z procesorem, popularne interfejsy to SPI lub I2C. Taką zapewne pamięć masz. Więc musisz oprogramować komunikację z nią. Jak już będziesz miał komunikację z pamięcią to musisz napisać własne funkcje wyższego poziomu, realizujące zapis/odczyt struktur,...
To wytłumaczę to tak. Tak jak w pętli jesst to wskazane zapisuje bity od 0 do 100 potem zostawia pamięć nie ruszoną do 255 i znowu zapisuje 100 bajtów i znowu do 255 nie tknięte i tak w kółko aż do końca pamięci. Podmień te dwie funkcje z tej biblioteki. Błędem w tej bibliotece jest używanie makr "bit_is_set()" do sprawdzania stanu bitu, ponieważ makro...
Nie da się tego układu wykorzystać tak jak pamięci wewnętrznej ATmegi328p, można ją wykorzystać jedynie jako pamięć dodatkową. Jest to pamięć na tyle szybka, że nie powinna wymagać wprowadzania opóźnień przy obsłudze, może też pracować wolniej. Według dokumentacji ta pamięć posiada 16 pinów adresowych (ich numery zaczynają się od zera), 8 linii danych...
zapis odczyt pamięć atmega atmega pamięć zmiana zapis pamięć
iskry cewki micra pilot philips przycisk wzmacniacz samochodowy 1000w
bosch szlifierka włącznik bosch szlifierka
Lumel RE11 – instrukcja obsługi, konfiguracja, PID, alarmy, montaż regulatora temperatury Rok produkcji pralki Miele WKF 110 WPS