na początek spróbował bym pobawić sie przerwaniami np Enable Interrupts lub odblokowanie przerwania wejściowego. Enable URXC jak to nie pomoże to odpiąć telefon, zmostkować TX i RX po stronie telefonu i wysłać coś i zobaczyć czy wróci. pozdrawiam kolegę :P
Ale programowo? Czy poprzez ustawianie fuse bits? Bo ja właśnie pisze swoje programy w Bascomie ale wgrywam skompilowany hex przez MegaLoad. Dodano po 16 No to są dwa wyjścia albo kupić nową kostkę albo odblokować tą. Niestety obecnie przebywam w miejscu gdzie takie układy są trudno dostępne więc na razie w grę wchodzi druga wersja czyli odblokowanie...
Chce uruchomić w ATMega16 programowanym przez ISP obsługę pamięci szeregowej przez SPI. Jak wiadomo oba interfejsy uzywają wspólne wyprowadzenia. Słyszałem ( lub gdzieś czytałem ) że odblokowanie bitu SPE (SPI Enable) w rejestrze SPCR nie pozwoli programować układu w systemie przez ISP. Czy to prawda ?? Pomijam problemy z zewnętrznymi układami które...
Witam, Mam do szanownych kolegów pytanie o niestandardowy, wydaje mi się, sposób wykorzystania timera2. Dokładniej chodzi mi o to, aby używać go w trybie asynchronicznym do zliczania impulsów podanych na wyprowadzenie TOSC1. Potrzebuję rozczaić taką możliwość, ponieważ zmuszony jestem wykorzystać dokładnie to wejście timera2 do zliczania impulsów. Testy...
Witam, W mikrokontrolerze AtMega16 mam do portu PC.3 podlaczony przycisk, chcialbym od niego odebrac przerwanie. Jednak nie wiem jak ustawić rejestr maski TIMSK? Mam taki przykaldowy programik: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #define D1_ON PORTC &= 0x02 //0xBF #define D2_ON PORTC &= 0x03...
Ok to tak dla wyjaśnienia mojego błądzenia w okół "atomówek" Możesz mi wyjaśnić o co chodzi z modyfikacją atomową - jak to się ma na konkretny kod. Rozumiem że samo volatile nie wystarcza więc jak wygląda kod "atomowy" Co do mojego problemu. Ach, tak nie można robić. Nie dość, że zmienne współdzielone pomiędzy przerwaniem i programem głównym nie są...
Tak,zgadza się,po prostu z rozpędu wpisałem Timer3,bo pisałem wcześniej na Atmega128. Poprawiłem nieco kod,ale nadal mam problem z zatrzymaniem stopera. Czy może tryb CTC będzie tutaj lepiej współgrał? [syntax=c] #define F_CPU 16000000uL #include <AVR/io.h> //biblioteka we/wy #include <AVR/interrupt.h> //obsluga przerwan #include <util/delay.h>...
pawel_konin -> podaj dokładny schemat (lub zdjęcie HD) i program którym to testujesz. [syntax=c] /* * GccApplication1.c * * Created: 2012-11-12 16:25:45 * Author: Pawel */ #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <util/atomic.h> #include <math.h> #define NOOFSAMPLES 128 // ilosc...
Nie wiem po co Ci ten zmienny przecinek - chyba nie ma problemu z policzeniem wszystkiego na liczbach całkowitych. Nie wiem też, na co miałbyś czekać w przerwaniu. Możesz do wszystkiego używać jednego timera, np. tego od PWM - to zwykle lepsze rozwiązanie niż zgłaszanie przerwań z kilku timerów. Sam zadecyduj, jak często chcesz wykonywać pomiary -...
Witam Wiem, że ostatnio był wysyp podobnych tematów ale mam problem z czujnikiem DS18B20, którego sam nie dam rady rozwiązać. Otóż po włączeniu układu na wyświetlaczu pojawia się temperatura ok 25 stopni, która rzeczywiście odpowiada temperaturze otoczenia. Następnie co 300ms na wyświetlaczu ma się pojawiać aktualna temperatura niestety następne odczyty...
Jako że prosty przykład, wiele tu informacji nie trzeba wiedzieć. Jedynie przerwaniu od INT0, oraz ustawienie timerta0 w tryb CTC (do stworzenia timera programowego). Reszta to tylko pętla główna w której jest sprawdzany warunek co około jedną sekundę zgodnie z założeniem:[syntax=c]#include <avr/io.h> #include <avr/interrupt.h> // Atmega16...
Witam Na wstępie powiem że nie jestem ekspertem w C. Pisze programik działający na Atmedze16. Mam dwa dwa układy Ram i RTC i muszę się z nimi dogadać przez SPI. I się nie dogaduje. Zeby zapisać cos i odczytać z Ramu muszę zapisać (dla zapisu) kod rozkazu - 8 bitów, adres komórki zapisywanej - 24 bity i dane - 8 bitów. Przy odczycie analogicznie rozkaz,...
Witam Próbuję wysłać, a następnie odebrać bajt danych z pamięci EEPROM 24C04. Niestety zamierzony efekt nie występuje, a brakuje mi już pomysłów co jeszcze można poprawić, dlatego bardzo proszę o przeanalizowanie poniższego programu i wskazanie gdzie są błędy. Po wgraniu programu nic się nie wyświetla ani na wyświetlaczu LCD, ani na terminalu PC. [syntax=c]...
Witam mam bardzo nietypowy jak dla mnie problem z układem który ostatnio wykonałem. Mianowicie jest to centralka alarmowa oparta o uC ATmega16. Działa na tej zasadzie że pod wejście PB2(INT2) podpięty jest kontrakton (zwiera do masy) do którego przykładam magnes i albo rozbrajam albo uzbrajam centralkę. Z grubsza to wygląda tak: PB2(INT2) skonfigurowane...
Witam! Przepraszam, że będę niestety musiał dać bardzo złe wiadomości... 1) Efekt resetu procesora przy zaledwie 3V/m to ... (sorry) tragiczna wiadomość. Zastosowanie do badań pola o natężeniu 3V/m - norma określa tylko dla urządzeń domowych. W związku z tym, że masz czujnik 4-20mA, można domyślać się, że jest to aplikacja bardziej przemysłowa niż domowa...
Dodałem wpis który Twoim zdaniem powinien się znaleźć. Teraz mój plik twi.c wygląda tak: http://obrazki.elektroda.pl/5548434900_1... A co z tą biblioteką <util/twi.h>? Mam się tylko z nią zapoznać czy od razu ją dodać?? I jak ustawić ten rejestr TWSR i do czego służy? :) Z góry dziękuję za pomoc bo dopiero się wszystkiego uczę...
jak w temacie .. Bydgoszcz:) ISP Programer i PonyProg. juz z dwoma osobami rozmawialem i procek nadaje sie tylko do odblokowania przez innym programator niz ISP:/ jak nie zndajede w poniedzialek nikogo by mi pomogl odblokowac to jeden z uzytkownikow elektrody zadeklarowal sie juz ze mi pomoze konkretnie juz odblokowac :)
Zle kombinujesz. To jest tranzystor bipolarny, a takie wzmacniaja prad, a nie napiecie. Napiecie jest kwestia wtorna. Dlatego potrzebujesz uklad, ktory nie zwiekszy napiecia na bazie, tylko prad bazy. Moze to byc op-amp, ale zamiast tak komplikowac lepiej wstawic bufor, np. w postaci kolejnego tranzystora. Tu tylko pojawi sie problem, bo w ukladzie...
Witam! Na wstępie dziękuję za ww. kod :) Jednakże mam problem. Posiadam Atmega16 + DS1305 ( RTC na SPI ). Robie tak: DS1305_init(); // Eneble oscillator note: after power up oscillator is atopped DS1305_write_byte(0x8F,0x05); // 0b0000 0101 => 0x05 ENABLE OSC, WP=0 // Ustawianie zegara DS1305_write_byte(0x80,0x00); //...
Zwarcie Vcc do GND pomogło, ale dopiero takie dłuższe zwarcie ( 5 sek). Wyświetlacz ocnkął się, wyświetla dane, ale !!! ciekawostka, zegar stoi. Załaczam kod, taki wprost z Eclipsa, bez bibliotek. Jestem w trakcie przeróbki z innego projektu, proszę o wyrozumiałość. /* * main.c * * Created on: 2010-09-25 * * * PD7 - 1WIRE * PA0..PA7 - LD0..LD7 -...
Dodałem obsługę wyświetlacza 4 pozycyjnego poprzez rejestry 4096 i dekodery 7447. Teraz oprócz sekund mamy minuty i godziny, czyli pełny wypas. Wstępnie ustawiłemn mój zegar, zostawiam na noc - zobaczymy jaka naprawdę będzie dokładność pomiaru czasu. :) Poprawiony kod programu: http://obrazki.elektroda.pl/6388501000_1...
........Wprawdzie układ jest najprawdopodobniej fizycznie sprawny, to ponoć (z tego co znalazłem w angielskiej sieci) zdarzają się problemy z loaderami lub jakimiś jeeper'ami (ang. jeepers) (co to jest?) tych układów - z reszta przytoczę cytat: I unlocked quite a few by just doing a factory default. Write the files using jeepers. Moje pytanie do Was...
witam, przez przypadek zablokowałem atmege16, odznaczyłem przez przypadek ' przy komentarzu z programu przykladowego, i atmega padła... nieszczesny fragment '$prog &H00 , &H00 , &H00 , &H00 da rade to jeszcze odblokować? i jak ? Programator STK200/300 dokladnie to jakie fuzy ustawiłem cksel na 0000 czyli zew generator?
Witam, Podczas zmieniania fusebitów (taktowanie procesora) procesor odmówił posłuszeństwa (komputer go nie wykrywa), nie wiem czy przypadkiem nie ustawiłem na rezonator zewnętrzny, próbowałem odblokować go używając drugiego, sprawnego procesora, lecz to nie pomogło. Co mam zrobić, żeby go "odblokować"? Dodam, że procek jest w SMD i raczej nie mogę go...
PEŁEN SUKCES! Po prostu opornik miałem nieodpowiedni :D porządny 2000 Ohmów zakupiłem dosłownie 20 minut temu. Odblokowałem i od razu przestawiłem na wew. RC. Mam nauczkę na przyszłość :D Temat do zamknięcia. Dzięki za pomoc!
Odblokuj przerwania przed pętlą główną za pomocą polecenia "sei();" bo inaczej nie będzie działać.
Ja używam takich kodów do odblokowania tych pinów, zaraz po instrukcji konfiguracji zegara programowego: 'odblokowanie pinów PC6 i 7 dla procesorów atmega16/32: Tccr2 = 0 Assr = 0 Timsk = 0 Tifr = 0 Oczywiście wszelkie dalsze konfiguracje innych timerów powinny znaleźć się po tym kawałku kodu.
Poczytaj o porcie C w Atmega 128 na forum. W sieci jest ponadto polska nota katalogowa. Ostatecznie przeglądnij Fusebity w Bascomie. O ile dobrze pamiętamport C trzeba odblokować.
Witam Bardzo Interesujący projekt.... Zastanawiam się czy dało by się coś takiego wykonać żeby odblokować Atmega8, Atmega16, Atmega32 ... ????
Witam Już tego znieść nie mogę. Korzystając z PonyProg zmieniam ustawienia Fuse bitów. Wspieram się stronką "Engbedded Atmel AVR® Fuse Calculator" i nic ponadto, co tam mi wyświetla nie zmieniam. A to co zmieniam to oscylator zewnętrzny na wewnętrzny i z powrotem. W efekcie mam już 3-cią nieodzywającą się kostkę. To co łączy te trzy przypadki to...
Cześć. Piszę program na mikrokontrolerze Atmega16. Wszystko dobrze działa na wewnętrznym kwarcu 8MHz. Chcę go przestawić na zewnętrzny 16MHz. Zmieniam fuse bity na 0xFF i Ox99 i procesor się blokuje, nie można odczytać sygnatury. Co robię źle?
Jeśli mieszałeś coś z FuseBitami. I odznaczyłeś bit SPIEN to tak mogłeś zablokowałeś ATmege ;) Jest jeszcze jedna metoda odblokowania jej, ale wiąże się to z programowaniem za pomocą JTAGA. Może tego bitu nie przestawiłeś i tym Ci się uda. Jeśli i ten bit przestawiłeś to tylko i wyłącznie albo nowa ATmega, albo właśnie metoda odblokowania programatorem...
W jaki sposób zrealizowac blokade uC w bascomie aby nie mozna bylo zczytac z niego zawatrosci pamieci Flash ? chodzi mi o atmega16 jedank ta procedura pewnie jest podobna w kazdym ukladzie at Dzieki za wszelka pomoc
Witam, Mam prosty ukad testowy podłączony do atmegi16 z kwarcem 16MHz. Układ wygląda tak że do naruszenie odpowiednich pinów portu C powoduje zadziałanie odpowiedniego pinu Portu D. W pewnym momencie na samym początku kodu zaraz po konfiguracji portów wstawiłem wpis UCR=0 Chciałem w ten sposób wyzerować rejestr UART'a. Jednakże w po tym wpisie przestały...
Witam. Zablokowałem przez przypadek Atmege8 podczas próby zmiany funkcji pinu RESET na I/O w bascomie. Robiłem to pierwszy raz i chyba coś jeszcze zmieniłem przy okazji bo momentalnie układ przestał odpowiadać. Mam programator równoległy. Czytając o takich przypadkach możliwe że przyczyną blokowania jest przejście układu na zewnętrzny oscylator, niestety...
Witam. Złożyłem sobie najprostszy układ z atmegą16 na płytce stykowej. Udało mi się odczytać model programem MkAVR Calkulator. Programy wgrywałem za pomocą AVR Burn-O-Mat i wszystko działało. W pewnym momencie zacząłem sobie przeglądać fusebity i (nie pytajcie czemu to zrobiłem - nie wiem) w zakładce External RC oscillator, gdzie było ustawione 0.9Mhz...
Mam problem ponieważ chyba zablokowałem ATmega16 nie wiem czy to możliwe że wgrywając zły program można coś takiego zrobić. Wcześniej było wszystko ok wgrałem program który mrugał diodami. Dlatego postanowiłem zrobić coś więcej i zacząłem się uczyć obsługi wyświetlacza LED. I tu zaczął się kłopot ponieważ pozmieniałem coś w programie tak że po zaprogramowaniu...
No właśnie... Tak się dziwnie stało, że nie wiem jakim cudem ale mam zaprogramowane wszystkie lockbity... musiałem pewnie w Pony kliknąć, SET ALL zamiast write, a potem poprawić :/ Ma w trójmieście jakaś dobra dusza programator równoległy i zechciałaby mi poświęcić minutę na wykonanie "chip erase"?? No chyba, że ktoś zna jakiś inny sposób :-). Dodam,...
Witam dopiero zaczynam zabawę w tej dziedzinie dlatego proszę o wyrozumiałość. Zakupiłem sobie płytkę uruchomieniową [url=http://programatory.com.pl/sklep/in... na Gotronik.pl Napisałem sobie program, który wgrywałem za pomocą programu [url=http://www.microsyl.com/megaload/me...
Witam Mam problem ze sterowaniem serwem w bascomie. Połączenie pomiędzy uC a serwem jest prawidłowe. Gdy wgrywam jakikolwiek program, np taki krótki: $regfile = "m16def.dat" $crystal = 10000000 Config Porta.4 = Output Config Servos = 1 , Servo1 = Porta.4 , Reload = 10 Enable Interrupts Servo(1)=100 wait 1 serwo dziwnie skacze, to przerobione...
Witam. Które dokładnie lockbity zaznaczyć dla procesora Atmega8 aby zabezpieczyć program przed odczytaniem. Dysponuję programatorem STK200/300.
Do odblokowania można użyć urządzenia z projektu "Fusebit Doctor" - sam uratowałem tym kilka trupów :-)
Mam procesor ATMega 16, najnowszego bascoma w wersji demo i klawiaturę podłączoną do portu C. Niestety nie działa poprawnie funkcja GETKBD. Zwraca wartość 7 gdy nic nie jest wciśnięte. Pod pozostałymi portami działa ok. W ramach rozwiązania problemu zacząłem testować portc i okazuje się że nie mogę wpisać na niektóre wyprowadzenia "1" Ustawiam Portc...
Przez nieuwagę/pośpiech zamieniłem fusy miejscami (Low z High). Powinno być: High: 0xD9 ; LOW: 0xFF, ustawiłem na odwrót (FF;D9) zamiast tego: http://obrazki.elektroda.pl/2219408000_1... zrobiłem to: http://obrazki.elektroda.pl/9424343700_1... wyłączając SPI i Bóg wie co jeszcze. Problemem dodatkowym jest fakt, że uP...
przeczytałem kilka postów, ściągnąłem fajnego pdf'a o zabezpieczaniu i już wiem, że żeby zabezpieczyć mój program przed odczytaniem musze ustawić bity LB1 i LB2 na logiczne 0. 1. co to znaczy ustawić bity? jak to zrobić? gdzie to zrobić? (pisze w C) 2. w datasheet'cie od atmegi jest napisane, że blokuje się odczyt i zapis do flash i eeprom. Ja w moim...
witam! Mam problem z obsługą przerwania Int2 w AtMega16. Po uruchomieniu procesora, ale przed uaktywnieniem przerwań, na wejściu PINB.2 występuje zmiana stanu z wysoki ->niski->wysoki. Po uaktywnieniu przerwania INT2 nie występuje zmiana sygnału na wejściu PINB.2 ale mimo to przerwanie zostaje obsłużone. Czy jest jakiś sposób na zablokowanie przerwań...
Witam! Prosiłbym, żeby ktoś mi pomógł coś zrozumieć: Ustawiam sobie (według pdf-u), fuse bit'y następująco: BODLEVEL:1 BOD:1 SUT1:1 SUT0:0 CKSEL3:1 CKSEL2:1 CKSEL1:1 CKSEL0:1 OCDEN:1 JTAGEN:0 CKOPT:9 EESAVE:1 BOOTSZ1:0 BOOTSZ0:0 BOOTRST:1 Według mnie to ustawienie odpowiada zewnętrznemu kwarcowi >8MHz (Ja mam 16 MHz)? Kiedy jednak podłączam zewnętrzny...
Witam! Kolego marcinek_85 całą procedurę programowania masz opisaną przez zemnie na tym forum wraz z zrzutami ekranowymi ustawienia fusebitów jaśniej już nie może być.Jeżeli będziesz przestrzegał wskazówek tam opisanych wszystko będzie ok!.Spróbuj wykasować dane z procesora i wgrać na nowo.Przy wgrywaniu fusebitów należy szczególnie uważać i lepiej...
Odblokować się zazwyczaj da trzeba użyć trybu programowania HV a do tego trzeba poczytać . Co do fusebitów na drugim oknie masz na czerwono: Enable JTAG - wyłącz ten bit i zaprogramuj Atmegę. Pozdrawiam Marek
Zdarza się, można odblokować, ale dlaczego na obrazku widać Atmega16 jeżeli programowałeś taki procesor ???
Reset podciągnąłem rezystorem 10k do vcc. Bez efektu. Może chodzi o to, że aby wykorzystać PORTA trzeba jakość odblokować go za pomocą fusebitów.
Ale w kodzie są odblokowane globalne przerwania ;-).
Instrukcje Step-By-Step jak zdobyć wsad masz tutaj: http://www.siwawi.arubi.uni-kl.de/avr_pr... i tu: http://www.siwawi.arubi.uni-kl.de/avr_pr... Jak dobrze się doczytałem triko polega na tym żeby zdobyć wsad z oryginalnego zestawu atmela STK500, czyli trzeba włożyć procek ATmega16 -chyba taki jak w oryginale, załadować...
Być może przez złe warunki z zasilaniem, podczas próby programowania zostało samoczynnie zmienione wyprowadzenie reset na wyjście (bit SPEIN). Bez programatora równoległego raczej się nie obejdzie. Ew. kup se nowego procka, a jak już będziesz miał doświadczenie to zbuduj se programator równoległy i odblokuj nieszczęśnika. Poczytaj ten Dodano po 4 Być...
Zamiast CKDIV ustawia się CKSEL, na stronie www.edw.com.pl/ea/avr/avr-fuse.pdf opis po polsku Atmega16.
Niech to... a udało Ci się odblokować któregoś za pomocą fusebit doctor?
Na szybko zbudowałem pająka żeby przetestować i przy okazji odblokować kilka AVR, u mnie pomogło z ATMEGA644p ATMEGA16, ATMEGA8, i tiny2313, więc projekt godny polecenia.
Przecież twój kod się nawet nie powinien kompilować, więc jest faktycznie zły :) Jak sobie wyobrażasz zagnieżdżenie ISR? Mieszasz nowe makra (ISR) ze starymi (SIGNAL). Poza tym ATMega nie ma czegoś takiego jak priorytety przerwań. Przerwanie TIMER1_COMPA_vect nie zostanie przerwane, chyba, że jawnie odblokujesz wszystkie przerwania co zapewne doprowadzi...
JAK ZROBIĆ BRAMKI/????? ABY ODBLOKOWAĆ ATMEGE???? Czy ma ktoś jakieś schematy
nie znam BASCOMA, ale zobacz czy masz odblokowany JTAG, jeśli tak to go wyłącz i zacznie działać
Programator i projekt już działa! Zmieniłem opornik w zasilaniu resetu z 10k na 5k1. To pomogło ale poprzednio wszystko działało z 10k. Prawdopodobnie może to mieć związek z odblokowaniem PINC2-C5. Wtedy po resecie mk często mk się blokował. Może ktoś wie co się stało?
Czy ktoś może mi pomóc zmusić mikrokontroler Atmega16 do pracy z zewnętrznym kwarcem 8MHz i jest to do zrobienia w Bascom AVR. Zgodnie z sugestiami z forum robiłem kilka podejść do tego tematu ale zawsze kończyło się na zablokowaniu układu i ponownym jego odblokowaniu przy zastosowaniu zewnętrznego generatora.
zeby ci dioda zgasła przed uspieniem procesora, w procedurze obsługi przerwania powinieneś zmienić stan na wyprowadzeniu z diodą. Potem odblokowac przerwania i dopiero sleep. Jesli procesor uspisz w procedurze obsługującej INT0 to sie nie wybudzi gdyż na wejściu w procedure INT0 wyłączane są przerwania a przywracane po zakończeniu obsługi przerwania...
Co zmienić w kodzie żeby wyświetlał to samo ale w takim połączeniu jak na schemacie atmega16 z lcd ? Przypinam lcd i zmieniam kod do portów A działa ok. Przepinam lcd i zmieniam kod do portów B i D działa ok. Przepinam lcd i zmieniam kod do portów C nie działa czy porty C są zablokowane ? jak je odblokować ? Wyłączam OCDN i JTAGEN nic nie daje.
A ja poszedłbym w kierunku --> wszystko do przerwań i spanie między nimi w IDLE mode. miś: to jest dobra koncepcja. Ztym że nie wiem czy w C ogarniesz bo pamiętaj aby muzyka szła gładko inne przerwania muszą być na tyle krótkie lub od razu po wejsciu do nich musi nastąpic odblokowanie SEI co nie jest takie proste i wymaga niezłego przeliczania/wyliczania.
W rejestrze TCCR0 ustawiasz 3 bity CS02, CS01, CS00 zgodnie z tabelką 42 (83 strona w dokumentacji) Odpowiednio: 0 0 0 – timer zatrzymany 0 0 1 – timer włączony, zlicza bez preskalera (impulsy z zegara systemowego) 0 1 0 - tak jak wyżej, zlicza z preskalerem 8 itd. Dwa ostatnie wiersze to zliczanie impulsów zewnętrznych. W rejestrze TIMSK...
atmega16 eeprom atmega16 ds1820 atmega16 projekt
vestel 17ips72 wyświetlacz sterownika pieca defro linie napowietrzne
frequency mixers frequency mixers
Używany moduł sterujący Electrolux – gdzie kupić, na co zwrócić uwagę? Firmware Thomson 40FE5606 – aktualizacja OTA, Android TV 8, serwis, pliki update.zip