fusebitami można co najwyżej zablokować możliwość programowania przez niektóre złącza (programowanie równoległe zawsze działa). Od zabezpieczenia przed odczytem i zapisem są lockbity - zaznacz Lock1 oraz Lock2 i będziesz miał zabezpieczenie przed odczytem i zapisem aż do najbliższego kasowania całego układu.
Musisz zaprogramować dwa bezpieczniki Lock1 i Lock2 Te bezpieczniki to nie ciągi zer i jedynek tylko dwa wskażniki (dwa bity) programowane programatorem. Usunięcie tych bezpieczników jest możliwe tylko przez skasowanie całego procka.
zmień w programie toggle pinx.y na toggle portx.y rozkaz pinx.y stosuje się do odczytu wejść.
Program jest napisany tak, że jak już zacznie wyświetlać "brak układu" musisz go zresetować, żeby znowu działał od początku.
https://obrazki.elektroda.pl/9548340600_...
Moim zdaniem lepiej by bylo wstawic petle for i odczyt ustawien portu z tablicy.
To była pomyłka, przecież w programie widać $regfile = "Attiny2313.dat" Powróciłem do wersji oryginalnej i dalej lipa. Czy ktoś z kolegów uruchomił ten program ?
No fajny niedziałający program ;) Super.
Odczyt z pamieci eeprom wrzucasz na poczatek programu bo nie potrzebujesz odczytywac tego w petli: {...} Dim X As Byte X = 800 Readeeprom X , 0 Do Portb.0 = 1 Portb.2 = 1 Waitms X {...} Poza tym rozpoczynanie glownej petli od opoznienia to wg mnie zly nawyk :D
Napotkanie Inkey() powoduje zatrzymanie pracy programu aż do odczytu znaku z bufora UART.
Tak jak pisałem powyżej zmień tylko te fusebity które wymieniłem. Czyli CKSEL3 = 1, CKSEL2 = 1, CKSEL1 = 0, CKSEL0 = 1, CKDIV = 1. Opisałem to według dokumentacji µC. Jak to dokładnie zrobić w Bascomie to nie wiem bo nie używam tego programu.
W głąb testów wyszło, że im mniej RAMu zajmuje program to więcej funkcji działa :D Zostawiłem 81b i nadal kuleje... Jaki z uC byś polecił? Dobrze gdyby był w tej samej obudowie z takim samym rozstawem nóżek... Zacząłem przepisywać i mam dla kodu programu ok 1.5KB a dla RAM 11B 8)
Dobrze jest, dla czytelności programu, używać aliasów, wówczas w kodzie używasz "wejscie_1" zamiast PIND.0 . Niby taka pierdoła, ale znacznie ułatwia analizę. Ja bym to zrobił tak, że w pętli głównej zliczał "przestoje", czyli: - jeśli pojawi się impuls to zeruj licznik - jeśli nie, to dodaj 1 do licznika - jeśli licznik = 100 (na przykład), to włącz...
1. Dodam jeszcze, że jeśli chcesz używać nadal Attiny2313 to możesz jako przetwornik wykorzystać komparator i jeden kanał PWM do którego podpinasz filtr RC. Mając na jednym wejściu komparatora napięcie które chcesz zmierzyć a na drugim wyjście z filtra RC zwiększasz wypełnienie PWM, a komparator wykryje gdy napięcie z PWM będzie bliskie mierzonemu....
Z tym, że tablice musiałbym wcześniej wpisać w program, a mi chodzi o to, by "uczyć" tego robota danego zadania. Jeśli zmieniłbym odległośc punktu A od B i znowu postawił przeszkode, w którą by robot uderzył, to wtedy ponownie musiałby zapamiętać nową trase. Przy czym jeśli działałbym w obrębie pamięci RAM, kasowałbym ją po prostu resetem zasilania....
Jak ustawić fusebit w attiny dla kwarcu 4mhz? Czy używasz BASCOMA ? Tam jest bardzo proste ustawienie pomimo tego, że nie którzy psioczą. jeżeli tak to wybierz zakładkę programowanie > ręczne > fuse bit i tam klikając dwukrotnie na daną linie wybierasz odpowiedni fuse bit. $crystal zmień na 1000000 MHz w programie.
I jeszcze jedno pytanko. Czy można przerobić ten program tak by pasował do tańszych układów np atmega48, attiny26, attiny2313?
Witam. Sprawdź w ten sposób: $crystal = 1000000 'deklaracja częstotliwosci pracy kwarcu $regfile "attiny2313.dat" 'model procesora dla którego jest ten program Deflcdchar 1 , 14 , 17 , 17 , 14 , 32 , 32 , 32 , 32 ' definicja znaku stopnia Config 1wire = Portd.5 ' konfiguracja portu PD.5 jako wejscia magistrali 1-wire Dim Odczyt(2)...
testowałem na razie dla temperatur dodatnich, w ogóle to w programie nie ma obsługi temperatur ujemnych, jak będę miał czas to dopiszę
Problem może być ... sprzętowy. Otóż Tiny2313 fabrycznie ma ustawiony zegar na 8MHz i preskaler zegara na podział przez 8 czyli pracuje na 1MHz. Jeśli nie manipulowałeś z Tinką to nie będzie zgodna rzeczywista częstotliwość taktowania uC z zadeklarowaną w programie. Magistrala 1Wire jest bardzo wrażliwa na czas poszczególnych impulsów i nie zniesie...
Przyczyną może być bascom :] Wykorzystujesz interface czterobitowy bez możliwości odczytu, więc program nie ma jak sprawdzić, czy wyświetlacz wykonał już żądaną operację. Zostało to rozwiązane tak, że program po prostu czeka pewien czas i być może ten czas oczekiwania jest za krótki. Spróbuj wstawić ten "Wait 1" za "Locate 2, 1" Zobacz też poleceie...
Pomysł z przerwaniami zboczem opadającym a później narastającym okazał się bardzo dobrym rozwiązaniem w moim przypadku. Jeśli chodzi o ustawienia portów to zależy czy najpierw dasz instrukcję ustawienia portx czy pinx, przynajmniej tak mi wyszło w symulatorze. Teoretycznie program został już napisany tylko wrzucić do procka i sprawdzić w praktyce. Mogę...
Nie wiem czy to ma jakieś znaczenie, ale trafiłem na taki błąd: http://obrazki.elektroda.net/35_12572779... Wystąpił gdy chciałem odczytać lock bity, najpierw dałem "sprawdź podłączony AVR" program wykrył ATtiny2313 i następnie odczyt. Błąd nie występuje jak po wykryciu procka sam ręcznie wybiorę z listy AVR.
zaaplikowałem twój kod ale jest 0 na wyświetlaczu piszesz że nie robiłbyś tego ne przerwaniu, proponujesz przenieść to do petli głównej, a reszte programu przerobić? bo nim jeszcze jest obsługa przycisków, RC5 etc. która własnie znajduje się w pętli głownej
Witam :!: Mam pytanie jak sprawdzić czy program który napisałem na avr'ke (attiny2313) do odczytu sektorów itp z SD :?: Czy ma ktoś jakiś pomysł na sprawdzenie czy odebrane dane z sd\mmc są poprawne albo czy w ogóle są :?: Poprawiłem tytuł http://www.elektroda.pl/rtvforum/topic10... Przeniosłem do właściwego podforum.
Wydaje mi się, że ATmega128 jest wyjątkowo wrażliwa na wszelkie niespodzianki podczas programowania. Kiedyś padło mi zasilanie w trakcie programowania (program, nie fusy), ATmega128 zeszła do krainy wiecznych łowów (nic jej nie chciało ruszyć). Po tym podobną sytuacje (już celowo) spowodowałem z ATtiny2313, Atmega8515 i ATmega128. 128 padła, pozostałe...
Dzieki za szczegolowy opis, wczesniej zbyt szybko pospieszylem sie z odpowiedzia :) . Jeszcze raz przyjzalem sie programowi i mam watpliwosc co do odczytu z 16b. rejestru TCNT1. O ile zapis jest zgodny ze specyfikacja atmela (zobacz strona 83 pdf-u Tiny2313) najpierw wpis to bajtu starszego a pozniej mlodszego to odczyt powinien byc w kolejnosci odwrotnej....
tak lecz gdzie indziej czytałem, że może to być kwestia ustawień fusebitów lecz chyba ja do końca nie wiem jak to zrobić w avr studio. generalnie miałem jeszcze inne problemy ale one zniknęły po przeczytaniu innego tematu programuje uc programem z tego linka http://www.elektroda.pl/rtvforum/topic11... z ostatniego postu
witam kkupilem nowa sztuke procka ATTINY2313 przez program Pony prog 2006.Robie odczyt z urzadzenia i blad(-24) a wiec albo ten program jest badziewny albo ten moj programator w biosie przelaczalem naa SPP ECp ECP=EPP i nic. prosze o rade,jakis schemacik dzialajacego programator PEWNEGO Co programuje ATTINY2313 i program za pomoca ktorego bede mogl...
Teraz lepiej poprawiłem na główny poście jakieś sugestii jeszcze co do projektu. Jeszcze jedno pytanie co lepiej w programie dać opóźnienie na odczyt z przycisku czy kondensator równolegle dla eliminacji drgań
Posiadam Help'a po polsku a notę katalogową po angielsku tylko nie rozumiem jak ma być odczyt godz z tego pcf'a jak wyświetlić informacje przesłane za pomocą I2C.
Tak właśnie chce użyć odcięcia zasilania jako "przełącznika" przyciski nie wchodzą w grę . Czy EEPROM ma jakiś ograniczony zapis i odczyt ? Bedę używać zmiany kolorów może dwa do czterech razy dziennnie maksymalnie. Ma ktoś może jakiś przykład programu w bascomie ?
Idea polega na tym, że wskaźniki krążą po buforze w tym samym kierunku, tak jakby koniec bufora połączony był z początkiem, stąd nazwa "bufor cykliczny". Po dojściu do końca bufora wskaźnik przeskakuje na jego początek. Pierwszy zawsze jest wskaźnik zapisu, za nim podąża wskaźnik odczytu. Jeżeli oba wskazują na to samo miejsce to znaczy że bufor jest...
Nie działa ci pierwszy sposób ponieważ deaktywujesz watchdog po watchdogu:) tzn nigdy nie dojdzie to tej linijki kodu ponieważ zawsze wcześniej się zresetuje. Daj wdt_disable() na początku programu (a napewno przed włączeniem watchdoga). Ja tak zrobiłem i działa bez problemu. A swoją drogą używałem resetu ponieważ mam dziwny proble, może tu mi ktoś...
przeinstalowałem program i wymieniłem podstawkę pod układ, attiny zaczęło współpracować także temat uważam za zamknięty. dzięki wielkie za zainteresowanie i pomoc
Ale czy przy zmianie rodzaju kwarcu na 10000 nie powinienem miec kwarcu 10Mhz. Bo w schemacie jest 4kHz i w układzie też wmontowany jest kwarc 4kHz. Mam zmienić w programie rodzaj kwarcu czy wymienić kwarc w układzie?
I o to chodziło. Dziękuję. :-) Wgrałem program w wersji tylko odczytującej wartość z EEPROM, po czym wgrałem spreparowany wsad do EEPROM i zadziałało (no, przynajmniej odczyt zadziałał ;-)). Avrdude nie chwalił się każdorazowo programując mikrokontroler, że oprócz kasowania pamięci flash przed zapisem, kasuje też inne dane (tym bardziej, że do tego...
Za często nie używam zmiennoprzecinkowych i myślałem że float to 2 bajty. Teraz działa: eeprom_write_block((float *)&wynik, (float *)0x0, sizeof(wynik)); eeprom_read_block((float *)&wynik, (float *)0x0, sizeof(wynik)); Chodź przy funkcji write wykorzystanie pamięci programu wzrasta o 10%...
Dzieki Gienek za pomoc. O to mi chodziło. Przy kompilacji programu tworzą się 2 pliki jeden z rozszerzeniem .hex który ładuje do pamięci FLASH i drugi z rozszerzeniem .eep który ładuje do EEPROM. Pozdrawiam. Temat zamykam
Masz chyba błąd w założeniach konfiguracji Timera. Licznik ustawiony jako Counter po prostu liczy impulsy z zewnątrz- prescale nie powinno być- bo to nie jest Timer tylko Counter. Rejestr Capture też w tym wypadku jest użyty bez powodu- nie ma do niego żadnej obsługi przerwania a i zezwolenie na przerwanie nie jest ustawione. Zezwolenie na obsługę przerwania...
Próbowałem zmieniac wyprowadzenia (int0,int1) i ustawienia (Low level, falling) i nie przynosi to efektu. Zmieniłem pilot i dalej mam działajacy program na attiny2313 i nie działajacy na atmega16.
Na dobry początek dla tych co nie mają takiego sprzętu jak mrachacz, buuu... :-( niech zobaczą co ich czeka po otwarciu obudowy. Pzdr. N http://obrazki.elektroda.net/84_11946128... Co do programu na Attiny2313 to czasami szybciej i lepiej napisać nowy. Ale co zrobić jak w procesorze mamy 128-bajtowe hasło do skarbca?
Inne pytanie, jak wiekowe są to procesory (AT90S1200, 90S2313) ? bo pierwsze wersje sprzedawane byly z zablokowanym ISP. Kupione w sklepie w ciągu ostatniego tygodnia, teraz nie mam ich pod ręką, żeby kody dat spisać. Za to z ATtiny2313 mam inny problem - PonyProg je programuja i działają, do momentu wpisania nitów kontrolnych wskazujących na pracę...
Witam. Właśnie popelniłem termometr na attiny2313. Do softu andy'ego74 dopisałem tylko obsługe wyświetlacza i wszystko ok. Program zajmuje 98%. P.S. wlasnie porównuje sobie odczyty 2 czujników w tym samym miejscu. Różnica wacha sie miedzy 0,2 a 0,3 stopnia :D
A sprawdziłeś to co napisał Andy74? Komunikacja z PC po RS232. 485 ma takie same parametry komunikacji tylko jest to pętla prądowa i ma większy zasięg. Jak sprawdzisz komunikację z PC to będziesz wiedział że protokół jest dobry. A potem można sprawdzać czy 1km kabla jakiś kretyn szpadlem nie przeciął. I w EP te programy są na ATmega8-a Ty masz ATtiny2313.
Spróbuj napisać polecenie, by czyścił ci na początku programu zmienną. Nie znam się jeżeli chodzi o programowanie w C, więc nie umiem Ci dokładnie wytłumaczyć :C I jeszcze jedno... Nie wiem czy się da, ale spróbuj ustawić zmienną na zapis i odczyt...
Do głowy mi by nie przyszła pewna rzecz. Fakt, iteracja powinna zaczynać się od 7 do 0. W Devie dla C pętla [syntax=c]for(i=7; i>=0; i--)[/syntax] wykonała się 8 razy, od 7 do 0 włącznie. W programie dla AVR zmienna i była typu unsigned char i pętla wykonywała się 7 razy. Zmiana i na short int rozwiązała problem. Teraz funkcje wyglądają tak: [syntax=c]...
I mam jeszcze takie pytanie, a gdyby dodać opóźnienia i stan czujnika odczytywać dajmy na to co 0,5 sekundy wtedy nie powinny wystąpić drgania nie? No i teraz pomyśl sobie, że czujnik jest na granicznej wartości z progiem jaki sobie założyłeś tymi dwoma rezystorami, odczyt dokonujesz jak sobie wymyśliłeś co pół sekundy. Tak więc przekaźnik może sobie...
MaxX850 dzięki za podpowiedź. Wyszukiwanie czujników jest użyte gdyż docelowo są podłączone dwa - do testów ustawiłem odczyt tylko z jednego. Dziwne jest to, że mój program działa na Attiny2313, a jak przeniosłem go na Atmega przestał działać. Użyte czujniki do DS1820. Problemem na pewno jest "waitms". Gdy mam w programie "waitms" czujniki pokazują...
Witam Odczytywanie wsadu zabezpieczonego procesora bez zgody autora pachnie tu złodziejstwem.Skoro autor programu nie życzył sobie aby efekt jego pracy był dostępny za darmo to zabezpieczył procesor przed odczytem.Dlaczego tak trudno jest uszanować czyjąś pracę?Czy nie prościej jest zlecić napisanie nowego programu lub kupienie go od właściciela niż...
Skoro można to oczywiście wolę sprzętowe PWM'y... PYTANIE 1: Zatem rozumiem, że OCR0A, OCR0B, OCR1B (w nocie OC0A, OC1A, OC1B) to będą wyjścia PWM'ów pod które mam podłączyć diody (pomijając resztę elektroniki)? PYTANIE 2: Czy jak połączę wejścia uC z wyjściami portu LPT to ustawienie sygnału na stan wysoki spowoduje że bit_is_set() zwróci TRUE dla...
Chodzi o to, że zmienna volatile cały czas odczytywana jest z pamięci i ładowana do rejestru a zmienna bez volatile, ładowana jest tylko raz? Czy dobrze myślę? Dobrze myślisz. Ogólnie zmienna globalna volatile ma sens w sytuacji, gdy ze zmiennej korzystasz jednocześnie w programie głównym i w procedurze obsługi przerwania. W Twoim przypadku, gdy korzystasz...
Witam, zaczynam (chciałem) zabawę z mikrokontrolerami, jednak mam problem którego nie daje rady przeskoczyć. Od razu pisze ze czytałem juz posty z podobnym problemem jednak nigdzie nie znalazłem odpowiedzi. Problem jest następujący: mam programator na LPT oraz płytkę tylko do programowania ATTINY2313. Oprogramowanie to BASCOM-AVR i PonyProg2000, wszystko...
Witam, projektuje urządzenie wykorzystujące pastylki DS1990 i w czasie pisania programu natknąłem się na problem z prawidłowym odczytem numeru klucza po przyłożeniu pastylki do czytnika. Nikiedy na wyswietlaczu otrzymuje calkiem przypadkowe dane. Błąd występuje w przypadku około 5% odczytów. Okrojony do minimum fragment programu: $regfile = "attiny2313.dat"...
Inicjalizację masz OK, ale resztę do bani. O czytaniu zmiennych z pamięci programu poczytaj /* deklaracja */ uint8_t pgm_data[10] PROGMEM = {1,2,3,4,5,6,7,8,9,10}; /* odczyt */ uint8_t bajt = pgm_read_byte(&pgm_data[5]... /* zapis */ /* poczytaj w datasheecie procesora */ Poza tym pamięć flash nie za bardzo nadaje się...
Witam! Wiem że problem był wałkowany setki razy,ale jakoś nie mogę sobie z nim poradzić. Posiadam zestaw uruchomieniowy zvl11 na którym to prowadzę kurs oślej łączki. Wrzuciłem wsad podany niżej do uP i odczyt z ds18b20 jaki otrzymuje to "Temp= -0.0625oC" i pod wpływem ogrzewania nic się nie zminia. W zwiazku z tym mam kilka pytań. Mianowicie czy w...
Witam, mam problem z uC ATtiny2313 w wersji smd, który wykorzystuję w swoim układzie zdalnego sterowania diodami, elektronicznymi przełącznikami itp. Problem pojawił się gdy zacząłem programowac procesor. Niby wszystko ok, komunikacja z kompem prawidłowa, zapis, odczyt. Ale jak przychodzi czas do przetestowania programu - klapa. Na wszystkich pinach...
Wykonałem programator USBasp wedle projektu pana Thomasa Fischl. Po podłączeniu wykrywa komputer go zainstaluje sterowniki i programuję Attiny2313 no i wychodzi udało mi się go zaprogramować, ale taki prostym wsadem. Później biorę Atmega8 świeżo kupiony programuję i jakby wszystko jest okej, ale po podłączeniu widać, że nie jest zaprogramować spróbowałem...
Bootloader? Jak to wgrywasz? Dodano po 2 Można skrócić. 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksišżki "Mikrokontrolery dla Poczštkujšcych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja częstotliwo?ci pracy kwarcu $regfile "attiny2313.dat" 'model procesora dla...
Witam Nie myli się kolega Dareks do DS 18B20 trzeba inny program. Mam coś takiego 1wreset 'reset 1wwrite &HCC 'jedna kostka więc wykorzystujemy rozkaz SKIP ROM 1wwrite &H44 'dokonaj konwersji Waitms 750 'poczekaj czas konwersji 1wreset 'reset 1wwrite &HCC 'rozkaz adresowy SKIP ROM 1wwrite &HBE 'rozkaz funkcyjny - polecenie odczytu Odczyt(1)...
Witam, używam procka ATTiny2313, wszystko działa niby super ale... mam kłopoty z pamięcią EEPROM, tzn nie z zapisem czy odczytem. Procedury zapisu i odczytu też działają dobrze. Ustawiałem też fusebit EESAVE. Ale pomimo to po kilku nagłych wyłączeniach i włączeniach zasilania dwa zapamiętane bajty w tej pamięci potrafią zmienić swoją wartość. Normalnie...
Witam. Składam sobie zegar z termometrem na Attiny2313 i DS18B20 lecz mam problem z ujemną temperaturą. Do odczytu temperatury używam programu kolegi "Elektrooonik" ponieważ zajmuje najmniej kodu co jest tu dla mnie ważne i z 1-Wire styczność mam pierwszy raz więc wpierw wolę mieć jakiś przykład. Program Oryginalny do pomiaru temperatury wygląda tak:...
Witam, Na tej stronie znalazłem opis jak podłączyć czujnik DS18B20 do wyświetlacza LCD http://www.portalnaukowy.edu.pl/termomet... Oto kod: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksiażki "Mikrokontrolery dla Poczatkujacych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja...
Pierwszy schemat bez mikroprocesora (wieczna świeczka.pdf). Tutaj masz przykład z mikroprocesorem: http://www.elektroda.pl/rtvforum/topic32... (projekt konkursowy) Widzisz jak ja zrobiłem sztuczne ognisko i pochodnie, masz kod programu (używaj do woli). Cytuję swoją wypowiedź z tamtego tematu: <<Trzy sprzętowe kanały PWM posłużyły do sterowania...
ugh123 kolega miał dobrze zadeklarowane porty, a ty kazałeś mu poprawić na błędny zapis!! dla jasności (ostatnio pisałem to na forum w różnych tematach ze 100 razy): Config PORTn = Input / Output / &Bxxxxxxxx Config PINn.x = Input / Output 'czyli: Config Pinb.3 = Output i dla jasności: rejestr PINn to rejest odczytu rejest PORTn to rejestr zapisu...
Skąd mogę ściągnąć AVRDUDE w wersji 5.10 lub 5.11 jako *.EXE? Na stronie domowej A już najdziwniejsze jest dla mnie to co opisujesz o jakimś pliku test.hex, którego rzekomo nie ma ani folderu w którym się znajduje. To powiedz mi jak ty w ogóle programujesz ten wsad ??????? ręcznie??? Jakimś plikiem *.BAT ???? jeśli tak to ja się nie dziwię, że masz...
Zmienilem na takie cos i wogole nic nie wysyla, wiec cos gdzies sie zatrzymuje.. $regfile = "attiny2313.dat" $crystal = 8000000 Config Pind.5 = Input Config Portd.1 = Output $hwstack = 32 $swstack = 10 $framesize = 40 $baud = 300 Config 1wire = Pind.5 Dim Odczyt(2) As Byte , A As Byte , Licznik As Byte , T As Integer , T1 As Single...
(at)Mamut jestem również zainteresowany Twoim projektem ze względu na możliwość odczytywania i programowania bardzo wielu układów. Programuję w Delphi 10.1 Berlin. Czy jest możliwość przeniesienia Twojego projektu programu do mojej platformy? Niestety nie bardzo jestem w stanie z tym pomóc. Tak jak jest napisane w opisie repo na githubie mój kod jest...
Witam, potrzebuje gotowego wsadu do procka tzn już skompilowanego do postaci hex. Przerobiłby mi go ktoś??? Oto kod: 'Jednopunktowy termometr z czujnikiem DS18B20 'www.portalnaukowy.edu.pl 'Program na podstawie kursu z ksišżki "Mikrokontrolery dla Poczštkujšcych" Pana Piotra Góreckiego $crystal = 4000000 'deklaracja częstotliwo�ci pracy kwarcu...
"Bascom nie chce programowac" bo napisał ci dlaczego. Popraw rozbieżności i programuj ponownie. ... Znaczy to mniej więcej że rozpoznany procesor w programatorze jest inny niż ten który jest zadeklarowany w hex/bin file, lub w skompilowanym programie. Spójrz jeszcze raz na zrzut ekranu z wybranym STK500 Native driver. W oknie loga pojawia się "ChipID:...
DSy potrzebują 750ms na pomiar i konwersję danych, ale po wysłaniu komendy, procek może zająć się czymś innym i odpytać ponownie czujniki po tym czasie. Tak z ciekawości - po co Ci aż taka szybkość pomiaru temperatury, która i tak zmienia się powoli ? Witam. Mam wykonany termometr jednopunktowy na DS18B20 i ATtiny2313. W celu nauki i sprawdzenia działania...
Ok sporo się nauczyłem:D to dobrze szkoda ze nadal nie ma właściwych odczytów-dostaje zawsze 0b11111111 :/ Wprowadziłem następujące zmiany: (całe źródło w załączniku) podział na 2 pliki: 'main.asm' < tu jest program 'ds1302.asm' < tu jest interface działanie programu: 1 usuwa flage 2 czyta bajt z flagą 3 zapis do RAM przyklad polecen: zapis flagi...
Witam Wykonałem układ do pomiaru temperatury z wykorzystaniem DS1820 i ATtiny2313. Przy połączeniu trzyprzewodowym wszystko jest OK. Pomiar poprawny. Chcę jednak zmniejszyć ilość przewodów i podłączyć DS1820 w układzie dwuprzewodowym. Połączyłem wyprowadzenie "VCC" DS1820 z wyprowadzeniem "GND". Równolegle do rezystora 4,7kom podciągającego linię "DQ"...
Szukałem i zadziwiło mnie że wszędzie opisany jest sposób odczytu jednego klawisza albo zaraz całej klawiatury matrycowej. Moja jest tego 3 rodzaju - poprzez dekoder 1z15 na BCD. Poczytałem nieco helpa plus Wasze wskazówki (za które niezmiernie jestem wdzięczny) i zmieniłem nieco to co wcześniej napisałem w załączniku wyżej. '************* Konfiguracja...
Z racji małej ilości miejsca na płytce chciałbym wykorzystać nóżkę xtal1, xtal2 jako porty I/O (ATtiny2313) Oczywiście muszę przestawić ją na wewnętrzny generator 8MHz. 1.Pytanie na jaką stabilność mogę liczyć tego generatora ? (wystarczyłaby mi odchyłka max +- 10% ) 2. Ponieważ programuje zwykłym kabelkiem przez ISP , mam obawy czy taką operacją nie...
Mam pytanko czy da sie zapisać tablice znaków w pamięci EEPROM (pisząc w C - AVR Studio 4.12) podobnie jak to sie robi w asemblerze poprzez umieszczenie jej w odpowiednim miejscu programu. Czy pisząc w C musze wykorzystywać funkcje z biblioteki <eeprom.h> i zapisywać tą pamięc znak po znaku. Czy da się zrobić takie małe obejście (będzie to działac?)...
Witam Dzięki pomocy elektrody i 2 mądrych książek udało mi się coś takiego naskrobać. Przez moment używałem 2 timerów ale po jakimś czasie wyszło coś takiego: $regfile = "attiny2313.dat" $crystal = 4000000 Config Portb = 255 'wszystkie końcówki jako wyjścia Portb = &B11111111 'na początek wygaś Config Portd = &B1111111 'dwie najmłodsze jako...
Tylko że nie znam się na assemblerze i takiego programu po prostu sam nie napisze. Musi mi ktoś pomóc inaczej bym przecież nie pisał na forum z prośbą o program i schemat.
Dzięki mkpl. W międzyczasie posunąłem się trochę do przodu. Mianowicie zrobiłem połączenie według schematu http://mirley.firlej.org/jak_zaprogramow... Uruchomiłem program BASCOM AVR - układ ATTiny2313 został rozpoznany prawidłowo. Zmieniłem fusebit (zgodnie z zaleceniem Igora): "disable division the external clock by 4". Drugi zalecany...
Zrodlo programu bdm AVR Studio v4.13 procesor ATTINY2313 ,kwarc 20MHz Program zostal napisany bardzo dawno temu i nie jest jakos szczegolnie "dopieszczony" :-) ,ale dziala, wiec nic nie zmienialem. Udostepniam tylko zrodla na AVR poniewaz doszedlem do wniosku ,ze nawet poczatkujacy potrafi skonfigorowac lacze RS232 ,wyslac 5 bajtow i odebrac 2. Inna...
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...
Bez wdawania się w większe szczegóły jest szansa, że obrotomierz będzie działał lecz jego wskazania mogą różnić się od rzeczywistości. Powodem jest instrukcja Wait 1 "odmierzająca" czas pomiaru. Porzuć ten pomysł na rzecz odmierzania czasu pomiaru za pomocą drugiego timera. W Tince jeden timer jest 8 bitowy, a drugi 16 bitowy. Oszacuj potrzeby przydzielenia...
Skoro sterujesz już diodami, podobnie możesz przesyłać sygnały sterujące krokami silnika. Następnie w procesorze należy zaszyć logikę sterowania krokami, czyli jaki kierunek ile kroków z jaką szybkością, oraz precyzyjnie wyznaczać czasy przy użyciu timerów. Wejściem danych dla mikrokontrolera mogą być przyciski, szybciej/wolniej, prawo/lewo, krok w...
AtTiny2313 nie ma wbudowanego przetwornika AD, więc w prosty sposób się nie da. Można zawsze używając kilku elementów zrobić prosty przetwornik, ale patrząc na ceny innych uK, np. AtMega8, który ma dużo większe możliwości, nie ma to sensu. A wystarczyłoby uruchomić PWM w rozdzielczości 10 bitowej i bezpiśrednio przypisywać mu wartość odczytaną z przetwornika,...
To tak ma być. Na porcie B tworzę taką małą magistralę na której albo będzie wystawiony stan Hiz (wejście wysokiej impedancji) a wystawiając w ten rejestr 1 zmieniam go na wyjście w stanie niskim i działa mi to w 2 programie w którym odczyt rc5 mam w pętli głównej. Tak czy siak nie działa mi przerwanie od Int1 (int0 nie mam jak sprawdzić bo układ jest...
Wsad jest, jak rozumiem, na atmega 8, programujesz nim attiny2313. Jakim cudem ma to działać?
Dobra zrobiłem, tylko ta rozdzielczość... 30 obrotów to jednak trochę dużo, zmieniłem więc czasy na odczyt co 6 sekund - mierzy przez to co 5 RPM, ale odświeża co 6 sekund - trochę wolno, ale można przeżyć. Chciałbym jednak dowiedzieć się więcej i wykorzystać jak najbardziej dany procesor. W internecie znalazłem trochę informacji o pomiarach, np. nie...
Doczytałem na 0010 H000 0aaa aaaa bbbb bbbb - Read Program Memory 0011 0000 000x xxxx xxxx xxbb - Read Signature Byte 0011 1000 000x xxxx 0000 000b - Read Calibration Byte to widać, że dostęp do sygnatury i kalibracji jest podobny do odczytu Program Memory (tylko 0011 zamiast 0010), a sygnatura jest w mniej znaczących bajtach słów tej extra strony flasha...
Witam Chciałem wykonać małą centralkę alarmową (o ile można to tak nazwać) na początek chciałem uruchomić odczyt klawiatury matrycowej i wyświetlanie postępu wpisywania kodu. Wzorując się kursem języka C z jednej ze stron internetowych przerobiłem zamieszczony tam kod pod mojego Attiny2313 po skompilowaniu i wgraniu programu do uC program się uruchomił...
Logan Ale warunki działają tylko w tej 1 wersji programu. Teraz z Select Case nie działają warunki. Już nawet sam nie wiem czy komunikacja jest poprawna. Program do DS18B20 był setki razy stosowany przeze mnie i temperaturę pokazywał dokładnie np. 25,5*. Ok działa :) błąd był w tych liniach: Pomiar: 1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy...
Dziękuje :). Taki był cel bo żeby było prosto bo miałem na to tylko 2 kB pamięci . I ładnie. Chciałem zobaczyć bo wiem, że nie jest łatwo w języku wysokiego poziomu wetknąć w attiny2313 obsługę wyświetlacza, komunikaty i coś co jeszcze coś robi. Swoją droga musiałem wyprostować twój kod żeby ogarnąć ... Ech te wcięcia ... [syntax=vbnet] '***************************************...
Dodam jeszcze jedną cegiełkę: AVRy mają specjalne rozkazy do atomowych operacji na bitach rejestrów układów peryferyjnych. Umożliwiają one ustawienie i skasowanie pojedynczego bitu: - sbi - set bit - cbi - clear bit Jeśli więc kompilator jest na tyle zdolny, że potrafi z nich korzystać to operacje ustawiające (lub kasujące) pojedyncze bity rejestrów...
Są dwie opcje: 1.Jak wspomniałeś-wyłączenie wszystkiego. 2. Wyłączenie samej lampy-funkcja wyłącznika w tym sterowniku. Skłaniam się ku pierwszej opcji-wyłączenie całości. Jeżeli się da tak zrobić. W pierwszym listingu wpisałem tak jak mi napisałeś. Wkońcu odczyt i zapis działa poprawnie. Tylko jest jeden bug w programie- przy pierwszym uruchomieniu...
Witam. posiadam w/w programator z firmware V3.1 i w zaden sposob nie moge nim zaprogramowac Attiny2313.nawet poprzez ISP.posiadam najnowszy soft do niego combo6pl i pomimo ze jest on w spisie po niby poprawnej weryfikacji jak odczytuje proca to jego pamiec jest pusta.czy ktos z Was uzywa takiego programatora i dziala on z attiny.jesli tak to uprzejmie...
No ale zrozum, że to jest tak jakbyś powiedział, że po uruchomieniu programu np.: MS Word albo OpenOffice - przestał ci działać ATtiny15. Nie mam zamiaru tu z ciebie żartować - tylko podaję ci przykład jaki to ma związek. Jak może uruchomienie programu, w którym nie wybierasz opcji programowania czy nawet samego ODCZYTU, z procesora - jak może to unieruchomić...
Niestety może to być wina BASCOMa. Ja mam trochę starszego i też blokuje mi ATMegi8. ATMegi88, ATTiny2313 czy ATTiny13 działają z nim dobrze. Ale ATMegi8 muszę programować innym programem (AVRProg) bo inaczej lipa. Ale zaznaczam: Ja mam innego BASCOMa, ale jednak to dowidzi ze BASCOM winny może być.
Nie nie. Dwie sztuki Attiny2313A-SU dają sygnaturę 0000xF natomiast nowa sztuka Attiny2313-SU programuje i odczytuje się poprawnie
Moim problemem jest brak stabilności kodu dla tego mikrokontrolera. Kod skompilowałem w AVR Studio 4 z WinAVR w aktualnej wersji (2010). Kłopoty objawiają się poprzez skok do początku programu. Nie jest to reset - np. zakłócenia na linii RESET. Analizowałem rejestr statusu MCUSR. Początkowo przyjmuje on wartość 0x01, co znaczyłoby reset od POR. Jest...
Witam Kolegów, Idąc śladem Kolegi mirekk36 napisałem sobie prosty program do pilota (podobny do tego z jego I książki) a w zasadzie jego wzór z tą jednak różnicą…z resztą od początku. Powiem szczerze, że problem, który opiszę za chwilę rozwiązałem w inny sposób (bez blokowania INT0), ale ciekaw jestem gdzie tkwił błąd, czego sam nie byłem w stanie...
Witam, potrzebuję zrobić komunikację jedno kierunkową pomiędzy dwoma attiny w Attiny2313 który ma odebrać dane zająłem wszystkie dostępne piny oprócz pind.0 (RDX) do odbioru danych, ale jak skonfiguruję procka do odbioru danych po uart to nie mogę korzystać z pind.1 (TDX) , można jakoś tak skonfigurować program żebym do odbioru danych używał RDX, a...
odczyt attiny2313 stm32 odczyt programu odczyt programu sterownika
drugi pilot samochodu tranzystory mutujące odblokować eberspacher
analizator widma akustycznego lodówka campingaz
Gaśnięcie silnika na wolnych obrotach - przyczyny i rozwiązania Instrukcje wprowadzania kodu do radia Clarion PU-7915