Pierwsze co przychodzi mi na myśl to obsługa przerwań: cli, sei oczywiście nie potrzebne, natomiast nie odkładasz i nie przywracasz SREG. Daj na początek przerwań in <rejestr>, SREG push <rejestr> i na koniec przerwań pop <rejestr> i out SREG, <rejestr>
No to coś za coś przyjacielu. Jak chcesz szukać 0 i 1 to rób on edge change.
Ustaw jak [url=http://palmavr.sourceforge.net/cgi-...
Szanowny Panie (at)tadeko9 , przepraszam za mój poprzedni, faktycznie szorstki, ton. Co złego to nie ja :D W pierwszym poście dołączył Pan taki kod: Dlatego dołączam od razu ten dla powyższego kodu. [syntax=avrasm]2: $regfile = "attiny2313.dat" 3: $crystal = 4000000 4: $hwstack = 40 5: $swstack = 16 6: $framesize = 32 7: 8: Config Portd.2 = Input :...
Oczywiście nikomu się nie chce przeglądać strony producenta układów. AVR410. http://www.atmel.com/dyn/resources/prod_... Tym bardziej, iż kod jaki generuje BASCOM AVR jest taki sam, bo ta procedura jest wpisana do zasobów kompilatora jako template code .
Mikrokontroler najlepiej ze sprzętowym UART. Ogólnodostępne i tanie są mikrokontrolery 8-bitowe AVR, do tego celu wystarczyłby popularny ATtiny2313. Kosztuje on około 4zł. Należałoby go odpowiednio oprogramować - polecam C lub asembler. Do wgrania skompilowanego wsadu trzeba posłużyć się odpowiednim programatorem - schematów jest dużo, a najprostszy...
Poszukuje dokumentacji/opisu podłączenia AVR do portu COM i komunikacji COM. Nie wiem gdzie szukać tego typu wiedzy więc zwracam się do was. Założenie: komunikacja z PC przez port com: tu Bluetooth SPP z Attiny2313. Działanie: Attiny odbiera przez port znak i robi 'coś' zależnie od zadanego znaku Google poszukiwałem ale marnuje tak czas. mam układ:...
witam, 1. Modele mikroprocesorów różnią się np ilością pamieci wewnętrznej, ilością portów, częstotliwością wewnętrznego taktowania. Porównaj sobie np Attiny2313 i np Atmega8 2. Mozesz wybrać kilka jeżyków programowania (wyższego lub niższego rzędu) C, asembler, Bascom. Ale nie możemy tutaj zapomnieć o procesorach z rodziny 8051 które mają własny język....
weź sobie dowolnego np procka z rodziny AVR czyli ATtiny2313, lub ATmega8 lub podobne i masz możliwość programowania w 3 językach, C, Bascom i Asembler. Masz PWMy - masz ISP (programowanie bezpośrednio w układzie) - masz ogromne możliwości ;) oczywiście można użyć dowolnego procka z innej rodziny jak np z seri '51 lub PIC i osiągnąć podobne efekty zapoznaj...
Jakie tu herezje wypisujecie panowie ;) PIC'e musiałyby mieć 80MHz żeby dogonić AVR'y !!! PIC'e mają "gorszy" asembler bo mało instrukcji !!! .... żeby zrealizować to co było robione na zwykłym ATtiny2313 to trzeba przejść zaraz na ARM'ma !!!!! no szok, szok szok - chyba za gorąco co???? Sam najczęściej używam AVRów, ale żeby takie bajki opowiadać o...
Z pliku hex możesz tylko zdekompilować sobie program do asemblera czyli jak sadze dla ciebie do bełkotu takiego samego jak hex czy bin , choc sa tacy którzy potrafia hexa czytać jak asembler bez kłopotu . Jak napisałes raz program w basku napiszesz go poraz drugi , a może tym razem zrobisz to lepiej ...
Przekopując zakątki internetu nie mogę znaleźć informacji o tym jak zalinkować w eclipse-AVR części asm'owskich v-usb. W samym projekcie dodałem folder z biblioteką w: properties → resource → Linked Resources . W dalszych próbach w: properties → c/c++ General → Paths and Symbols → includes dodałem folder z biblioteką v-usb...
O dziwo mogę :D . Te "uszkodzone" układy po przeprogramowaniu PonyProgiem działają dobrze, chodź tamten program i tak nie może odczytać pamięci. Wracam do walki z asemblerem (narazie przegrywam). Pozdrawiam i jeszcze raz dziękuje za pomoc.
dzieki wszystkim za odpowiedzi.Ale mi chodzi o pod procesor avr. np. attiny2313 albo atmega 8 .Nie pod system operacyjny ktory da sie zainstalowac na systemie operacyjnym tylko pod sam procesor.(tu chyba chodzi o 8 bitowe np.attiny2313, atmega8 itp) Sam mikrokotroler nie ma nic na poczatku zainstalowanego ten 8 bitowe wiec czemu mowa o javie czy pythonie??...
Może trzeba dać SEI przed uśpieniem procka? Przecież włącza SEI tyle że wszystko wg najgorszych praktyk programistycznch. SREG |= 0x80; --------------------------------- W nocie PDF ATtiny2313 wprawdzie napisano w uwadze, że tylko INT0 reaguje na wybudzanie poziomem, ale to słówko tylko (Only) tyczy się poziomu a nie samego przerwania. Powinno być...
Zamiast robić tam opóźnienie można policzyć ile taktów zajmie uartowi wysłanie ostatniej ramki i robić sobie inne potrzebne operacje ,które zajmują czas a po odpowiedniej ich liczbie zmienić stan porty i tyle . Asembler daje wiele możliwości wykorzystania czegoś co się nazywa opóźnieniem . A jak masz wolny licznik to można na nim zrealizować opóźnienie...
AAaaa! Znalazłem kreta! Okazało się że DS1813 bruździ... Resetował mi co chwilę procka, ale czemu? Czyżby był uwalony? Czy stosujecie takiego chwasta w swoich urządzeniach? Zasilam całe ustrojstwo z transformatorka, potem idzie na stabilizator i kondziory, badałem miernikiem wszędzie czyściutkie 5 V. To czemu resetował? Może zły model kupiłem? Cały...
(at)asembler ma rację... Pomyśl nad blokami programu i napisz ten program zupełnie od nowa z nowym algorytmem.
Ja mam pytanie bo dopiero zaczynam sie interesować programowaniem. czy układy scalone można programowac w c++? Dlaczego nie w asemblerze? NIe wiem czego się uczyć c++ czy asemblera. Jaka jest według was opinia po za tym że asembler jest cięższym językiem. Jak jest z wykorzystaniem pamięci małego scalaka np attiny2313 lub atmega8.
coraz ciekawsze rzeczy się tu pojawiają ;) ... ja z kolei zaproponuję coś takiego - może to nie makro ale jak używam UARTa to zwykle sobie definiuję takie coś - dzięki czemu nie muszę za każdym razem zerkać do tabelki w PDFie aby wyszukać odpowiedniej wartości dla inicjalizacji ;) ;---------------------------------------... ; U A R...
To zmierz w ATmega8515/ATmega162/ATtiny2313... ;) A mają w sobie napiecie BANDGAP? Tak, używane w komparatorze analogowym i BOD. A inną metodą zmierzysz w tych procesorach? Dzielnik napięcia na jedno z wejść komparatora, drugie właśnie pod bandgap (bit ACBG). Wcale nie kpię, tylko chciałem temat doprecyzować. Założyłeś go w "Mikrokontolery Ogólnie",...
1. .cseg - CODE SEGMENT - użycie pamięci programu (flash) org - wymuś kompilację od danego adresu 2. Stos należy najpierw ustawić na koniec pamięci RAM (bo jest używany przy skokach do podprocedur, przerwań, powrotach z nich(, wynika to z tego, że z reguły na jej początku przechowywane są dane, a rdzeń procesora, czy ATmega128, czy ATtiny2313 jest podobnie...
Pewien madry czlowiek powiedzial mi kiedys na wykladzie: "W assemblrze pisze się kody do 2kB, wszystko co powyzej powinno byc pisane w C".Powod jest prosty.Gdy program się rozwija latwiej nad nim zapanowac gdy piszesz w C.Dobre rozbicie na moduly oraz system automatycznej dokumentacji oszczedzaja sporo czasu podczas jakichkolwiek bugow w programie.Na...
Z AVR Studio bez problemów bezpośrednio programuje się te procesory za pomocą: - AVRISP mkII - STK500 (też v2 na USB) - bardzo popularne klony STK500V2 na A.PL - STK600 - AVR Dragon - AVR One Ok , dzięki Ci bardzo. Jeszcze mam pytanko który z tych typów programatorów można zrobić samemu, oczywiście w granicach możliwości i ceny. A czyt któryś z Jeśli...
Unowocześnienie AT90S2313 brzmi : ATtiny2313 .... ;) No to OK, kody przerobione pod modłę AVRStudio + gotowy HEX - na AT90S2313, ATtiny2313 i ATmega8515. Licencja GNU zachowana - mamy binaria i źródła... ;) Some other requests ? ;) P.S. ; Code is written for use with AVR-GCC in assembler mode ; flag: -x assembler-with-cpp - oryginalny kod jest pod avrgcc......
ZADEN kompilator idealny nie jest. Dzis ze zdumieniem stwierdzilem ze asembler atmelowski nie pozwala na nieparzysta liczbe zadeklarowanych bajtow w dyrektywie .db ;( Pozdro Dexter
Witam.. Muszę napisac do jutra wieczorem program w języku asembler dla mikroprocesora ATtiny2313, który będzie zapalał 2 diody. Do dyspozycji mam program: AVR Studio 4. Tylko nie za bardzo wiem jak się za to wziąc :( Przykładowy program: .include "tn2313def.inc" start: ldi r16 0b11111111 out ddrb r16 ldi r16 0b11101111 out portb, r16 petla: rjmp petla...
Dzisiaj na stronie elportalu znalazłem komentarz na temat bascoma i ATtiny. Bascom nie obsługuje prawidłowo ATtiny. Start Timer0 czy stop Timer0 nie działa (przynajmniej dla ATtiny2313). Trzeba wpisać do odpowiedniego rejestru właściwą wartość żeby timer wystartował itp. Trzeba się zapoznać z dokumentacją. Rejestry sterujące timerami są podzielone na...
Jak chcesz zacząć programować procki AVR w asemblerze i go troszkę poznać, to koniecznie kup sobie takie książki: "Mikrokontrolery AVR ATtiny w praktyce" "Mikrokontrolery AVR ATmega w praktyce" obydwie są wydawnictwa BTC a autorem jest Rafał Baranowski. Są bardzo dobre i poza dokładnym i fajnym opisem procków rodziny AVR , ich bloków funkcjonalnych,...
Jak stracisz jeszcze dwa tygodnie to się zainteresujesz asemblerem, co Ci już radzę. Zmiany w procesorach avr idą tak szybko ze wszelakie kompilatory nie nadążają z łataniem dziur. Dałeś te rezystory do plusa? Pzdr. N.
To jas plik w asemblerze napisany dla toolchaina gcc? Czy goły asembler? W obu przypadkach użyj po prostu Atmel Studio, któe z tego robi ci plik w formacie hex i ten użyj do zaprogramowania MCU. Tak przy okazji - brak pliku elf może wynikać też z tego, że kompilacja projektu się nie powiodła - np. błąd w kompilowanym kodzie.
Czy przerwania są kolejkowane i po obsłużeniu komunikacji wykona kod przypisany do drugiego przerwania, czy informacja zostanie utracona? Może się tak zdarzyć, jeśli obsługa jednego przerwania będzie na tyle długa, że w czasie jej trwania jakieś przerwanie zostanie wywołane dwa razy (lub więcej). Czy komunikacja USB będzie działać stabilnie gdy podłączę...
Nie niestety tak się nie da. Program pisany jest pod konkretną strukturę wewnętrzną. Jedynie attiny2313 podpasował by, ale program dałbyś radę przerobić jeżeli byłby napisany w C. Z asemblera nie ma szans.
hmm a zastanowiłeś się czy ATtiny2313 zmieści ci się na tej płyteczce tak w ogóle??? mówię o wesji SMD oczywiście ale uważam, że i tak może być z tym problem, no chyba, że możesz ją większą zrobić. ... jeśli znasz asembler to zwróć uwagę na polecenia sbis lub sbic ,które to właśnie mogą sprawdzać stan linii wejściowej portu a po nich dalej możesz robić...
Mogł by ktos wysłac kod do asemblera ?? prosze
... mam pieknie dzialajacy kod, wykorzystujacy 2 przerwania i obslugujący cykliczny bufor we i wy. Dzięki temu trzeba się tylko zajmować wpisywaniem do bufora przy nadawaniu i ew odczytywaniem przy odbiorze. Dzięki przerwaniom uC wogóle nie jest obciążony operacjami na UART ;) .... ale niestety tylko w asemblerze ;)
Witam ! Zmień Bascom 8051 na Bascom AVR . Jest tam komenda: RC5SEND bit_zmienny , adres , rozkaz Procesor At89C2051 zmień na pinowy (prawie ) odpowiednik ATtiny2313, łatwy do programowania w układzie docelowym. Pozdrawiam. Stefan GG6293398
No i dobrze ci wychodzi error bo niby skąd? po pierwsze Bascom ma wiedzieć co znaczy RAMEND a po drugie LOW to polecenie czysto Bascomowe a ty mieszasz to z asemblerem we wstawce Podejrzewam, że znalazłeś gdzieś jakiś kawałek kodu w asemblerze, który coś tam robi ale nawet nie jest dla ciebie do końca zrozumiały i zachciałeś go ot tak wstawić do Bascoma...
BASCOM oczekiwanie załatwia sam i robi to korzystając z dyrektywy $crystal. Pisałem obsługę LCD w BASCOMie i żadnych dodatkowych opóźnień nie musiałem dawać. A tak w ogóle to nejlepiej napisać całą obsługę samemu w asemblerze =] Poza tym zauważ, że w drugiej linii użyłeś polskiego znaku, a LCD nie mają takowych, chyba, że sam zdefiniujesz, stąd mogą...
a ja jednak uczę się go - bo naprawdę - tworzenie większych projektów jest o wiele łatwiejsze przy użyciu języków wyższego poziomu niż tylko asembler. Z drugiej strony im bardziej poznaję C na procki tym bardziej dochodzę do wniosku, że bez znajomości asemblera ciężko byłoby cokolwiek nauczyć się w C. Za to całkiem inaczej jest w Bascomie - on też się...
Do nauki programowania mikrokontrolerów najpopularniejsze są chyba AVR-y firmy atmel, jak np. ATtiny2313. Dość prostym językiem programowania jest Bascom, ale przy poważniejszych programach pozostawia on wiele do życzenia, i jest płatny (wersja demo ma ograniczenie ilości pamięci zajmowanej przez program). Jest też oczywiście C które polecam, jest darmowe...
To na obrazku to jest to co pisałem. Jeśli chodzi o Atmele i listę procesorów to masz [url=http://www.atmel.com/dyn/products/d... Masz tam od razu noty katalogowe. Jak chcesz więcej nóżek to może ATtiny2313, ma 20 nóżek. Podłączysz wyświetlacz i wszystko. Co do programowania to masz kilka możliwości. Jest asembler (trochę...
No niestety chodzi za mną ten asembler im szybsze układy chce robić to tym bardziej chodzi :) , ale w życiu bym się nie spodziewał że bascom tak zwalnia. Jesli o chodzi o hierarchie szybkosći to czy wyglada ona tak - ASM -C -BAscom , czy jednak dobrze skompilowane C jest równe ASM ?
Czy ATtiny2313 programuje się w C czy Asemblerze? A może Bascom? A może wszystkie są możliwe, to który najwygodniejszy?
W temacie ATTiny26, a inkludujesz ATTiny2313. Poza tym, ATTiny26 nie posiada rejestru SPL, więc skąd on się wziął w kodzie :?: Sprawdź w dokumentacji ATTiny26 i po kłopocie. PS Portu "D" w ATTiny26, też nie uświadczysz ;)
no ale czy trzeba znać cały język Asembler dla danego µP bo tyle co się orientuje to tak . Jednak okazało się że mi wystarczy pamięci w attiny2313 z 52% skróciłem do 42% no i jestem zadowolony z efektów . Jestem początkującym i mam pytanko ile razy można programować µP i czy bascom avr demo compile większy kod niż 2 kb mam zamiar kupić atmega8...
Pokaż co napisałeś, bo jak do tej port to wiemy, że próbowałeś, ale nie wiemy czy w asemblerze, C czy Bascomie ?
Najprostszym sposobem jest skorzystanie z języka wyższego poziomu np.C. Wtedy sytuacja się znacznie upraszcza. Nie mniej jednak tak w asemblerze jak i w C całość należy zrealizować dość podobnie. Pierwszą metodą która sprawdza się gdy nie mamy nic więcej do zrobienia a tylko odmierzenie czasu i nie używamy przerwań albo gdy ich używamy ale na dokładności...
(...) Dodatkowo takie puszczenie "wolno" licznika powoduje to że mozesz na nim jeszcze pare innych rzeczy wykonać. Tu muszę koledze podziękować, bo tym zdaniem rozwiązał się mój zupełnie inny i niepowiązany z tematem problem, gdzie bardzo brakowało mi timerów.
Witam Przeglądałem pdf-a Attiny2313 ale mój angielski nie jest na zbyt wysokim poziomie i nie bardzo rozumie jak można zrobić ISP za pomocą USI. Może ktoś mi to wyjaśnić, jak się tego używa i jak to skonfigurować? Potrzebne mi to jest do sterowania wyświetlaczem od noki 3310. Stronę sprzętową mam już prawie zrealizowaną, zostało tylko oprogramowanie....
Witam. W jakim języku chcesz programować? C, BASCOM, Asembler? W każdym razie, trochę informacji o sterowaniu tego typu wyświetlacza znajdziesz na tej stronie: http://radzio.dxp.pl/hd44780/ Oraz szukając w Google hasła HD44780, czyli nazwy sterownika wyświetlacza. Pozdrawiam.
Zazwyczaj każdą barierę opto łatwo oszukać i nawet nie musi to być skomplikowany układ elektroniczny, wystarczy zwykły swiatłowód (lub kilka) którym puscisz wiązkę omijając chronione przejscie. A co do Bascoma w takich zastosowaniach - to szkoda czasu, lepiej napisac kilka linii asemblera. Pozdr. N.
Witam! Jeżeli chodzi o język to na pewno nie Asembler na początek bo jest trudny, ja preferuje BASCOM i kontrolery AVR mój ulubieniec ATTINY2313, książka Piotra Góreckiego pt. "Mikrokontrolery dla początkujących", tam jest wszystko pięknie krok po kroku wyjaśniane prostym językiem i wszystko jest oparte na konkretnych przykładach, zanim w ogóle dotkniemy...
Witaj. Procek to AVR ATtiny2313, piszę w Asemblerze. Kwestia taka, że wymyśliłem teraz, że znacznie łatwiej byłoby zliczać te impulsy odrazu w kodzie BCD. Tylko, że ja to robię pod przerwaniem i kod musi być tutaj jak najbradziej krótki. Nie mam kocepcji jak zrobić, napisać program, tak, żeby otrzymywane zliczanie impulsów, odrau było w BCD, wtedy wyświetlenie...
$regfile = "m128def.dat" $crystal = 16000000 Config Porte = Input Porte = &B11111110 Config Portb = Input Portb = &B11111111 Config Portd = Input Portd = &B11111111 Config Portc = Output Portc = &B00000000 Config Porta = Output Porta = &B00000000 Config Portf = Output Portf = &B00000000 Dim K1 As Byte K1 = 0 Do If Pine.0 = 0 Then Incr K1...
Czy kompilator ASM zadba o przekroczenie pamieci RAM? Jak najbardziej : ATtiny2313 memory use summary [bytes]: Segment Begin End Code Data Used Size Use% ----------------------------------------... [.cseg] 0x000000 0x0005f4 1024 500 1524 2048 74.4% [.dseg] 0x000060 0x0000d7 0 119 119 128 93.0% [.eseg]...
No cóż, ja tk lubię asembler... ;) OkresoSekunda jest stałą, więc kompilator powinien policzyć, co trzeba ? Przynajmniej mój kompilator (Avrasm) nie ma z takimi sprawami problemu... :D. Oczywiście stablicowanie to jest myśl... W każdym bądź razie zastrzegam się, że jakiekolwiek rozważania na temat Bascoma przeprowadzam na podstawie Helpa, nic nie kompilując......
No i w tym temacie rozpocząłem swoją przygodę z AVR, a konkretnie ATTINY2313. Nauczyłem się asemblera dla AVR, zrobiłem projekt lampki RGB z płynnym automatycznym mieszaniem kolorów w pętli, ustawianiem jasności świecenia w pełnym zakresie 0-100%, zdalnym sterowaniem wykorzystując pilot RC5. Lampka po starcie rozjaśnia się przez kilka sekund na kolorze...
"Chcesz się nauczyć asemblera pisząc w języku BASCOM Basic?" a co- bardzo fajny: $asm ... ... $end asm Samo $ASM...$END ASM nie wystarczy. Bascom dodaje też coś od siebie. Nawet jakbyś pododawał te pozostałe dyrektywy wyłączające to musisz się trzymać kilku ograniczeń. Powstaje hybryda której nie da się kontrolować w pełni, a nie o to przecież w pisaniu...
a wiesz w ogóle jak się częstotliwość taktowania ma do prędkości w RS232 ??? programujesz w assemblerze ??? - to o jakim multiprocessingu mówisz? jeśli programujesz w asemblerze i to dobrze to coś dziwne troszkę pytania zadajesz? 1. Zajrzyj sobie do noty katalogowej i zobacz sobie przy jakich częstotliwościach taktowania jakie prędkości możesz sobie...
Witam, Problem fusebitów jest częstym tematem na tym forum, mój screen pochodzi z programu AVR8 Burn o Mat, fusebity zawsze kontroluje ze stroną [url=http://www.engbedded.com/fusecalc/]... Dlatego nierozumiem dlaczego zablokował kolega prograowanie przez ISP :?: Po drugie na moim video niestety mamy doczynienia z kompresją...
wielkie dzięki, chociaż muszę troszkę przestudiować asemblera żeby coś zrozumieć :P
Ale to jest nówka(też może być włączony Watchdog?) na pewno dobrze podłączyłem Dodano po 23 Na pewno coś jest źle skonfigurowane w WinAVR(jeśli chodzi o asembler) bo wgrałem ten program w C i działa: [syntax=c]#define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> int main(void) { DDRB = 0xFF; PORTB =0xFF; }[/syntax]
piny I/O to input/output. tak jak Elektrooonik, radzę poczytać forum. dużo się dowiesz. poza tym Elektronika dla Wszystkich i Mikroprocesorowa Ośla Łączka. to samo pod innym tytułem w formie książki w www.kamami.pl. autor Piotr Górecki. ćwiczenia oparte o płytę testową z ATtiny2313, którą też można tam kupić i kompilator AVR Bascom. niektórzy uwazają...
najpierw odpal bascoma i napisz $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 2400 Do Print "Dlaczego nie chcesz dzialac " Waitms 500 Loop i jak to pójdzie to się baw w asemblerze. a mam jakiś schemat z tuta z ektrody, w dp9 pin 5 na mase i 2 i 3 nadawanie/odbiór, poszukaj jak to bedzie na forum, reszta pinó sobie wisi. proponuje fuzy bitw...
Ja właśnie z książki Baranowskiego uczyłem się asemblera, a żeby było śmieszniej, to uczyłem się na ATtiny2313:)
Bo ten avr nie ma w asemblerze komendy dzielenia. Musisz sobie sam napisać taką procedurę albo poszukać gotowej w necie. Ja kiedyś napisałem taką prostą działającą na zasadzie odejmowania. Wydajne to to nie jest ale nie wiem jak zrobić to lepiej.
"A kolega mirek zapomniał jak to jest być "zielonym" i zadawać oczywiste pytania." szymtro -> z całym szacunkiem, ale chyba coś ci się pomyliło. Właśnie bardzo dobrze rozumiem początkujących i dlatego starałem się tak w miarę dokładnie wytłumaczyć gdzie leżą przyczyny błędnego działania programu kolegi autora wraz podpowiadaniem jak to można naprawić...
... Jak w Bascom'ie puścisz kompilację dla nowego procka to już będzie zmartwieniem kompilatora, żeby pozamieniać odpowiednie polecenia które były na AT90S2313 na takie które pójdą na ATTiny2313. Gdyby to było źródło w asemblerze to wtedy trzeba by było samemu przeanalizować program i dokonać odpowiednich korekt jeśli błyby takie potrzebne. No chyba...
Jeśli masz same rezystory, to po zaprogramowaniu procka odłącz programator od portu komputera i wtedy zobacz co się dzieje. A najlepiej napisz jakiś prostacki program w asemblerze i zobacz co się wtedy dzieje.
Jest tak jak mówią (na 99%). Ten BASCOM nie obsługuje dobrze ATTiny2313. Da się to zrobić wstawkami asemblerowymi, ale jako że dopiero się uczysz a zaczynasz od BASCOMa to nie będę Ci mącił. Po prostu ściągnij nowszego BASCOMa. Po za tym na pierwszy rzut oka w kodzie brakuje ustawiania OC1A jako wyjścia: DDRB.3 = 1 Dodano po 7 A: On Compare1 Wpis Nosave...
Cześć, czy ktoś oprogramował może AD9851? Interesuje mnie szczególnie proces inicjacji i programowania częstości. Widziałem projekt na stronie SP2SWJ ale trudno mi się przegryźć przez asembler '51. Docelowo chciałbym zrobić układ DDS z LCD/klawiaturą i programowaniem przez RS-232C z komputera (na mikrokontrolerze AVR) -- zrobiłem już coś takiego na...
Ja osobiście nie mam problemów z przenaszalnością kodu w firmowym asemblerze Atmela, nawet pomiędzy różnymi wersjami rdzenia, gdyż są w nim wbudowane definicje pozwalającej na asemblację warunkową. Przykład - instrukcja lpm , zamiast której używam następujące makro: .macro LpmPlus #if ((__CORE_VERSION__==V2E)|...
Można napisać program i zastosować protokół, który pozwala na transmisje z dowolną (2400-115200) szybkością nie dbając o to czy to kwarz czy też oscylator wewnętrzny. Jest jedno ale takiego rozwiązania: Znikną w końcu mnogie posty tego typu. Innymi słowy nie intersujemy się jaka jest czestotliwość oscylatora. To, że taki program można napisać to na...
...jeśli walczyłbyś w ASM to masz wiele większe szanse na sypanie się softu. Ale przynajmniej wiedziałbyś dokładnie co się dzieje w programie. Ja swoją naukę procków zaczynałem od asemblera. Teraz piszę też w C, ale też nie wszystko. Trzeba umieć dobrać język programowania do powierzonego procku zadania. Na Twoim miejscu pobawiłbym się jednak w asemblerze....
Diody działają poprawnie, Jest to Attiny2313 tylko z przyciskami nie chce działać. Sprawdzałem woltomierzem to na porcie jest 5V po naciśnięciu przycisku 0 więc od strony mechanicznej wszystko ok. .include "tn2313def.inc" .org 0 ldi r24,LOW(RAMEND) out SPL,r24 ser r24 out DDRB,r24 ; port B - wyjscia out PORTB,r24 ldi r24,0 out DDRD,r24...
ARM'y zamiast AVR'ów? Raczej przerost formy nad treścią (zresztą nie wiadomo co chcesz zrealizować). Do zrobienia własnego systemu z ARM'em potrzebowałem 2 miesięcy (budowa od zera systemu, jtag'ów :-) oraz zrozumienie koncepcji programowania). W przypadku STM8 wystarczył mi 2 tygonie "Bezbolesne" przejście może być na poziomie podobno-bitowym np. procesor...
Mirekk36 dobrze radzi. Do RS i I2C masz nadajnik/odbiornik sprzętowy. TWI będziesz musiał oprogramować sam. http://www.lcd.strony.pl/d-109v2.htm Tutaj jest opisany sterownik LCD do nokii z interfejsem TWI - kod na Tiny13 w asemblerze. Pozdrawiam, Dr.Vee
Czy mógł byś udostępnić programik? Może z niego bym coś prędzej wymyślił... Program nic Ci nie da, napisany jest w asemblerze. Obydwa procesory różnią się rejestrami. W ATtiny2313 żeby uzyskać dwa odwrócone przebiegi do sterowania mosfetów musisz napisać jakąś procedurę, natomiast w ATtiny26 do uzyskania takiego samego efektu wystarczy odpowiednie...
Witam, Buduję prosty miernik częstotliwości wg schematu crystal , ale tutaj za Chiny nie mogę się tego doszukać. Pytanie czy w kodzie asm trzeba gdzieś zmienić taktowanie? Czy może bez zmian będzie to działało poprawnie?
kolego szymtro - nie przypomnisz sobie tytułu tej książki może? - proszę ;) .... przeczytałem te 2 pdf-y ale tam jest tylko opis i algorytmy a przydałoby się jeszcze jakieś kawałki kodu zobaczyć (dla mnie najchętniej właśnie w asemblerze) .... sory, że się tak podłączam do tematu ;) pozdrówka
Skorzystałem ze sposobu 1 tzn. avr-gcc z 2002r. i kompilacja z wiersza poleceń. Niestety ten avr-gcc nie obsługuje attiny2313 (tzn. obsługuje tylko w trybie asembler'a) więc zadeklarowałem 90s. kompilacja przebiegła bez błędów. Po wgraniu do attiny - program ruszył i działa... (będą jeszcze testy ale chyba wszystko w porządku) Dziękuję za pomoc!
Potrzebujesz asemblera do zamiany źródłówki na plik hex/bin. Poszukaj tutaj www.avrfreaks.net
Jedyne co Ci pozostaje, to napisać procedurkę w asemblerze, która zrobi dokładnie to co reset, czyli przestawi porty IO, wyzeruje stos, liczniki, znaczniki i dopiero wykona jmp 0.
treker - szkoda, że uparłeś się na bascom'a bo w EP był kursik o sterowaniu LCD-ka z NOKI z programi asemblerowanymi. Jednak w kod basom'a można wpleść i asma. Obawiam się, że Atiny może być "ciut" przy maly a wspomniał juz o tym jeden z przedmówców. Co do matryc z allegro to przyznam, że miłaem cheć na tego do którego aukcji link podałeś, jednak ostatecnie...
Witam... Tak dla scislosci to: Atmega to grupa uC zaliczana do rdzenia AVR. Jak sam napisales rodzina 51' powoli jest wycofywana w nowych projektach to tez popularnego AT89Cx051 (zaliczanego do grupy 51') zastapiono uC o identycznym rozkladzie wyprowadzen tyle ze z rdzeniem AVR czyli ATTiny2313. ATTiny2313 to to samo tyle ze wykonane z innym szybszym...
Witam. (at) teedd nieznajomość asemblera się kłania...Czyli return 'n' enable interrupts;) Chylę czoła - nie wiedziałem o tym. Sprawdzę w dokumentacji. Pozdrowienia - teedd
Witam! Pracuję ostatnio nad wykryciem dotyku na mikrokontrolerze ATtiny13. Próbowałem to robić za pomocą ADC i tranzystora i działało, ale niestety zakłócenia były ogromne, telefon z dosyć dużej odległości wpływał już negatywnie na układ. Znalazłem więc pewien projekt w internecie, na ATtiny2313, w którym autor zaimplementował bardzo efektowną obsługę...
GCC zmienną zawsze umieszcza w RAM. Rejestry służą do innych celów. Czyli za każdym razem tracę min. 2 rozkazy ze względu na specyfikę GCC - trochę mnie to nie przekonuje. np. ATtiny13 (najprawdopodobniej) nie ma ramu i ma tylko 3 poziomowy, sprzętowy stos, jednak nie przeszkadza to w obliczeniach z ADC. W swoich programach pisanych w ASM zazwyczaj...
Przesiadłem się z '51, a tam był obszar pamięci w którym można było deklarować zmienne bitowe. Czy w AVR są takie możliwości? W dokumentacji nie widziałem takiego obszaru. Jak to się robi w praktyce w asemblerze dla AVR? Deklaruje się zmienną bajtową i testuje bity odpowiednimi rozkazami?
ja zawsze uważam, że książka zawsze godna jest polecenia ale jeśli chodzi o zestawy uruchomieniowe to hmmm one zwykle jeśli naprawdę to nas wciąga - to szybko lądują w tzw koszu na części ;) .... polecam stronkę http://www.patron.net.pl/artykuly/AVR_tu... zobacz jak tanio i szybko można zacząć bez zestawów które też nieźle kosztują. A tu? - bierzesz...
Książkę polecam: Doliński, mikrokontrolery AVR w praktyce, czy jakoś tak. Są tam opisane przerwania, rejestry mcucr, tifr itp. W skrócie "wszystko" o avr w asemblerze i przykłady w C
Znalazłem coś takiego: .DSEG .ORG $60 INDEX: .BYTE 1 TABLICA: .BYTE 40 .CSEG LDS R16, INDEX LDI XL, LOW(TABLICA) LDI XH, HIGH(TABLICA) ADD XL, R16 LDI R16, 0 ADC XH, R16 LD R16, X ale nie bardzo to rozumnie. Dużo jest opisów jak to zrobić w C niestety mało w asemblerze. Próbuję się dowiedzieć jak się inicjuje tablice itp.
Witam, ja też jestem takim "old'em" i mam nawet troszkę więcej lat. A historia przydażyła mi się podobna jakiś rok temu. Otóż po prawie 10 latach przerwy gdy wtedy znałem tylko procki 8051 a oprogramowanie wgrywało się do zwykłych kości EPROM i kasowało się je ultrafioletem, przyszło mi znowu wrócić do swojego hobby a tu proszę AVR'ki , PIC'e i wiele...
Spróbuj wyłączyć optymalizację kodu przez kompilator oraz sprawdź jaki faktycznie powstaje kod asemblera. Jakiego środowiska używasz? Podaruję Ci 20pkt, bo widzę żeś biedny 0.34pkt :) Kolegów także zachęcam, bo widać, że się stara no i C używa :D
OK, ale jeszcze mam pytanie odnośnie tej biblioteki. Zrobiłem to co mogłem czyli pozmieniałe nazewnictwo portów na AVR, jednak przy kompilacji w BASCOM AVR wykazuje błędy. min. niezidentyfikowane wstawki asemblera. Czy jest jakaś prosta metoda aby Bascom AVR przyjął tą bibliotekę. Nie ukrywam że zależało by mi aby uruchomić te bibliotekę z ATTINY2313...
Witam, oczywiście cała rodzinka AVR nadaje się do tego o czym piszesz. Tanio można zacząć od ATtiny2313 lub ATmega8. Tylko zrób sobie sam albo kup gotowy programatorek za 15zł - STK200 podłączany właśnie do portu LPT ;) .... zassij sobie program PonyProg najnowszą wersję, będziesz nim mógł bez problemu programować procki poprzez programator STK200 .......
Niedawno zacząłem sie bawić asemblerem, napisałem taki krótki program, który odbiera 1 bajt danej z PC przez rs232c, a potem ją odsyła. Mam następujący problem: przy pierwszym cyklu wyslij-wróć dostaję błędną daną, i zawsze tę samą, np. wysyłam "a" (69dec) i dostaję jakies R z daszkiem, potem juz wszystko działa poprawnie, np. wysyłam znowu "a", wraca...
.. a takie banalne pytanie - rozumiem, że zmieniłeś w Bascomie rodzaj procka do którego ma być kompilowany kod??? czyli na ATtiny2313? ;) ... natomiast co do samego kodu to ci nie pomogę bo wogóle nie programuję w Bascomie tylko w asemblerze
Jeżeli dobrze zrozumiałem, chodzi o stworzenie początkowej zawartości pamięci EEPROM? Wprawdzie nie robiłem tego, ale nie widzę problemu. Tzn. programatorowi jest obojetne jak powstał plik hex do wpalenia do pamięci, więc można go wygenerować z asemblera. Można też bezpośrednio z C. Ale to wymaga trochę sztuczek z linkerem.
asembler sortowanie diody asembler asembler kwadrat
emulator android pendrive odczyt linux zasilanie konwertera multiswitcha
cegowy mastech mikrokomputer cobra1
Stihl FS 200 – „dziury” przy dodawaniu gazu, regulacja gaźnika, objawy i usuwanie usterki Huawei B535-932 Windows Technician Toolkit: Tools, Firmware, Band Lock, Recovery