Dokąd zmierza świat?

Tu można porozmawiać na dowolny temat nie koniecznie związany z tematyką maszyn i CNC

atom1477
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 16
Posty: 3843
Rejestracja: 21 kwie 2011, 10:58
Lokalizacja: ::

Re: Dokąd zmierza świat?

#41

Post napisał: atom1477 » 02 cze 2025, 14:33

Tak. Że autor wątku który twierdzi że HAL jest dla debili a porządni programiści robią na rejestrach, uruchomił program na HALu ale nie potrafi tego zrobić na rejestrach.



Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 15
Posty: 9449
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Dokąd zmierza świat?

#42

Post napisał: tuxcnc » 02 cze 2025, 14:37

atom1477 pisze:
02 cze 2025, 14:33
Tak. Że autor wątku który twierdzi że HAL jest dla debili a porządni programiści robią na rejestrach, uruchomił program na HALu ale nie potrafi tego zrobić na rejestrach.
A to jakiś wstyd nie umieć czegoś, co nigdy wcześniej nie było potrzebne?
Wiem, że są sposoby żeby podłożyć funkcji adres w pamięci od którego ma się uruchomić, ale teraz nie chodzi mi o to żeby zaczęło działać, tylko żeby się dowiedzieć dlaczego nie działa, bo to bardzo cenna wiedza.


atom1477
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 16
Posty: 3843
Rejestracja: 21 kwie 2011, 10:58
Lokalizacja: ::

Re: Dokąd zmierza świat?

#43

Post napisał: atom1477 » 02 cze 2025, 14:40

tuxcnc pisze:
02 cze 2025, 14:30
I nie pieprzcie, że NVIC_EnableIRQ ustawia DIER, bo gówno prawda.
Ok, pomyliłem się.
Zezwala na obsługę w rejestrze NVIC->ISER a nie DIER.
Nie mniej jednak nie jest to konfigurowanie przerwania, tylko zezwalanie na jego obsługę.
W szczególności, ta funkcja nie przypisuje adresu funkcji przerwania (a zdaje się że myślisz że to robi).
Fakt, w Arduino mogli coś popierniczyć, ale nazwa się nie zgadza z nazwą funkcji przerwania, więc sądzę że jest tak jak było w normalnym programowaniu STMa.
tuxcnc pisze:
02 cze 2025, 14:30
ale teraz nie chodzi mi o to żeby zaczęło działać, tylko żeby się dowiedzieć dlaczego nie działa, bo to bardzo cenna wiedza.
Uparcie nie chcesz się tego dowiedzieć. Dałbyś w przerwaniu zapalanie LEDa, i już byś wiedział o wiele więcej.
Nie zapala się: procek chodzi w inną funkcję przerwania. A tam zastaje na przykład while(1).
Zapala się: procek wchodzi do Twojej funkcji, ale np. nie kasuje bitu przerwania (przez co wchodzi w to przerwanie w kółko).
LED to skrót myślowy. Nie misi tam być fizycznego LEDa, tylko wystarczy multimetrem czy oscyloskopem sprawdzić napięcie na pinie.

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 15
Posty: 9449
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Dokąd zmierza świat?

#44

Post napisał: tuxcnc » 02 cze 2025, 16:04

atom1477 pisze:
02 cze 2025, 14:40
Uparcie nie chcesz się tego dowiedzieć. Dałbyś w przerwaniu zapalanie LEDa, i już byś wiedział o wiele więcej.
Nie zapala się: procek chodzi w inną funkcję przerwania. A tam zastaje na przykład while(1).
Zapala się: procek wchodzi do Twojej funkcji, ale np. nie kasuje bitu przerwania (przez co wchodzi w to przerwanie w kółko).
LED to skrót myślowy. Nie misi tam być fizycznego LEDa, tylko wystarczy multimetrem czy oscyloskopem sprawdzić napięcie na pinie.
Ale Ty dalej nie czytasz tego co piszę, tylko dyskutujesz z tym, co sam wymyśliłeś...
Jak mam zapalić LED-a, kiedy procesor jest martwy a program w ogóle się nie uruchamia?
Zresztą to nie o to chodzi.
Kiedy włączysz przerwania bitem DIER, to procek działa. Zapewne (bo tak powinno być) tablica przerwań jest zapisana rozkazami powrotu z przerwania. Dzięki temu można wywołać przerwanie, które nie ma napisanej obsługi i po prostu dzieje się nic.
Użycie NVIC_EnableIRQ zapewne robi taki burdel w systemie, że dzieją się cuda...
Coś znalazłem https://www.stm32duino.com/viewtopic.php?t=1923
To trochę nie na temat, ale w okolicy.
Wynika z tego, że HAL tak się rozpanoszył, że uniemożliwia korzystanie z funkcji, które były wcześniej dostępne.
W skrócie, jak się chce korzystać ze starego kodu, to trzeba HAL wyłączyć.
Na razie nic mi się nie udało z tym zrobić, ale brzmi to rozsądnie i pasuje do problemu.


