winavr zmienna adres

Znaleziono około 56 wyników dla: winavr zmienna adres
  • Dlaczego procedury zapisu/odczytu EEPROM 24C32 po I2C w WinAVR nie działają?

    Oki rozumiem, napisałem tak: [syntax=c]//zapis do eeprom twistart(); if ((TWSR & 0xF8) != (TWINT)) ERROR(); else { twiwrite(0b10100000); twiwrite(2); //adres twiwrite(123); //wartosc twistop(); _delay_ms(200); }[/syntax] No i wchodzi w if-a i wyrzuca komunikat o błedzie. Czyli co mam zła funkcje twistart(), tak.?? EDIT: Zauważyłem jeszcze ze przy zakomentowaniu...

    Mikrokontrolery AVR   21 Kwi 2011 17:44 Odpowiedzi: 6    Wyświetleń: 3443
  • REKLAMA
  • memchr() w WinAVR - NULL przy pierwszym elemencie struktury?

    Twój błąd polega na błednym przekonaniu, że skoro kompilator skompilował kod bez błedu to musi działać. I działa (przypadkiem), tylko, że wprowadza niejednoznaczność i nie ma nic wspólnego z dobrym stylem programowania i znajomością języka C. Wpisujesz pod przypadkowy adres bajt. Dlaczego przypadkowy? Czy zainicjowałeś wskaźnik Frame_LCD na strukturę...

    Mikrokontrolery   01 Mar 2007 15:51 Odpowiedzi: 10    Wyświetleń: 1293
  • Nie znalazłeś odpowiedzi? Zadaj pytanie Sztucznej Inteligencji

    Czekaj (2min)...
  • ATmega128 wew1MHz WINAVR [C] + lcd PG12864 złe wyświetlanie

    Witam ! Tracąc dziesiątki godzin szukania w Internecie i dwa tygodnie prób i błędów z w/w LCD proszę o pomoc (i pokazanie błędu) Dołączam kod w http://obrazki.elektroda.pl/7865128700_1... [syntax=c][/syntax] // --------- sterownik LCD -> chyba NT7108/NT7107 (podobny do KS0108 ) --------------- // ATmega 128 + POWERTIP -> LCD PG12864...

    Mikrokontrolery Początkujący   21 Lut 2015 16:44 Odpowiedzi: 5    Wyświetleń: 1029
  • [ATmega128] [ATmega128][C] Komunikat o signedness przy eeprom_read_byte w WinAVR

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

    Mikrokontrolery AVR   09 Paź 2009 18:12 Odpowiedzi: 8    Wyświetleń: 1558
  • Sterowanie TID - Sterowanie wyświetlaczem tid przez atmega32 w jezyku C

    Praktycznie kazdy program który znajduje używa biblioteki ice.lib mimo, ze nie znam bascoma to widze, ze jest deklarowana zmienna np. "tekst", a później uzywana funkcja z tej biblioteki pisz_tid {tekst} więc poniżej wstawiam to co jest w bibliotece. Hmm jak tak teraz patrze to widze, ze tu praktycznie assembler jest i nasuwa mi się pytanie, czy w winavr...

    Mikrokontrolery Początkujący   05 Lis 2013 19:02 Odpowiedzi: 32    Wyświetleń: 8442
  • REKLAMA
  • [ATmega32] Błędy kompilacji w kursie C dla ATmega32 z avrlib 1.6 na ZL3AVR 16MHz

    Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...

    Mikrokontrolery AVR   05 Maj 2011 11:04 Odpowiedzi: 18    Wyświetleń: 5350
  • REKLAMA
  • [ATmega32][C] Kurs progamowania w C z EdW Lekcja 10

    Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...

    Mikrokontrolery AVR   18 Sty 2011 20:05 Odpowiedzi: 2    Wyświetleń: 2037
  • [WinAVR][c][eeprom] - zapis i odczyt, jak to zrobić?

    Przyjrzyj się prototypom funkcji operujących na EEPROM - pierwszym argumentem jest adres, a drugim dana, powinno więc bć eeprom_write_byte(&liczba_LED,1);, analogicznie przy odczycie. Zapis &1 co ma wg ciebie robic? Pobierać adres literału? Druga rzecz, zmienne w pamięci EEPROM powinny być globalne, nie ma sensu ich definiować lokalnie, co prawda w...

    Mikrokontrolery AVR   12 Lis 2010 12:10 Odpowiedzi: 9    Wyświetleń: 3368
  • Dziwne zachowanie .ORG w AVR Assembler na Atmega w Avr Studio

    Witam Procek Avr Atmega, kompilator Avr Studio, fragment kodu: sinus: .DB0x80,0x83,0x86,0x89,0x8c,0x8f,0x92,0x... .DB0xb0,0xb3,0xb6,0xb9,0xbc,0xbf,0xc1,0x... .DB0xda,0xdc,0xde,0xe0,0xe2,0xe4,0xe6,0x... .DB0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0x...

    Mikrokontrolery   05 Sie 2007 11:02 Odpowiedzi: 6    Wyświetleń: 1458
  • avr - zegarek na 8 bitowym [timet0] [avr 32] [bascom] 2

    Witam ostatnio założyłem temat [url=http://www.elektroda.pl/rtvforum/to... ale przez moje nie dopatrzenie zostało no wyrzucony dziękuje wszystkim za pomoc chwilowo (po poprawkach) zegarek wygląda tak [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 16000000 Config Timer0 = Timer , Prescale = 256 On Timer0 Przerwanie Dim Licz As Byte...

    Mikrokontrolery   10 Paź 2012 18:20 Odpowiedzi: 5    Wyświetleń: 1674
  • Bascom-AVR: Zmiana stanu pinów na niski - konfiguracja wyjść

    Witam jak mogę zmienić wyjścia pinów na stan niski . Program napisany w BASCOM. [syntax=vbnet]$regfile = "m16adef.dat" ' specify the used micro ' generated. Take care that the chip supports all fuse bytes. $crystal = 8000000 $baud = 19200 ' used crystal frequency ' generated. Take care that the chip supports all fuse bytes. Config Lcd = 16 * 2 Config...

    Mikrokontrolery AVR   26 Maj 2020 20:03 Odpowiedzi: 8    Wyświetleń: 774
  • jedna zmienna z 80 znaków bascom avr wersja 1.11.7.4

    Koledzy potrzebuje pomocy w bascomie avr mianowicie np. dekoduje sygnał z jakiegoś wejścia czy jest to 1 lub zero i tak 80 razy. Problem jest taki jak zrobić aby każden odebrany umownie bit wpisać do jednej zmiennej. Jest to podobne do transmisji pilota najpierw sprawdzam czy zmienna to 1 czy 0 a tak odbywa się to ok. 80 razy w odstępach 200uS następnie...

    Mikrokontrolery AVR   29 Maj 2014 01:44 Odpowiedzi: 6    Wyświetleń: 1239
  • Jak ustawić kwarc 16MHz w AVRstudio Assembler? Szukam listy dyrektyw

    Witam. Mam dość zasadniczy problem na który nie znalazłem odpowiedzi. Potrzebuję w AVRstudio zdefiniować że mam podłączony kwarc 16MHz tymczasem AVRstudio z uporem maniaka twierdzi ze kwarc jest 4MHz w skutek czego zależności czasowe w symulacji mają się nijak do rzeczywistości. Znalazłem tylko przykłady w C oczywiście dla asm nie działają :( Przy okazji...

    Mikrokontrolery AVR   04 Gru 2008 21:50 Odpowiedzi: 10    Wyświetleń: 2189
  • REKLAMA
  • ATmega162 - Konflikt adresów SRAM i kontrolera RTL8019AS w AVT3505 i AVT1443

    Natrafiłem na następujący problem. Korzystam z zestawu AVT3505 oraz modułu AVT1443. Obie części zostały połączone w sposób analogiczny jak w projekcie http://www.ethernut.de/en/hardware/enut1... Zgodnie ze specyfikacją NE2000, kontroler powinien znajdować się pod adresem: 0x8300 - 0x831F, a pamięć SRAM pod: 0x1100 - 0x7FFF. To się zgadza, ale...

    Mikrokontrolery AVR   02 Sty 2014 20:58 Odpowiedzi: 0    Wyświetleń: 747
  • WinAVR nie rozpoznaje UBRRH_VALUE, UBRRL_VALUE z setbaud.h, AVR Studio działa

    Witam, chciałbym opanować komunikowanie się mikrokontrolera z komputerem za pomocą UART przez FT232. Nie wiem dlaczego winavr nie rozpoznaje makrodefinicji UBRRH_VALUE, UBRRL_VALUE, chociaż zdefiniowałem w kodzie Dodano po 19 tutaj jeszcze błąd: > "make.exe" all -------- begin -------- avr-gcc (GCC) 4.1.2 (WinAVR 20070525) Copyright (C) 2006 Free...

    Mikrokontrolery AVR   19 Lut 2013 16:11 Odpowiedzi: 9    Wyświetleń: 1698
  • [avr-gcc][c][m8]Wywoływanie funkcji przez wskaźnik. Adresy w mapfile.

    Witam. Mam pytanie do specjalistów od avr i gcc. Chcę zrobić sobie debuger do atmegi8, który będzie w stanie odczytywać lub ustawiać po rs232 wartości zmiennych oraz wywoływać funkcje. W zamyśle po zlinkowaniu kodu make wywoływać ma skrypt w pelru, który parsuje .map file w poszukiwaniu zmiennych statycznych i globalnych oraz adresów funkcji. Potem...

    Mikrokontrolery AVR   30 Lip 2012 21:10 Odpowiedzi: 6    Wyświetleń: 1853
  • Bascom AVR - UART zwrot wartości zmiennej o którą pytany

    Witam. Uruchomiona komunikacja po UART - komputer PC - urządzenie na Atmega32. Z poziomu klawiatury PC wysyłam znaki. Po odebraniu przez urządzenie kodu klawisza enter urządzenie wykonuje polecenie (złożone z uprzednio wysłanych znaków). W celu wygodnego debugowania softu (bez tworzenia celowych pułapek, ponownej kompilacji kodu i programowania uP)...

    Mikrokontrolery AVR   16 Sie 2013 17:02 Odpowiedzi: 11    Wyświetleń: 2430
  • [AVR][C] ZApis i odczyt z pamięci EEPROM - adresowanie

    Witam, dzisiaj zabrałem się za zabawę z pamięcią EEPROM. Pierwszy z problemów jaki napotkałem to adresowanie pamięci EEPROM. Znalazłem w internecie 2 polecenia które mnie interesują: eeprom_write_byte (adres, zmienna); x = eeprom_read_byte (adres); Problem w tym, że jak zrobię tak jak podano w tym wątku: http://www.elektroda.pl/rtvforum/topic18...

    Mikrokontrolery   15 Mar 2011 16:44 Odpowiedzi: 9    Wyświetleń: 11493
  • WinAVR: Jak efektywnie używać tablicy pól bitowych?

    W twojej pierwszej deklaracji jest nieszczęście. Spróbuj tak: struct TPole{ unsigned char bit_0:1; unsigned char bit_1:1; . . unsigned char bit_7:1; } bit_field; zdefiniuj dodatkowo takie coś: #define Get_bit(adr) (*( (volatile bit_field*) (adr) ) ); Teraz chcąc wyłuskać jakiś bit piszesz: zmienna = Get_bit (i tu adres właściwy bajtu na którym ci zależy...

    Mikrokontrolery   02 Cze 2005 17:52 Odpowiedzi: 4    Wyświetleń: 2033
  • C WinAVR:Jak przyspieszyć kopiowanie kolejnych elem. tablic

    Nie bardzo rozumiem , jaki cel chciałbyś osiągnąć :( Do czego są Ci potrzebne , dane w "tab_mala" :?: A jeśli chodzi o wskaźniki , to możno z nimi robić właściwie wszystko.Ustawić na dowolny adres w pamięci , bez względu na to , czy będzie to tablica , struktura ,unia , inna zmienna , itp. Piotrek

    Mikrokontrolery   19 Sty 2006 00:27 Odpowiedzi: 3    Wyświetleń: 1892
  • [ATmega8] Znikające dane w tablicach RAM - jak uniknąć nadpisywania?

    A czy można wiedzieć w takim razie ile do dyspozycji mam pamięci RAM (lub ile przy standardowej optymalizacji w winavr zajmuje stos)? Pozdrawiam Ja stosuje nastepujacy sposob. W dowolnym przerwaniu odczytuje wskaznik stosu do zmiennej porównując z poprzednia wartoscia i zapisuje mniejsza. Puszczam program naciskam co mam nacisnąc staram sie wykonac...

    Mikrokontrolery AVR   07 Lut 2010 15:58 Odpowiedzi: 19    Wyświetleń: 3527
  • Wskaźnik do lokalnej struktury w WinAVR - problem z adresem w AT90CAN128

    Wciąż nie wiem, czy to ja gdzieś robię błąd, czy też jest to wina kompilatora - pierwszy raz mam takie zjawisko, a zawsze bezboleśnie używałem różnych takich konstrukcji.... Ponieważ jest to zmienna lokalna może być przechowywana tylko w rejestrach procesora lub cos w tym rodzaju. Spróbuj ja zrobić volatile.

    Mikrokontrolery AVR   23 Paź 2009 09:44 Odpowiedzi: 14    Wyświetleń: 2543
  • [ATMega128L][WinAVR]Dziwne zachowanie wewnętrznego EEPROMu

    Czyli zostaje sposób z #define? Zakładając, że zdefiniuje sobie w ten sposób wszystkie zmienne (de facto ich adresy) i zostawię w spokoju &zmienna to chyba nic się nie stanie? Tablicę mogę wszak zrobić definiując sobie pierwszy element a potem robiąc tak: #define ADRES_POCZATKU_TABLICY 0x02D3 (...) eeprom_read_byte(ADRES_POCZATKU_TABL...

    Mikrokontrolery AVR   12 Sie 2008 09:41 Odpowiedzi: 26    Wyświetleń: 4570
  • Kompilacja programu na ATtiny13 w AVRStudio4+WinAVR - przekroczona pamięć

    Hej. Mam do Ciebie jeszcze takie pytanie przy okazji. Po kompilacji pokazuje sie komunikat o zajetości SRAM (całkowitej bo tam sa sekcje wypisane) i pokazuje 1 bytes (1,6%). Pokazuje 1 bajt mimo że deklarowane jest w sumie 11 bajtów (w tym 4 uint16_t). Jak uruchamiam symulacje i dodaje zmienne do "watch" to kazda zmienna jest pod innym adresem. Czy...

    Mikrokontrolery AVR   22 Lut 2010 13:42 Odpowiedzi: 20    Wyświetleń: 1915
  • RESET zewnętrzny w WINAVR vs BASCOM - różnice w kasacji zmiennych

    ... co do resetu to : Reset zeruje tylko zmienna globalna a zmienna lokalna pozostaje nie ruszona :) Ze tez tego nie moglem sie nigdzie doczytac... Przestrzeń w pamięci RAM na zmienne lokalne , jest przydzielana dynamicznie i dla tego nie są one zerowane , bo w czasie kompilacji ich położenie(adres w pamięci) nie jest znane. Bascom również nie zeruje...

    Mikrokontrolery   04 Kwi 2006 09:46 Odpowiedzi: 4    Wyświetleń: 1452
  • Sprawdzone projekty obsługi SD/MMC z Atmega8535 - błąd WinAVR

    Tutaj podajesz adres (zmienna addres) int writemmc( int address ) a u Ciebie jest stały i wynoasi 0x200. (czyli 512). int writemmc(int address) { // write sector to MMC int i; DDRB |= (1<<redled); uint8_t c; // 512 byte-write-mode if (Command(0x58,0,512,0xFF) !=0) { //tu jest stała wartość a powinno być...

    Mikrokontrolery   23 Lip 2008 14:23 Odpowiedzi: 47    Wyświetleń: 6792
  • [WinAVR][C] - zamiana zmiennej na stan portów / przerwania.

    Operator przypisania zawsze myli mi sie z porówaniem gdy na jakis czas przestane pisac (pisze duzo w php). Hmm, trzeba zabrac sie za te dokumentacje w takim razie. Z kursu udało mi sie uruchomic timer, wiec myslałem ze jest ok. Co do wyskoczenia poza rozmiar - to program tylko do testów, udało mi sie zapisac dane do eeprom, uruchomic timer, teraz chciałem...

    Mikrokontrolery AVR   12 Sie 2008 13:04 Odpowiedzi: 14    Wyświetleń: 4416
  • [C] [C][Atmega8] - Jak odczytać zapisane dane w EEPROM przez programator?

    Witam, korzystam z WinAVR oraz AVR Studio. Napisałem dwie proste funkcje: void zapisz( uint8_t pozycja, uint8_t wartosc ) { eeprom_busy_wait(); eeprom_write_byte(&pozycja,wartosc&#... } char odczyt(uint8_t pozycja) { eeprom_busy_wait(); return eeprom_read_byte(&pozycja); } Wiem, że ATmega...

    Mikrokontrolery AVR   02 Paź 2010 15:28 Odpowiedzi: 8    Wyświetleń: 12325
  • [ATMEGA] Jak sprawdzić zużycie RAM w programie C dla ATMEGA w WinAvr?

    A jak sprawdzać wolną pamięć w czasie pracy programu na AVR, podaj przyklad kodu Dodano po 1 Cześć! Bardzo dobrze, że pytasz o monitorowanie wolnej pamięci w trakcie pracy programu na mikrokontrolerach AVR, ponieważ jest to ważny aspekt w projektowaniu stabilnych i efektywnych aplikacji. Istnieje kilka metod na sprawdzanie dostępnej pamięci RAM, ale...

    Mikrokontrolery AVR   04 Lut 2024 20:46 Odpowiedzi: 17    Wyświetleń: 2813
  • [Atmega8][C] Atmega8 i TWI na przykładzie zegara LED

    Witam wszystkich. Zaprojektowałem i uruchomiłem zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). http://obrazki.elektroda.net/21_12497604... http://obrazki.elektroda.net/58_12497606... http://obrazki.elektroda.net/95_12497605...

    Mikrokontrolery AVR   24 Lis 2009 11:17 Odpowiedzi: 1    Wyświetleń: 25537
  • [atmega16] Niezrozumiałe wyniki przy obliczeniach z tablicą Table_temp

    Witam! Ostatnio próbuję swoich sił z tym mikrokontrolerem i napotkałem się na dziwne zachowanie, otóż w przypadku takiego kodu [syntax=c] counter_temp =0; unsigned long temp; temp = (*(Table_temp + 4) - '0'); counter_temp += (*Table_temp - '0') * 100000000; counter_temp += (*(Table_temp + 1) - '0') * 10000000; counter_temp += (*(Table_temp + 2) - '0')...

    Mikrokontrolery AVR   04 Kwi 2011 13:14 Odpowiedzi: 7    Wyświetleń: 1537
  • [AVR][C/AVRStudio 4.16] - Płyta EvB 4.3 V4 PCF8583 - zawiesza się program

    Witam Napisałem dość prosty program na ww płytę ewaluacyjną. Sczytuję czas (sekundy minuty i godziny) z RTC zamontowanego na płycie i po konwersji wyświetlam to sobie na moim LCD 2x16. Problem tkwi w tym że program działa raptem nie całe 5 sekund i wisi. Dołączam wszystkie pliki projektu do sprawdzenia. Korzystam z dodatkowych bibliotek TWI.h - do obsługi...

    Mikrokontrolery AVR   27 Lip 2013 19:37 Odpowiedzi: 17    Wyświetleń: 2472
  • [PCF8583] Błędy w obsłudze I2C dla zegara PCF8583 na ATmega32 w C (WinAVR)

    Kod jest przerobiony, z innego ale go ogarniam, a teraz co znaczą komentarze. jeśli chodzi o wartość 0xa0, która jest w kodzie, a ja napisałem że to nie działa, natomiast działa dla 0x50. 0x50 = 01010000; 0xa0 = 10100000; Według noty katalogowej PCF8583, adres scalaka jest 10100000 = 0xa0, z czego 1010 - to adres stały 000 - to adres zmienny i zależy...

    Mikrokontrolery AVR   17 Lis 2010 14:09 Odpowiedzi: 2    Wyświetleń: 1804
  • Brak stabilnych wskazań po konwersji A/D w ATMega 8

    A możesz mi powiedzieć skąd Ty bierzesz takie informacje? z dokumentacji, z internetu, z doświadczeń i prób. A czy przy okazji mogę się podpytać o taką rzecz. Mam układ ATMega162 z zewnętrzną pamięcią RAM 62256. Całość jest pisana w AVR-GCC używając AVR Studio. Potrzebuję aby ta pamięć RAM była tylko do przechowywania takich danych jak np tablica....

    Mikrokontrolery   19 Wrz 2008 00:56 Odpowiedzi: 22    Wyświetleń: 2928
  • [atmega8] [C] Raz jeszcze TWI- nie ustawiana flaga TWINT

    Witam! Na forum zawsze znajdowałem odpowiedzi i drążyłem każdy temat samodzielnie w myśl zasady jednego z moich wykładowców "świat dzieli się na samouków i nieuków"... lecz tym razem rozłożyłem ręce po 3-dniowej walce z TWI/i2c (w między czasie wypiłem tylko 2 bro) i postanowiłem nieśmiało założyć temat (chyba mój inauguracyjny...). Przeczytałem regulamin...

    Mikrokontrolery AVR   29 Maj 2010 16:00 Odpowiedzi: 6    Wyświetleń: 3112
  • [AVR][C]Obsługa wyświetlacza LCD poprzez TWI i układ PCF8574

    Witam. Próbuję stworzyć bibliotekę obsługującą wyświetlacz LCD (2x20, HD44780) podłączony do mikrokontrolera (ATmega32) poprzez TWI (I2C) i układ PCF8574AP. Kompilator to WinAVR (wersja oznaczona numerkiem a raczej datą: 20050214). Sama komunikacja z układem PCF8574 jest pewna (korzystam ze sprawdzonych bibliotek obsługujących sprzętowy interfejs TWI...

    Mikrokontrolery   18 Sie 2008 02:17 Odpowiedzi: 3    Wyświetleń: 4965
  • Nieprawidłowe obliczenia w WinAVR przy konwersji string na int

    Nigdzie nie widzę, aby wskaźnikom gps_data i gps_pom były przypisywane jakieś adresu. Kolejna sprawa, to jeśli liczby mają być obsługiwane powyżej (jak zauważył Dr.Vee ) 32767, musisz zmienić typ zmiennej (ja preferuję uint32_t z <stdint.h>). Jeśli liczby mogą mieć 6 cyfr, należy pamiętać, że aby ciąg znaków był poprawnym ciągiem, musi być zakończony...

    Mikrokontrolery AVR   20 Maj 2009 10:31 Odpowiedzi: 4    Wyświetleń: 996
  • Jak bezpośrednio przypisać zmienną bitową do pinu PORTD7 w WinAVR?

    Rozwiązanie z postu powyżej jest najlepszym według mnie: if(v) PORTB |= (1<<PB3); else PORTB &=~(1<<PB3); Żeby jednak traktować pojedynczy bit portu jako osobną zmienną można wykorzystać fakt, że rejestry io posiadają swój adres w przestrzeni danych, przez co można uzyskać adres i rzutować wskaźnik na jakąś bardziej...

    Mikrokontrolery AVR   05 Kwi 2010 16:57 Odpowiedzi: 7    Wyświetleń: 1343
  • Miernik częstotliwości na ATmega16 - przerwania i liczniki T0, T1

    wrzucam całośc, co do Twojego rozwiązania sprawdzze jutro. Wcześniej nie wywoływałem funkcji w przerwaniu to pojawiały się 'krzaki' na LCD - przerwanie od T0 przerywało chyba funkcję wyświetl() dlatego dałem w przerwaniu. /*======================================... WinAvR wersja WinAVR-20050214 **Program obsługujący woltomierz/generator...

    Mikrokontrolery   15 Lut 2008 16:19 Odpowiedzi: 12    Wyświetleń: 3465
  • WinAVR: czy zmienne są lokowane w RAMie po kolei - zawsze ??

    Teoretycznie wszystkie elementy tablicy beda jeden za drugim, ale to czysta teoria, bo na przyklad w celu optymalizacji na architekturach 16-sto i wiecej bitowych pomiedzy struktury wstawia sie "gapy", czy "pady", po to, by kazdy z elementow tablicy znajdowal sie pod adresem bedacym wielokrotnoscia 2, 4, 8, lub 16 (wiecej jeszce nie widzialem ;) ) wskaznik...

    Mikrokontrolery   29 Sie 2005 11:32 Odpowiedzi: 2    Wyświetleń: 1086
  • LCD i Wypisywanie na nim zmiennych typu int i float.

    1. Jesli chcesz wyswietlic tylko jedna cyfre, to chyba zadziala write_char((cyfra & 0x0f) | 0x20). Jak cala liczbe, to musisz najpierw dokonac konwersji BIN -> BCD, a potem pare razy write_char. Ale malo sie znam na C, wiec mozliwe, ze jest duzo latwiejszy sposob :). 2. Nie musisz. Trzeba wyslac do LCD komende Set DDRAM Address (0x80) + adres, pod ktory...

    Mikrokontrolery   11 Kwi 2008 21:25 Odpowiedzi: 27    Wyświetleń: 4722
  • Zwracanie zmiennej lokalnej przez funkcje [c][winavr]

    Będzie zwracał błąd. Bo tworzysz zmienną lokalną, której adres przekazujesz. Są dwa wyjścia: 1. Zwracanie poprzez wartość. 2. Zmienną temp definiujesz globalnie. Nie pisałem nic w winavr ale problem wydaje się dość standardowy.

    Mikrokontrolery AVR   07 Sty 2010 19:42 Odpowiedzi: 16    Wyświetleń: 2608
  • WinAVR: Obliczenia na liczbach ujemnych i przepełnienie przy mnożeniu

    Chcę obliczyć współczynnik b = 256*(x1-x2)/(y1-y2) A mnożysz przez 255 :P wsp_b = wsp_b*0xff; Jeżeli nie jest Ci potrzebny wsp_a, możesz zrobić tak: long int wsp_b; wsp_b = (((long int) (x1-x2))<<8) / ((long int) (y1-y2)); Nie wiem, jakiego typu są zmienne x1, x2, y1 i y2, a jeżeli jest...

    Mikrokontrolery   14 Mar 2006 04:40 Odpowiedzi: 4    Wyświetleń: 1059
  • Dynamiczna zmiana portu/bituPortu 1wire, AVR,WinAVR,C++.

    Nie musi być na wskaźnikach, natomiast w manualu jest zapis zawartości pod danym adresem do zmiennej a nie adresu portu, który można zmienić tak, aby funkjca działała na innym porcie. Ostatecznie pozostaje "select case", ale sądziłem że w C można to zrobić prościej.

    Mikrokontrolery   13 Paź 2008 22:25 Odpowiedzi: 13    Wyświetleń: 2828
  • [AVR][WinAVR][C] Alokacja zmiennej inicjalizowanej w pamięci EEPROM

    9. Teraz pytanie: czy CRC zawsze jest stałe i pod tym samym adresem w pg? Algorytm liczenia CRC jest stały(zależny od każdej wartości w uwzględnianym obszarze pamięci), cała reszta to już formalności.

    Mikrokontrolery   12 Wrz 2012 09:06 Odpowiedzi: 52    Wyświetleń: 5302
  • AVR atmega8515 - Jak uniknąć nadpisywania zmiennych globalnych?

    Drgającymi stykami warto się przejąć bo mogą wygenerować przerwanie kilkanaście razy pod rząd ale rozumiem, że nie w tym problem. Nie bardzo rozumiem skąd ten adres 0x0319? masz dołączoną zewnetrzną pamięć? Pamięć SRAM w mega8515 konczy się na 0x025F a więć 0x0319 leży poza fizyczną pamięcią (i poza stosem). Niestety nie pracowałem nigdy z WinAvr (używam...

    Mikrokontrolery   09 Lis 2006 00:54 Odpowiedzi: 8    Wyświetleń: 2910
  • Jak skonfigurować debuger w WinAVR i AVRStudio do śledzenia zmiennych?

    No i zaczely sie schody w Projekt Options ->General ->Device mam zaznaczony procek: AT90s.... i to mi dziala!!! Kompiluje i chodzi. Jak zaznacze procesor, ktory mam na plytce Atmega 128 to przy debagowaniu wystrzeliwuje mi z funkcji w "kosmos". Jakis dziwny pusty adres. Bez debugowania tez nie dziala. Wyglada na blad w WinAVR. Czy ktos moze z tym sie...

    Mikrokontrolery   17 Sty 2006 00:09 Odpowiedzi: 14    Wyświetleń: 1389
  • [C] Jak przenieść .data i .bss do XRAM na Atmega128 w C (WinAvr, AvrStudio)?

    AHC ma ten sam rozkład pinów a co do definiowania stosu to nic nie musisz robić przyjmując wartości domyślne., potem deklarujesz zmienną wskaznikową jej z kolei przypisujesz adres powyżej 0x1100 i masz całą pamięc extend do użycia, natomiast zasłonięty "dół" jak jesteś sknerą :) za pomocą sztuczki z noty katalogowej sobie używasz.

    Mikrokontrolery AVR   25 Cze 2014 22:56 Odpowiedzi: 21    Wyświetleń: 6918
  • Zwracanie łańcucha przez funkcję w WinAVR - problem z sprintf()

    Nie będę kolego tego analizował od początku ale napiszę tylko tyle twoja funkcja zwraca wskaźnik do lokalnej tablicy danych. Zwróć uwagę że to co się w niej znajduje jest ważne tylko podczas trwania tej funkcji. Zwracając więc adres lokalnej zmiennej możesz po wyjściu z funkcji stracić te dane. Powinieneś sobie alokować więc pamięć aby dane stały sie...

    Mikrokontrolery AVR   04 Mar 2010 22:46 Odpowiedzi: 7    Wyświetleń: 1644
  • Język C - umieszczanie tablic pod wyznaczonym adresem

    No więc jest to do zrobienia. Tylko jak się taką sekcje tworzy w WinAVR? Domyslam się, że to trzeba w makefile poustawiac, tylko czy w AVRach da się przesunąc stos? W asemblerze jak narazie nic konkretnego nie pisałem i całego programu w nim nie napiszę. Myślałem że w C można deklarowac zmienną z atrybutem adresu pamięci, tak jak to się robi z wyborem...

    Mikrokontrolery   04 Paź 2007 15:29 Odpowiedzi: 12    Wyświetleń: 2750
  • [AVR] Jak zapisać strukturę z wskaźnikiem do EEPROM w AVR przy użyciu WinAVR?

    markoll2 --> ty się dlatego w tym wszystkim gubisz bo chcesz na upartego zapisywać do eepromu jakieś zmiennej wielkości łańcuchy pod bezwzględne adresy w pamięci EEPROM. To szybko doprowadzi cię do zguby albo na skraj szaleństwa ;) Zamiast tego przygotuj sobie strukturę jak powyżej i zamiast umieszczać w niej wskaźnik do opisu tekstowego, umieść tam...

    Mikrokontrolery AVR   27 Sie 2010 19:47 Odpowiedzi: 24    Wyświetleń: 5898
  • Jak poprawnie wyświetlić zmienne na LCD z użyciem funkcji itoa?

    Nie ma sensu udowadniać koledze rpal że nie ma racji. Sam WinAVR wywala warninga przy lini z taką deklaracją. Działać to i może będzie na rdzeniu AVR ...ale z jaki skutkami przy rozbudowywaniu kodu?...tego nie wiadomo. Kompilator rdzeni ARM (8051 zresztą też) automatycznie ładuje taką stałą znakową do pamięci Flash więc każda próba zapisu pod adres...

    Mikrokontrolery AVR   02 Wrz 2009 07:01 Odpowiedzi: 26    Wyświetleń: 8323
  • [WinAVR] Jak uzyskać dostęp do struktury w pamięci programu w WinAVR?

    Witam! Na początku dziękuję za odpowiedzi... Zrobiłem jak poradziliście... zainstalowałem najnowszą wersję WinAVR i zadeklarowałem tablicę wg. waszych wytycznych i do tego momentu wszystko jest ok. Niestety próba odwołania się do tej struktury nadal kończy się niepowodzeniem: 1. jeśli wywołam funkcję w ten sposób: print_str(pgm_read_byte(strr[...

    Mikrokontrolery AVR   15 Paź 2012 15:57 Odpowiedzi: 15    Wyświetleń: 2784
  • WinAvr zła kompilacja. Kompilator nie uwzględnia skoków.

    Wywołanie SetAddress() nie jest nie potrzebne. Autor przeróbek usunął też zewnętrzną pamięć .Dlatego wyszły takie pozornie nic nie znaczące dziwactwa. Odczyt spod adresu E000+adr jest potrzebny do automatycznego zatrzaśnięcia zatrzasku. Jak by tego nie zmienić to program nie będzie używał zmiennej odczytywanej/zapisywanej (a co za tym idzie rezultatu...

    Mikrokontrolery AVR   27 Sty 2011 14:00 Odpowiedzi: 26    Wyświetleń: 2548
  • Jak zapisać 16-bitowy wskaźnik w pamięci zewnętrznej SRAM na ATmega162?

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

    Programowanie   10 Mar 2005 09:21 Odpowiedzi: 3    Wyświetleń: 1100
  • Atmega8 - Program nie chce zapisać ani odczytać zmiennej powyżej 8bit z eeprom.

    Jeszcze dodałbym 6ty, znaczy się projekt był na początku banalny, ale chciało się większej funkcjonalności... Co do pierwszego pytania, to sam się zastanawiam, bo jakoś nie umiem tego znaleźć w winavr (tools/options/ na szybko przeleciałem, ale nie widzę nic o optymalizacji). A co do pierwszego? Podstawiasz 16 bitów na 8 i dziwisz się, że nie możesz...

    Mikrokontrolery AVR   01 Lut 2013 15:36 Odpowiedzi: 18    Wyświetleń: 3111
  • [C][WinAVR/VMLAB]pgm_read_byte - ostrzeżenie przy kompilacji

    Witam, próbuje skorzystać z pamięci programu do przechowywania tablicy stałych. Środowisko: WinAVR-20090313, VMLAB 3.14, atmega88. Fragment mojego kodu: ... #include <avr/pgmspace.h> //obsługa pamięci programu ... uint8_t kod[] PROGMEM = {2,3,6,2,1,0xff}; ... int main(void) { ... while(1) { .... kod_element...

    Mikrokontrolery AVR   21 Paź 2009 22:01 Odpowiedzi: 2    Wyświetleń: 1625
  • [C] Jak wygenerować CRC i umieścić w HEX dla AVR w WinAVR?

    Ale liczenie CRC pod koniec wgrywania kodu nic mi nie daje. Bo po pierwsze programowanie może nie dojść do końca. A po drugie nawet jak dojdzie i program wykryje błąd, i nawet zacznie programować od początku, to to drugie programowanie może nie dojść do końca :D Inaczej mówiąc wykrycie błędu nic mi nie da, bo jak wtedy odłączę zasilanie to później nowy...

    Mikrokontrolery   10 Lut 2011 16:55 Odpowiedzi: 20    Wyświetleń: 2885
  • [C] [WinAvr] Tworzenie tablicy funkcji do obsługi liter na matrycy LED

    Piszę sterownik pod matrycę LED. Napisałem sobie funkcje rysujące litery od lewej do prawej(przykład na końcu), kolejna litera rysowana od miejsca przesun . Wywołanie w main() wygląda przykładowo: { for(i=10;i>-20;i--) A(i,t[15]); //litera A na starcie w miejscu 10 B(i+5,t[15]); // litera B na starcie...

    Mikrokontrolery AVR   09 Cze 2010 00:36 Odpowiedzi: 4    Wyświetleń: 1594
  • Funkcje biblioteczne do programowania mikrokontrolerów AVR

    Witam Od pewnego czasu programuje sobie mikrokontroler ATMega8 ze skutkiem całkiem pomyślnym. Jednakże uzywane przeze mnie dotychaczas funkcje typu ustawianie stanów portów czy opóźnianie czasowe już nie wystarczają. Szukałem troche po necie, ale niestety nic nie udało mi sie znaleźć, no może kilka, które w dodatku nie były opisane jak je używać w kodzie...

    Mikrokontrolery   27 Mar 2006 19:23 Odpowiedzi: 5    Wyświetleń: 2052