دستورات توابع مثلثاتی و هیپربولیک به زبان C در میکرو ARM

دستورات توابع مثلثاتی و هیپربولیک

در این پست از مبحث آموزش برنامه نویسی و راه اندازی میکروکنترلرهای ARM به نحوه استفاده از توابع مثلثاتی و هیپربولیک می پردازیم. برای استفاده از این دستورات در برنامه نویسی باید کتابخانه ی <math.h> را با دستور زیر در برنامه خود فراخوانی کنید:

ما از قبل با این توابع آشنا شدیم و از آن ها برای استفاده های زیادی همچون به دست آوردن ضریب قدرت حجم های برداری توان زوایای کشش و…. استفاده می کردیم شما می توانید این توابع را با میکروکنترلر ARM و توسط نوشتن دستورات زیر در نرم افزار Keil محاسبه کنید.

دستورات توابع مثلثاتی و هیپربولیک به زبان C در میکرو ARM

دستور COS

این دستور به فرم کلی زیر است:

در این دستور x مقدار متغییر ورودی و K حاصل عملیات است.

مثال:

در مثال بالا مقدار x برابر 45 است با دستور cos مقدار کسینوس x محاسبه شده و در متغیر k ریخته می شود. بعد از انجام دستور مقدار k برابر با 707 می شود.

دستور sin

این دستور به فرم کلی زیر است:

در این دستور x مقدار متغیر ورودی و k حاصل عملیات است.

مثال:

در مثال بالا مقدار x برابر با 45 است با دستور sin مقدار سینوس x محاسبه شده و در متغیر k ریخته می شود بعد از انجام دستور مقدار k برابر با 1 می شود.

دستور tan

این دستور به فرم کلی زیر است:

در این دستور x مقدار متغیر ورودی و k حاصل عملیات است.

مثال:

در مثال بالا مقدار x برابر با 45 است با دستور tan مقدار تانژانت x محاسبه شده و در متغیر k ریخته می شود بعد از انجام دستور مقدار k برابر با 1 می شود.

دستور cot

در کامپایلر Keil دستوری برای به دست آوردن مقدار کتانژانت یک متغییر وجود ندارد. اما شما می توانید با معکوس کردن مقدار تانژانت یک متغیر مقدار کتانژانت آن را به دست آورید.

مثال:

توابع مثلثاتی هیپربولیک

از توابع برای توصیف حرکت موج در اجسام کشسان شکل خطوط انتقال نیروی برق، توزیع دما در پروژه های فلزی که لوله های داغ را سرد می کنند، خم های تعقیب و نظریه ی نسبت و … استفاده می شود. این توابع برای سینوس و کسینوس دارای تعریف زیر است:

(sinh) سینوس هیپر بولیک ex-e^x)/2)

(cosh) کسینوس هیپر بولیک ex +e^x)/2)

همانطور که می دانید تانژانت از تقسیم سینوس به کسینوس و کتانژانت از تقسیم کسینوس به سینوس هیپربولیک به دست می آید. در ادامه مجموعه توابع محاسبات، مربوط به موارد بالا که در نرم افزار Keil وجود دارد آورده شده است:

دستور cosh

این دستور به فرم کلی زیر است:

در این دستور x مقدار متغیر ورودی و k حاصل عملیات است.

مثال:

در مثال بالا مقدار x برابر با 45 است، با دستورات cosh مقدار کسینوس هیپربولیک x محاسبه شده و در متغیر x ریخته می شود، بعد از انجام دستور مقدار k برابر با (1746713552874254767,017398616703) می شود.

دستور sinh

این دستور به فرم کلی زیر است:

در این دستور x مقدار متغیر ورودی و k حاصل عملیات است.

مثال:

در مثال بالا مقدار x برابر با 45 است، با دستورات sinh مقدار سینوس هیپربولیک x محاسبه شده و در متغیر x ریخته می شود، بعد از انجام دستور مقدار k برابر با (1746713552874254767,017398616703) می شود.

دستور tanh

این دستور به فرم کلی زیر است:

در این دستور x مقدار متغیر ورودی و k حاصل عملیات است.

مثال:

در مثال بالا مقدار x برابر با 45 است، با دستورات tanh مقدار تانژانت هیپربولیک x محاسبه شده و در متغیر x ریخته می شود، بعد از انجام دستور مقدار k برابر با 1 می شود.

نکته : محدوده توابع هیپربولیک به شرح زیر می باشد:

sinhx : بین منفی و مثبت بی نهایت

coshx : از مثبت 1 تا مثبت بی نهایت

tanhx : از 1- تا 1+

نکته : شکل تابع coshx تقریبا مانند سهمی روبه بالاست و شکل sinhx تقریبا مثل یک تابع درجه 3 است.

همانطور که قبلا نیز گفته شد تانژانت از تقسیم سینوس به کسینوس و کتانژانت از تقسیم کسینوس به سینوس هیپربولیک به دست می آید.

مثال:

coth و tanh دو متغیر از نوع float یا … هستند.

 اطلاعات پروژه

 رمز فایل : www.electronics98.com (این مطلب فاقد فایل جهت دانلود است)

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 25 نوامبر 2014

4 دیدگاه

  1. با سلام به ازای یه مقدار ناچیزی یک لینک دانلود بگذارید هر چند علم بایدبه ددیگران عرضه کرد

  2. سلام دوست عزیز
    پست های آموزشی که درآن ها به آموزش برنامه نویسی میکروکنترلرهای AVR و ARM پرداخته می شود، با وجود اینکه به سختی و زمان زیاد جمع آوری می شوند اما کاملا رایگان ارائه می شوند و حتی برای مشاهده نمونه کدها برخلاف دیگر پروژه ها نیازی به ثبت نام در سایت هم نیست و از آنجا که تمام برنامه ها در خود متن پست ارائه می شوند فایل دیگری نمی ماند که بخواهیم به صورت لینک دانلود قرار دهیم.

  3. سلام و خسته نباشید.
    واقعا دست مریزاد.
    بهترین و شفافترین توضیحاتی که تا الان دیدم.
    و از اینکه رایگان در اختیار گذاشتین خدا خیرتون بده.
    هر چی تشکر کنم واقعا می ارزه.
    کاش میشد کاملتر بشه.
    اغا دمتون گرم.تنتون سالم

  4. سلام دوست عزیز
    از اینکه با پیام ها و نظرات گرم و محبت آمیز خود باعث دلگرمی و امیدواری هرچه بیشتر ما در این راه می شوید بسیار سپاسگذاریم و امیدواریم بتوانیم با ارائه مطالب مفید و حرفه ای تر ، در مباحث الکترونیک و برنامه نویسی رضایت هرچه بیشتر شما عزیزان را بدست آوریم.

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

 به کاربران و سایر اشخاص احترام بگذارید. پیام‌هایی که شامل محتوای توهین‌آمیز و کلمات نامناسب باشند، حذف می‌شوند.

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.