atom1477
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 16
Posty: 3843
Rejestracja: 21 kwie 2011, 10:58
Lokalizacja: ::

Re: Dokąd zmierza świat?

#45

Post napisał: atom1477 » 02 cze 2025, 16:11

tuxcnc pisze:
02 cze 2025, 16:04
Ale Ty dalej nie czytasz tego co piszę, tylko dyskutujesz z tym, co sam wymyśliłeś...
Jak mam zapalić LED-a, kiedy procesor jest martwy a program w ogóle się nie uruchamia?
A gdzie ja napisałem że masz zapalić LEDa?
Napisałem żebyś dodał kod zapalający LEDa! A czy procek łaskawie tego LEDa zapali czy nie, to już on zdecyduje. I na podstawie tego co zrobi, będziesz mógł dojść do odpowiednich wniosków. Tak trudno to zrozumieć?

Poza tym nigdzie nie pisałeś że procek jest martwy. Napisałeś:
tuxcnc pisze:
02 cze 2025, 12:58
Przecież napisałem wyraźnie, że po przepełnieniu licznika procek się wiesza
Więc naprawdę zaczynam myśleć żeś tępy...
tuxcnc pisze:
02 cze 2025, 16:04
Cholera wie gdzie wchodzi i co robi, bo nie ma jak tego sprawdzić.
No tosz właśnie LEDem byś to sprawdził...


drzasiek90
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 14
Posty: 2381
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

Re: Dokąd zmierza świat?

#46

Post napisał: drzasiek90 » 02 cze 2025, 16:15

tuxcnc pisze:
02 cze 2025, 16:04
W skrócie, jak się chce korzystać ze starego kodu, to trzeba HAL wyłączyć.
Na razie nic mi się nie udało z tym zrobić, ale brzmi to rozsądnie i pasuje do problemu.
Przecież dostałeś taka odpowiedź na samym początku, o tu:
atom1477 pisze:
01 cze 2025, 22:41
A wywaliłeś HALa? Bo ten błąd wskazuje że HAL jest i gdzieś w sobie już ma zadeklarowaną funkcję obsługi przerwania.
Oraz tu:
drzasiek90 pisze:
01 cze 2025, 22:41
To znaczy, że HardwareTimer (z biblioteki STM32Duino) już ma własną wersję obsługi tego przerwania, i Twój kod ją duplikuje.
Ale byłeś tak zajęty wyzywaniem nas od debili że zignorowałes wszystkie odpowiedzi.
Jesteś kretyn do potęgi i tyle.
Nie dość, że nie za bardzo wiesz co robisz to jeszcze nie słuchasz podpowiedzi.
Tyle w temacie.

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 15
Posty: 9449
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Dokąd zmierza świat?

#47

Post napisał: tuxcnc » 02 cze 2025, 16:18

atom1477 pisze:
02 cze 2025, 16:11
Poza tym nigdzie nie pisałeś że procek jest martwy.
Uparcie odpowiadasz na posty, których nie czytałeś.
tuxcnc pisze:
02 cze 2025, 14:30
Jeśli obie linie są odkomentowane, to konwerter serial<>USB jest martwy i niczego więcej sprawdzić się nie da.
(Poprzednio (TIM1 i USB) procek się wieszał dopiero przy przerwaniu, tutaj układ się w ogóle nie daje uruchomić.)


atom1477
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 16
Posty: 3843
Rejestracja: 21 kwie 2011, 10:58
Lokalizacja: ::

Re: Dokąd zmierza świat?

#48

Post napisał: atom1477 » 02 cze 2025, 16:24

A może on wchodzi do przerwania tuż po starcie? Czyli nie jest "martwy" od samego początku, tylko od wejścia do przerwania?
Poza tym masz ST-Linka. To nie możesz zatrzymać rdzenia i zobaczyć adresu w rejestrze PC?

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 15
Posty: 9449
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Dokąd zmierza świat?

#49

Post napisał: tuxcnc » 02 cze 2025, 16:49

atom1477 pisze:
02 cze 2025, 16:24
Poza tym masz ST-Linka. To nie możesz zatrzymać rdzenia i zobaczyć adresu w rejestrze PC?
Ale co mi to da?
Ja szukam kodu który robi problem, a Ty mi każesz dłubać w procesorze...
Jeśli Arduino na STM32 nie da się używać bez HAL, no to się nie da i nie ma sensu tego robić, bo za co się nie zabierzesz, to będzie droga przez mękę...


atom1477
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 16
Posty: 3843
Rejestracja: 21 kwie 2011, 10:58
Lokalizacja: ::

Re: Dokąd zmierza świat?

#50

Post napisał: atom1477 » 02 cze 2025, 17:03

tuxcnc pisze:
02 cze 2025, 16:49
Ja szukam kodu który robi problem, a Ty mi każesz dłubać w procesorze...
Ręce opadają.
A radź se sam.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Na luzie”