Skocz do zawartości

Napięcie na pinach STM32 F103RB


Pomocna odpowiedź

Napisano

Witam. Mam problem, ponieważ napięcie na pinach ma tylko około 1V. Tak samo nie da się zaświecić diody wbudowanej LD2. Zmierzyłem napięcie i np. na pinach GPIOC napięcie ma około 1V. Dodam, że wcześniej było normalnie i mogłem z nich zasilić zwykłego LEDa. Czy coś się usmażyło?

Bez schematu i programu nikt Ci raczej nie odpowie. No bo skąd mam wiedzieć jak podłączasz tego LEDa do GPIO? "LD2" nic mi nie mówi, zapewne chodzi Ci o jakąś gotową płytkę - sam robiłeś, czy gotowy zestaw? Soft - ustawiasz stan wysoki na porcie, czy może odbierasz na tym pinie radio Maryja, bo pin jest w stanie wysokiej impedancji? Itp., itd.

LD2 jest to mała dioda wbudowana w płytkę Nucleo.Jest pokazana na początku tego kursu: https://forbot.pl/blog/kurs-stm32-4-sterowanie-portami-gpio-w-praktyce-id5538 .
Port GPIO ustawiam w stan wysoki, a napięcie sprawdzam pomiędzy tym portem a pinem GND. 
Kod:
 

#include "stm32f10x.h"

int main(void)
{

	 GPIO_InitTypeDef gpio;

	 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOA , ENABLE);

	 GPIO_StructInit(&gpio);
	 gpio.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3;
	 gpio.GPIO_Mode = GPIO_Mode_Out_PP;
	 GPIO_Init(GPIOC, &gpio);

	    while (1) {
	        GPIO_SetBits(GPIOC, GPIO_Pin_0); // zapalenie diody
	        GPIO_SetBits(GPIOC, GPIO_Pin_1); // zapalenie diody
	        GPIO_SetBits(GPIOC, GPIO_Pin_2); // zapalenie diody
	        GPIO_SetBits(GPIOC, GPIO_Pin_3); // zapalenie diody


	    }
}

 

Czy dioda LD2 nie jest przypadkiem na porcie GPIOA, pin GPIO_Pin_5? Jeśli tak to zapalasz wszystko, tylko nie LD2

Tak, zgadza się, ale ten kod jest akurat do zapalania portów 0,1,2,3 w GPIOC. Na nich zmierzyłem, że napięcie między nimi a GND wynosi około 1V. Wnisokuję, że takie samo napięcie będzie na tej diodzie LD2 i dlatego ona się nie zapala bo napięcie jest za małe. Tylko nie mam pojęcia dlaczego na tych pinach jest tak małe napięcie. Wcześniej było normalnie coś koło 3V i diody świeciły bez problemu. 

To teraz jeszcze nam powiedz jak to wszystko zasilasz, co tam masz dokładnie i jak podłączone oraz w jaki sposób dokładnie mierzysz to napięcie. Oraz co zrobiłeś zaraz przed tym jak "się zepsuło".

Gość es2
23 godziny temu, loromax napisał:

Tylko nie mam pojęcia dlaczego na tych pinach jest tak małe napięcie. Wcześniej było normalnie coś koło 3V i diody świeciły bez problemu. 

Port A działa poprawnie?

(edytowany)

Na porcie A nie ma w ogóle napięcia. Na B mam 2.2V
Na porcie D  np. PD0 również brak napięcia, na PD1 jest 0.8V.

PC13 mam normalnie napięcie takie jak powinno być. 

Coś musiało się przypalić chyba?

Edytowano przez loromax
Dnia 21.09.2018 o 17:03, loromax napisał:

Dodam, że wcześniej było normalnie i mogłem z nich zasilić zwykłego LEDa. Czy coś się usmażyło?

A coś w tym czasie "mieszałeś" w sprzęcie? Zawsze jest jakaś szansa na upalenie układu - wszystko zależy od tego co robiłeś. Podaj więcej szczegółów.

17 godzin temu, loromax napisał:

Na porcie A nie ma w ogóle napięcia. Na B mam 2.2V
Na porcie D  np. PD0 również brak napięcia, na PD1 jest 0.8V.

PC13 mam normalnie napięcie takie jak powinno być. 

Zbyt rozległe te uszkodzenia. Jak nie poda się na wyprowadzenie zbyt dużego napięcia o dużej wydajności prądowej to port nie uszkodzi się. Zwarciami też ciężko uszkodzić układ. Sprawdź na innej płytce. Nie pisz, że masz jedną, ja kupuję zawsze min 2.

Można jeszcze brać pod uwagę program. Sprawdź debugerem czy ustawienia portu są poprawne.

Istnieje też możliwość, że źle wykonujesz pomiary.

 

Mam jedną 😂
No jest możliwość, że źle wykonuję pomiary, ale testując to na diodzie - nie zapala się ona na pinach, gdzie pokazuje mi napięcie poniżej jednego volta. 
Sprawdzę debuggerem. 

3 godziny temu, loromax napisał:

ale testując to na diodzie - nie zapala się ona na pinach, gdzie pokazuje mi napięcie poniżej jednego volta

A jak podłączasz ta diodę? Narysuj schemat.

Dnia 1.10.2018 o 09:07, es2 napisał:

Nie pisz, że masz jedną, ja kupuję zawsze min 2.

A ja trzy... Świetna rada...

22 godziny temu, es2 napisał:

A jak podłączasz ta diodę? Narysuj schemat.

Polecam lekturę wcześniejszych postów w tym temacie - jest tam powiedziane, że głównie chodzi o diodę, która jest częścią zestawu Nucleo, więc schemat jest ogólnie dostępny.

(edytowany)

Czytałem wcześniejsze posty i była mowa o jednej diodzie, później ona się rozmnożyła "Wcześniej było normalnie coś koło 3V i diody świeciły bez problemu." w kodach źródłowych są 4 GPIO. Kolejna wypowiedź "ale testując to na diodzie - nie zapala się ona na pinach, gdzie pokazuje mi napięcie poniżej jednego volta" świadczy o tym, zże były dołączane kolejne diody,do kolejnych GPIO, tak więc adminie, proszę czytać ze zrozumieniem, zanim komuś się wytknie, że wcale nie czytał!

Co do kupowania "na styk" to już nie mój problem.

 

Edytowano przez es2

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ę »
×
×
  • Utwórz nowe...