STM32 discovey ADC örneği

Başlatan blacklogic, 28 Eylül 2013, 15:55:39

blacklogic

Bu kitte adc çalışması yapmaya çalışıyorum fakat datasheette adc için chipin hangi pinin nerede olduğunu bulamadım. Onu nereden anlayacağız?
RM0041
Reference manual
sayfa 159 da GPIO ports demiş ama hangi port olduğunu nereden yapacağız? Sitedeki örnekleri derleyemiyorum keil derleyici var son sürümü yeni indirdim.
Ayrıca adcdeki veriyi okurken volt=ADC1->DR;  şeklinde olur mu ?

muhittin_kaplan



muhittin_kaplan


blacklogic

Alıntı yapılan: muhittin_kaplan - 28 Eylül 2013, 17:29:58
https://www.picproje.org/index.php/topic,41738.0.html
burada öğrek verilmiş.

ADC1->SQR1 |= (3 << 20); // Kaç kanalı tarayacağımızı bildiriyoruz. 20..23 bitler; 4 kanal
     ADC1->SQR3 |= 8; // Çevrime ilk girecek kanal 8. (PB0)
     ADC1->SQR3 |= (9 << 5); // Çevrime 2. sırada girecek kanal 9. (PB1)
     ADC1->SQR3 |= (14 << 10); // Çevrime 3. sırada girecek kanal 14. (PC4)
     ADC1->SQR3 |= (15 << 15); // Çevrime 4. sırada girecek kanal 15. (PC5)


bu kısmı anlamadım, RM0090 dan bakıyorum ama  ADC1->SQR3 kısmının anlatıldığı yerde portun nasıl seçileceğini anlamadım.

Klein


blacklogic

Stm32f100rbnin datasheetinden baktım da bulamadım. Sayfa 114den itibaren baktım ama ADC portları yok.
RM0041
Reference manual  buradan baktım.

muhittin_kaplan

#7
http://muhittinkaplan.com/2012/11/cok-kanal-adc/

mesaj birleştirme:: 28 Eylül 2013, 20:23:26


Ref Manuelde
Sayfa 160 da
"For full details about the ADC I/O pins, please refer to the "Pinouts and pin descriptions" section of the
corresponding device datasheet"

diyor
Geliyorum Datasheet e

http://www.st.com/web/en/resource/technical/document/datasheet/CD00251732.pdf

sayfa 26 dan başlayarak
"Alternate functions"
lara bakıyorum.

blacklogic

Alıntı yapılan: muhittin_kaplan - 28 Eylül 2013, 20:00:43
http://muhittinkaplan.com/2012/11/cok-kanal-adc/

mesaj birleştirme:: 28 Eylül 2013, 20:23:26


Ref Manuelde
Sayfa 160 da
"For full details about the ADC I/O pins, please refer to the "Pinouts and pin descriptions" section of the
corresponding device datasheet"

diyor
Geliyorum Datasheet e

http://www.st.com/web/en/resource/technical/document/datasheet/CD00251732.pdf

sayfa 26 dan başlayarak
"Alternate functions"
lara bakıyorum.

çok teşekkür ettim, ayrıca sitenizde bulunan örnek hangi derleyici? CoIDE mi daha çnce hiç bunu duymamıştım.

muhittin_kaplan


blacklogic

#10
ADC yi çalıştıramadım, sizce eksik yaptığım nedir? IN10dan okuma yapmaya çalışıyorum
LCD ekranında sadece 0000000000000000 görüyorum :(

#include <stm32f10x.h>
#include "lcd.h"
uint16_t adc_val;

int main(void)
{
	void port(void);
	void adc(void);
	unsigned int say1=33345;
	char lcd_text[16];
	port();
	lcd_init();
	delaylcd();
	lcd_clear();
	adc();
	delaylcd();
	lcd_clear();
	adc_val=ADC1->DR;
	IntToAsciiDec(lcd_text,16,adc_val);
	lcd_metin(lcd_text);
	
	
	while(1)
	{
		adc_val=ADC1->DR;
	IntToAsciiDec(lcd_text,16,adc_val);
	lcd_metin(lcd_text);
	}
	
}

void port(void) // ADC IN10 PC0
{
	RCC->APB2ENR=0x21C; // GPIOA-B-C ve ADC1EN açik
	GPIOA->CRL=0x33333338;
	GPIOA->CRH=0x33333333;
	GPIOA->BRR=0xFFFFFFFF;
	GPIOC->CRL=0x00;
	
}

void adc(void)
{
	ADC1->CR1=0xA;
	ADC1->CR2=0x200001;
	ADC1->SMPR1=0xFFFFFF;
	ADC1->SMPR2=0xFFFFFF;
	ADC1->SQR3=0xA;
	
}

muhittin_kaplan

Hangi derleyiciyi kullanıyorsun ?

blacklogic