سلام
اینجا طبق تعریف و گفته خود شما در ویدیو آدرس بافر مبدا و مقصد باید قرار بگیره.سوالم اینه که پس چرا از ستاره * برای تعریف پوینتر استفاده نشده؟یعنی مثلا باید uint32_t *SrcAddress نوشته میشد.و توی کد خودمون هم (uint32_t *)&srcBuffer نوشته میشد.
hal_dma_start1094×453 59 KB
حل شده
راهنمایی در خصوص تعریف متغیرهای تابع برای برنامه نویسی میکروکنترلر
پاسخ منتخب
با سلام
اینکه در تعریف تابع متغیر به چه صورت باشه بستگی داره که از اون متغیر در داخل تابع چه استفاده ای میخواهیم بکنیم. دلیل اینکه ما داخل کد از پوینتر استفاده کرده ایم این هستش که ما یک متغیر داریم و میخواهیم داخلش مقادیری ذخیره کنیم و حالا هر موقع آدرس این متغیر رو میخواهیم با پوینتر این آدرس رو مشاهده یا استفاده میکنیم. ولی در داخل این تابعی که شما عکسش رو گذاشته اید، تابع فقط به آدرس متغیر (جایی که در حافظه ذخیره شده) نیاز دارد و برای همین مقدار عددی آدرس به ورودی تابع داده شده است. اگر تابع مثلا میخواست محاسباتی روی اون داده ها انجام بده حتما از پوینتر به متغیر استفاده میکرد که دسترسی به مقادیر هم داشته باشه.
پاسخها (۱)
پاسخ شما
برای پاسخ دادن به این سوال وارد شوید.
