Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce
Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 20 sie 2018, o 12:18

Obrazek Myslalem ze na forum EP nic mnie juz :no: zaskoczy a tu prosze niespodzianka :lol: :lol: :lol: Ktos robi porzadki to sprawdzimy jak dzialaja tagi 'Code'

Kod: Zaznacz cały

.nolist .include "tn2313adef.inc" ;.include "m32def.inc" .list .cseg .equ fosc = 8 ;czestotliwosc kwarcu w MHz .org 0x0000 rjmp ResetProcessor ResetProcessor: ; ldi r16, high(RAMEND) ; init stack pointer ; out SPH, r16 ldi r16, low (RAMEND) ; init stack pointer out SPL, r16 ldi r16, 0xff out ddrd, r16 out portd, r16 ldi r18, 0xff ldi r19, 0xff ldi r20, 0xa1 ldi r21, 0x07 main: ldi r16, 0b1010_1010 out portd, r16 nop nop rcall del_64s ldi r16, 0b0101_0101 out portd, r16 rcall del_64s rjmp main del_64s: MOVW R24, R20 Coarse: MOVW R30, R18 ; Loop: SBIW R30, 0x01 ; BRNE Loop ; SBIW R24, 0x01 ; BRNE Coarse ; ldi r28, 0xfd ldi r29, 0x1f Fine: SBIW R28, 0x01 ; BRNE Fine ret .exit
:evil: O nie dzialaja jaka szkoda :506:
:twisted: To wstawiamy kod po staremu
  • .nolist
    .include "tn2313adef.inc"
    ;.include "m32def.inc"
    .list
    .cseg
    .equ fosc = 8 ;czestotliwosc kwarcu w MHz
    .org 0x0000
    rjmp ResetProcessor

    ResetProcessor:
    ; ldi r16, high(RAMEND) ; init stack pointer
    ; out SPH, r16
    ldi r16, low (RAMEND) ; init stack pointer
    out SPL, r16

    ldi r16, 0xff
    out ddrd, r16
    out portd, r16

    ldi r18, 0xff
    ldi r19, 0xff
    ldi r20, 0xa1
    ldi r21, 0x07

    main:
    ldi r16, 0b1010_1010
    out portd, r16
    nop
    nop
    rcall del_64s
    ldi r16, 0b0101_0101
    out portd, r16
    rcall del_64s
    rjmp main

    del_64s:
    MOVW R24, R20
    Coarse:
    MOVW R30, R18 ;
    Loop:
    SBIW R30, 0x01 ;
    BRNE Loop ;
    SBIW R24, 0x01 ;
    BRNE Coarse ;

    ldi r28, 0xfd
    ldi r29, 0x1f
    Fine:
    SBIW R28, 0x01 ;
    BRNE Fine

    ret
    .exit
:P Teraz pewnie pytanie :arrow: po co ten nastepny kod :? To pewnie bedzie widac na symulatorze
64s.png
:idea: Dokladne 50-50% oraz dokladne co do cycklu 64 sekundy procek 8MHz attiny2313a Obrazek

Btw Jesli jest to mozliwe to o dodanie tego posta do pozostalych i odblokowanie tematu pls 8)

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 21 sie 2018, o 08:37

Witaj ACek
Fajnie ,ze napisałeś, wielkie dziękuję,ja też chciałam dać nowy temat pt.Powtórka z rozrywki część 3,ale się wahałam,bo nie byłam pewna,czy chcesz dalej pisać.
Czy w tym ostatnim kodzie do Attiny2313A i Atmega8A można zmieniać wypełnienia ,jak ,gdzie ?,chciałabym dać 1 sekundę,aby sprawdzić na mierniku, jakie jest 50%/50%.

Ten mój Windows 10 chodzi wolniej jak mój Win Xp,chociaż mam 4 rdzenie 4x2800 MHz.
Jako ,że lubię grać w szachy ,to interesują mnie komputery najszybsze w obliczeniach wariantów,w rozsądnej cenie.
W benchmarku Fritz mój procek ma takie osiągi na Win 10,4 rdzenie
szybkość względna:15.98
tys.pozycji na sekundę:7668
A w linku poniżej wyniki innych procesorów,i do pobrania benchmark Fritz,urzeka mnie tym ,że jest mikroskopijny w porównaniu do benchmarków zajmujących Gigabajty,czego nie znoszę i szukam maciupeńkich benchmarków.
http://www.jens-hartmann.at/Fritzmarks/

