Merhabalar , Kodları aynı şekilde yazdığımda bende sorun yaşadım Stm studioda degerleri okuyamadım . # define VREFIN_CAL ((uint16_t*)((uint32_t)0x1FFF7A2A)) float V25 = 0.76 ; float Avg_slope = 0.0025 ; v25 ve avg_scope kısmını float olarak tanımdıktan sonra sorun çözüldü .
Üstat 5 adet sensör okumam gerekiyor stm32f407g-dısc1 kartım ve bir türlü başaramadım adc1 uyarı veriyor sensörlerden değerleri okuyamıyorum uzaktan destek varmı
İyi günler Fatih bey, Bir sorum olacaktı da acaba neden #define VREFIN_CAL ((uint16_t*)((uint32_t)0x1FFF7A2A)) böyle birşey yazdık yani 32 bitlik olan bir şeyi 16 bite cevirmemizin sebebi nedir
Muhammed Fatih KÖSEOĞLU emeğine sağlık, ben de projemde stm32f4 ü kullanmak istiyorum, sormak istediğim 2 şey şu şekilde; 1-kendim simulinkten program hazırlayıp stm32f4 e gömebilir miyim, 2- dışardan yaklaşık 10 adet adc okuması yapmam gerekiyor bu işlemci kitini kullanabilir miyim? şimdiden vereceğin cevaplar için teşekkürler
Avg_slope olarak formüle koyduğumda değer 33 ile 460 arasında sıçrayıp duruyor, fakat formüle 0.0025 yazdığımda 33 olan normal değeri gösteriyor sebebi nedir acaba?
"SABAHTAN BERİ" yani önceki videolarda da :D :D :D
Merhabalar ,
Kodları aynı şekilde yazdığımda bende sorun yaşadım Stm studioda degerleri okuyamadım .
# define VREFIN_CAL ((uint16_t*)((uint32_t)0x1FFF7A2A))
float V25 = 0.76 ;
float Avg_slope = 0.0025 ;
v25 ve avg_scope kısmını float olarak tanımdıktan sonra sorun çözüldü .
Fatih bey 6:37 Sizin clock hala dahili HSI secili kaldi galiba. Bi bakabilr misiniz teyit etmek icin?
Üstat 5 adet sensör okumam gerekiyor stm32f407g-dısc1 kartım ve bir türlü başaramadım adc1 uyarı veriyor sensörlerden değerleri okuyamıyorum uzaktan destek varmı
İyi günler Fatih bey, Bir sorum olacaktı da acaba neden #define VREFIN_CAL ((uint16_t*)((uint32_t)0x1FFF7A2A)) böyle birşey yazdık yani 32 bitlik olan bir şeyi 16 bite cevirmemizin sebebi nedir
bir türlü çalısmadı studio dan baktıgımda hepsını aynı adrese atamıs neden acaba
Hocam NEGATİF GERİLİM ?? leri nasıl okuruz adc ile
Bende count hariç tüm değerler Nan veya infinity yazıyor. Sebebi ne olabilir.
Muhammed Fatih KÖSEOĞLU emeğine sağlık, ben de projemde stm32f4 ü kullanmak istiyorum, sormak istediğim 2 şey şu şekilde; 1-kendim simulinkten program hazırlayıp stm32f4 e gömebilir miyim, 2- dışardan yaklaşık 10 adet adc okuması yapmam gerekiyor bu işlemci kitini kullanabilir miyim? şimdiden vereceğin cevaplar için teşekkürler
ikisine de evet hakan bey
@ peki 2017b matlab sürümünü kullanıyorum stm32f407 yi sipariş ettim, uyum sorunu yaşar mıyım ?
@@Semsinng Yasamazsınız bence
@ adc okumalarını sadece simulink kullanarak yapabilir miyim? yani stm32 cubemx i kullanmaya gerek var mıdır? ihtiyacımı görür mü sadece simulink
stm32 cubemx tam olarak ne işe yarıyor, simulinkten farkı ne oluyor ?
Hocam bu formüller nerede yazıyor?
Avg_slope olarak formüle koyduğumda değer 33 ile 460 arasında sıçrayıp duruyor, fakat formüle 0.0025 yazdığımda 33 olan normal değeri gösteriyor sebebi nedir acaba?
Merhabalar adc1 potu hareket ettiğinde adc2 değeri de değişiyor sebebi nedir acaba?
Hocam Vadc2 yi sürekli sıfır okuyorum kodumda aynı sizin kodunuzla hatam ne olabilir ?
Teşekkürler....
Kodlarınızı paylaşmalısınız, kesin bir yerde kaçırdığınız bir eksik var. Yada tekrar dikkatlice dinleyiniz.
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
{
if(__HAL_ADC_GET_FLAG(&hadc1, ADC_FLAG_EOC) != RESET)
{
adc1_value[count] = HAL_ADC_GetValue(&hadc1);
count++;
/*
* count = 0 => channel 0
* count = 1 => Vrefint channel
* count = 2 => Temperature channel
*/
if(count == 3)
count = 0;
Vdda = (float) 3.3 * (*VREFIN_CAL) / adc1_value[1];
Vadc1 = Vdda * adc1_value[0] / 4095;
Vsense = Vdda * adc1_value[2] / 4095;
temperature = ((Vsense - V25) / Avg_slope) + 25;
}
if(__HAL_ADC_GET_FLAG(&hadc2, ADC_FLAG_EOC) != RESET)
{
adc2_value = HAL_ADC_GetValue(&hadc2);
Vadc2 = Vdda * adc2_value / 4095;
}
}
/* USER CODE END 0 */
/**
* @brief The application entry point.
* @retval int
*/
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_ADC1_Init();
MX_ADC2_Init();
/* USER CODE BEGIN 2 */
HAL_ADC_Start_IT(&hadc1);
HAL_ADC_Start_IT(&hadc2);
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}
@ hocam count ilerlemiyor hiçbir şekilde .
@@brakmirac268 ADC2 nin SCAN modunu aktif et düzelecek muhtemelen
herşey tamam da karta devreyi nasıl kurucaz
Hocam Selam, Bu nasıl olur ?
Hocam bunu yapmak için hangi malzemeler kullanılmalı
Sadece stm32f4 discovery karti yetetlo
@ hocam bende kart var hocam herhangi bir sensör yapmamı istedi ama hiç bir bilgim yok
hocam bu dersin kodlarını paylaşma şansınız var mı buraya kadar geldim fakat bu derste bir türlü doğru değer okuyamadım.
Buyrun: github.com/mfatihkoseoglu/STM32F4-DISCOVERY?files=1
@ Sağolun emeğinize sağlık.
bu kodu calıstıran var mı