نمایش مقدارها در emWin جلسه اول

مثال پنجم از emwin نسخه ی ۵٫۳۰C
ژوئن 7, 2016
نمایش مقدارها در emwin جلسه دوم
ژوئن 15, 2016

نمایش مقدارها در emWin جلسه اول

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

توابع emwin خروجی های مختلفی از جمله دسیمال ، هگزادسیمال و باینری را پشتیبانی می کند.

همه ی توابع بدون استفاده از کتابخانه ی floating-point کار می کنند و توابع برای سرعت و سایز بهینه شده اند. البته ممکن است در روی سیستمی از sprint استفاده شود. با استفاده از این توابع که توضیح داده خواهد شد می توان در رام و زمان اجرا صرفه جویی کرد.

در ادامه توابع مربوطه و جزییات آنرا ، مورد بررسی قرار خواهیم داد.

۱:

void GUI_DispDec(I32 v, U8 Len);

تابع فوق یک مقدار دهدهی را با تعداد کاراکتر مشخص شده در موقعیت متن و فونت فعلی نمایش می دهد.

حداقل مقدار نمایش :  -۲۱۴۷۴۸۳۶۴۸

حداکثر مقدار نمایش :  ۲۱۴۷۴۸۳۶۴۷

len : تعداد کاراکتر برای نمایش مقدار. (حداکثر ۱۰)

مثال :

// Display time as minutes and seconds
GUI_DispString("Min:");
GUI_DispDec(Min, 2);
GUI_DispString(" Sec:");
GUI_DispDec(Sec, 2);

۲:

void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len);

این تابع همانند تابع فوق عمل می کند با این تفاوت که در این تابع موقعیت متن را توسط تابع تعیین می کنیم.

۳:

void GUI_DispDecMin(I32 v);

یک مقدار دهدهی را در موقعیت متن ، پنجره و فونت فعلی نمایش می دهد. طول کاراکتر های مقدار تعیین نمی شوند و حداقل طول به صورت اتوماتیک برای آن در نظر گرفته می شود.

۴:

void GUI_DispDecShift(I32 v, U8 Len, U8 Shift);

تابع فوق یک مقدار long را به صورت اعشاری و با تعداد مشخصی از کاراکتر ها در موقعیت متن و پنجره ی جاری نمایش می دهد.

v : مقدار برای نمایش

Len: تعداد دیجیت برای نمایش (حداکثر ۱۰)

Shift: تعداد دیجیت برای نمایش اعداد اعشاری

توجه داشته باشید در صورتیکه از اعشاری و علامت منفی استفاده می کنید حداکثر ۹ دیجیت می باشد.

۵:

void DispDecSpace(I32 v, U8 MaxDigits);

تابع فوق یک مقدار دهدهی را با تعداد کاراکتر مشخص شده در موقعیت متن و فونت فعلی نمایش می دهد. و صفر های بی اهمیت حذف می شوند (به جای آنها space قرار می گیرد)

۶:

void GUI_DispSDec(I32 v, U8 Len);

تابع فوق یک مقدار دهدهی را با تعداد کاراکتر مشخص شده و به همراه علامت ، در موقعیت متن و فونت فعلی نمایش می دهد.

۷:

void GUI_DispSDecShift(I32 v, U8 Len, U8 Shift);

تابع فوق یک مقدار دهدهی را با تعداد کاراکتر مشخص شده ، به صورت اعشاری و به همراه علامت ، در موقعیت متن و فونت فعلی نمایش می دهد.

حسین
حسین
من 28 سال سن دارم و رشته ی تحصیلی ام مهندسی برق قدرت بوده علاوه بر برق علاقمند به دنیای الکترونیک ، برنامه نویسی و طراحی وب هستم . این سایت رو برای آموزش رابط گرافیکی emWin راه اندازی کردم که بدون کمک شما جلو رفتن غیر ممکنه پس اگه آموزش یا مطالب مرتبطی دارید برام ایمیل کنید تا به اسم خودتون توی سایت منتشر بشه. hosseintomari@gmail.com
اشتراک
اطلاع از
guest

0 نظرات
بازخورد داخلی
مشاهده همه نظرات
0
برای بهبود مطالب، لطفاً نظر بدهید.x