A tutaj prezent dla ACeK ,sprzętowe miganie LED,gdyby poprawiły duty 50 % i udało by się przerobić te kody na 64/64 sek., to było by wspaniale.
http://www.avr-asm-tutorial.net/avr_en/ ... d_Int.html
http://www.avr-asm-tutorial.net/avr_en/ ... index.html
http://www.avr-asm-tutorial.net/avr_en/index.html
https://sites.google.com/site/avrasmint ... ters-pwm-1

P.S
Jeśli adminowi nie będzie się podobało,że nie na temat,to wykasuję, to co nie na temat.
Ostatnio zmieniony 22 sie 2018, o 17:52 przez Ania30, łącznie zmieniany 3 razy.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 22 sie 2018, o 08:25

Obrazek Po tylu postach powinnas juz wiedziec gdzie co zmieniac :uhoh: Jesli mamy procek z kwarcem 8MHz to wciagu jednej sekundy procek wykonuje 8 000 000 cykli :idea: Tobie zalezy na 64 sekundach dlatego trzeba odliczyc 511 999 999 cykli zmienic stan bitow na porcie 1 cykl i tak w kolko :twisted: Do odliczania uzyte sa dwie petle (jedna podwojnie zageszczona) zmieniajac parametry w rejestrach ldi r20, 0xa1 ldi r21, 0x07 zmieniasz ilosc odliczanych cyckli 8) Dlatego zachecam do samodzielnych eksperymentow :P Bardzo przydaje sie symulator :idea: Gdzie mozna podgladac jak wykonywany jest program :!: Jesli chodzi o predkosc symulatora to attiny2313a jest o wiele od niego szybszy :lol: odlicznie 64 sekund trwa ponad 30 min :o
...A tutaj prezent dla ACeK ,sprzętowe miganie LED,gdyby poprawiły duty 50 % i udało by się przerobić te kody na 64/64 sek., to było by wspaniale...
:) Dziekuje za prezent czesto zagladam na ta strone oraz korzystam :arrow: LED line attiny13 asm 8)
EDCS0222_ep.jpg
:P Nawet zrobilem plytki testowe do kursu asm Obrazek

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 22 sie 2018, o 13:43

Wgrałam kod,na Attiny2313A, nie ma zmiany polaryzacji,uC był z kwarcem 8MHz i bez.
Dałam kwarc bez kondensatorów,może u mnie po przylutowaniu gniazdka na kwarc nie ma połączenia miedzy kwarcem a uC.
W j.C ++, na AVR .5.1 wiem jak się zmienia częstotliwość uC , w symbols ,w assembler nie znalazłam takiej zakładki w AVR,gdzie ona jest aby zmienić taktowanie ?
Załączam screen z symulatora na AVR 5.1.

Podłączenie kwarcu zegarkowego i LED do Atmega 8

http://www.circuitstoday.com/how_to_wor ... controller
Załączniki
N1a.gif

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 22 sie 2018, o 21:54

Obrazek Zmiana jest na bitach portu D :idea: Na kopi ekranu masz jak wejsc do zakladki Obrazek
jhj.PNG

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 22 sie 2018, o 22:52

Na porcie PD0-PD1 jest zmiana co około 4 min,to chyba,że mam 1 MHz zamiast 8MHz,dałam klawisz F9 ,ale to nie zmieniło z 1MHz na 8MHz
Jestem ciekawa czy u Ciebie ACeK kwarc 8 MHz ,i zegarkowy będą działać bez kondensatorów.
Na forach piszą ,ze działają bez,zależy to ,według nich od wersji uC,Atmega 8A ver.rewers B4, jak pisali odpala kwarc bez kondensatorów.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 23 sie 2018, o 10:29

Obrazek Kliknij na 1,000MHz moze w wersji 5 tak sie da zmienic :idea: Tu jak ustawic fuses Obrazek
fuses.png

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 23 sie 2018, o 10:51

O.K. znalazłam,tylko teraz AVR 4 nie chce się połączyć z programatorem stk500 ma auto ,nie ma USB,będę próbować.
Ostatnio zmieniony 23 sie 2018, o 11:26 przez Ania30, łącznie zmieniany 2 razy.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 23 sie 2018, o 11:06

AS4.png

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 23 sie 2018, o 16:13

Wreszcie działa,od 8 rano do teraz nad tym siedziałam.
Na kwarcu 8 MHz ma 64 sekund,bez kwarcu ponad 4 minuty.
Gniazdko do kwarcu które przylutowałam nie działa ,albo gniazdko na płycea fabrycznie niema połączenia z Attiny 2313A,lub nieda się przylutować dobrze farba ,czy tam coś czym to jest pomalowane nie daje styku.
Więc kwarc podłączyłam bez 2 kondensatorów kabelkami i działa.
Nie udało mi się wgrać fusebitów,poprzez AVR Studio ,zrobiłam to programem Extreme Burner.
Jak zrobić aby ten kod działał na kwarcu zegarkowym tj.32768 kHz,i i miał 64/64 sek.
Program mkAVRCalkulator pokazuje LOW 0X64,co jest lepsze ,Twoje LOW 0xFF,czy programu.
Na symulatorze dalej pokazuje 1Mhz ,mimo,że jest 64/64 sek,może dlatego,że w nim nie ustawiłam fusebitów.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 23 sie 2018, o 19:51

...Gniazdko do kwarcu które przylutowałam nie działa ,albo gniazdko na płycea fabrycznie niema połączenia z Attiny 2313A,lub nieda się przylutować dobrze farba ,czy tam coś czym to jest pomalowane nie daje styku...
Obrazek Masz miernik mozesz to sprawdzic :twisted:
:idea: AVR Studio to jest caly pakiet roznych narzedzi :!: Mozna w nim pisac swoje programy (kod zrodlowy) zrobic z niego kod maszynowy (hex) 8) Uzywajac kompatybilnego programatora wgrac soft do procka :P Oprocz tego mozna tez testowac dzialanie programu (bez podlaczonego procka) w symulatorze :idea: To co jest w attiny nie ma znaczenia kiedy testujesz program w symulatorze (wyjatek jTag) :twisted: Jak zmienia sie czestotliwosc zalezy od tego jaka masz wersje :arrow: na obrazku masz jak zrobic AS4 a w 5 chyba wystarczy kliknac by moc zmienic Obrazek

Awatar użytkownika
r-mik
-
-
Posty:351
Rejestracja:14 cze 2005, o 19:18
Lokalizacja:Wawa
Kontaktowanie:

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: r-mik » 24 sie 2018, o 08:21

