int to 2 bajty więc 450 x 4 x 2 = 3600 bajtów ,atmega32 ma sram 2kb :!:
Coś może w takim stylu. Kod wyrwany z większej całości i trochę zagmatwany. Jest to fragment kodu do tablicowania wyjść w zespole wyświetlaczy 7-segmentowych LED. Fragment dotyczy wspólnych anod/katod ale jest również w podobnym stylu do obsługi poszczególnych segmentów podpiętych do różnych/dowolnych portów i pinów. Większość rozwiązań wykorzystuje...
Myśle ze to nie problem na atmedze8 bo to szybkie bydle. Jezeli na Z80 (1.5 Mips) chodzi tablica 240x64 przy 60 Hz to atmega poradzi sobie bez mrugniecia.
...niestety nie znam asemblera. Nie musisz znać. Jak przeczytasz uważnie i zrozumiesz zasadę, to sam napiszesz procedurę obsługi przerwania w C. Dla częstotliwości PWM rzędu kilkunastu kiloherców i zegara CPU 8MHz przerwanie występuje co ponad 500 taktów, więc nawet procedura napisana w C nie będzie za długa (myślę, że nie powinna przekroczyć 100 taktów)....
Zdecydowanie tablica może być mniejsza. Nakładając dodatkowe założenia zdroworosądkowe, np. a) prawdopodobniestwa wartości nie zależą od konkretnego wsadu, lecz od 'średniego wsadu'. Wprawdzie zysk mniejszy ale prostsze. Konkretne prawdopodobniestwa w dekompresorze chyba nie są już potrzebne. b) jakieś sortowanie c)drzewo jako tablica, w jakiś częsciach...
Ale ja nie mówię żeby odczytywać dwa razy ten sam sektor, tylko żeby zmodyfikować funkcję odczytującą aby odczytywała mniejszą ilość danych. Ja bym zrobił tak, że była by jedna tablica 512B, i jak odtwarzanie przekroczy 256, to odpalana jest funkcja czytająca sektor. I wysyła ona żądanie odebrania 512-tu bajtów, oraz zaczyna odczytywać, ale odczytuje...
W rzeczywistości jest dużo czytelniejsza niż na filmie (słaba jakość), ale mówiąc o filtrach co masz na myśli? Filtry w postaci kolorowych naklejek? Jeśli chodzi o czas to zajęło mi to bardzo dużo czasu ze względu na to że głównie powstawała w weekendy, ale mając gotowy soft, wzory pcb itd sądzę że wykonanie nie zajęło by więcej czasu niż Tydzień, a...
Kombinowałem na różne sposoby i nadal nie rozumiem na jakiej zasadzie odbywa się sterowanie tymi układami z poziomu programu. Samą tabelę z datasheet zrozumiałem ale nie widzę co trzeba zmieniać w programie, by móc dostosowywać go do swoich potrzeb. Mógłbym Cię prosić abyś dorzucił kilka komentarzy? Zdecydowanie pomogłoby mi to w zrozumieniu. Musisz...
Przeniosę to przerwanie i tablice do plików .c. Ale wtedy w pliku głównym .c mam includować plik przerwania .c? Myślałem, że tam inkluduje się tylko pliki .h Nie musisz include'ować pliku .c, a nawet nie powinieneś. W Makefile dopisz go tylko do plików źródłowych (SRC = $(TARGET).c przerwanie.c inny_plik.c itd.) a linker odwali resztę roboty. Zostało...
Mając trochę wolnego czasu napisałem parę funkcji do obsługi układu PCF8583. Funkcja która ustawia godzinę i datę zapisuje też dane potrzebne do obliczenia pełnego roku, dzień tygodnia jest obliczany automatycznie na podstawie daty. Funkcje Pcf8583_write i Pcf8583_read można wykorzystać do zapisywania/odczytywania danych z wolnej pamięci ram. Dostępne...
Jestem elektronikiem hobbystą i raczkującym programistą. W moim mieszkaniu własnościowym w bloku w trakcie remontu wykonałem instalację elektryczną w nietypowy sposób; -wszystkie gniazdka 230V mają swój kabelek aż do tablicy; -wszystkie wyłączniki mają swój kabelek aż do tablicy; -wszystkie lampy mają swój kabelek aż do tablicy. Tablica jest częścią...
Witam, mam problem z odczytem tablicy dwuwymiarowej wysłanej do funkcji. Próbowałem już na kilka kombinacji ale nie mam już pomysłu i pewnie robi gdzieś błąd. Chodzi mi o to jak zadeklarować odpowiednio funkcje , jak wywołać w main(dokładnie jak zapisać argument) i jak to odczytać w funkcji. tablica zapisana w pamięci flash [syntax=c]prog_uint16_t graf[10][10]={...
Witam Męczę się już kilka godzin nad tematem i nie mogę sobie dać rady. O ile ręczny odczyt z tablicy jest ok tak z odczytem w pętli mam wielkie kłopoty. ADIW dodaje bezpośrednio jedynie do 63. Ja potrzebuję odczytać bynajmniej 120 bajtów w pętli o zmiennym adresie. Przypuszczam,że w grę wchodzi Z+ , lub nawet RAMPZ lecz nie mam pojęcia jak to zorganizować....
Witam, Próbuję zrobić porównanie zawartości tabeli z tekstem w tym przypadku to litera "E". Nie wiem gdzie popełniam błąd. [syntax=c] uint8_t pozMe = 0; uint8_t maxMe = 4; const char * Menu[][4] = { {{"Ust."} ,{"a"} ,{"A"} ,{"?"}}, {{"Ust."} ,{"b"} ,{"B"} ,{"?"}}, {{"Zmien"} ,{"c"} ,{"C"} ,{"?"}}, {{"Exit"} ,{"e"} ,{"E"} ,{"?"}} }; void ..... // inna...
Witam, wymyśliłem generator ("prostokąt") na atmega. W założeniach miałem częstotliwość do 5MHz i wyświetlanie na LCD w Hz. Moje pytanie brzmi czy program jest napisany poprawnie, oraz co należało by zmienić? $regfile = "m8def.dat" 'Info dla kompilatora. $crystal = 8000000 'Informujemy kompilator o kwarcu 8MHz. Config Lcd = 16 * 2 'Konfiguracja...
No właśnie, apropo 74595 to juz nawet miałem zmontowany układ na tym, ale nie bardzo obczajam te zatrzaski. Tak w ogóle to miałbym kilka konkretnych pytań : - jeśli połączyć kaskadowo, np. 74595, to on ma takie zdublowane wyjście z ostatniej końcówki, rozumiem że podłączam to pod wejście następnego - clk do wszystkich na raz ? - 74595 ma oddzielne clk...
Witam, swojego czasu zrobiłem sobie wyświetlacz widmowy, jednak po zabawach w bascomie stwierdziłem że ma to większy potencjał i postanowiłem z niego zrobić zegarek :) Tu zaczęły się schody w ramach testu stworzyłem tablice dla znaków od 0 do 9 plus ":" jako oddzielenie godzin od minut. Jednak program nie wyświetla poprawnie cyfr od 0 do 4 reszta wyświetla...
http://obrazki.elektroda.net/94_12891676... Witam. Mam do zaprezentowania moje wykonanie znanego już pewnie dobrze zegara tekstowego. Cala elektronika zmontowana w oparciu o projekt Mirleya ze strony: http://mirley.firlej.org/zegar_tekstowy Różnice od oryginalnego projektu są tylko w rodzaju diod i kosmetycznych sprawach wiec w zasadzie jest...
Prawie: for (int i = 0; i < 4; i++) { GPIO_InitStruct.Pin = out_pins.pin; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(out_pins[i].po... &GPIO_InitStruct); out_pins[0] = out_1 out_pins[1] = out_2 out_pins[2] = out_3 out_pins[3]...
Witajcie mam oto następujące tablice ledowe i pytanie do was jak je wysterować lub co można zrobić z ich udziałem. Chodzi o wykorzystanie jakiejś atmegi do sterowania tymi wyświetlaczami. Kto z was posiada dobre pomysły. Za ciekawy pomysł, napisanie lub udostępnienie wsadów schematów tablica gratis :) mam ich sporo. http://obrazki.elektroda.pl/5333765000_1...
Tablica jest multipleksowana, schematu niestety nie udostępnię, bo został skomercjalizowany. Wygląda to (mniej więcej od strony logicznej) tak: http://obrazki.elektroda.pl/6646143200_1...
Teraz jak zadeklarujesz zmienną o typie access to dostęp do poszczególnych bajtów zamiast indeksu i tablicy wielowymiarowej uzyskujesz poprzez zmienna.Low i zmienna.High, sama tablica staje się jednowymiarową tablicą o typie access. Jednocześnie możesz prowadzić uśredniania i inne działania bezpośrednio na zmiennej, z pominięciem rozbicia na młodszy...
Witam, Od jakiegoś czasu Atmel/Microchip wprowadził do oferty nowe układy ATMEGA i TTINY z nowych serii określanych jako 0-series 1-series. Ponieważ zacząłem wykorzystywać układy z tych serii postanowiłem napisać do nich własny bootloader z szyfrowaniem danych algorytmem AES. Założeniem było aby go zmieścić w 768 bajtach kodu (mocno zoptymalizowany...
Ok, ok, tylko jaki jest w takim wypadku mechanizm ładowania zer (lub przechodzenia do następnej pozycji tablicy) podczas drgań styków? Wstawiłem opóźnienia (wartość 20-120 ms) tam gdzie wciska się lub zwalnia jakiś przycisk i nadal program nie działa tak jak trzeba: [syntax=c] #define F_CPU 1000000UL #include <avr/io.h> #include <util/delay.h>...
Podczas kompilowania pliku oprogramowania do arduino nano atmega 328 wyświetla się błąd kopiowania "declaration of 'FreeSmallFont' as array of references" i podświetla się linia w programie: "extern uint8_t SmallFont Do zanalizowania problemu potrzebny jest wgląd do kodu źródłowego. To nie jest błąd kopiowania, ale błąd związany związany z niepoprawną...
Może udałoby się ten spadek wydajności jakoś lepiej zbadać, obserwując czas vs ilość zapisów oraz aktywność SPI. Gdyby udało się dowiedzieć co dokładnie powoduje te spowolnienia to byłaby szansa na optymalizację. Tablica alokacji puchnie? Sentencje NMEA powinny być standardowe, podejrzewam że można zastosować swój odbiornik GPS?
Tablica zadeklarowana bez słowa const zawiera zmienne. Tobie prawdopodobnie chodzi o to, że chcesz mieć w tablicy adresy zmiennych, czyli wskaźniki na zmienne. Proste - przeczytaj odpowiedni fragment odpowiedniej książki o programowaniu w C, zrozum wskaźniki, a potem pisz. Z drugiej strony - na atmega niekoniecznie to będzie sensowne. Równie dobrze...
Witam, Mam pewną tablicę w programie umieszczoną na końcu programu i mam pytanie jak zaadresować jej początek w programie ? Atmega328 ma pamieć Flash od 0000 do 3fff (HEX) i owa przykładowa tablica ma 96 znaków (60hex). Chciałbym aby znajdował się jej początek pod adresem powiedźmy 3f00. W asm będzie to komenda .org $3f00 jednak w Bascom nie działa....
Tablica w pamięci kodu (z tym, że przykład jest dla char): http://mirekk36.blogspot.com/2013/11/tab... Mając taką tablicę wyszukujesz pomiędzy którymi punktami tablicy leży wartość i liczysz https://pl.m.wikipedia.org/wiki/Interpol...
Jeszcze jeden błąd - voltage_result ma miejsce tylko na 4 znaki, ale jeden z nich to musi być NUL, więc tablica powinna być co najmniej 5 elementowa.
Witam Pisze własną implementację stosu TCP IP na ATmega2560 i dotarłem do pierwszej ściany... Napisałem prostą implementację UDP. Wysyłam pakiet na serwer udp napisany w Javie na PC. WireSkark pokazuje, że pakiet dociera do komputera. Numery portów i adresy się zgadzają, WireShark nie pokazuje żadnego błędu w ramce, więc kod jest chyba poprawny a mimo...
Wykorzystanie timera do odliczanie czasu impulsów. Tablica z z wszystkimi krokami silnika, zmieniany indeks tablicy po przepełnieniu licznika.
http://obrazki.elektroda.net/80_12446604... Odtwarzacz plików dźwiękowych wav 32 Wykaz elementów: Mikroprocesor ATMEGA8 oscylator wewnętrzny 8Mhz Wyświetlacz graficzny 176x132 65536 kolorów Karta pamięci Micro-SD 1GB Stabilizator napięcia +5V oraz 3,3V Rezystory – stanowiące dzielnik napięcia Przyciski – umożliwiają komunikację z użytkownikiem...
Tomasz może zacznijmy od tego że bascom nie koniecznie jest najlepszym wyborem do rozbudowanych projektów bo wiele bibliotek działa dobrze "solo" ale nie zawsze z duecie czy trio z innymi . Bascom często wykorzystuje w nich układy zegarowe i to bywa zgubne dla wielu aplikacji . Na bolączkę kolegi jest jedno lekarstwo tablica do przeliczania wyniku ale...
bo ta tablica jet 16 bitowa i calosc zajmuje 64kb pamieci flash procesora
Analizator widma na tym wyświetlaczu to by było coś, chociaż i tak z samych zdjęć już wygląda imponująco. Sam kiedyś zbudowałem "podobny" wyświetlacz (tzn. trzy matryce czyli 8 * 15 punktów i do tego tylko na kościach TTL + RAM 6116) ale niestety nie zadziałało :) Zastanawia mnie twój kwarc, pracowałem przy prędkości transmisji 115kbit/s z mniejszym...
Zlece napisanie programu ( lub pomoc przy napisaniu programu) do µP ATmega 32 - Uklad w ktorym pracuje mikroprocessor to Tablica swietlna na martycach diodowych LED.Urzadzenie musi komunikowac sie z komputerem PC poprzez modul USB Urzadzenie mam gotowe,program dla PC napisany jest w jezyku C# ( jest rowniez gotowy) pozostaje napisanie programu...
To bez wzgledu na to czy przy deklaracji podam rozmiar tablicy, poprawnie przesyla , w tym przypadku 0x65, więc gdzieś ta tablica jest zapisana, tylko odwołanie do jej elementów w pętli jest jakby "niepoprawne" Tak jaby czytał z flash a nie ram lub na odwrót. Co pokazuje debuger?
Witam. Od paru godzin męczę się z niedziałającym USARTem na atmedze32. Na atmedze88 wszystko śmiga jak ma więc przejściówka USB<->RS232 jest ok. Brak zimnych lutów na płytce. Kwarc zewnętrzny (ustawiony jako EXTHIFXTALRES_258CK_4MS - przy czym nie wiem czy tak ma być dla kwarcu 16MHz). Kod zamieszczam poniżej: [syntax=c] /* * softPWM.c * * Created:...
Czyli tablica wyglądałaby tak: int kuna[][2]={ rand()%28000+439713;, rand()%1+5000; • • • ? Nie. Losowa ma być generowana każdorazowo w samym uC. Tylko czy ona będzie w tablicach generowana tylko raz, czy za każdym wywołaniem play(kuna, 0, 15)?
Nie jest tak źle, właśnie testowałem, atan potrzebuje ok. 2850 cykli, to dla 16 MHz daje czas wykonania około 178 mikrosekund. Funkcja atan2, która robi to co chcesz (stosunek dwóch argumentów) wykonuje się ciut krócej - ok. 2830 cykli. Także np. ATMega może wykonać ok. 5600 takich operacji na sekundę. Niewiele ale może wystarczy. Oczywiście tak jak...
zamiast aproksymowac wielomianem mozesz tez stworzyc tzw. Look Up Table (LUT) - tablice zapisana w pamieci programu (jest jej pod dostatkiem w A128), tablica bedzia miala tyle wartosci, ile moze przyjac ADC dla pomiarow z Sharpa, u mnie od okolo 60-560. Wartosc ADC bedzie indeksem (ew. przesuniesz o stala wartosc zeby wyeliminowac nieuzywane wartosci...
Prawdopodobnie dlatego ze prog i tetno sa typu int a elementy wynik i tablica typu char.Musisz zrobic rzutowanie na int zeby sie nie czepial.Cos w ten desen: prog += (int)tablica[i]; itd. Dziwie sie natomiast czemu nie wyrzucil konkretniejszego warninga typu "you should cast ..."
A nie powinno być przypadkiem tak : [syntax=c]unsigned char fonts [] = {0x01, 0x01, 0x01, 0x01, 0x01};[/syntax] No bo skoro funkcja przyjmuje wskaźnik do char to tablica musi być typu char a nie tablica wskaźników do char. No i oczywiście ostatni element tablicy musi mieć wartość zero. A więc tak : [syntax=c]unsigned char fonts [] = {0x01, 0x01, 0x01,...
FFT na 4096 próbkach na AVR? Sprawdzałeś czas wykonywania tej Twojej funkcji FFT? Nie sprawdzałem, jak to będzie niezmiernie długo, to się zmniejszy do 1024. Z tego powodu, że AVR jest stosunkowo wolny, domyślam się, że nie jest możliwa obserwacja na bieżąco, zaakceptuję, jak jedno przeliczenie trwa ok. 5 sekund. Tablica wartości sinus i cosinus może...
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]
ten dekoder wysyła cyfry po kolei ? tak ? zakładam iż tak właśnie jest więc odczyt trzeba nadać w pętli lub określoną ilość razy zmienna "i" będzie numerem cyfry PINB - standardowy alias do stanu portu w rodzinie ATMEGA ton - tablica ja bym to widział w ten sposób //deklaracja zmiennych ... //Odczyt for(i:=0;i==10;i++) ton[i]=(PINB&0x0F); //Sprawdzenie...
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ść...
Funkcja, nie widzi tablicy deklarowanej w innym pliku. Co może być przyczyna ? Na co zwrócić uwagę. Poniżej wycinki z kodu. [syntax=c] /* ATmega 8 */ glowny.c //==================================== . #define REJESTR 50 int rejestr[REJESTR]; void main(void) . while(1) . wykonaj(&ramka,(ile_bajtow-1)); . .=======================================...
Później musiałem spędzić kilkanaście wieczorów i nocy na ujarzmieniu asemblera avr (do tej pory programowałem tylko 8051) i samego mikrokontrolera czyli timerów przetwornika ac, układów pwm oraz po tym wszystkim na pisanie programu. Rozumiem że cały program powstał w Asemblerze. Jeżeli tak to naprawdę wielki szacunek dla kolegi. Jeżeli chodzi o generowanie...
Witam po dłuższej nieobecności. Też mam już dylemat po co robić to z uC skoro jest już gotowy kontroler do tego LCD. Ale jeszcze powalczę z tym LCD. Wersja do tej pory wykorzystuje 127 lini wyświetlacza, ponieważ tablica w uC utwrzona została w Ramie. Atmega 128 posiada 4Kb więc jak byśmy wykorzystali dostępną pamięę na tablice graficzna to nie zostało...
Okazało się ze atmega chodziła na 1MHz...wewnętrznym oscylatorze... Ale teraz mam kolejny problem Dodano po 16 Więc jest tak, dzięki odpowiedniemu ustawieniu Fusebitów ustawiłem Atmegę na 8Mhz. Przeliczyłem tablicę stałych dla 8Mhz. I teraz mam pytanko: Uruchamiając ten program widać jak diody migają.. #define F_CPU 800000L #include <avr/io.h>...
Jak wyglada opkode instrukcji dzielenia w AVR ? Która ATmega ma ? ZTCW jest mnożenie (MUL), mnożenie znak/bez znaku (MULS), cząstkowe mnożenie (FMUL) + znak/bez znaku (FMULS), ale o dzieleniu nie słyszałem. Jest ponadto instrukcja modulo na dwóch dowolnych rejestrach (EOR). Polecan spis instrukcji asemblera na końcu pdf-a (najczęściej dalej jest już...
Chyba udało mi się rozwiązać problem (chyba :P). Informacje wysyłane zaczynają się u mnie od znaku $ i nigdy nie są dłuższe niż 13 znaków. W przerwaniu miałem obsługę czytywania każdego znaku z osobna i zapisywania kolejno do tablicy char[13]. Gdy tablica się zapełniła ustawiane były informujące obsługę żeby wykonała polecenie. Właśnie w tym miejscu...
Znowu muszę zacząć od tego, że ja się na BASCOMie nie znam... Ale to, że tablica Asciitable na końcu programu zawiera same zera wydaje mi się mocno podejrzane, bo jest używana do konwersji zawartości EEPROMu na "wyświetlalną". ;) Również to, że zawartość EEPROM jest pusta po wysłaniu zawartości przez łącze szeregowe jest podejrzane. Może jednak to nie...
atmega tablica chara tablica atmega atmega tablica kodzie programu
odkurzacz dyson problemy podlaczenie czujnika temperatury utrwalanie tonera
zmywarka whirpool mruga start bateria macallister
Wymiana żarówki światła postojowego w Passacie B5 1.9 TDI kombi Drukarki ELZAB Mera ONLINE - dostępność i funkcje