dexu Czerwiec 2, 2021 Udostępnij Czerwiec 2, 2021 Witam serdecznie niestety mam problem z wgraniem programu komunikaty sugerują że niby wszystko jest okej "Download verified successfully " i większość rzeczy dzieje się tak jest to opisane w kursie jednak dioda po wciśnięciu f8 nie miga. Breakpoint nie ustawia się w pliku main.c tylko w pliku stm32l4xx_it.c w pierwszej linijce tej funkcji: void HardFault_Handler(void) { /* USER CODE BEGIN HardFault_IRQn 0 */ /* USER CODE END HardFault_IRQn 0 */ while (1) { /* USER CODE BEGIN W1_HardFault_IRQn 0 */ /* USER CODE END W1_HardFault_IRQn 0 */ } } podejrzewam że tutaj też powinno to inaczej wyglądać Z góry dziękuję za jakikolwiek sugestie które mogą mi pomóc rozwiązać problem.
Treker (Damian Szymański) Czerwiec 3, 2021 Udostępnij Czerwiec 3, 2021 Dnia 29.05.2021 o 15:04, Frantick napisał: Czy zakaz zmiany programu ogranicza sie tylko do tych 4 linijek w petli while? czy np. zmiana w enumie GPIO_PinState jest uznawana za zmiane w programie? @Frantick w tym przypadku chodzi o takie rozwiązanie, które zupełnie nie wymaga żadnych zmian w programie (tylko w sprzęcie) @dexu nie masz zarejestrowanego zestawu do tego kursu, więc zapytam dla pewności - czy korzystasz z tej samej płytki, która jest używana w kursie? Który dokładnie program uruchamiasz? Mowa o pierwszym miganiu diodą za pomocą HAL_GPIO_TogglePin oraz HAL_Delay? Czy tworzysz projekt dokładnie tak jak jest to opisane w kursie?
dexu Czerwiec 3, 2021 Udostępnij Czerwiec 3, 2021 6 godzin temu, Treker napisał: @dexu nie masz zarejestrowanego zestawu do tego kursu, więc zapytam dla pewności - czy korzystasz z tej samej płytki, która jest używana w kursie? Który dokładnie program uruchamiasz? Mowa o pierwszym miganiu diodą za pomocą HAL_GPIO_TogglePin oraz HAL_Delay? Czy tworzysz projekt dokładnie tak jak jest to opisane w kursie? Faktycznie nie zarejestrowałem zestawu ale zapewniam że jest ten sam. Mimo wszystko problem rozwiązany przeinstalowałem środowisko i już działa. Przy okazji dziękuję za wasze kursy, z kursem arduino napisałem swój pierwszy program, z kursem budowy robotów zbudowałem pierwszego robota a zarchiwizowany już kurs stm32F4 pomógł mi przy pracy inżynierskiej więc jeszcze raz dzięki Panowie. 1
Ceneusz Czerwiec 26, 2021 Udostępnij Czerwiec 26, 2021 Zastanawiałem się nad rozwiązaniem zadania 1, ale jedyne rozwiązanie, które mi przychodzi do głowy, to użycie tranzystora, jako inwertera sygnału. Jednak w zestawie nie mamy do dyspozycji tranzystorów, więc nie wiem, czy autor miał na myśli takie rozwiązanie xD
Treker (Damian Szymański) Czerwiec 28, 2021 Udostępnij Czerwiec 28, 2021 @Ceneusz można to rozwiązać znacznie prościej Zastanów się co "dzieje się" na pinie mikrokontrolera, gdy jest tam logiczna jedynka, a co w przypadku zera.
APJ Sierpień 3, 2021 Udostępnij Sierpień 3, 2021 Witam Kurs zapowiada się bardzo obiecująco ale mam zastrzeżenie, mruganie diodami oparte jest na "delay" a co w przypadku kiedy mikro kontroler powinien w tym czasie wykonywać jakieś obliczenia lub pomiary 500ms razy 10 diod daje 5 sekund zmarnowanego czasu, moim zdaniem powinno być ostrzeżenie o stosowaniu takiego rozwiązania i przynajmniej w zarysie podana alternatywa która w dalszej części powinna zostać rozwinięta
Gieneq Sierpień 3, 2021 Udostępnij Sierpień 3, 2021 @APJ witam na forum Zachęcam do dalszej lektury kursu i zapoznania się w szczególności z materiałami dotyczącymi przerwań. Kurs pokazuje różne metody i im dalej tym pokazane są bardziej wyrafinowane sposoby.
Popularny post Elvis Sierpień 3, 2021 Popularny post Udostępnij Sierpień 3, 2021 @APJ Masz oczywiście rację, że procesor czekając na zapalenie lub zgaszenie diody marnuje czas. Warto jednak zawsze dobierać rozwiązanie do problemu, a nie odwrotnie. Jeśli piszemy program, który ma tylko migać diodą, to aktywne czekanie nie jest niczym złym. Przecież i tak w tym czasie nic lepszego procesor nie ma do roboty. W części dotyczącej oszczędzania energii pokazujemy jak można usypiać procesor podczas oczekiwania - ale warto powtórzyć: zawsze dobieramy rozwiązanie do potrzeb. Jeśli chcemy mieć niski pobór energii, odpowiednio projektujemy układ i piszemy program. Jeśli poza miganiem diodami coś jeszcze robimy - nie używamy HAL_Delay. Ale mając program, który nic innego nie robi, a pobór energii nie jest dla nas istotny, to używanie delay jest najlepszym rozwiązaniem. To trochę jak z rozmiarem programu i zużyciem pamięci. Warto umieć napisać program, który wykorzystuje mniej zasobów, ale mając już wybrany mikrokontroler nic nie zyskujemy pisząc optymalny program. I tak nadmiar pamięci, a w przypadku delay mocy obliczeniowej, zostanie zmarnowany. Więc powtarzane w wielu miejscach opinie o "czystym źle" czającym się w funkcji delay i pochodnych jest bzdurą - wszystko zależy od konkretnego zadania. 4
APJ Sierpień 3, 2021 Udostępnij Sierpień 3, 2021 Nie twierdzę że Delay jest czystym złem a wręcz czasami jest najprostszą i najwygodniejszą drogą np.przy inicjalizacji, ale pamiętam swoje początki z kursów w których nikt nie wspominał że w ten sposób zamulam procesor, dlatego wtrąciłem swoją uwagę o tym że powinno się wspomnieć o takiej przypadłości czyli wadach i zaletach przedstawianych rozwiązań 1
Treker (Damian Szymański) Sierpień 4, 2021 Udostępnij Sierpień 4, 2021 @APJ jasne, rozumiemy - mieliśmy to na uwadze podczas tworzenia kursu, dlatego w dalszych częściach (w raz opisywaniem kolejnych zagadnień i peryferiów tego mikrokontrolera) znajdziesz więcej informacji na ten temat. W przypadku tej (początkowej) części kursu po prostu specjalnie nie zajmowaliśmy się szerzej tym zagadnieniem, bo i tak nie moglibyśmy na tym etapie pokazać jeszcze innych rozwiązań. Mam nadzieję, że po lekturze całego kursu temat ten nie będzie już nikomu sprawiał problemów 1
tylkoTechno Sierpień 13, 2021 Udostępnij Sierpień 13, 2021 Cześć, Proszę Pana redaktor-a aby dopisał wewnątrz treści akapitu "Podłączenie diody zewnętrznej", przy zdaniu "Dodajemy kolejny pin, który będzie skonfigurowany jako wyjście" słowo : GPIO_Output . Przy PC13 było wejście typu Input, z rozpędu i przy szybkim czytaniu łatwo to pominąć i potem szukać "why ?" 1
Gieneq Sierpień 14, 2021 Udostępnij Sierpień 14, 2021 @tylkoTechno witam na forum i dziękujemy za zgłoszenie, weźmiemy to niedługo pod uwagę
RadioDzab Wrzesień 11, 2021 Udostępnij Wrzesień 11, 2021 Witam. Spotkałem się z następującym problemem: Z góry dziękuję za pomoc.
Gieneq Wrzesień 11, 2021 Udostępnij Wrzesień 11, 2021 @RadioDzab a co masz w konfiguracji w Cube MX? Ustawiłeś etykiety na GPIO?
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »