Toshkent axborot texnologiyalari universiteti samarqand filiali kompyuter tizimlari kafedrasi


-rasm xQueueReceive() API funksiyasi prototipi



Yüklə 153,03 Kb.
səhifə8/13
tarix26.04.2023
ölçüsü153,03 Kb.
#102908
1   ...   5   6   7   8   9   10   11   12   13
mus ish

20-rasm xQueueReceive() API funksiyasi prototipi
Listing 32 xQueuePeek() API funksiyasi prototipi
);
Machine Translated by Google
http://www.FreeRTOS.org
FreeRTOS 53
Mikrokontrollerlar uchun mo'ljallangan;
xTicksToWait
2. errQUEUE_EMPTY
Navbat boÿsh boÿlsa, navbatdagi maÿlumotlar mavjud boÿlishini kutish uchun vazifa Bloklangan holatda qolishi kerak boÿlgan maksimal vaqt.
Agar bloklash vaqti ko'rsatilgan bo'lsa (xTicksToWait 0 bo'lmagan), u holda chaqiruv topshirig'i navbatdagi ma'lumotlar mavjud bo'lishini kutish uchun Bloklangan holatga qo'yilgan bo'lishi mumkin, lekin bloklash muddati tugashidan oldin ma'lumotlar navbatdan muvaffaqiyatli o'qilgan. .
Ism/Qaytarilgan qiymat
pdPASS faqat navbatdagi ma'lumotlar muvaffaqiyatli o'qilgan taqdirdagina qaytariladi.
Hech qachon uxQueueMessagesWaiting() xizmatini uzilish tartibidan chaqirmang. Uning o'rnida uzilish xavfsizligi uxQueueMessagesWaitingFromISR() ishlatilishi kerak.
Parametr
1. pdPASS
Qaytarilgan qiymat
uxQueueMessagesWaiting() hozirda navbatda turgan elementlar sonini so'rash uchun ishlatiladi.
Tavsif
Qaytishning ikkita mumkin bo'lgan qiymati mavjud:
XTicksToWait ni portMAX_DELAY ga o‘rnatish, FreeRTOSConfig.h da INCLUDE_vTaskSuspend 1 ga o‘rnatilgan bo‘lsa, vazifani cheksiz kutishga olib keladi (vaqt tugashisiz).
uxQueueMessagesWaiting() API funksiyasi
9-jadval xQueueReceive() va xQueuePeek() funksiya parametrlari va qaytariladigan qiymatlar
Bloklash vaqti belgilanish davrlarida ko'rsatilgan, shuning uchun u ifodalaydigan mutlaq vaqt belgining chastotasiga bog'liq. TICK_RATE_MS doimiy porti millisekundlarda ko'rsatilgan vaqtni belgi bilan belgilangan vaqtga aylantirish uchun ishlatilishi mumkin.
Agar bloklash vaqti ko'rsatilgan bo'lsa (xTicksToWait nolga teng bo'lmagan), qo'ng'iroq qiluvchi vazifa boshqa vazifani kutish yoki ma'lumotlarni navbatga yuborish uchun uzilish uchun Bloklangan holatga qo'yilgan bo'ladi, lekin bloklash vaqti bu sodir bo'lgunga qadar tugadi.
Agar xTicksToWait nolga teng bo'lsa, navbat allaqachon bo'sh bo'lsa, xQueueReceive() va xQueuePeek() ikkalasi ham darhol qaytib keladi.
errQUEUE_EMPTY navbatdan ma'lumotlarni o'qib bo'lmaganda qaytariladi, chunki navbat allaqachon bo'sh edi.
© 2009 Richard Barry. Har qanday shaklda tarqatish yoki nashr etish qat'iyan man etiladi.
FreeRTOS
Mikrokontrollerlar uchun mo'ljallangan;
54
http://www.FreeRTOS.org
Parametr
Hozirda so'ralayotgan navbatlar soni. Agar 0 qaytarilsa, navbat bo'sh.
Ro'yxat 34 navbatga yozadigan topshiriqning bajarilishini ko'rsatadi. Bu topshiriqning ikkita nusxasi yaratiladi, biri doimiy ravishda 100 qiymatini navbatga yozadi, ikkinchisi esa doimiy ravishda 200 qiymatini bir xil navbatga yozadi. Vazifa parametri ushbu qiymatlarni har bir vazifa misoliga o'tkazish uchun ishlatiladi.
Tavsif
So'ralayotgan navbatning dastasi. Navbat tutqichi navbat yaratish uchun ishlatiladigan xQueueCreate() ga qo'ng'iroqdan qaytariladi.
Navbatga yuboriladigan topshiriqlarning ustuvorligi navbatdan qabul qilinadigan topshiriqning ustuvorligidan past. Bu shuni anglatadiki, navbat hech qachon bir nechta elementni o'z ichiga olmaydi, chunki ma'lumotlar navbatga yuborilishi bilanoq, qabul qiluvchi vazifa blokdan chiqariladi, yuborish vazifasini oldindan bo'shatadi va ma'lumotlarni o'chiradi - navbatni yana bo'sh qoldiradi.
Bu misol yaratilayotgan navbatni, bir nechta vazifalardan navbatga ma'lumotlar yuborilishini va navbatdan olingan ma'lumotlarni ko'rsatadi. Navbat uzoq turdagi ma'lumotlar elementlarini ushlab turish uchun yaratilgan. Navbatga yuboriladigan topshiriqlar blok vaqtini belgilamaydi, navbatdan qabul qilinadigan topshiriq esa ko'rsatadi.
10-jadval uxQueueMessagesWaiting() funksiyasi parametrlari va qaytish qiymati
Ism/Qaytarilgan qiymat
Qaytarilgan qiymat

Yüklə 153,03 Kb.

Dostları ilə paylaş:
1   ...   5   6   7   8   9   10   11   12   13




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin