با سلام
مشکلی که الان باهاش مواجه هستم در رابطه با کارکرد همزمانADCوTouchgfxهستش
میبایستی مقداری که باADCمیخونم رو ، در صفحه نمایش بدم به صورتrealtime که به این منظور از فایلmodel.cppموجود در این آدرس استفاده کردم (TouchGFX\gui\src\model)
الان داستان اینکه هرچه قدر فرکانس ADC رو بیاریم پایین تر و سمپلینگ تایمش رو زیاد کنیم ADC دقیق تر عمل میکنه ولی کندتر میشه ADC ، همین کند شدن ADC روی سرعت gui هم تاثیر میذاره و GUI رو کند میکنه، خیلی کن د
اگرم فرکانس ADC رو بالا ببریم و سمپلینگ تایمش رو کم کنم دقت ADC میادش پایین و از اون طرف سرعت کارکرد GUI افزایش پیدا میک نه
در یک پروژه جداگونه فقط ADC رو راه اندازی کردم(بدون استفاده ازTouchgfx)فرکانس کاری ADC رو اوردم پایین و سمپلینگ تایم رو بردم بالا و ADC دقیق عمل میکرد ولی یه خورده ای کند بودش ولی مثلا اگر بهش ولتاژ نمیدادم دقیق 0 رو نشون میداد(رزولوشن روی 12 بیت بو دش)
در حالی که الان زمانی کههم زمانADCوTouchgfxرو ران میکنم روی تمام کانال هایی که استفاده میکنم چهADC1و یا چهADC3بدون اینکه به پایه ها ولتاژی بدم یک مقدار اولیه ای رو کانال ها نشون میدن
ADCها رو کالیبره نیز کردم.ADCها رو در مدDMA Circular Modeراه اندازی کردم.
HAL_ADCEx_Calibration_Start(&hadc1, ADC_CALIB_OFFSET, ADC_SINGLE_ENDED);
HAL_ADCEx_Calibration_Start(&hadc3, ADC_CALIB_OFFSET, ADC_SINGLE_ENDED);
HAL_ADCEx_Calibration_Start(&hadc1, ADC_CALIB_OFFSET_LINEARITY, ADC_SINGLE_ENDED);
HAL_ADCEx_Calibration_Start(&hadc3, ADC_CALIB_OFFSET_LINEARITY, ADC_SINGLE_ENDED);
یه مورد اذیت کننده دیگه این هستش که روی پایهیPH4که میشه کانال 15،ADCشماره 3 یک ولتاژی حدودا 141 میلی ولت دارم(زمانی که همزمان ازADCوTouchgfx) استفاده میکنم این درحالی هستش که در اون پروژه خامی که فقط ازADCها استفاده میکردم چنین ولتاژی وجود نداشتش
کانفیگCubeMXمربوط ب هADCه ا
ADC1
ADC3
فرکانس کاریADC
راه حلی وجود داره برای مش کل پیش آمده؟
یعنی باید هم سرعت کارکرد GUI حفظ بشه و هم دقت اندازه گیری ADC پایین نیادش و ولتاژی هم الکی سر پایه های مربوط به کانال های ADC نباشه
تشکر از وقتی که میذارید