A tutaj prezent dla ACeK ,sprzętowe miganie LED,gdyby poprawiły duty 50 % i udało by się przerobić te kody na 64/64 sek., to było by wspaniale.
Da się ale nie na jednym timerze, AVR to nie ARM gdzie można skonfigurować timery w kaskadę. Pisałem już o tym, kilka razy, w poprzednim wątku na ten temat. Pytanie powraca jak bumerang.
Dla AVR 8Mhz min częstotliwość PWM to w 8-bit:
8-bit:
(8e6/1024/2^8) = 30,517578125
10-bit:
(8e6/1024/2^10) = 7,62939453125Hz
16-bit
(8e6/1024/2^16) = 0,119209289550781Hz
toogle dwa razy niższa, ale do 64 sekund daleka droga. Gdy połączy się dwa timery np 8bit+8-bit:
1/(8e6/1024/2^8/1024/2^8) = 8`589,934592sekund więc da sie uzyskać bez problemu 64sekundy. Kombinacja:
1/(8e6/2/2^8/1024/2^10) = 67,108864sekund. Skracając cykl pracy licznika uzyskasz dokładnie 64sekundy.

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 24 sie 2018, o 11:13

Acek ,programem extreme burner wgrywałam fusebity i Attiny 2313A się zablokowała .
Dałam w programie Progisp 1.72,erase chip i enable chip ,i wyskoczył taki komunikat: chip enable program error.
W programie Extreme Burner fuse bity dałam tak jak na foto.
Jak ją odblokować ?
Jeśli bym miała coś w przedziale od 1 Hz do 10 Hz ,czy na nim mogę uzyskać w przedziale od 60 do 70 sekund.lub inny przedział zbliżony do tego ,nie mniej jednak jak 60-64 sekund.
Załączniki
FUSE BITY 8MHz.gif
Ostatnio zmieniony 24 sie 2018, o 20:57 przez Ania30, łącznie zmieniany 1 raz.

Awatar użytkownika
r-mik
-
-
Posty:351
Rejestracja:14 cze 2005, o 19:18
Lokalizacja:Wawa
Kontaktowanie:

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: r-mik » 24 sie 2018, o 12:10

Acek ,programem extreme burner wgrywałam fusebity i Attiny 2313A się zablokowała .
Dałam w programie Progisp 1.72,erase chip i enable chip ,i wyskoczył taki komunikat: chip enable program error.
W programie Extreme Burner fuse bity dałam tak jak na foto.
Jak ją odblokować ?
Witam w świecie AVR i jego fuses :-)
Programator wysokonapięciowy rozwiąże problem. Jak zablokowany jest generator (wybrane zewnętrzne taktowanie) to na XTAL można podać sygnał z generatora i włączyć SPI.
Jeśli bym miała rezonator w przedziale od 1 Hz do 10 Hz
Gdzie taki można kupić? Jakie ma wymiary? Szafki? Ile kosztuje? Tańszy od najnowszego modelu Ferrari?
Też bym chciał taktować AVR REZONATOREM 1Hz i uzyskać oszałamiające 0,000001 MIPS :-)

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 24 sie 2018, o 17:19

Sprawdzałam miernikiem gdzie jest plus a gdzie minus w niebieskim gniazdku,potem czy jest połączenie z gniazdkiem kwarc i uC ,i tym mogłam też uwalić uC,spięcie czy toś tam jeszcze.
Oczywiście mam takie coś około 1 Hz ,kupiony w sklepie za 4 zł
[Moderowano: Osobiste zaczepki usunąłem]
Ostatnio zmieniony 24 sie 2018, o 20:59 przez Ania30, łącznie zmieniany 1 raz.

Awatar użytkownika
r-mik
-
-
Posty:351
Rejestracja:14 cze 2005, o 19:18
Lokalizacja:Wawa
Kontaktowanie:

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: r-mik » 24 sie 2018, o 19:09

"Daj link do tego rezonatora kwarcowego 1Hz. czy jego symbol, dataschet."
moje nie jest kwarcem,a rezonatorem,ma wymiary około 2cm na 2 cm.
Podłączyłam ten rezonator do CD4047 i na mierniku pokazało mi ponad 1 Hz.
NIE MA REZONATORÓW KWARCOWYCH 1Hz, ani w Farnelu, ani w TME, ani w na eBay. To jest generator. Wewnątrz ma rezonator na dużo wyższą częstotliwość i dzielniki aby uzyskać 1Hz.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 24 sie 2018, o 21:33

Obrazek Jaki masz programator :? Do robienia kopi ekranu wystarczy uzyc paint z windows :idea: To jest cool forum i niech takie zostanie Obrazek

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 24 sie 2018, o 21:45

Taki mam programator:
USBasp AVR ATMEL ISP

rezonator
1. «układ elektryczny, akustyczny, optyczny lub mechaniczny zdolny do drgań rezonansowych»
2. «część instrumentu muzycznego służąca do wzmacniania dźwięku na zasadzie rezonansu»
3. «układ rezonansowy obejmujący jamę ustną lub nosową, mający wpływ na odpowiednie zabarwienie wymawianej głoski»
[MODEROWANO: Niepotrzebne usunąłem.]
Ostatnio zmieniony 24 sie 2018, o 22:48 przez Ania30, łącznie zmieniany 1 raz.

Awatar użytkownika
ACeK
-
-
Posty:1522
Rejestracja:30 mar 2003, o 19:35
Lokalizacja:Kielce

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: ACeK » 24 sie 2018, o 22:14

Obrazek Jaki kwarc masz teraz podlaczony :? Czy uzywasz tej samej plytki co zrobilas zdjecie :? Czy diody na pewno nie migaja Obrazek

Ania30
-
-
Posty:124
Rejestracja:31 lip 2018, o 07:57

Re: Attiny 2313A zmiana stanu wysokiego na niski,duty cycle 50% c.d.

Postautor: Ania30 » 24 sie 2018, o 22:21

O.K.
Sprawdzę czy jest zmiana polaryzacji z kwarcem 8MHz i bez kwarcu. Sprawdzę miernikiem,nie mam podłączonych Led.
Ale dałam erase i blank chip w PROGISP 1.72,to nie chciał skasować wyczyścić Attiny.
Ostatnio zmieniony 25 sie 2018, o 10:55 przez Ania30, łącznie zmieniany 1 raz.

Wróć do „AVR/AVR32”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 21 gości