Wpis z mikrobloga

Mircy, w jaki sposób odczytywać rejestry w STM32? Cały czas zwraca mi zerowe wartości, pomimo, że linię wyżej zapisuję do niego jakieś wartości. Chciałbym wyświetlić sobie rejestr w hexie, żeby móc sprawdzić co się dzieje z ADC.
Probowałem w taki sposób:
printf("STATUS REGISTER: %lx\r\n", (long unsigned)ADC1->SR );
i w taki: (identyczny jak przy odczytywaniuy wartości po konwersji )
printf("STATUS REGISTER: %lx\r\n", (long unsigned)ADC1->SR & 0xFFFF );

I ciągle dostaję 0 :/

#elektronika #programowanie #stm32
  • 3
@kobiaszu: musisz włączyć zegar dla ADC. Będzie to gdzieś w dokumentacji pod nazwą "peripheral register boundary addresses". Znajdujesz swoje ADCx, i szukasz pod co jest to podpięte (APB/AHB1/AHB2) i włączasz na to zegar. Znajdziesz to w Reference Manualu. Rozdział RCC - podrozdział RCC registers i odpowiedni
*APB/AHB peripherial clock enable register*

:)