Znaleziono 27 wyników

autor: TOP67
30 lis 2021, 07:23
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

oprawcafotografii pisze:
30 lis 2021, 06:58
Sugerujesz, żeby znając częstotliwość z jaką generowane są ukroki po prostu puścić je przez
określony czas i zgasić gdy teoretycznie odpowiednia ich ilość przeleci?
Nie. Timery mają też funkcję odliczania określonej ilości impulsów. Wpisujesz w rejestr żądaną liczbę i puszczasz Timer. Problemem jest tylko dostępny zakres częstotliwości taktowania.
Ale jeśli potrzebujesz określoną częstotliwość, to Timer używasz do generowania impulsów zegarowych i odliczasz je w podprogramie wywoływanym przerwaniem.
autor: TOP67
29 lis 2021, 21:17
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

Zaprogramować można wszystko. Są też gotowe biblioteki. Ale jeśli nie jest wymagana rampa, to wystarczy użyć Timera.
autor: TOP67
19 sty 2020, 11:15
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

oprawcafotografii pisze:
19 sty 2020, 08:31
Czy dobrze rozumiem, ze sygnał STEP będzie nadal na pinie 10 (np)
a zmieniam tylko "OCR1A = licznik;" na "OC1B = licznik"?
Przyznaje, że takich zapisów nie rozumiem ;(

q
OCR1A i OCR1B to nazwy rejestrów, które są podpięte pod różne piny na różnych procesorach. Masz je w kodzie programu. Odkomentuj jeden z nich i ustaw przypisany do niego port na OUTPUT.

Mapa przypisania jest na rysunku. Numery wyjść cyfrowych są na różowo. Numery liczników na biało.
A PB5 to numer bitu w rejestrze B, który bezpośrednio kontroluje ten pin. Tu z tego nie korzystamy, podobnie jak z PCINT (przerwania).

pinMode (11, OUTPUT); //wyjście licznika OC1A
//pinMode (12, OUTPUT); //wyjście licznika OC1B

TCCR1A |= (1 << COM1A0); // tryb portu A (toggle). Pin 11
//TCCR1A |= (1 << COM1B0); // tryb portu B (toggle). Pin 12

Dodane 27 minuty 33 sekundy:
Jeszcze jedno. W trybie CTC obydwa porty korzystają z jednego licznika OC1A. Tej linijki nie zmieniamy.
autor: TOP67
18 sty 2020, 16:59
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

oprawcafotografii pisze:
18 sty 2020, 16:49
2560..
I tu jest pies pogrzebany. ATmega2560 ma inne piny.
Rejestry powinny mieć taką samą nazwę, ale licznik jest tu (OC1B/PCINT6) PB6

Dodane 2 minuty 31 sekundy:
TOP67 pisze:
18 sty 2020, 16:56
oprawcafotografii pisze:
18 sty 2020, 16:49
2560..
I tu jest pies pogrzebany. ATmega2560 ma inne piny.
Rejestry powinny mieć taką samą nazwę, ale licznik jest tu (OC1B/PCINT6) PB6 lub tu (OC1A/PCINT5) PB5
autor: TOP67
18 sty 2020, 16:30
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

tomcat65 pisze:
18 sty 2020, 16:07
-pozbyłbym się wszystkich zmiennych typu float. AVRy nie mają koprocesora matematycznego. Co prawda kompilator sobie z tym poradzi, ale generuje bardzo długi kod.
W pierwotnej wersji było long. Ale kolegę interesują bardzo małe częstotliwości, i skok co 1Hz byłby mało dokładny. Oczywiście jest kilka rozwiązań tego problemu, np.: zwiększyć mikrokrok, co podniesie częstotliwość; podawać parametr 10 lub 100 razy większy; podawać okres a nie częstotliwość.
autor: TOP67
18 sty 2020, 11:42
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

oprawcafotografii pisze:
18 sty 2020, 09:17
Częstotliwość 1Hz to oczywiście przesada, ale tak czy owak nie działa.

Pomigałem LEDem - sygnał na pinie 13 mój oscyloszkopik za 70zł pokazuje:
https://photos.app.goo.gl/gqYUorJssmW3hrNZA

Niestety ani na pinie 9 ani 10 nic sensownego nie widzę, same przydźwięki...

Sprawdziłem drugą płytkę solo - bez podłączonego czegokolwiek i to samo.

:(

q
Wgrałeś tylko ten kod? Bez żadnych innych dodatków i wyświetlaczy?

Dodane 21 minuty 43 sekundy:
tuxcnc pisze:
18 sty 2020, 09:44
Już o tym pisałem, ale najwyraźniej nikt nie zauważył ...
Generowanie częstotliwości zmianą dzielnika w timerze ma oczywistą wadę w postaci nieliniowej charakterystyki.
Jeśli ktoś nie kuma, to wyjaśniam, że zarówno zmiana podzielnika z 2 na 4, jak też z 20000 na 40000 da procentowo taką samą zmianę częstotliwości, czyli w tym przypadku dwa razy mniej.
A gdzie tak jest zrobione?
autor: TOP67
18 sty 2020, 00:26
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

A tak przy okazji, to jesteś w stanie zauważyć mikrokrok co 1s? Jeden obrót zajmie kilkanaście minut.
autor: TOP67
17 sty 2020, 21:12
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

Avalyah pisze:
17 sty 2020, 20:40
oprawcafotografii pisze:co zrobiłem źle?"

Ciekawy jestem, jaka jest długość tego impulsu CTC. Może za krótka dla sterownika?
To nie jest impuls. To generuje sygnał prostokątny o wypełnieniu 50%.

Dodane 2 minuty 40 sekundy:
oprawcafotografii pisze:
17 sty 2020, 18:42
Wgrałem kod, modyfikując tak, żeby impulsy były na pinie 10 i nic.
Nie stepuje :) Pozostaje polecieć klasykiem:

"co zrobiłem źle?"
A sygnał Enable podałeś?

Wkleiłem żywcem Twój kod i na pinie 10 mam 1 Hz
autor: TOP67
17 sty 2020, 16:10
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

Avalyah pisze:
17 sty 2020, 15:20
AVR Praktyczne Projekty
Zamówiona
autor: TOP67
16 sty 2020, 19:22
Forum: Elektronika CNC
Temat: Mały, prosty sterownik krokowca pod AVR
Odpowiedzi: 108
Odsłony: 5766

Re: Mały, prosty sterownik krokowca pod AVR

tomcat65 pisze:
16 sty 2020, 16:39
Ciągle jeszcze myślisz " arduinowo"
Jeszcze? Zabrałem synowi Arduino ledwo tydzień temu. Na razie kombinuję, co by tu jeszcze na nim zrobić.

Wróć do „Mały, prosty sterownik krokowca pod AVR”