- سلام دوستان.
من به تازگی شروع به یادگیری این میکروکردم و برد رو از خود فروشگاه گرفتم.
بردم Catalyst F100Z هست ولی تا اینجای کار 2 تا مشکل داشتم.
اولین مشکل اینه که میکرو به صورت jtag شناسایی نمیشه، هم با Jlink, و ulink و stlink تست کردم، نشد که نشد ولی به صورت sw مشکلی نداره.
مشکل دوم هم که دارم با واحد adc هست.
که وقتی واحد رو کانفیگ میکنی همینطوری الا بختکی عدد میده بهت همون مشکلی که دوستمونم داشت، یعنی منم اومدم یه سنسور دما وصل کردم دقیقا همین مشکلاتی که دستمون عنوان کرد داشتم منم ولی با پتانسیومتر اوکی بود، ولی بازم مقداری که از پتانسیومتر میخوند هم بالا پایین میشد.
بعد اومد 16 تا پتانسیومتر وصل کردم بهش از adc1 ,,2 استفاده کردم هرکدم 8تا.
اینبار عجیب تر شد! مقدار هایی مه بودن درست نبودن مثلا کانال 1و2 باهم بالا پایین میشدن. یا مثلا کانال 0 رو زیاد میکردی میقدار کانال 6 زیاد میشد!
نمیدونم مشکل از کجاس اما فایل هایی رو آپلود میکنم اگه میشه راهنمایی کنید، ممنونم.
عکس زیر مربوط به پیکر بندی adc1 در cube هست:
عکس بعدی برای adc2:
عکس زیر کد نوشته شده در keil:
دوتا عکس بعدی هم برای stm studio هست که مقادیر adc رو میبینیم، که این مقدار برای حالتیه که هیچی به پایه ها وصل نیست!
اطلاعیه
Collapse
No announcement yet.
مشکل با ADC برد کاتالیست STM32F103ZET6
Collapse
X
-
مشکل با ADC برد کاتالیست STM32F103ZET6
توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75 -
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
سلام دوستان، مشکل من کماکان حل نشده، ممنون میشم وقت بزارین.توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
بنده با توابع cmsisکار کردم.هم با adcکار کردم و هم اینکه در کیل به چندین روش به راحتی تونستم پروگرام کنم.منتها بحثی که هست اینه که الان خیلی وقته ازاون زمان میگذره .اگه واقعا لازمه و حیاتی هست.بند برد کاتالیست ها را دربیارم و بساط راه بندایم.و مشکل شمارا حل کنیم.به شرطی که شما هم از توابع cmsis استفاده کنید.اینجوری خودم هم یه مرور میکنم.
دلیل: ادغام دو پست برای جلوگیری از اسپم
علتی که از توابع هال استفاده نمیکنم اینه که نمیتونم کیوب رو روی کامپیوتر نثب کنم.علتتش هم اینه که درایو ویندوز من بنا به دلایلی محدود شده.و فضای زیادی ندارم.کلا 6گیگ فضا ازاد در درایو ویندوزم ازاده.در صورتی که نرم افزار کیوب خیلی فضای درایو cرا اشغال میکنه.دچیزی در حدود 3گیگ از درایو و به کامپوننت های مختلف اختصاص میده.eshop-hodhod.ir
- تشکرها 1
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط Namvar14 نمایش پست هابنده با توابع cmsisکار کردم.هم با adcکار کردم و هم اینکه در کیل به چندین روش به راحتی تونستم پروگرام کنم.منتها بحثی که هست اینه که الان خیلی وقته ازاون زمان میگذره .اگه واقعا لازمه و حیاتی هست.بند برد کاتالیست ها را دربیارم و بساط راه بندایم.و مشکل شمارا حل کنیم.به شرطی که شما هم از توابع cmsis استفاده کنید.اینجوری خودم هم یه مرور میکنم.
دلیل: ادغام دو پست برای جلوگیری از اسپم
علتی که از توابع هال استفاده نمیکنم اینه که نمیتونم کیوب رو روی کامپیوتر نثب کنم.علتتش هم اینه که درایو ویندوز من بنا به دلایلی محدود شده.و فضای زیادی ندارم.کلا 6گیگ فضا ازاد در درایو ویندوزم ازاده.در صورتی که نرم افزار کیوب خیلی فضای درایو cرا اشغال میکنه.دچیزی در حدود 3گیگ از درایو و به کامپوننت های مختلف اختصاص میده.
ببخشید CMSIS و HAL چه فرقی دارن مگه؟توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75
- تشکرها 1
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط akaReza نمایش پست هاسلام مهندس عزیز، بنده خیلی از پروژه هایی که انجام میدم رو سر همین که نتونستم ADC رو درست راه بندازم از همون AVR های قدیمی استفاده کردم، برام مهمه که این قابلیت رو راه بدازم چون به شدت کاربردیه.
ببخشید CMSIS و HAL چه فرقی دارن مگه؟
زیادتفاوتشون و نفهمیدم.یعنی تا حالا نشده که اینهارا با هم مقایسه کنم.
اینکه شما چون ADCرو نتونستید در این میکرو ها راه اندازی کنید.به نظر من برای خیلی از کارهای صنعتی همین AVRها کفایت میکنن.قیمت مناسب رفرنس خوب.و کلا میکرویی مثل STMهیچ وقت نمیتونه AVRهارا از رده خارج کنه.مگه اینکه خود اتمل بیاد یه نسل جدید رو جایگزین.کنه.الان خیلی از بچه هایی کهSTMکار میکنند.بحث تیراژ براشون اهمیت پیدا میکنه.به نظر من خیلی به ندرت پیش میاد که از یک میکرو ارم رده بالا برای کار ها ی سبک استفاده کرد.شما همون پروژه هایی که اجرا کردید و برید با STMاجرا کنید در بهترن شرایطی که راه بیفته و این مشکلات موجود که دارید هم مرتفع کنید بعد متوجه میشید که تفاوت به اون صورت نداره.کم کم میایید سراغ همون AVR.
مقایسه SMSISبا HALLجدیدترین ویرایش توسط Namvar14; ۱۹:۳۶ ۱۳۹۹/۰۶/۱۹.eshop-hodhod.ir
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
HAL و کیوب دو چیز نامرتبط هستن. میشه بدون کیوب از HAL استفاده کرد و بدون HAL از کیوب.
واژه HAL برخلاف چیزی که تو ایران شناخته میشه به عنوان کتابخونه اختصاصی STM، واژه ی عمومیه و اصولا به واسط های نرم افزار، سخت افزار گفته میشه. شرکت TI هم اسم کتابخونه های مشابهش HAL و برای سیستم عامل هاش هم OSAL ه.
در مورد CMSIS پست منو بخونید :
سلام خیلی وقت بود که می خواستم روی cmsis کار کنم و بلاخره شروع کردم خب چیزهایی که در موردش شنیده بودم با فکرم و با عمل جور در نمی اومد مثلا این که اگر قرار باشه برنامه رو روی یک میکروی دیگه سوییچ کنیم خب الان با استفاده از نرم افزار کیل وقتی روی میکروی stm32f407 بخواهیم cmsis کار کنیم مجبور به استفاده از توابع hal هستیم در
در مورد CMSIS خیلی از توابعش تو بستر سیستم عامل پیاده میشن و نیاز به RTOS دارن. (نوعش مهم نیست)
در مورد ADC مشکل از خیلی چیزا میتونه باشه :
1) گراند نامناسب
2) ریپل بالا روی پایه VDDA
3) وجود سیگنالهای فرکانس بالا اطراف خطوط ADC
4) رعایت نکردن حداقل جریان با توجه به امپدانس ورودی ADC (کم احتمال برای سنسور دما)
5) راه اندازی نادرست ورودی،اشمیت تریگر و ... (کم احتمال در صورت استفاده از CubeMX)
من با بردهای ساخت خودم یا ST کار کردم و اتفاقا یکی از فیلدهای مورد علاقه م آنالوگه. پردازش های صدا رو با دقت بالا با کمک همین ADC ها انجام دادم و مشکلاتی مثل مشکلات شما نداشتم تا کنونSi vis pacem, para bellum
- تشکرها 2
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط tiranoid نمایش پست هاHAL و کیوب دو چیز نامرتبط هستن. میشه بدون کیوب از HAL استفاده کرد و بدون HAL از کیوب.
واژه HAL برخلاف چیزی که تو ایران شناخته میشه به عنوان کتابخونه اختصاصی STM، واژه ی عمومیه و اصولا به واسط های نرم افزار، سخت افزار گفته میشه. شرکت TI هم اسم کتابخونه های مشابهش HAL و برای سیستم عامل هاش هم OSAL ه.
در مورد CMSIS پست منو بخونید :
سلام خیلی وقت بود که می خواستم روی cmsis کار کنم و بلاخره شروع کردم خب چیزهایی که در موردش شنیده بودم با فکرم و با عمل جور در نمی اومد مثلا این که اگر قرار باشه برنامه رو روی یک میکروی دیگه سوییچ کنیم خب الان با استفاده از نرم افزار کیل وقتی روی میکروی stm32f407 بخواهیم cmsis کار کنیم مجبور به استفاده از توابع hal هستیم در
در مورد CMSIS خیلی از توابعش تو بستر سیستم عامل پیاده میشن و نیاز به RTOS دارن. (نوعش مهم نیست)
در مورد ADC مشکل از خیلی چیزا میتونه باشه :
1) گراند نامناسب
2) ریپل بالا روی پایه VDDA
3) وجود سیگنالهای فرکانس بالا اطراف خطوط ADC
4) رعایت نکردن حداقل جریان با توجه به امپدانس ورودی ADC (کم احتمال برای سنسور دما)
5) راه اندازی نادرست ورودی،اشمیت تریگر و ... (کم احتمال در صورت استفاده از CubeMX)
من با بردهای ساخت خودم یا ST کار کردم و اتفاقا یکی از فیلدهای مورد علاقه م آنالوگه. پردازش های صدا رو با دقت بالا با کمک همین ADC ها انجام دادم و مشکلاتی مثل مشکلات شما نداشتم تا کنونeshop-hodhod.ir
- تشکرها 1
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
سلام و عرض ادب.
امروز بلاخره موفق شدم که مشکلشو حل کنم و اون نتیجه که میخواستم رو بگیرم.
فایل ها رو هم قرار میدم تا اگه عزیزی به همچین مشکلی برخورد بتونه مشکلشو حل کنه.
نحوه وصل کردن پایه ها ADC به این صورت که هر پایه به یک مولتی ترن وصل کردم، و 16 تا پایه ADC رو هرکدوم روی 0.2 ولت تنظیم کردم یعنی پایه 0 به 0.2 ولت وصله پایه 1 به 0.4 ولت و همینطور تا آخر 0.2 افزایش دادم تا شکل خروجی متغیر ها به صورت پله ای بشه.
نحوه وصل کردن سخت افزار:
تنظیمات ADC1 در کیوب:
تنظیمات ADC2 در کیوب:
تابع نوشته شده برای خواندن مقدار ADC براساس rank:
کدش سادس فکر نمیکنم نیاز به توضیح اضافی باشه اما اگه نیاز بود بفرمایید توضیح میدم.
و در نهایت خروجی:
فایل کامل پروژه شامل تنظیمات cube و فایل های keil و فایل stm studio ( لینک ).
موفق باشید.جدیدترین ویرایش توسط akaReza; ۱۱:۱۸ ۱۳۹۹/۰۷/۲۱.توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
فقط دوستان یک مشکلی هست و اون هم خطایی هست که این وسط وجود داره!
جدول زیر رو ببینید:
یک خطایی با میانگین 7 درصد هست و خیلی عجیب ترش اینه که کانال هایی که ولتاژ پایین تری دارند خطاشونم بیشتره! همونطور که مشخصه با افزایش ولتاژ خطا کمتره شده و توی 5 درصد باقی مونده!
اول فکر کردم که شاید مقادیری که با مولتی متر تنظیم کردم بخاطر خطای مولتی متر دقیق نبود که اسکوپ اندازه گیری کردم دیدم همونه فرقی نداره!
بعدش به ذهنم رسید شاید مشکل از کانال ها باشه که جابحا کردم و فرقی نکرد.
مقدار ولتاژ کانال 1:
جالب ترش اینهکه اسکوپ ولتاژ بیشتری از هم مولتی متر و هم خود میکروکنترلر اندازه گرفته!
مقدار ولتاژ رفرنس ADC:
مقدار ولتاژ VCC میکروکنترلر:
فیلتری هم که برای بخش ADC استفاده شده:
ممنون میشم اگه موضوعی به ذهنتون میرسه راهنمایی کنید، مچکرمتوی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط akaReza نمایش پست هافقط دوستان یک مشکلی هست و اون هم خطایی هست که این وسط وجود داره!
جدول زیر رو ببینید:
یک خطایی با میانگین 7 درصد هست و خیلی عجیب ترش اینه که کانال هایی که ولتاژ پایین تری دارند خطاشونم بیشتره! همونطور که مشخصه با افزایش ولتاژ خطا کمتره شده و توی 5 درصد باقی مونده!
اول فکر کردم که شاید مقادیری که با مولتی متر تنظیم کردم بخاطر خطای مولتی متر دقیق نبود که اسکوپ اندازه گیری کردم دیدم همونه فرقی نداره!
بعدش به ذهنم رسید شاید مشکل از کانال ها باشه که جابحا کردم و فرقی نکرد.
مقدار ولتاژ کانال 1:
جالب ترش اینهکه اسکوپ ولتاژ بیشتری از هم مولتی متر و هم خود میکروکنترلر اندازه گرفته!
مقدار ولتاژ رفرنس ADC:
مقدار ولتاژ VCC میکروکنترلر:
فیلتری هم که برای بخش ADC استفاده شده:
ممنون میشم اگه موضوعی به ذهنتون میرسه راهنمایی کنید، مچکرم
مهندس من زیاد دقیق تاپیک شما رو نخوندم ولی توی پست آخرتون ظاهرا شما خطای گین (Gain Error) دارید. با ADCها خوب آشنایی دارید؟ با خطاهاشون؟ نحوه کارشون؟
[آموزشی]چطور دقت ADC میکرو STM32 را افزایش بدیم؟
با ساختارش چطور؟ اینا رو دیدین؟ می دونین این مشخصه ها برای چی هستن؟ تو دیتاشیت میکرو نوشته شدن.
- تشکرها 1
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط روح الامین نمایش پست هامهندس من زیاد دقیق تاپیک شما رو نخوندم ولی توی پست آخرتون ظاهرا شما خطای گین (Gain Error) دارید. با ADCها خوب آشنایی دارید؟ با خطاهاشون؟ نحوه کارشون؟
[آموزشی]چطور دقت ADC میکرو STM32 را افزایش بدیم؟
با ساختارش چطور؟ اینا رو دیدین؟ می دونین این مشخصه ها برای چی هستن؟ تو دیتاشیت میکرو نوشته شدن.
خیر اطلاعی نداشتم، آخه با AVR این مشکل رو نداشتم تاحالا ( یا شاید خطا طوری بوده که به چشمم نیومده تاحالا )، اما از لینکی که قرار دادن استفاده میکنم و بیشتر راجب این موضوع تحقیق میکنم چون موضوع مهمی هست، با تشکر از شماتوی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط akaReza نمایش پست هافقط دوستان یک مشکلی هست و اون هم خطایی هست که این وسط وجود داره!
جدول زیر رو ببینید:
یک خطایی با میانگین 7 درصد هست و خیلی عجیب ترش اینه که کانال هایی که ولتاژ پایین تری دارند خطاشونم بیشتره! همونطور که مشخصه با افزایش ولتاژ خطا کمتره شده و توی 5 درصد باقی مونده!
اول فکر کردم که شاید مقادیری که با مولتی متر تنظیم کردم بخاطر خطای مولتی متر دقیق نبود که اسکوپ اندازه گیری کردم دیدم همونه فرقی نداره!
بعدش به ذهنم رسید شاید مشکل از کانال ها باشه که جابحا کردم و فرقی نکرد.
مقدار ولتاژ کانال 1:
جالب ترش اینهکه اسکوپ ولتاژ بیشتری از هم مولتی متر و هم خود میکروکنترلر اندازه گرفته!
مقدار ولتاژ رفرنس ADC:
مقدار ولتاژ VCC میکروکنترلر:
فیلتری هم که برای بخش ADC استفاده شده:
ممنون میشم اگه موضوعی به ذهنتون میرسه راهنمایی کنید، مچکرم
حواستون به اسیلوسکوپ هم باشه که در مواردی خود اسکوپ روی برد نویز میندازهزندگی را تو بساز ،
نه بدان ساز که سازند و پذیری بی حرف ،
زندگی یعنی جنگ ، تو بجنگ ،
زندگی یعنی عشق ، تو بدان عشق بورز.
- تشکرها 1
دیدگاه
-
پاسخ : مشکل با ADC برد کاتالیست STM32F103ZET6
نوشته اصلی توسط microware نمایش پست هاسلام دوست عزیز
حواستون به اسیلوسکوپ هم باشه که در مواردی خود اسکوپ روی برد نویز میندازه
البته هنوز وقت نکردم اون manual که دوست عزیزمون گفت و تاپیکی در این مورد ایجاد کردن رو بخونم.
دلیل: ادغام دو پست برای جلوگیری از اسپم
نوشته اصلی توسط reza326 نمایش پست هاسلام
ورودی هر ADC رو آپ امپ بگذارید ...
در قسمت برد پتانسیومتر ها( به صورت بافر)
ببخیشد متوجه نشدن که چرا باید این کارو انجام بدم!
میشه بیشتر توضیح بدین؟ ممنونم.توی کانال یوتیوب من قراراه طراحی انواع بردهای الکترونیکی مثل بردهای تک لایه، دو لایه یا به طور کلی بردهای چند لایه، بردهای مبتنی بر میکروکنترلر، بردهای صنعتی، بردهای الکترونیک قدرت و بردهای فرکانس بالارو یاد بگیریم.
همینطور کدنویسی انواع میکروکنترلرهای 8 بینی مثل میکروکنترلرهای خانواده AVR-STM8، میکروکنترلرهای میبتی بر معماری ARM مثل STM32 و پردازنده های مخصوص اینترنت اشیاء مثل ESP32-ESP8266 و DSPها یاد میگیریم.
https://www.youtube.com/@aKaReZa75
دیدگاه
دیدگاه