منصوبے کے بارے میں

TinyUSB ایمبیڈڈ سسٹمز کے لیے ایک اوپن سورس کراس پلیٹ فارم USB ہوسٹ/ڈیوائس اسٹیک ہے۔ یہ میموری سیفٹی (کوئی ڈائنامک ایلوکیشن نہیں) اور تھریڈ سیفٹی (تمام انٹرپٹس کو غیر ISR ٹاسک فنکشنز میں مؤخر کیا جاتا ہے) کے لیے ڈیزائن کیا گیا ہے، جو 50 سے زیادہ MCU فیملیز میں پورٹیبلٹی، کم فٹ پرنٹ اور ریئل ٹائم کارکردگی پر زور دیتا ہے۔ اہم خصوصیات میں ISR ایونٹس کے لیے ایک مرکزی قطار کے ذریعے تھریڈ سیف آپریشن، بغیر ڈائنامک ایلوکیشن کے اسٹیٹک بفرز، بہت سی MCU فیملیز میں پورٹیبلٹی، اور CDC، HID، MSC، آڈیو اور ہوسٹ فعالیت کی سپورٹ شامل ہیں۔ یہ بیئر میٹل، FreeRTOS، RT-Thread اور Mynewt کے ساتھ کام کرتا ہے۔ ریپوزٹری لے آؤٹ میں docs، make اور cmake بلڈ سسٹمز کے ساتھ مثالیں، ہارڈویئر BSP اور MCU ڈرائیورز، تھرڈ پارٹی لائبریریاں، اسٹیک سورسز، ٹیسٹس (یونٹ، فزنگ، ہارڈویئر) اور اندرونی ٹولز شامل ہیں۔ ڈیوائس اسٹیک ڈائنامک USB ڈسکرپٹرز کے ذریعے متعدد کنفیگریشنز، کم پاور فنکشنز جیسے سسپنڈ، ریزوم اور ریموٹ ویک اپ، اور کلاسز جیسے آڈیو 1.0/2.0، BTH HCI، CDC، DFU، HID، پرنٹر، متعدد LUNs کے ساتھ MSC، MIDI، MTP/PTP، RNDIS/ECM/NCM نیٹ ورکنگ، USBTMC، UVC (کام جاری ہے)، وینڈر مخصوص کلاسز اور WebUSB کو سپورٹ کرتا ہے۔ حسب ضرورت کلاس ڈرائیورز usbd_app_driver_get_cb() کے ذریعے شامل کیے جا سکتے ہیں۔ ہوسٹ اسٹیک CDC-ACM، USB پر وینڈر سیریل (FTDI، CP210x، CH34x، PL2303)، HID، MSC، MIDI اور ملٹی لیول ہبز کو سپورٹ کرتا ہے۔ حسب ضرورت ہوسٹ ڈرائیورز usbh_app_driver_get_cb() کے ذریعے شامل کیے جا سکتے ہیں۔ پاور ڈیلیوری اسٹیک (USB Type-C کے ساتھ PD3.0) بہت ابتدائی مرحلے میں ہے، صرف ٹیسٹنگ کے لیے اور صرف STM32 G4 پر۔ ایک OS ایبسٹریکشن لیئر تمام ISR ایونٹس کو ایک مرکزی قطار میں ڈالتی ہے جو غیر ISR سیاق و سباق میں پروسیس ہوتی ہے، مشترکہ وسائل کے لیے سیمافورز/میوٹیکسز استعمال کرتی ہے۔ معاون OSes میں No OS، FreeRTOS، RT-Thread اور Mynewt شامل ہیں۔ معاون CPUs بہت سے مینوفیکچررز پر محیط ہیں جن میں Allwinner، Analog، Artery AT32، Bridgetek، Broadcom، Dialog، Espressif، Geehy، GigaDevice، HPMicro، Infineon، MicroChip، MindMotion، NordicSemi، Nuvoton، NXP، Puya، Raspberry Pi، Renesas، Silabs، Sony، ST STM32، TI، ValentyUSB اور WCH شامل ہیں، جن میں ڈیوائس، ہوسٹ اور ہائی اسپیڈ موڈز کی مختلف سپورٹ ہے۔ مفت فراہم کردہ ڈیولپمنٹ ٹولز میں IAR Build Tools، JetBrains CLion اور PVS-Studio اسٹیٹک اینالائزر شامل ہیں۔