شماره های 2 -3-4-5 که نیستند، کانال 1 لاجیک انالیزر رو به پین ریست با سیم رشته ای لحیم کردم، یه نویز هایی روی این پین وجود داره که یه لحظه این نویزها زیاد میشن و وقتی زمان 0 بودن یکی از این نویزها بیش از 300 نانو ثانیه باش میکرو ریست میکنه
یه وقت اتصالی بین پین ریست میکرو و GND مدار وجود نداره؟
با مولتی متر تست کردم اتصالی وجود نداره
بله مقاومت پول اپ ریست بین 30 تا 50 کیلو هست.
راستی از کجا می فهمی که ریست میشه؟
برنامه ای که روش ریختم چنتا LED رو پشت سرهم روشن خاموش میکنه، مثلا برد داره درست کار میکنه به یکباره این LED ها خاموش میشن و دوباره روشن میشن کار میکنن همینطور هنگ کردن ادامه داره.
این مدار توصیه شده برای محافظت از پین ریست هست :
آها راستی STM32 یه ریجستر داره به اسم RCC_CSR که وضعیت آخرین ریست ها رو نشون میده.(صفحه 119 رفرنس مانوال)
می تونی علت ریست رو از این ریجستر هم بخونی. فکر کنم با تابع RCC_GetFlagStatus از سری توابع کتابخانه HAL بتونی این ریجستر رو بخونی و بفهمی علت ریست چیه.
ممنون بابت این راهکار، با درایور HAL هنوز شروع به کار نکردم اما مثل اینکه اخرش باید شروع به کار کنم، دستور خوندن مقدار رجیستر با درایور HAL رو پیدا نکردم اما این دستور مربوط به کتابخانه CMSIS هست :
کد:
* @arg RCC_FLAG_HSIRDY: HSI oscillator clock ready
* @arg RCC_FLAG_HSERDY: HSE oscillator clock ready
* @arg RCC_FLAG_PLLRDY: PLL clock ready
* @arg RCC_FLAG_LSERDY: LSE oscillator clock ready
* @arg RCC_FLAG_LSIRDY: LSI oscillator clock ready
* @arg RCC_FLAG_PINRST: Pin reset
* @arg RCC_FLAG_PORRST: POR/PDR reset
* @arg RCC_FLAG_SFTRST: Software reset
* @arg RCC_FLAG_IWDGRST: Independent Watchdog reset
* @arg RCC_FLAG_WWDGRST: Window Watchdog reset
* @arg RCC_FLAG_LPWRRST: Low Power reset
*
* @retval The new state of RCC_FLAG (SET or RESET).
*/
FlagStatus RCC_GetFlagStatus(uint8_t RCC_FLAG)
فکر نکنم دیگه به خوندن مقدار این رجیستر نیازی باش و این ریست شدن مربوط به پین ریست هست، من میکرو برد قبلی رو چند بار با هیتر برداشتم و زیر میکرو رو حسابی با اسپری خشک تمیز کردم. بازم مشکلش حل نشد، از اونجایی هم که فقط این سری میکرو مشکل داشته بنظرتون امکانش هست بخشهای دیگه میکرو روی پین ریست تاثیر بذارن ؟؟