Skocz do zawartości

danielbr3

Użytkownicy
  • Zawartość

    16
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O danielbr3

  • Ranga
    2/10

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Ustawilem narazie BL na GPIO_output i tak jak w kursie ustawilem na stan wysoki, czyli napiecie 3V. Obrazek jednak nadal jest tak niewyrazny ze trudno bylo mi go dostrzec. Rozumiem ze za pomocą PWM mozna tylko zmniejszyc jasnosc ustawiajac na nizsze napiecie. Czy jest wiec jakas mozliwosc poprawienia obrazu?
  2. niestety dla zadnej wartosci adresu w zakresie 0-256 nie mam odczytu wartosci who_i_am z tym zeby skakalo co 2 to chodzilo ci o to ze adres napewno bedzie parzysty?
  3. Chodzi o cos takiego? while (1) { adres++; HAL_I2C_Mem_Read(&hi2c1, adres, 0x0f, 1, &who_am_i, 1, 100); if (who_am_i==0x49) { wait() } /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ }
  4. POdbijam temat. Mam identyczny problem, brak odczytu who_i_am Sprobowalem podlaczyc rezystory (chociaz ten akcelerometr jest juz chyba w nie wyposazony) lecz to tez nie dalo efektu. Rezystory podlaczylem do linii SDA i SCL a nastepnie podlaczylem je do napiecie 3V3. Dobrze zrozumialem ze to o to chodzilo? Co jeszcze moze byc przyczyna braku polaczenia. Napiecie i natezenie na jest zerowe. 17_akcelerator.rar
  5. Mam teraz problem z ostatnim zadaniem. Wprawdzie mam inna plytke (stm32f303re) lecz poza innym maksymalnym taktowaniem zegara wydaje mi sie ze nie ma roznicy w wykorzystywanych funkcjach. Zmienilem odpowiednio wartosci prescaler. Tak wygladają wartości zmiennych: Zmienia sie tylko wartość Duty zaś reszta pozostaje niezmienna. KOd kopiowalem z pliku wprowadzajac potrzebne zmiany. I co najbardziej ciekawe wartości zaczynaja sie zmieniac gdy dotkne niektorych miejsc na plytce (np. styki piny do ktorych sa przypisane timery, ale nie tylko). Wartości zatrzymuje sie wtedy na przykladowo takich liczbach. Wyniki te poza procentem wypelnienia wydaja sie nawet poprawne, lecz ta jedna wartosc nie reaguje wogole na zmiany polozenia pokretla enkodera. Przede wszystkim nie mam pojecia dlaczego niektore miejsca reaguja na dotyk. Jesli to moze pomóc w rozwiazaniu tej zagadki moge zaznaczyc te punkty.
  6. Chcialem polaczyc zagadnienie enkodera i PWM w jedno i sterowac jasnoscia diody za pomoca enkodera. Sam enkoder dziala mi prawidlowo lecz jak tylko dodaje na innym timerze funkcje PWM to cos psuje sie z wartosciami z enkodera i pulse_count oraz positions pokazuja duze wartosci nie zmieniajace się podczas krecenia galka enkodera. Dlaczego tak sie dzieje i jak połączyc te dwie funkcje?
  7. Chcę napisac program ktory bedzie zaswiecal stopniowo diode a nastepnie ja gasil w czasie 4s. Znalazlem w reference manual takie informacje na temat przerwania SysTick: więc ustawilem zegar procesora takim taktowaniem jak jest opisane Obliczylem rowniez ze aby dioda zaswiecala sie cyklicznie w czasie 4s trzeba aktualizowac stannapiecia PWM co 40cyklow przerwań, zas timer ustawilem tak aby sygnal PWM przyjmowal 100 wartosci posrednich. Po odpaleniu programu w debugerze wyskakuje mi jakis błąd ktorego nawet nie wiem jak interpretować. Zamieszczam rowniez kod, ktos moze bedzie wiedzial w czym jest problem. main.rar https://forbot.pl/blog/kurs-stm32-f4-8-zaawansowane-funkcje-licznikow-id13473 Robie ten kurs tylko na innym mikrokontrolerze, STM32F303re
  8. Mam pytanie co do dzialania przerwania Systick. Pisze ze ma czestotliwosc 1kHz. Tak jest zawsze czy tylko w tym przypadku? Znalazlem taka informacje w dokumentacji: Dobrze rozumiem że według tego jak ustawie SYSCLK na 84MHz oraz AHB Prescaler zeby dzielilo taktowanie na 8 czesci aby otrzymac 10,5MHz i wtedy przerwanie bedzie nastepowalo z czestotliwoscia 84MHz? Jak to jest przeliczane w przypadku kursu gdzie wartosc SYSCLK jest ustawiona na 100MHz?
  9. Aktualnie pracuję nad tym kursem: https://forbot.pl/blog/kurs-stm32-f4-5-pomiar-napiecia-adc-dma-stmstudio-id13099 tylko na plytce stm32f303re Znalazłem w dokumentacji mikrokontrolera dane do przeliczania wyniku na stopnie celsjusza, nie wiem czy błąd jest w danych czy w czymś innym ale temperatura znacznie odbiega od tej jaka powinna wyjść według kursu. U mnie jest 40 stopni zas wedlug kursu powinna byc chyba zblizona do temperatury otoczenia. Czy ktos moze mi sprawdzic czy znalazlem poprawne dane i napisalem dobrze kod? Największe wątpliwości mam co do maksymalnego napiecia zasilania. Poniżej zamieszczam screeny ze znalezionymi danymi oraz kod.
  10. dzięki za odpowiedz ale chodzilo mi o to jak znalezc jakis dokument ze spisem komend do mojego mikroprocesora bo oczywiscie po poprawieniu tych bledow pojawiaja sie kolejne, przegladanie plikow z biblioteki niestety nie na wszystko daje odpowiedz
  11. może mi ktoś dać wskazówke czego i gdzie mam szukać? przejrzalem różne pliki ze strony stm do tego mikrokontrolera, miedzy innymi datasheet ale nic takiego nie znalazłem
  12. Po skopiowaniu programu i probie budowania wyskakuja mi takie bledy (pierwsze zdjecie). PS. Jak w edycji usunac dodane zdjecie?
×
×
  • Utwórz nowe...