http://obrazki.elektroda.pl/8472920100_1... Witam! Jakiś czas temu zacząłem bawić się procesorami AVR. Jako programatora wykorzystywałem moduł FT232. Po jakimś czasie gdy zacząłem ów moduł wykorzystywać również do transmisji danych między procesorem a komputerem (UART) pomyślałem, że aby zmniejszyć kabelkologię (FT232 podłączony jako...
Przede wszystkim nie stosuj zapisu typu: [syntax=c]DDRD = 0x3c;[/syntax] Chyba, że działasz w systemie szesnastkowym i taki zapis jest dla ciebie oczywisty. Przejrzyściej jest stosować definicje pinów, lub zapis binarny: [syntax=c]DDRD = 0b00111100;[/syntax] Wtedy od razu widać, który pin jest wejściem, a który wyjściem. Poza tym, w handlerze przerwania...
Witam kolegów. Powoli idę sobie kursem C z EDW, jednak z jakiegoś powodu program przepisany literka po literce z artykułu nie działa. unit8_t g_AktWyswietlacza= 0; unit8_t _DaneWyswietlacza[4]; unit8_t g_DaneCom[4] = {~(1<<COM1), ~(1<<COM2), ~(1<<COM3), ~(1<<COM4)}; taki zapis na początku programu po wszystkich include daje w...
Witam, Kolega ma rację jeśli procek jest zabezpieczony niewiele zdziałasz. Jeśli nie to dowolny programator i soft, czytasz flasz i robisz kopię w HEX lub BIN. Jeśli skasujesz flash bez kopii programu urządzenie już raczej nie podziała... Pozdrawiam, Marcin
nie mam włączonej żadnej optymalizacji (-00) REG->EECR |= 1<<EEMWE; REG->EECR |= 1<<EEWE; żeby zapis się wywołal to druga zmiana bitu musi odbyć się w ciągu 4 cykli zegarowych a tymczasem ten kod skompilowany bez optymalizacji daje w gcc coś takiego: [syntax=asm] 162:ac e3 ldir26, 0x3C; 60 164:b0 e0 ldir27, 0x00; 0 166:ec e3 ldir30,...
Witam, mam problem z zaprogramowaniem procesora attiny24. Używam programatora avr910 na usb oraz avrdude. W programie działa dobrze odczyt i zapis eeprom, odczyt fusebitów ale nie mogę odczytać ani zapisać flash'a. Po wgraniu jest błąd weryfikacji i bardzo długo trwa proces wgrywania flasha. około 130s. Procesor Attiny24 mam podłączony bez kwarcu, czy...
Czy przypadkiem między zapisem a odczytem nie powinieneś sprawdzić czy eeprom nie jest zajęty? Zapis jakby nie było trwa kilka milisekund. Konkretnie eeprom_busy_wait(); .
Ja bym się jednak zastanowił, czy aby na pewno wiesz co i gdzie przypisujesz. Spróbuj znaleźć gdzieś w manualu kompilatora czy akceptuje on zapis binarny, a może jeszcze znajdziesz jaki powinien mieć format. Powodzenia...
Czemu służy ? : eeprom_wb(300,UDR); Procedury obsługi tego przerwania (W ogóle procedury przerwań nie mogą być czasochłonne) nie mogą zawierać czasochłonnych operacji, gdyż po odebraniu jakiegokolwiek śmiecia, prawdziwe dane mamy z głowy na ten czas... Kod warto czasem wrzucić na symulator... Zapis do EEPROM można swobodnie przenieść do petli...
Za długie pętle lub za krótkie tablice zmiennych.
Rozumiem, ze nie używasz trybów oszczędzania energii... Wyjaśnij co znaczy: "Do wejscia int0 jest podlaczona masa i daje przerwanie ze zboczem opadajacym" To, że jest ustawiona flaga zgłaszająca przerwanie, to nie znaczy, że jest włączone przerwanie od właśnie tego pinu... zapis 0x40 oznacza 0b10000000 czyli ustawiasz pin zezwalający na przerwanie od...
Witaj. Jako osoba pisząca w asm to sprawdzanie jest dla mnie przekombinowane, i jest to wynik działania jakiegoś kompilatora, dlaczego? dlatego: 1) zmiana stanu pinu może nastąpić pomiędzy odczytami portu a po niej jest kilka cykli więc nie chodzi tutaj o pilne i dokładne wykrycie tej zmiany. 2) analizując zapis można to zrobić o wiele prościej i będzie...
trzeba przeprowadzić tak zwaną inicjalizację w C wygląda ona tak void rtl_init (void) { rtl_config_ports(); // konfiguracja linii komunikacyjnych rtl_reset(); // reset RTL8019A rtl_write(RSTPORT, 0x00); // wpisz wartość 0 do komurki Reset Port dlms(30); // czekaj 30 milisekundy rtl_write(CR, 0x41);...
Witam, wiem że dużo już w tym temacie, ale nie moge znaleźć rozwiązania swojego problemu... Chyba nawet nie wychodzi mi poprawna inicjalizacja, ponieważ po niej na lcd mam wciąż tylko 2 wypełnione pixelami linie.. #include <avr/io.h> #include <util/delay.h> #include <my_defs.h> #define LCD_E 3 #define LCD_RS 2 //#define LCD_RW #define...
Witam, Od kilku dni nie mogę dojść dlaczego nie działa mi odczyt z AT24C08AN. Za każdym razem ATMega162 odczytuje mi wartość FF. Funkcje I2C_start2(), I2C_stop2(), I2C_write2(), I2C_read2() na pewno są poprawne bo bez problemu obsługuję nimi PCF8583. Podłączenie elektryczne na pewno OK. Próbowałem na 3 różnych sztukach eepromu AT24C08AN i zawsze to...
Witam, Mam klasycznie podpięte 32kB zewnętrznego SRAM do ATmega162. Mam ustawione MCUCR=0x80, na oscyloskopie widać że ALE jest generowane ale sygnały /RD i /WR sa zawsze aktywne na 5V W pętli zapisuję do zewnetrzej pamieci i czytam tak wiec powinien sie pojawiac na nich sygnał niski. Jak w CV_AVR napisać kod aby czytac i zapisywać tablice bajtów w...
Witam ATmega162 i ATmega128 mają po dwa rs232, więc łatwo można je łączyć. Od kiedy to rs232 = uart ? Uart w megach napewno nie wytrzyma +- 13V z noty atmegi wynika ze mozna stosować obydwa uarty do wysyłania/odbierania z rs232 wraz z max232 są generowane odpowiednie poziomy sygnału dla PC z tll Standard RS232 Jest Jeden i powstal w 1969r Uart w medze...
No tak, zrobiłem tak : ___________________________ 'PROGRAM TESTOWY 1-st $regfile = "M162def.dat" $crystal = 11059200 $baud = 9600 Config Porta = Output Led Alias Porta.6 Do Led = 1 Waitms 50 Led = 0 Waitms 50 Loop End _______________________________ i działa. Ale nie rozumiem, bo w manualu AVR 1.11.7.4 jest : Składnia: CONFIG PORTx = tryb...
Mam dziwny problem z prockiem Atmega162. Otóż mogę odczytać jego zawartość, bity, ale nie chce zapisywać programu do flash. Procek jest nowy. Nie działa ani na Pony, a nie na ISP-Prog... Gdzie może tkwić problem??
Jeżeli rzeczywiście to tylko 20 bajtów, to co z pozostałymi 2028 bajtami w AT24C16 ? Co z EEPROM-em wbudowanym w ATmega162 (512 bajtów) ? Na [url=http://www.atmel.com/dyn/products/d... stronie jest [url=http://www.atmel.com/dyn/resources/... katalogowa ATmega162. W niej m.in. opis programowania...
Co ma wedlug ciebie znaczyc linijka *write_tab-- ? Oznacza to ze chcesz zmniejszyc wskaznik o 1 i odczytac spod tego nowego adresu bajt, ale do niczego go nie przyrownujesz lub przypisujesz ;-) aczkolwiek bledu to nie powoduje.Jesli chcesz tylko zmniejszyc wskaznik to wystarczy write_tab--.Generalnie mozna zrzutowac wskaznik do zmiennej tak jak robisz...
Witam, Dlaczego wartość odczytana z pamięci jest inna niż zapisana. Dim Licznik1 As Integer Dim Licznik2 As Integer ..... Writeeeprom Licznik1 , 1 ..... Writeeeprom Licznik2 , 2 Kazda zmienna integer/word okupuje 2 bytes (dwa bajty) w pamieci, a ty przeznaczyles/ograniczyles miejsce w eeprom tylko do 1 byte dla zmiennej 'licznik1'. Wpisujac wartosc...
Na początku zaznaczam że jestem początkujący w dziedzinie mikrokontrolerów. Wpadł mi w ręce uszkodzony interfejs diagnostyczny na procesorze ATMEGA 162 odczytałem z niego EEPROM bez problemu Upą-USB ale zaskoczył mnie fakt że po kolejnych odczytach każdy wygląda inaczej (tak jak by pamięć ulegała zmianie między odczytami) dodatkowo znalazłem na płytce...
Witam! Mam pewien dziwny problem. Pracując nad pewnym urządzeniem oparłem wszystko na początku na mikrokotrolerze Atmega16. W miedzyczasie okazało się, że potrzebne mi 2 liczniki 16bitowe, więc przesiadłem się na mege162. Zmieniłem odpowiednie linijki programu i teoretycznie wszystko powinno hulać, ale kompilacja staje przy odczycie wartości z kanału...
witajcie!! Problem wyglada tak: mam 24c08 i zapakowalem do niego plik: FFFFFF070707070F0F1F7FFFFF00FFFFFF3F1F0F... 03030303C3C3C3C3C38303030383C3C3C3830303... 3C3C3C38303C3C3030303C3C303030303FFFF000... 00080C0FFFF00FFFFFF8000000000000000FFFFF... 070793F1F001F3F7070703F1F00007F7F6060600...
Witam Na szybko kupiłem procesor Atmega162, na schemacie wyprowadzeń jest AD0..7. Po zbudowaniu platformy testowej zajrzałem do dokumentacji Atmela i tam nie ma słowa o przetworniku analogowo-cyfrowym (po co producent zamieścił tam oznaczenia?) . Sporo już zrobiłem na tym procku, a chciałbym mierzyć napięcia w różnych miejscach układu, możecie coś polecić...
Witajcie. Nie rozumiem dlaczego mimo zmian jakie wprowadziłam do kontrolera on działa wolno. 1.Podłączyłem zewnętrzny kwarc 16k w sposób pokazany w dokumentacji. 2.Wgrałem przez AVRISP mkII program (włącza i wyłącza diodę): [syntax=asm] .nolist .include "m162def.inc" .list .listmac ;***************************************... .def Ilosc_l = r17 .def Ilosc_h...
Witam wszystkich :) Nie będę owijał w bawełnę. Mam problem zapewne banalny ale ja nie potrafię sobie z nim poradzić. A więc zbudowałem układ do obsługi kart pamięci Compact Flasch na bazie mikrokontrolera Atmega162 posiłkując sie serią artykułów z Elektroniki Praktycznej, który rozpoczął się 02/2004r. Układ ten poza pamięcią ma mieć jeszcze wbudowany...
Witajcie! Czy jest możliwe aby taktować Atmegą inną Atmegę? Np używając pwm z prescalerem 1 oraz z rejestrem OCR równym zero. Czy sygnał będzie miał odpowiedni kształt? Pozdrawiam
Witam, test ok podlaczylem wyprowadzenia z programatora (MISO,MOSI, SCK I RESET) do procesora, oczywiscie zasilanie do procka i programatora, wybralem procesor Atmega162 i przy probie odczytu lub zapisu wyskakuje mi komunikat : Device missing of unknown device (-24)
Podprogram "ustawdate" jest pusty.
cytat z dokumentacji atmega162: Since the external memory is mapped after the internal memory as shown in Figure 11, the external memory is not addressed when addressing the first 1,280 bytes of data space. It may appear that the first 1,280 bytes of the external memory are inaccessible (external memory addresses 0x0000 to 0x04FF). However, when connecting...
I teraz sygnał po Transceiverze chciałbym pościć po SPI na uP(Atmega128 lub Atmega162) I tutaj moje pytanie czy jest to dobre rozwiązanie, i czy układ wyrobi się z odbiorem danych po SPI???? Wydaje mi się że na SPI nie bedzie to pracowac. Musisz podłączyc sygnał z transceivera do jakiegoś portu z przerwaniem i z odpowiednią częstotliwością (zależną...
Ja tak miałem z Atmega162. Okazalo się, że miałem problemy z zasilaniem.
PINC jest tylko do odczytu Sprawdź co kryje sie pod INT0, jeśli 0 to zapis GICR=1<<INT0 ; jest OK jeśli 1 to powinno być tylko GICR=INT0;
Na Atmega162 działam z 1w i przerwaniami do obsługi wyświetlaczy 7seg, transmisji RS i jeszcze jakiegoś timerka. Przerwania wyłączone na czas zapisu/odczytu bitu i nie ma problemu. Wklej może funkcje zapisu/odczytu bitu.
janbernat --> jak się napisze własną procedurę obsługi DS'a to może sobie przychodzić przerwanie w trakcie odczytu "do" czy też odczytu "z" .... a i tak nic się nie stanie ;). Tyle że trzeba w najbardziej krytycznych momentach wyłączać przerwania. Wtedy czasy wyłączenia przerwań są drastycznie krótsze niż taki kawał czasu jak 3,5ms - przecież to "wieczność"....
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...
"Wcześniej udało mi się odczytywać temperaturę z DS18B20 z tym, że po wlutowaniu w płytkę odczytuje mi cały czas 127.9" No to zrób "undo". Albo sprawdź co się zmieniło. Może inny opornik podciągający? Może Vdd niepodłączone do masy? Masz funkcję "void write_byte(char val) //zapisj bajtu do dallasa " To zapisuje tylko do RAM- a nie ma przepisania do...
pamięc 62256 (32k) 8,00 PLN atmega162 29,00 PLN (strasznie podnieśli ceny niedawno kupowałem po 11 PLN) 74AHC573 1 PLN razem 38 PLN zostaje 62 PLN na resztę , tworzysz sztuczny problem coś mi się zdaje chyba że nie zależy tobie na szybkości zapisu więc łap się za atmega8 i pamięci SPI bo na pamięć równoleglą zużyjesz wszystkie wolne piny i jeszcze będzie...
Witam Zrobiłem schemat jak na rysunku poniżej Zasilam dwa mikroprocesory atmega128 i atmega162, razem cały układ ciągnie coś około 160mA. Układ z rezystorem wymyśliłem po to żeby sprawdzić kiedy zaniknie mi napięcie zasilania na J1, wtedy na INT1(jak na rysunku) pojdzie stan niski i od tego momentu będę miał ileś czasu żeby zapisać dane z atmega162...
To wiem. Mam funkcje odzczytu i zapisu z kursu EP. Ale chodzi mi o to jak ustawić plik makefile do external ram. Gdzie ustawić początek i jaki rozmiar? Mam plik makefile od yamppa, on też jest do odczytu cf, ale jest on napisany strasznie zawile.
Nawet masz w tejże nocie przykład w asm i C jak wyłączyć Watchdoga. Dotyczy to jednak chyba "Safety level 1". W trybie "Safety level 0" można zmieniać wartość bitu WDE w dowolnej chwili bez konieczności użycia "timed sequence". W opisie bitu WDE z rejestru WDTCR można też znaleźć taki zapis: In safety level 2, it is not possible to disable the Watchdog...
39SF010 ma dłuższy adres , więc inny układ pinów i musiałbym przełączyć prototyp. Jak je przetestuję, to napiszę. Już przetestowałem, wszystko śmiga jak należy. [url=github.com/vidmo91/644_parallel_mem... to, co zrobiłem na GitHuba. Może komuś przyda się domorosły programator pamięci równoległych. Trzeba dopisać trochę kodu, żeby stało się to...
Zrobiłem tak jak zaproponowałes i tez sie wiesza, odpusciłem sobie przerwanie i getrc5 zakąbinowałem w pętli głownej programu i cyka az miło:) Pozdrawiam Właśnie w pętli głównej tkwi Twój problem. Nie można raz po razie uruchamiać instrukcji zapisu na LCD a jeszcze do tego bez poprzedzającej CLS. Również w Bascom 8051 takie postępowanie zawiesi procka....
Niestety jakoś mi ten sposób odczytu nie chce działać. Obecnie używam takiego sposobu odczytu: Config 1wire = Portc.6 1wreset 'reset magistrali 1-Wire 1wwrite &HCC 'opuszczenie zapisu numeru ID 1wwrite &H44 'start pomiaru temperatury Waitms 750 'opóźnienie na czas pomiaru 1wreset 'reset magistrali 1-Wire 1wwrite &HCC 'opuszczenie zapisu numeru ID 1wwrite...
1. Czy wiesz jak działają instrukcje sbic/sbis/sbrc/sbrs? Przecież wstawiając te nop'y zablokowałeś możliwość działanie tego programu. 2. Pokaż cały program. Nie rozumiem dlaczego komunikacja z modułem radiowym może być realizowana w przerwaniach, a komunikacja z PC już nie. Przypuszczam, że gdzieś w głównym programie masz błąd i dlatego nie widzisz...
Witam. Jakiś czas temu zakupiłem na allegro matryce wyświetlacza graficznego wraz z płytą główną kasy fiskalnej na której to był umieszczony układ SED1330F. Po zdemontowaniu układu SED z płyty zbudowałem własny sterownik w/w matrycy. W obecnej chwili jestem po pierwszych testach które trwały 1 miesiąc :) No i natrafiłem na problem z którym nie mogę...
Witam, poniżej zamieszczam kod z Bascoma mojego sterownika BMS, w tej chwili kontroluje temperaturę, czas, Rs232, LCD 2x16. Obsługa z klawiatury lub pilota RC5, w obecnej chwili rozwiajm go o dostęp przez internet. zajmuje ok 8kb pamięci więc w A162 będziesz miał jeszcze drugie tyle pamięci. Ja kożystam z A32 Pozdrawiam. PS. daj znać jak zakończysz...
Jaka walka to tylko 4 przewody chyba że nie masz LPT w kompie. Bascom pod względem ustawiania "fusb..." jest najbardziej czytelny. Ja próbuje samodzielnie zaprojektować PCB ale idzie topornie. Dodano po 25 A jeszcze zapomniałem że pisze w HELPIE do BASCOM : Podczas gdy bity zabezpieczeń oraz tzw. fusebits pozwalają na dostosowywanie niektórych układów...
Może wyślij bezpośrednio kod: 13 0x0D lub \r, ale nie jako STRING, a jako bajt (CHAR) . A Ty chyba interpretujesz, że '\r' ma być ciągiem znaków. Nie wiem, czy twoja implementacja "SendString" zamienia kod '"\r" na bajt 13? Kod ten jest znakiem "not printable", nie da się go zapisać pojedynczym znakiem i jako taki nie ma jednoznakowej repezentacji "wizualnej"...
RS232 jest niestety już używany, jak i również przetwornik ADC, oraz działa Timer -(jest troszkę tego) , dlatego nie moge skorzystać z np. ATMEGA162 który ma 2xRS232, bo nie ma on ADC. Pozatym obwody drukowane już zaprojektowane i zamówione w ilości narazie testowej, ale są. Pozatym użycie dwóch procków raczej odpada, pomęczę sie z tym co mam bo twierdze...
31.07.2010 - AKTUALIZACJA #3 Wsad 2.04: -poprawiono kilka błędów -dodano obsługę nowych procesorów, łącznie 106 (138) -zmiana wewnętrznego zegara na 1MHz, baudrate UARTa to 2400bps UWAGA, FUSEBITY! Jeśli uaktualniasz wsad do 2.04, koniecznie zmień wartość wewnętrznego generatora na 1MHz. Jeśli wykonujesz układ od początku, jedyną rzeczą jaką musisz...
Witam Posiadam Atmega162. Piszę w AVR studio 4 - ASM. Programator to USBasp, programowanie za pomocą mkAVR Programuję oba usarty tak samo aby przekazywał z RXD0 na TXD1 natomiast RXD1 na TXD0. Tak wiem że to bez sensu ale taki chcę omówić z wami przykład. Pytanie brzmi dlaczego dane przechodzą z RXD0 na TXD1 natomiast z RXD1 na RXD0 nie. Jest to wykonane...
definiuje je tak: #define RS485_RE_DE 4 #define RS485_RE_DE_PORT PORTB #define RS485_RE_DE_DDR DDRB #define RS485_ENABLE_RX() RS485_RE_DE_PORT &= ~(1 << RS485_RE_DE); #define RS485_ENABLE_TX() RS485_RE_DE_PORT |= (1 << RS485_RE_DE); a później odpowiednio w programie wywołuję je w funkcji do wysyłania lub...
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....
Sprzedam programator UPA-USB nowy nie używany cena 780 + wysylka przelew z góry poczta polska 10zl przelew z góry kurier 20zł pobraniem kurierem 30zł Zastosowanie STMicroelectronics ST62*: ST6240, ST6245, ST6249 NSC CR16*: CR16HCS5(9), CR16MCS5(9), CR16MES5(9), CR16MFS5(9), CR16MCT5/9, CR16HCT5/9 Motorola HC05*: MC68HC05B6, MC68HC05B8, MC68HC05B16,...
programator atmega162 atmega162 portb rs232 atmega162
vestel 17mb171 telewizor tracić kolor pralka wyważyć
napęd bramy przesuwnej chrome gogle
Jak przywrócić ustawienia fabryczne w falowniku EASun SMG III? Renault Scénic II – trzy sygnały dźwiękowe, gasnące kontrolki, brak błędu na liczniku