سلام
کار تابع bitRead در برنامه نویسی آردوینو برگرداندن مقدار بیت مورد نظر است که 0 یا 1 است وبه شکل bitRead(x , n); بکار میرود که x عدد مورد نظر است و n شماره بیتی است که میخواهیم برگرداند
این دستور در کمپایلر xc8 برای mplab وجود ندارد ومیخواهم برایش زیر برنامه ای بنویسم ولی خطا میگیرم
1 راه استفاده از تابع ltoa یا itoa هست که عدد مورد نظر را در آرایه کاراکتری قرار دهد وشماره بیت را بخوانیم
راه دیگر آن عدد مورد نظر x را باتقسیمهای متوالی تا رسیدن به بیت مورد نظر انجام دهیم وباقیمانده را حساب کنیم
تا کنون نتیجه نگرفتم وخروجی که میدهد اشتباه است.
البته استفاده از تابع ltoa و itoa هم مشکل دیگری دارد که زمان اجرای برنامه تا چندین دقیقه طول میکشد در حالی که همین برنامه در آردوینو 1 ثانیه ای اجرا ونتیجه نمایش داده میشود
برنامه یا تابعی که نیاز است مثلاً result = bitread(x , n); که result بیت مورد نظر که 0 یا 1 است و n شماره آن بیت است که چندمی باشد و x هم عددی است که میخواهیم بیت آنرا بدست آوریم والبته این x یا دسیمال است یا هگز وباید برنامه آنرا تشخیص دهد
کار تابع bitRead در برنامه نویسی آردوینو برگرداندن مقدار بیت مورد نظر است که 0 یا 1 است وبه شکل bitRead(x , n); بکار میرود که x عدد مورد نظر است و n شماره بیتی است که میخواهیم برگرداند
این دستور در کمپایلر xc8 برای mplab وجود ندارد ومیخواهم برایش زیر برنامه ای بنویسم ولی خطا میگیرم
1 راه استفاده از تابع ltoa یا itoa هست که عدد مورد نظر را در آرایه کاراکتری قرار دهد وشماره بیت را بخوانیم
راه دیگر آن عدد مورد نظر x را باتقسیمهای متوالی تا رسیدن به بیت مورد نظر انجام دهیم وباقیمانده را حساب کنیم
تا کنون نتیجه نگرفتم وخروجی که میدهد اشتباه است.
البته استفاده از تابع ltoa و itoa هم مشکل دیگری دارد که زمان اجرای برنامه تا چندین دقیقه طول میکشد در حالی که همین برنامه در آردوینو 1 ثانیه ای اجرا ونتیجه نمایش داده میشود
برنامه یا تابعی که نیاز است مثلاً result = bitread(x , n); که result بیت مورد نظر که 0 یا 1 است و n شماره آن بیت است که چندمی باشد و x هم عددی است که میخواهیم بیت آنرا بدست آوریم والبته این x یا دسیمال است یا هگز وباید برنامه آنرا تشخیص دهد
دیدگاه