کار با GPIO ها در mc60

سلام دوستان
من یک برنامه خیلی ساده برای opencpu mc60 نوشتم.به این صورت که یک gpio رو یک کنه.اما وقتی mc60 رو پروگرم میکنم. اون پین به صورت چشمک زن صفر و یک میشه.همه چی به نظر درست میاد.کسی میدونه مشکل از کجاست؟

1 پسندیده

سلام. احتمالا اون پینی که چشمک داره میزنه پین net light هست که به صورت پیشفرض همیشه چشمک میزنه مگر اینکه رو حالت دیگه ای پروگرامش کنید.

البته بر اساس کد شما باید از حالت چشمک زن در بیاد و روشن بمونه
احتمالا شما کدتون یا درست کامپایل نمیشه و یا درست پروگرام نمیشه و ماژول با فریمور پیشفرضش روشن میشه

3 پسندیده

سلام.این روچک کردم.پین‌های دیگه رو هم که خروجی تعریف میکنم به همین صورت هست.طبق کد باید روشن بمونه اما به طور متناوب صفر و یک میشه.

1 پسندیده

سلام دوست عزیز
روی پورت سریالتون توی استارت آپ یک چیزی پرینت کنید
و خروجی رو بررسی کنید، احساس میکنم ماژولتون داره ریست میشه !

2 پسندیده

حلقه ها بدون تاخیر باشن ماژول ریست میشه

1 پسندیده

دقیقا. وقتی تسک های مبتی بر RTOS دارای Delay نباشند Core ریست میشه.
آیا مشکلتون حل شده ؟ @ElectronicMan

1 پسندیده

اتفاقا من هم همین مشکل رو دارم با ترمینال تست گرفتم ماژول هر چهار پنج ثانیه ریست میشه اما از Ql_sleep که استفاده میکنم مشکل برطرف میشه
چرا این اتفاق میوفته؟
اگه نخوام از Ql_Sleep استفاده کنم باید چکار کنم؟

عملا شما نباید نیازی به sleep داشته باشید تا ماژولتون درست کار کنه،
معمولا ریست شدن ماژول به سه مورد خلاصه میشه
1- تغذیه نامناسب که باعث میشه هنگامی که ماژول تلاش میکنه به شبکه GSM متصل بشه، افت ولتاژ ایجاد میشه و ماژول ریست میشه (راه حلش هم استفاده از خازن های منطبق بر رفرنس دیزاین و بسیار نزدیک به ماژول، مسیر های پهن از رگولاتور تغذیه تا ماژول و استفاده از رگولاتور مناسب این اپلیکیشن هاست)

2- آنتن نامناسب، استفاده از آنتن GSM 2G نامناسب میتونه باعث بشه توان مصرفی ماژول برای اتباط با شبکه بالا بره و در نتیجه اتفاقات بالا تکرار بشه (البته با تغذیه خوب باز اینجا هم ریست نمیشه ماژول)

3- عدم استفاده از توابع تاخیر هنگام استفاده از مد Open CPU در حلقه تسک ها !