சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதன அடுக்கு வழிமுறை கையேடு

USB சாதன அடுக்கு

விவரக்குறிப்புகள்

  • USB பதிப்பு: 1.5.1
  • வெளியான தேதி: ஜூலை 21, 2025
  • எளிமை SDK பதிப்பு: 2025.6.1

தயாரிப்பு முடிந்துவிட்டதுview

சிலிக்கான் லேப்ஸின் USB சாதன அடுக்கு பல்துறை மற்றும்
IoT திட்டங்களுக்கு பயன்படுத்த எளிதான USB இணைப்பு, எளிதாக்குகிறது
நெட்வொர்க் இணை செயலிகள் மற்றும் ஹோஸ்ட்களுக்கு இடையிலான தொடர்பு.

அம்சங்கள்

  • திறமையான USB சாதன அடுக்கு
  • IoT திட்டங்களுக்கு ஏற்றது
  • நெட்வொர்க் இணை செயலிகளுக்கு இடையேயான தகவல்தொடர்புக்கான ஆதரவு மற்றும்
    புரவலன்கள்

தயாரிப்பு பயன்பாட்டிற்கான வழிமுறைகள்

USB சாதன உள்ளமைவு

உங்கள் திட்டத்திற்கு ஏற்ப USB சாதன அமைப்புகளை உள்ளமைக்கவும்.
USB சாதன உள்ளமைவுப் பகுதியைப் பார்த்து தேவைகளைப் பூர்த்தி செய்யுங்கள்.
ஆவணத்தில்.

USB சாதன நிரலாக்க வழிகாட்டி

எப்படி என்பதைப் புரிந்துகொள்ள USB சாதன நிரலாக்க வழிகாட்டியைப் பின்பற்றவும்
பல்வேறு USB சாதனங்களை நிரல் செய்து தொடர்பு கொள்ளவும்
பயன்பாடுகள்.

USB சாதன வகுப்புகள்

USB சாதன வகுப்புகள் பிரிவு ஒரு ஓவரை வழங்குகிறதுview வேறுபட்ட
CDC ACM, HID, MSC SCSI, மற்றும் விற்பனையாளர் வகுப்பு போன்ற வகுப்புகள்.
உங்கள் சாதன செயல்பாட்டின் அடிப்படையில் பொருத்தமான வகுப்பு.

USB சாதனப் பிழைகாணல்

USB சாதனத்தில் ஏதேனும் சிக்கல்களை எதிர்கொண்டால், பார்க்கவும்
தீர்வுகள் மற்றும் பிழைத்திருத்தத்திற்கான USB சாதன சரிசெய்தல் பிரிவு.
குறிப்புகள்.

மைக்ரோசாப்ட் விண்டோஸ் ஓஎஸ் யூ.எஸ்.பி ஹோஸ்ட்

நீங்கள் Microsoft Windows OS USB உடன் USB சாதனத்தைப் பயன்படுத்துகிறீர்கள் என்றால்
தொகுப்பாளர், வழங்கப்பட்டுள்ள வழிகாட்டுதல்களைப் பின்பற்றுவதை உறுதிசெய்து கொள்ளுங்கள்
தடையற்ற ஒருங்கிணைப்புக்கான ஆவணங்கள்.

அடிக்கடி கேட்கப்படும் கேள்விகள்

கே: சில பொதுவான முன்னாள் என்னampநான் உருவாக்கக்கூடிய சாதனங்களின் எண்ணிக்கை
இந்த USB ஸ்டேக்கா?

A: USB ஸ்டேக் உங்களை இது போன்ற சாதனங்களை உருவாக்க அனுமதிக்கிறது
யூ.எஸ்.பி-க்கு-சீரியல் அடாப்டர்கள், எலிகள் அல்லது விசைப்பலகைகள், நீக்கக்கூடிய சேமிப்பிடம்
சாதனங்கள் மற்றும் தனிப்பயன் சாதனங்கள்.

கேள்வி: இதைப் பயன்படுத்துவதற்கு ஏதேனும் குறிப்பிட்ட மென்பொருள் தேவைகள் உள்ளதா?
USB சாதன அடுக்கு?

A: இணக்கமான மென்பொருளில் எளிமை SDK, எளிமை ஆகியவை அடங்கும்.
ஸ்டுடியோ, சிம்ப்ளிசிட்டி கமாண்டர், ஜி.சி.சி (குனு கம்பைலர் சேகரிப்பு),
ARM மற்றும் IAR EWARM க்கான IAR உட்பொதிக்கப்பட்ட பணிப்பெட்டி.

யுனிவர்சல் சீரியல் பஸ் யூ.எஸ்.பி.

யுனிவர்சல் சீரியல் பஸ் யூ.எஸ்.பி.

USB ஓவர்view முடிந்துவிட்டதுview
வெளியீட்டு குறிப்புகள் USB
விவரக்குறிப்புகள் மற்றும் அம்சங்கள்view
USB சாதன உள்ளமைவு முடிந்ததுview
USB சாதன நிரலாக்க வழிகாட்டி முடிந்ததுview
USB சாதன வகுப்புகள் முடிந்துவிட்டனview CDC ACM வகுப்பு முடிந்ததுview HID வகுப்பு முடிந்ததுview MSC SCSI வகுப்பு முடிந்ததுview விற்பனையாளர் வகுப்பு முடிந்ததுview
USB API API ஆவணம் USB சாதன API USB சாதனம் ACM API a sl_usbd_cdc_ cm_line_coding_t sl_usbd_cdc_acm_callbacks_t USB சாதனம் CDC API a sl_usbd_cdc_subcl ss_driver_t USB சாதன கோர் API
sl_usbd_device_config_t sl_usbd_setup_req_t
ஒரு sl_usbd_cl ss_driver_t USB சாதன HID API
sl_usbd_hid_callbacks_t USB சாதன MSC API
ஒரு sl_usbd_msc_subcl ss_driver_t USB சாதனம் MSC SCSI API
sl_usbd_msc_scsi_callbacks_t

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

1/174

யுனிவர்சல் சீரியல் பஸ் யூ.எஸ்.பி.
ஒரு sl_usbd_msc_scsi_lun_ பை
sl_usbd_msc_scsi_lun_தகவல் sl_usbd_msc_scsi_lun
USB சாதன விற்பனையாளர் API sl_usbd_vendor_callbacks_t
API ஆவணம் USB சாதனப் பிழைகாணல்
முடிந்துவிட்டதுview மைக்ரோசாப்ட் விண்டோஸ் ஓஎஸ் யூ.எஸ்.பி ஹோஸ்ட்
முடிந்துவிட்டதுview

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

2/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
USB சாதனம்
கணினி அமைப்புகளின் வரலாற்றில் USB மிகவும் வெற்றிகரமான தொடர்பு இடைமுகங்களில் ஒன்றாகும், மேலும் இது கணினி சாதனங்களை இணைப்பதற்கான நடைமுறை தரநிலையாகும். சிலிக்கான் லேப்ஸ் USB சாதன அடுக்கு என்பது உட்பொதிக்கப்பட்ட அமைப்புகளுக்காக பிரத்யேகமாக வடிவமைக்கப்பட்ட ஒரு USB சாதன தொகுதி ஆகும். சிலிக்கான் லேப்ஸின் தரம், அளவிடுதல் மற்றும் நம்பகத்தன்மையுடன் அடிப்படையிலிருந்து உருவாக்கப்பட்டது, இது USB 2.0 விவரக்குறிப்புக்கு இணங்க கடுமையான சரிபார்ப்பு செயல்முறையை கடந்துவிட்டது. இந்த ஆவணம் சிலிக்கான் லேப்ஸ் USB சாதன அடுக்கை எவ்வாறு துவக்குவது, தொடங்குவது மற்றும் பயன்படுத்துவது என்பதை விவரிக்கிறது. இது பல்வேறு உள்ளமைவு மதிப்புகள் மற்றும் அவற்றின் பயன்பாடுகளை விளக்குகிறது. இதில் ஒரு ஓவர் அடங்கும்view தொழில்நுட்பம், உள்ளமைவு சாத்தியக்கூறுகளின் வகைகள், செயல்படுத்தல் நடைமுறைகள் மற்றும் எடுத்துக்காட்டுகள்ampகிடைக்கக்கூடிய ஒவ்வொரு வகுப்பிற்கும் வழக்கமான பயன்பாட்டின் அளவுகள்.
யூ.எஸ்.பி கருத்துக்களை விரைவாகப் புரிந்துகொள்ள உதவும் வகையில், ஆவணங்கள் பல எடுத்துக்காட்டுகளைக் கொண்டுள்ளன.ampஅடிப்படை செயல்பாடுகளைக் கொண்ட USB இன் லெஸ். இவை எ.கா.amples உங்களுக்கு சாதனங்களை விரைவாக உருவாக்க அனுமதிக்கும் ஒரு கட்டமைப்பை வழங்கும். இந்த முன்னாள்ampஇதில் அடங்கும்:
USB-to-serial அடாப்டர் (தொடர்பு சாதன வகுப்பு) சுட்டி அல்லது விசைப்பலகை (மனித இடைமுக சாதன வகுப்பு) நீக்கக்கூடிய சேமிப்பக சாதனம் (மாஸ் ஸ்டோரேஜ் வகுப்பு) தனிப்பயன் சாதனம் (விற்பனையாளர் வகுப்பு)
பின்வருபவை ஓவர்view ஆவணப் பிரிவுகளில்:
விவரக்குறிப்புகள் மற்றும் அம்சங்கள் USB சாதன உள்ளமைவு USB சாதன நிரலாக்க வழிகாட்டி USB சாதன வகுப்புகள்
CDC ACM வகுப்பு HID வகுப்பு MSC SCSI வகுப்பு விற்பனையாளர் வகுப்பு USB சாதனம் மைக்ரோசாப்ட் விண்டோஸ் OS USB ஹோஸ்டில் உள்ள சிக்கல்களைத் தீர்த்தல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

3/174

USB
USB

USB பதிப்பு 1.5.1 ஜூலை 21, 2025 – வெளியீட்டு குறிப்புகள்
எளிமை SDK பதிப்பு 2025.6.1
சிலிக்கான் லேப்ஸின் திறமையான USB சாதன அடுக்கு, நெட்வொர்க் இணை செயலிகள் மற்றும் ஹோஸ்ட்களுக்கு இடையேயான தொடர்பு உட்பட, IoT திட்டங்களுக்கு ஏற்ற பல்துறை, பயன்படுத்த எளிதான USB இணைப்பை வழங்குகிறது. முந்தைய வெளியீடுகளுக்கு இங்கே கிளிக் செய்யவும்.
வெளியீட்டு சுருக்கம்
முக்கிய அம்சங்கள் | API மாற்றங்கள் | பிழை திருத்தங்கள் | சிப் இயக்குதல்
முக்கிய அம்சங்கள்
அடிப்படை தள மாற்றங்கள் மட்டுமே.
API மாற்றங்கள்
இல்லை.
பிழை திருத்தங்கள்
இல்லை.
சிப் செயல்படுத்தல்
இல்லை.
முக்கிய அம்சங்கள்
புதிய அம்சங்கள் | மேம்பாடுகள் | அகற்றப்பட்ட அம்சங்கள் | நிறுத்தப்பட்ட அம்சங்கள்
புதிய அம்சங்கள்
இல்லை.
மேம்பாடுகள்
அடிப்படை தள மாற்றங்கள் மட்டுமே.
அகற்றப்பட்ட அம்சங்கள்
இல்லை.
நீக்கப்பட்ட அம்சங்கள்
இல்லை.
API மாற்றங்கள்
புதிய APIகள் | மாற்றியமைக்கப்பட்ட APIகள் | அகற்றப்பட்ட APIகள் | நிறுத்தப்பட்ட APIகள்
புதிய APIகள்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

4/174

USB
இல்லை.
மாற்றியமைக்கப்பட்ட APIகள்
இல்லை.
அகற்றப்பட்ட APIகள்
இல்லை.
நிறுத்தப்பட்ட APIகள்
இல்லை.
பிழை திருத்தங்கள்
இல்லை.
சிப் செயல்படுத்தல்
இல்லை.
விண்ணப்பம் Example மாற்றங்கள்
புதிய முன்னாள்ampலெஸ் | மாற்றியமைக்கப்பட்ட முன்னாள்ampலெஸ் | நீக்கப்பட்டது முன்னாள்ampலெஸ் | நிராகரிக்கப்பட்ட முன்னாள்ampலெஸ்
புதிய முன்னாள்ampலெஸ்
இல்லை.
மாற்றியமைக்கப்பட்ட முன்னாள்ampலெஸ்
இல்லை.
நீக்கப்பட்ட முன்னாள்ampலெஸ்
இல்லை.
நிறுத்தப்பட்ட முன்னாள்ampலெஸ்
இல்லை.
வெளியீட்டு மாற்றங்களின் தாக்கம்
தாக்க அறிக்கைகள் | இடம்பெயர்வு வழிகாட்டி
தாக்க அறிக்கைகள்
இல்லை.
இடம்பெயர்வு வழிகாட்டி
இல்லை.
அறியப்பட்ட சிக்கல்கள் மற்றும் வரம்புகள்
இல்லை.
இந்த வெளியீட்டைப் பயன்படுத்துதல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

5/174

USB

வெளியீட்டில் என்ன இருக்கிறது? | இணக்கமான மென்பொருள் | நிறுவல் மற்றும் பயன்பாடு | உதவி மற்றும் கருத்து

வெளியீட்டில் என்ன இருக்கிறது?

USB சாதன அடுக்கு பயன்பாடு முன்னாள்ampலெஸ்
இணக்கமான மென்பொருள்

மென்பொருள்
சிம்ப்ளிசிட்டி SDK சிம்ப்ளிசிட்டி ஸ்டுடியோ சிம்ப்ளிசிட்டி கமாண்டர் GCC தி குனு கம்பைலர் கலெக்‌ஷன்) IAR உட்பொதிக்கப்பட்ட வொர்க்பெஞ்ச் ARM IAR EWARM

இணக்கமான பதிப்பு அல்லது மாறுபாடு
2025.6.0 5.11.0 1.18.2 (சிம்பிளிசிட்டி ஸ்டுடியோவுடன் வழங்கப்படுகிறது) 12.2.1 (சிம்பிளிசிட்டி ஸ்டுடியோவுடன் வழங்கப்படுகிறது) 9.40.1 (சிம்பிளிசிட்டி ஸ்டுடியோவுடன் வழங்கப்படுகிறது)

நிறுவல் மற்றும் பயன்பாடு

உங்கள் வளர்ச்சியைத் தொடங்க எங்கள் பக்கத்தைப் பார்க்கவும்:
USB சாதன நிரலாக்க வழிகாட்டி. API ஆவணம்.
செக்யூர் வால்ட் ஒருங்கிணைப்பு பற்றிய தகவலுக்கு, செக்யூர் வால்ட்டைப் பார்க்கவும்.
கிழிview பாதுகாப்பு மற்றும் மென்பொருள் ஆலோசனை அறிவிப்புகள் மற்றும் உங்கள் அறிவிப்பு விருப்பங்களை நிர்வகிக்கவும்:
ò https://community.silabs.com/ க்குச் செல்லவும். ó உங்கள் கணக்குச் சான்றுகளுடன் உள்நுழையவும். ô உங்கள் தொழில்முறை சேவையைக் கிளிக் செய்யவும்.file பக்கத்தின் மேல் வலது மூலையில் உள்ள ஐகானைக் கிளிக் செய்யவும்.
õ கீழ்தோன்றும் மெனுவிலிருந்து அறிவிப்புகளைத் தேர்ந்தெடுக்கவும். ö அறிவிப்புகள் பிரிவில், எனது தயாரிப்பு அறிவிப்புகள் தாவலுக்குச் சென்று மீண்டும்view வரலாற்று பாதுகாப்பு மற்றும் மென்பொருள் ஆலோசனை
அறிவிப்புகள்
÷ உங்கள் விருப்பங்களை நிர்வகிக்க, எந்த தயாரிப்பு புதுப்பிப்புகள் மற்றும் ஆலோசனைகளை நீங்கள் தனிப்பயனாக்க அறிவிப்புகளை நிர்வகி தாவலைப் பயன்படுத்தவும்.
பெறும்.
பரிந்துரைக்கப்பட்ட உள்ளமைவு அமைப்புகளுக்கு, இங்கே பார்க்கவும்.
இந்த வெளியீட்டில் உள்ள மென்பொருளைப் பற்றி மேலும் அறிய, எங்கள் ஆன்லைன் ஆவணங்களைப் பார்க்கவும்.
உதவி மற்றும் கருத்து

சிலிக்கான் ஆய்வக ஆதரவைத் தொடர்பு கொள்ளவும். பதில்களைப் பெற எங்கள் Ask AI கருவியைப் பயன்படுத்த, இந்தப் பக்கத்தின் மேலே உள்ள தேடல் புலத்தைப் பார்க்கவும்.

குறிப்பு: Ask AI என்பது சோதனை முயற்சியாகும்.

எங்கள் டெவலப்பர் சமூகத்திடமிருந்து உதவி பெறுங்கள்.
SDK வெளியீடு மற்றும் பராமரிப்புக் கொள்கை
எங்கள் SDK வெளியீடு மற்றும் பராமரிப்பு கொள்கையைப் பார்க்கவும்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

6/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
விவரக்குறிப்புகள்
"யுனிவர்சல் சீரியல் பஸ் விவரக்குறிப்பு திருத்தம் 2.0" உடன் இணங்குகிறது "இடைமுக சங்க விளக்க பொறியியல் மாற்ற அறிவிப்பு (ECN)" ஐ செயல்படுத்துகிறது பரிமாற்ற வகைகள்
கட்டுப்பாடு மொத்த குறுக்கீடு USB வகுப்புகள் தொடர்பு சாதன வகுப்பு (CDC) சுருக்க கட்டுப்பாட்டு மாதிரி (ACM) மனித இடைமுக சாதனம் (HID) நிறை சேமிப்பு வகுப்பு (MSC) விற்பனையாளர்-குறிப்பிட்ட வகுப்பு கட்டமைப்பு
அம்சங்கள்
நினைவக தடத்தை குறைக்க தேவையான அம்சங்களை மட்டுமே சேர்க்க அளவிடக்கூடியது முழு வேகத்தை ஆதரிக்கிறது (12 Mbit/s) ஆதரிக்கிறது கூட்டு (பல-செயல்பாட்டு) சாதனங்களை ஆதரிக்கிறது பல-கட்டமைப்பு சாதனங்களை ஆதரிக்கிறது USB சக்தி சேமிப்பு செயல்பாடுகளை ஆதரிக்கிறது (சாதனம் இடைநிறுத்தப்பட்டு மீண்டும் தொடங்கு) மைக்ரோயம் OS இல் மாஸ் ஸ்டோரேஜ் வகுப்பை முழுமையாக ஒருங்கிணைக்கிறது File பல்வேறு OSகளுடன் வேலை செய்யும் வகையில் CMSIS-RTOS2 சுருக்க அடுக்குடன் உருவாக்கப்பட்ட சிஸ்டம் தொகுதி. சிலிக்கான் லேப்ஸ் GSDK FreeRTOS மற்றும் மைக்ரோயம் OS போர்ட்களுடன் வருகிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

7/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview

USB சாதன உள்ளமைவு

இந்தப் பிரிவு சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதனத்தை எவ்வாறு கட்டமைப்பது என்பதைப் பற்றி விவாதிக்கிறது. பின்வருமாறு மூன்று குழுக்கள் உள்ளமைவு அளவுருக்கள் உள்ளன:
USB சாதன மைய கட்டமைப்பு USB சாதன தகவல் கட்டமைப்பு USB சாதன வன்பொருள் கட்டமைப்பு
USB சாதன மைய உள்ளமைவு
sl_usbd_core_config.h இல் அமைந்துள்ள #defines தொகுப்பின் மூலம் தொகுக்கும் நேரத்தில் சிலிக்கான் லேப்ஸ் USB சாதனத்தை உள்ளமைக்க முடியும். file. USB சாதனம் முடிந்தவரை #defines ஐப் பயன்படுத்துகிறது, ஏனெனில் அவை எந்த அம்சங்கள் இயக்கப்பட்டுள்ளன என்பதைப் பொறுத்து தொகுக்கும் நேரத்தில் குறியீடு மற்றும் தரவு அளவுகளை அளவிட அனுமதிக்கின்றன. இது சிலிக்கான் லேப்ஸ் USB சாதனத்தின் படிக்க-மட்டும் நினைவகம் (ROM) மற்றும் சீரற்ற-அணுகல் நினைவகம் (RAM) தடயங்களை உங்கள் பயன்பாட்டின் தேவைகளின் அடிப்படையில் சரிசெய்ய அனுமதிக்கிறது.
பரிந்துரைக்கப்படுகிறது: உள்ளமைவு செயல்முறையை இயல்புநிலை மதிப்புகளுடன் (தடிமனான எழுத்துக்களில் சிறப்பிக்கப்பட்டுள்ளது) தொடங்கவும்.
கீழே உள்ள பிரிவுகள் டெம்ப்ளேட் உள்ளமைவில் உள்ள வரிசையின் அடிப்படையில் ஒழுங்கமைக்கப்பட்டுள்ளன. file, sl_usbd_core_config.h.
மைய உள்ளமைவு வகுப்புகள் உள்ளமைவு
மைய கட்டமைப்பு
அட்டவணை – USB சாதன மைய உள்ளமைவு மாறிலிகள்

நிலையான விளக்கம்

இயல்புநிலை மதிப்பு

SL_USBD_TA SK_STACK_ அளவு

USBD மையப் பணியின் பைட்டுகளில் அடுக்கு அளவை உள்ளமைக்கிறது.

4096

SL_USBD_TA SK_PRIORIT Y

USBD மையப் பணியின் முன்னுரிமையை உள்ளமைக்கிறது. இது ஒரு CMSIS-RTOS2 முன்னுரிமை.

முன்னுரிமை உயர்

SL_USBD_A UTO_START _USB_DEVIC E

இயக்கப்பட்டால், கர்னல் தொடங்கப்பட்டதும், அந்த 1 USBD கோர் பணி முதல் முறையாக திட்டமிடப்பட்டதும் USB சாதனம் தானாகவே தொடங்கும். முடக்கப்பட்டால், USB ஹோஸ்டால் கண்டறியத் தயாராக இருக்கும்போது உங்கள் பயன்பாடு sl_usbd_core_start_device() ஐ அழைக்க வேண்டும்.

SL_USBD_C sl_usbd_add_configuration() வழியாக சேர்க்கப்படும் மொத்த உள்ளமைவுகளின் எண்ணிக்கை

1

ONFIGURATI செயல்பாடு.

ON_QUANTI இல்

TY

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

8/174

முடிந்துவிட்டதுview

நிலையான
SL_USBD _INTERF ACE_QU ஆன்டிட்டி
SL_USBD _ALT_INT ERFACE_ QUANTI
TY
SL_USBD _இடைமுகம் ACE_GR
OUP_QU
ஆன்டிட்டி
SL_USBD _DESCRI
PTOR_Q பற்றி
UANTITY
SL_USBD _STRING _QUANTI
TY
SL_USBD _OPEN_E NDPOIN TS_QUA NTITY

விளக்கம் உங்கள் அனைத்து உள்ளமைவுகளுக்கும் சேர்க்கப்பட வேண்டிய மொத்த USB இடைமுகங்களின் எண்ணிக்கை. இது பயன்படுத்தப்படும் வகுப்பு(கள்) ஐப் பொறுத்தது. ஒரு வகுப்பு நிகழ்வுக்கு எத்தனை இடைமுகங்கள் தேவை என்பது பற்றிய கூடுதல் தகவலுக்கு, உங்கள் வகுப்பின்(கள்) “மையத்திலிருந்து வளத் தேவைகள்” பகுதியைப் பார்க்கவும்.
உங்கள் அனைத்து உள்ளமைவுகளுக்கும் சேர்க்கப்பட வேண்டிய USB மாற்று இடைமுகங்களின் மொத்த எண்ணிக்கை. இது பயன்படுத்தப்படும் வகுப்பு(கள்) ஐப் பொறுத்தது. இந்த மதிப்பு எப்போதும் SL_USBD_INTERFACE_QUANTITY ஐ விட சமமாகவோ அல்லது அதிகமாகவோ இருக்க வேண்டும். ஒரு வகுப்பு நிகழ்வுக்கு எத்தனை மாற்று இடைமுகங்கள் தேவை என்பது பற்றிய கூடுதல் தகவலுக்கு, உங்கள் வகுப்பு(கள்) இன் “மையத்திலிருந்து வளத் தேவைகள்” என்ற பகுதியைப் பார்க்கவும்.
உங்கள் அனைத்து உள்ளமைவுகளுக்கும் சேர்க்கப்படும் USB இடைமுகக் குழுக்களின் மொத்த எண்ணிக்கை. இது பயன்படுத்தப்படும் வகுப்பு(கள்) ஐப் பொறுத்தது. எத்தனை இடைமுகக் குழுக்களுக்கு ஒரு வகுப்பு நிகழ்வு தேவைப்படுகிறது என்பது பற்றிய கூடுதல் தகவலுக்கு, உங்கள் வகுப்பின்(கள்) “மையத்திலிருந்து வளத் தேவைகள்” பகுதியைப் பார்க்கவும்.
உங்கள் அனைத்து உள்ளமைவுகளுக்கும் சேர்க்கப்படும் எண்ட்பாயிண்ட் டிஸ்கிரிப்டர்களின் மொத்த எண்ணிக்கை. இது பயன்படுத்தப்படும் வகுப்பு(கள்) ஐப் பொறுத்தது. ஒரு வகுப்பு நிகழ்வுக்கு எத்தனை எண்ட்பாயிண்ட் டிஸ்கிரிப்டர்கள் தேவை என்பது பற்றிய கூடுதல் தகவலுக்கு, உங்கள் வகுப்பின்(கள்) “கோரிலிருந்து வளத் தேவைகள்” பிரிவில் உள்ள “எண்ட்பாயிண்ட்களின் எண்ணிக்கை” ஐப் பார்க்கவும். கட்டுப்பாட்டு முனைப்புள்ளிகளை இங்கே கருத்தில் கொள்ள வேண்டிய அவசியமில்லை என்பதை நினைவில் கொள்ளவும். USB சரங்களின் மொத்த எண்ணிக்கை. அளவை பூஜ்ஜியமாக அமைப்பது அம்சத்தை முடக்கும். இதை முடக்குவது சாதனம் பயன்பாட்டிலிருந்து அனுப்பப்பட்ட எந்த USB விளக்க சரங்களையும் சேமிக்காமல் போகச் செய்யும். இதன் பொருள் ஹோஸ்ட் விளக்க சரங்களை (உற்பத்தியாளர் மற்றும் தயாரிப்பு பெயர் போன்றவை) மீட்டெடுக்க முடியாது. உள்ளமைவுக்கு திறந்த எண்ட்பாயிண்ட்களின் மொத்த எண்ணிக்கை. கட்டுப்பாட்டு பரிமாற்றங்களுக்கு ஒரு சாதனத்திற்கு குறைந்தது இரண்டு திறந்த எண்ட்பாயிண்ட்கள் தேவை, ஆனால் நீங்கள் பயன்படுத்தப்படும் வகுப்பு(கள்) இன் எண்ட்பாயிண்ட்களையும் சேர்க்க வேண்டும். ஒரு வகுப்பு நிகழ்வுக்கு எத்தனை திறந்த எண்ட்பாயிண்ட்கள் தேவை என்பது பற்றிய கூடுதல் தகவலுக்கு, உங்கள் வகுப்பின்(கள்) “கோரிலிருந்து வளத் தேவைகள்” பிரிவில் உள்ள “எண்ட்பாயிண்ட்களின் எண்ணிக்கை” ஐப் பார்க்கவும்.

இயல்புநிலை மதிப்பு
10 10
2
20 30 20

வகுப்புகள் உள்ளமைவு
வகுப்புகள் குறிப்பிட்ட தொகுத்தல் நேர உள்ளமைவுகளைக் கொண்டுள்ளன. மேலும் தகவலுக்கு USB சாதன வகுப்புகளைப் பார்க்கவும்.
USB சாதனத் தகவல் உள்ளமைவு

sl_usbd_device_config.h உள்ளமைவு file உங்கள் சாதனம் தொடர்பான அடிப்படைத் தகவல்களை, அதாவது விற்பனையாளர்/தயாரிப்பு ஐடி, சாதன சரங்கள் போன்றவற்றை அமைக்க, compile-time #define-s ஐ மீண்டும் ஒருங்கிணைக்கிறது. கீழே உள்ள அட்டவணை இந்த உள்ளமைவில் கிடைக்கும் ஒவ்வொரு தகவல் உள்ளமைவு வரையறையையும் விவரிக்கிறது. file.

அட்டவணை - USB சாதனத் தகவல் உள்ளமைவு வரையறுக்கிறது

நிலையான
SL_USBD_DEVIC E_VENDOR_ID
SL_USBD_DEVIC E_PRODUCT_ID

விளக்கம் USB செயல்படுத்துபவர்கள் மன்றத்தால் வழங்கப்பட்ட உங்கள் விற்பனையாளர் அடையாள எண். விற்பனையாளர் ஐடியை நீங்கள் எவ்வாறு பெறலாம் என்பது பற்றிய கூடுதல் தகவலுக்கு, http://www.usb.org/developers/vendor/ ஐப் பார்க்கவும். உங்கள் தயாரிப்பு அடையாள எண்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

9/174

முடிந்துவிட்டதுview

நிலையான

விளக்கம்

உங்கள் சாதனத்தின் SL_USBD_DEVICE_RELEASE வெளியீட்டு எண். _NUMBER

உங்கள் சாதனத்தின் உற்பத்தியாளரை விவரிக்கும் SL_USBD_DEVICE_MANUFA சரம். இந்த உள்ளமைவு புறக்கணிக்கப்படும் போது

CTURER_STRING க்கு

கட்டமைப்பு SL_USBD_STRING_QUANTITY 0 ஆக அமைக்கப்பட்டுள்ளது.

உங்கள் தயாரிப்பை விவரிக்கும் SL_USBD_DEVICE_PRODUC சரம். உள்ளமைவு இருக்கும்போது இந்த உள்ளமைவு புறக்கணிக்கப்படும்

டி_ஸ்ட்ரிங்

SL_USBD_STRING_QUANTITY 0 ஆக அமைக்கப்பட்டுள்ளது.

SL_USBD_DEVICE_SERIAL_N உங்கள் சாதனத்தின் சீரியல் எண்ணைக் கொண்ட சரம். இந்த உள்ளமைவு புறக்கணிக்கப்படும் போது

உம்பர்_ஸ்ட்ரிங்

கட்டமைப்பு SL_USBD_STRING_QUANTITY 0 ஆக அமைக்கப்பட்டுள்ளது.

உங்கள் சாதனத்தின் சரங்களின் மொழியின் SL_USBD_DEVICE_LANGUA அடையாள எண். சாத்தியமான மதிப்புகள்:
GE_ID

– SL_USBD_LANG_ID_ARABIC_சவுதி_அரேபியா

– SL_USBD_LANG_ID_சீன_தைவான்

– SL_USBD_LANG_ID_ENGLISH_US

– SL_USBD_LANG_ID_ENGLISH_UK

– SL_USBD_LANG_ID_FRENCH

– SL_USBD_LANG_ID_ஜெர்மன்

– SL_USBD_LANG_ID_கிரேக்கம்

– SL_USBD_LANG_ID_ITALIAN

– SL_USBD_LANG_ID_போர்ச்சுகல்

– SL_USBD_LANG_ID_SANSKRIT

SL_USBD_STRING_QUANTITY உள்ளமைவு 0 ஆக அமைக்கப்பட்டால் இந்த உள்ளமைவு புறக்கணிக்கப்படும்.

USB சாதன வன்பொருள் உள்ளமைவு

நீங்கள் பயன்படுத்தும் சிலிக்கான் லேப்ஸ் சாதனத்தைப் பொறுத்து, USB VBUS சென்ஸ் சிக்னலுக்காக கட்டமைக்க GPIO பின் மற்றும் போர்ட் உங்களிடம் இருக்கலாம். உள்ளமைவு வரையறைகள் sl_usbd_hardware_config.h தலைப்பில் உள்ளன. file.

நிலையான
SL_USBD_DRIVER_VBUS_SENSE_போர்ட் SL_USBD_DRIVER_VBUS_SENSE_PIN

விளக்கம்
உங்கள் போர்டில் உள்ள USB VBUS சென்ஸ் சிக்னலுக்கான GPIO போர்ட். உங்கள் போர்டில் உள்ள USB VBUS சென்ஸ் சிக்னலுக்கான GPIO பின்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

10/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
USB சாதன நிரலாக்க வழிகாட்டி
இந்தப் பிரிவு USB சாதன தொகுதியை எவ்வாறு பயன்படுத்துவது என்பதை விளக்குகிறது.
USB சாதன தொகுதியின் ஆரம்ப அமைப்பு
இந்தப் பிரிவு USB சாதன தொகுதியைத் துவக்குவதற்கும், ஒரு சாதனத்தைச் சேர்ப்பதற்கும், தயாரிப்பதற்கும், தொடங்குவதற்கும் தேவையான அடிப்படை படிகளை விவரிக்கிறது. USB சாதன தொகுதியைத் துவக்குதல் USB சாதன மையத்தைத் துவக்குதல் aCl ss(es) ஐத் துவக்குதல் உங்கள் USB சாதனத்தைச் சேர்த்தல் உங்கள் USB சாதனத்தை உருவாக்குதல் உள்ளமைவுகளைச் சேர்த்தல் USB செயல்பாடுகளைச் சேர்த்தல் உங்கள் USB சாதனத்தைத் தொடங்குதல்
நிகழ்வு ஹூக் செயல்பாடுகள்
USB சாதன தொகுதியைத் துவக்குதல்
USB சாதன மையத்தைத் துவக்குதல்
a sl_usbd_core_init() என்ற செயல்பாட்டை c lling செய்வதன் மூலம் B சாதன தொகுதி மையத்தை வரிசைப்படுத்துவதன் மூலம் தொடங்கவும். கீழே உள்ள எடுத்துக்காட்டு c lling sl_usbd_core_init() என்பதைக் காட்டுகிறது.
Example – sl_usbd_core_init() ஐ அழைக்கிறது
sl_status_t status; status = sl_usbd_core_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
வகுப்பு(களை) துவக்குதல்
USB சாதன தொகுதி மையத்தை துவக்கிய பிறகு, நீங்கள் பயன்படுத்த விரும்பும் ஒவ்வொரு வகுப்பையும் துவக்க வேண்டும். மேலும் தகவலுக்கு உங்கள் acl ss(es) இன் "நிரலாக்க வழிகாட்டி" பகுதியைப் பார்க்கவும்.
உங்கள் USB சாதனத்தை உருவாக்குதல்
உள்ளமைவுகளைச் சேர்த்தல்
உங்கள் சாதனத்தை வெற்றிகரமாக துவக்கிய பிறகு, புதிய உள்ளமைவுடன் தொடங்கி, USB செயல்பாடுகளைச் சேர்க்கத் தொடங்கலாம். ஒரு சாதனத்தில் குறைந்தது ஒரு உள்ளமைவு இருக்க வேண்டும். உள்ளமைவு(களை) சேர்க்க, செயல்பாட்டை aa sl_usbd_core_ dd_configur tion() செயல்பாட்டை அழைக்கவும். நீங்கள் சேர்க்க விரும்பும் ஒவ்வொரு உள்ளமைவிற்கும் இந்த செயல்பாடு அழைக்கப்பட வேண்டும். exampகீழே உள்ள le முழு வேகத்தை எவ்வாறு சேர்ப்பது என்பதைக் காட்டுகிறது.
Example – உங்கள் சாதனத்தில் உள்ளமைவுகளைச் சேர்த்தல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

11/174

முடிந்துவிட்டதுview

sl_status_t நிலை; uint8_t config_nbr_fs;

/* சாதனத்தில் முழு வேக உள்ளமைவைச் சேர்த்தல். */

நிலை = sl_usbd_core_add_configuration(0,

/* உள்ளமைவுக்கு சிறப்பு பண்புக்கூறுகள் எதுவும் இல்லை. */

100u,

/* அதிகபட்ச மின் நுகர்வு: 100mA.

*/

SL_USBD_DEVICE_SPEED_FULL,

/* முழு வேக உள்ளமைவு.

*/

“Ex ஐ உள்ளமைக்கவும்amp"முழு வேக கட்டமைப்பு",

&config_nbr_fs);

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

USB செயல்பாடுகளைச் சேர்த்தல்
உங்கள் சாதனத்தில் குறைந்தபட்சம் ஒரு உள்ளமைவை வெற்றிகரமாகச் சேர்த்த பிறகு, உங்கள் சாதனத்தில் இடைமுகங்கள் மற்றும் இறுதிப் புள்ளிகளைச் சேர்க்கலாம். ஒவ்வொரு USB வகுப்பிற்கும் இடைமுகம் மற்றும் இறுதிப் புள்ளிகள் வகை, அளவு மற்றும் பிற அளவுருக்கள் அடிப்படையில் அதன் சொந்தத் தேவைகள் உள்ளன. சிலிக்கான் லேப்ஸ் USB சாதனம் அது வழங்கும் வகுப்புகளில் இடைமுகங்கள் மற்றும் இறுதிப் புள்ளிகளைச் சேர்க்கிறது.
உங்கள் பயன்பாட்டிலிருந்து, நீங்கள் ஒரு USB வகுப்பை இன்ஸ்டன்ஷியேட் செய்து அதை ஒரு உள்ளமைவில் சேர்க்கலாம். USB சாதன வகுப்பு நிகழ்வுகளின் கருத்து பற்றிய கூடுதல் தகவலுக்கு, USB சாதன வகுப்புகளைப் பார்க்கவும். பல செயல்பாட்டு (கலப்பு) சாதனத்தை உருவாக்க, நீங்கள் ஒரு உள்ளமைவில் பல வேறுபட்ட வகுப்பு நிகழ்வுகளை இன்ஸ்டன்ஷியேட் செய்து சேர்க்கலாம் என்பதை நினைவில் கொள்ளவும்.
முன்னாள்ampகீழே உள்ள le, ஒரு வகுப்பு நிகழ்வை உருவாக்கி அதை ஒரு உள்ளமைவில் எவ்வாறு சேர்ப்பது என்பதைக் காட்டுகிறது.
Example – உங்கள் சாதனத்தில் ஒரு வகுப்பு நிகழ்வைச் சேர்த்தல்

sl_status_t நிலை; uint8_t வகுப்பு_nbr;
/* நீங்கள் பயன்படுத்த விரும்பும் வகுப்பின் ஒரு நிகழ்வை உருவாக்கவும்.*/ /* வகுப்பைப் பொறுத்து இந்த செயல்பாடு அதிக வாதங்களைக் கொண்டிருக்கலாம் என்பதை நினைவில் கொள்ளவும். */ status = sl_usbd_ _create_instance(&class_nbr); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }
/* முழு வேக உள்ளமைவில் வகுப்பு நிகழ்வைச் சேர்க்கவும். */ status = sl_usbd_ _add_to_configuration(class_nbr, /* sl_usbd_ ஆல் திருப்பி அனுப்பப்பட்ட வகுப்பு எண் _உருவாக்கு_நிகழ்வு. */
config_nbr_fs); /* sl_usbd_core_add_configuration() ஆல் வழங்கப்பட்ட உள்ளமைவு எண். */ if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }
உங்கள் USB சாதனத்தைத் தொடங்குகிறது
இயல்பாக, சாதன துவக்கம் முடிந்ததும், கர்னல் தொடங்கப்பட்டதும், சாதனம் USB சாதன மையப் பணியால் தானாகவே தொடங்கப்படும். சாதனம் எப்போது தொடங்கப்பட்டு USB ஹோஸ்ட்டால் தெரியும் என்பதைக் கட்டுப்படுத்த, தானியங்கு தொடக்க அம்சத்தை முடக்க, உள்ளமைவு வரையறை SL_USBD_AUTO_START_USB_DEVICE ஐப் பயன்படுத்தவும். முடக்கப்பட்டிருக்கும் போது, ​​உங்கள் சாதனத்தை உருவாக்கிய/தயார் செய்த பிறகு, நீங்கள் அதைத் தொடங்கி, sl_usbd_core_start_device() செயல்பாட்டை அழைப்பதன் மூலம் USB ஹோஸ்டுக்குத் தெரியும்படி செய்யலாம்.
முன்னாள்ampகீழே உள்ள பகுதி sl_usbd_core_start_device() செயல்பாட்டைப் பயன்படுத்தி உங்கள் சாதனத்தை எவ்வாறு தொடங்குவது என்பதைக் காட்டுகிறது.
Example – உங்கள் சாதனத்தைத் தொடங்குதல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

12/174

முடிந்துவிட்டதுview

sl_status_t நிலை;
status = sl_usbd_core_start_device(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }

நிகழ்வு ஹூக் செயல்பாடுகள்
USB சாதன மைய தொகுதி இரண்டு பலவீனமான ஹூக் செயல்பாடுகளை வழங்குகிறது, அவற்றை உங்கள் பயன்பாட்டில் நீங்கள் மறுவரையறை செய்யலாம். அவற்றின் நோக்கம் பஸ் மற்றும் உள்ளமைவு நிகழ்வுகள் நிகழும்போது அறிவிப்பதாகும்.
அட்டவணை - USB நிகழ்வு ஹூக் செயல்பாடுகள்

நிகழ்வு

விளக்கம்

பேருந்து

USB பஸ் நிகழ்வு நிகழும்போது அழைக்கப்படுகிறது

USB உள்ளமைவு நிகழ்வு நிகழும்போது அழைக்கப்படும் உள்ளமைவு

செயல்பாட்டு கையொப்பம்
sl_usbd_on_bus_event(sl_usbd_bus_event_t நிகழ்வு) வெற்றிடமாக இல்லை; sl_usbd_on_config_event(sl_usbd_config_event_t நிகழ்வு, uint8_t config_nbr);

Example – நிகழ்வு ஹூக் செயல்பாடுகள்

void sl_usbd_on_bus_event(sl_usbd_bus_event_t நிகழ்வு) { சுவிட்ச் (நிகழ்வு) { வழக்கு SL_USBD_EVENT_BUS_CONNECT:
// ஹோஸ்ட் கன்ட்ரோலர் பிரேக்கில் USB கேபிள் செருகப்படும்போது அழைக்கப்படுகிறது;
case SL_USBD_EVENT_BUS_DISCONNECT: // ஹோஸ்ட் கன்ட்ரோலர் பிரேக்கிலிருந்து USB கேபிள் அகற்றப்படும் போது அழைக்கப்படுகிறது;
case SL_USBD_EVENT_BUS_RESET: // ஹோஸ்ட் மீட்டமை கட்டளையை break அனுப்பும்போது அழைக்கப்படுகிறது;
case SL_USBD_EVENT_BUS_SUSPEND: // ஹோஸ்ட் சஸ்பென்ட் கட்டளை பிரேக்கை அனுப்பும்போது அழைக்கப்படுகிறது;
case SL_USBD_EVENT_BUS_RESUME: // ஹோஸ்ட் எழுப்புதல் கட்டளையை break அனுப்பும்போது அழைக்கப்படுகிறது;
இயல்புநிலை: முறிவு; } }
void sl_usbd_on_config_event(sl_usbd_config_event_t நிகழ்வு, uint8_t config_nbr) { சுவிட்ச் (நிகழ்வு) { வழக்கு SL_USBD_EVENT_CONFIG_SET:
// ஹோஸ்ட் உள்ளமைவு இடைவெளியை அமைக்கும் போது அழைக்கப்படுகிறது;
case SL_USBD_EVENT_CONFIG_UNSET: // ஒரு உள்ளமைவு அமைக்கப்படாதபோது அழைக்கப்படும் break;
இயல்புநிலை: முறிவு; } }

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

13/174

முடிந்துவிட்டதுview

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

14/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview

USB சாதன வகுப்புகள்

சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதனத்தில் கிடைக்கும் யூ.எஸ்.பி வகுப்புகள் சில பொதுவான பண்புகளைப் பகிர்ந்து கொள்கின்றன. இந்தப் பிரிவு இந்தப் பண்புகளையும் மைய அடுக்குடன் அவற்றின் தொடர்புகளையும் விளக்குகிறது.
ஒரு குறிப்பிட்ட வகுப்பைப் பற்றிய கூடுதல் தகவலுக்கு, பின்வருவனவற்றைப் பார்க்கவும்:
CDC ACM வகுப்பு HID வகுப்பு MSC SCSI வகுப்பு விற்பனையாளர் வகுப்பு
வகுப்பு நிகழ்வுகள் பற்றி
USB சாதனத்தில் கிடைக்கும் USB வகுப்புகள் வகுப்பு நிகழ்வுகளின் கருத்தை செயல்படுத்துகின்றன. ஒரு வகுப்பு நிகழ்வு ஒரு சாதனத்திற்குள் ஒரு செயல்பாட்டைக் குறிக்கிறது. செயல்பாட்டை ஒரு இடைமுகம் அல்லது இடைமுகங்களின் குழுவால் விவரிக்க முடியும் மற்றும் ஒரு குறிப்பிட்ட வகுப்பைச் சேர்ந்தது.
ஒவ்வொரு USB வகுப்பு செயல்படுத்தலும், வகுப்பு நிகழ்வு என்ற கருத்தின் அடிப்படையில், சில உள்ளமைவுகள் மற்றும் செயல்பாடுகளைப் பொதுவாகக் கொண்டுள்ளது. பொதுவான உள்ளமைவுகள் மற்றும் செயல்பாடுகள் கீழே உள்ள அட்டவணையில் வழங்கப்பட்டுள்ளன. 'மாறிலிகள் அல்லது செயல்பாடு' என்ற நெடுவரிசைத் தலைப்பில், XXXX என்ற ஒதுக்கிடத்தை வகுப்பின் பெயரால் மாற்றலாம்: CDC, HID, MSC, CDC_ACM அல்லது VENDOR (செயல்பாட்டுப் பெயர்களுக்கான விற்பனையாளர்).
அட்டவணை - பல வகுப்பு நிகழ்வுகளின் கருத்துடன் தொடர்புடைய மாறிலிகள் மற்றும் செயல்பாடுகள்.

மாறிலி அல்லது செயல்பாடு
SL_USBD_XXXX_CL ASS_INS TANCE_QUANTITY
SL_USBD_XXXX_ATION_QUANTITY ஐ உள்ளமைக்கவும்
sl_usb d _XXXX_cre _instant NCE சாப்பிட்டேன் ()
sl_usbd_XXXX_add_to_conf ஐக்யூரேஷன்()

விளக்கம்
அதிகபட்ச வகுப்பு நிகழ்வுகளை உள்ளமைக்கிறது.
அதிகபட்ச எண்ணிக்கையிலான உள்ளமைவுகளை உள்ளமைக்கிறது. வகுப்பு துவக்கத்தின் போது, ​​உருவாக்கப்பட்ட வகுப்பு நிகழ்வு ஒன்று அல்லது அதற்கு மேற்பட்ட உள்ளமைவுகளில் சேர்க்கப்படும். ஒரு புதிய வகுப்பு நிகழ்வை உருவாக்குகிறது.
குறிப்பிட்ட சாதன உள்ளமைவில் ஏற்கனவே உள்ள வகுப்பு நிகழ்வைச் சேர்க்கிறது.

குறியீட்டு செயல்படுத்தலைப் பொறுத்தவரை, வகுப்பு கட்டுப்பாட்டு கட்டமைப்பைக் கொண்ட ஒரு உள்ளூர் உலகளாவிய மாறியை வகுப்பு அறிவிக்கும். இந்த வகுப்பு கட்டுப்பாட்டு அமைப்பு ஒரு வகுப்பு நிகழ்வுடன் தொடர்புடையது மற்றும் வகுப்பு நிகழ்வை நிர்வகிப்பதற்கான குறிப்பிட்ட தகவல்களைக் கொண்டிருக்கும்.
பின்வரும் புள்ளிவிவரங்கள் பல நிகழ்வுகளைக் காட்டுகின்றன. ஒவ்வொரு படத்திலும் ஒரு குறியீடு உள்ளது, example அது வழக்கு சூழ்நிலைக்கு ஒத்திருக்கிறது.
படம் – பல வகுப்பு நிகழ்வுகள் – FS சாதனம் (1 இடைமுகத்துடன் 1 கட்டமைப்பு) ஒரு பொதுவான USB சாதனத்தைக் குறிக்கிறது. சாதனம் முழு வேக (FS) மற்றும் ஒற்றை உள்ளமைவைக் கொண்டுள்ளது. தரவு தொடர்புக்காக ஒரு ஜோடி இறுதிப் புள்ளிகளைக் கொண்ட ஒரு இடைமுகத்தால் சாதனத்தின் செயல்பாடு விவரிக்கப்படுகிறது. ஒரு வகுப்பு நிகழ்வு உருவாக்கப்பட்டு, அதன் தொடர்புடைய இறுதிப் புள்ளியுடன் முழு இடைமுகத்தையும் நிர்வகிக்க உங்களை அனுமதிக்கும்.
படம் – பல வகுப்பு நிகழ்வுகள் – 1 இடைமுகத்துடன் கூடிய FS சாதனம் 1 உள்ளமைவு)

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

15/174

முடிந்துவிட்டதுview

படம் - பல வகுப்பு நிகழ்வுகள் - FS சாதனம் (1 இடைமுகத்துடன் 1 கட்டமைப்பு) உடன் தொடர்புடைய குறியீடு ex இல் காட்டப்பட்டுள்ளது.ampகீழே.
Example – பல வகுப்பு நிகழ்வுகள் – 1 இடைமுகத்துடன் கூடிய FS சாதனம் 1 உள்ளமைவு)

sl_status_t நிலை; uint8_t வகுப்பு_0;

void app_usbd_XXXX_enable(uint8_t class_nbr) { /* கிளாஸ் இயக்க நிகழ்வை கையாளவும். */ }

void app_usbd_XXXX_disable(uint8_t class_nbr) { /* கிளாஸ் செயலிழக்க நிகழ்வை கையாளவும். */ }

sl_usbd_XXXX_callbacks_t class_callbacks = {

(1)

.enable = app_usbd_XXXX_enable,

.disable = app_usbd_XXXX_disable

};

நிலை = sl_usbd_XXXX_init();

(2)

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

நிலை = sl_usbd_XXXX_create_instance(&class_callbacks,

(3)

&வகுப்பு_0);

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

நிலை = sl_usbd_XXXX_add_to_configuration(வகுப்பு_0, config_0);

(4)

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

(1) ஒவ்வொரு வகுப்பும் சாதன இணைப்பு/துண்டிப்பு நிகழ்வுகளுக்கும் வகுப்பு சார்ந்த நிகழ்வுகளுக்கும் ஒரு கால்பேக் செயல்பாடுகளின் தொகுப்பை வழங்குகிறது. sl_usbd_XXXX_create_instance() உடன் வகுப்பு நிகழ்வை உருவாக்கும்போது கால்பேக் கட்டமைப்பு பொருள் வாதமாக அனுப்பப்படுகிறது.
செயல்பாடு.
(1) வகுப்பை துவக்கவும். அனைத்து உள் மாறிகள், கட்டமைப்புகள் மற்றும் வகுப்பு போர்ட்கள் துவக்கப்படும். சில வகுப்புகளில் உள்ள Init() செயல்பாடு வேறு வாதங்களை எடுக்கக்கூடும் என்பதை நினைவில் கொள்ளவும்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

16/174

முடிந்துவிட்டதுview
(2) class_0 என்ற வகுப்பு நிகழ்வை உருவாக்கவும். sl_usbd_XXXX_create_instance() என்ற செயல்பாடு class_0 உடன் தொடர்புடைய ஒரு வகுப்பு கட்டுப்பாட்டு கட்டமைப்பை ஒதுக்குகிறது. வகுப்பைப் பொறுத்து, sl_usbd_XXXX_create_instance() வகுப்பு கட்டுப்பாட்டு கட்டமைப்பில் சேமிக்கப்பட்ட வகுப்பு-குறிப்பிட்ட தகவலைக் குறிக்கும் வகுப்பு எண்ணைத் தவிர கூடுதல் அளவுருக்களைக் கொண்டிருக்கலாம். aaa (3) குறிப்பிட்ட உள்ளமைவு எண்ணான config_0 உடன் cl ss inst nce, class_0 ஐச் சேர்க்கவும். sl_usbd_XXXX_add_to_configuration() இடைமுகம் 0 மற்றும் அதனுடன் தொடர்புடைய IN மற்றும் OUT இறுதிப் புள்ளிகளை உருவாக்கும். இதன் விளைவாக, வகுப்பு நிகழ்வு இடைமுகம் 0 மற்றும் அதன் இறுதிப் புள்ளிகளை உள்ளடக்கியது. இடைமுகம் 0 இல் செய்யப்படும் எந்தவொரு தகவல்தொடர்பு class_0 என்ற வகுப்பு நிகழ்வு எண்ணைப் பயன்படுத்தும். படம் - பல வகுப்பு நிகழ்வுகள் - FS சாதனம் (2 உள்ளமைவுகள் மற்றும் பல இடைமுகங்கள்) மிகவும் சிக்கலான உதாரணத்தைக் குறிக்கிறது.ample. ஒரு முழு-வேக சாதனம் இரண்டு உள்ளமைவுகளைக் கொண்டுள்ளது. சாதனம் ஒரே வகுப்பைச் சேர்ந்த இரண்டு செயல்பாடுகளைக் கொண்டுள்ளது, ஆனால் ஒவ்வொரு செயல்பாடும் இரண்டு இடைமுகங்களால் விவரிக்கப்படுகிறது மற்றும் ஒரு ஜோடி இருதிசை முனைப்புள்ளிகளைக் கொண்டுள்ளது. இந்த எடுத்துக்காட்டில்ampபின்னர், இரண்டு வகுப்பு நிகழ்வுகள் உருவாக்கப்படுகின்றன. ஒவ்வொரு வகுப்பு நிகழ்வும் படம் - பல வகுப்பு நிகழ்வுகள் - FS சாதனம் (1 இடைமுகத்துடன் 1 கட்டமைப்பு) மற்றும் படம் - பல வகுப்பு நிகழ்வுகள் - FS சாதனம் (2 கட்டமைப்புகள் மற்றும் பல இடைமுகங்கள்) ஆகியவற்றிற்கு மாறாக இடைமுகங்களின் குழுவுடன் தொடர்புடையது, அங்கு வகுப்பு நிகழ்வு ஒரு ஒற்றை இடைமுகத்துடன் தொடர்புடையது.
படம் – பல வகுப்பு நிகழ்வுகள் – FS சாதனம் 2 உள்ளமைவுகள் மற்றும் பல இடைமுகங்கள்)

படம் - பல வகுப்பு நிகழ்வுகள் - FS சாதனம் (2 உள்ளமைவுகள் மற்றும் பல இடைமுகங்கள்) உடன் தொடர்புடைய குறியீடு ex இல் காட்டப்பட்டுள்ளது.ampகீழே le. தெளிவுக்காக பிழை கையாளுதல் தவிர்க்கப்பட்டுள்ளது.
Example – பல வகுப்பு நிகழ்வுகள் – FS சாதனம் 2 உள்ளமைவுகள் மற்றும் பல இடைமுகங்கள்)

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

17/174

முடிந்துவிட்டதுview

sl_status_t நிலை; uint8_t வகுப்பு_0; uint8_t வகுப்பு_1;
நிலை = sl_usbd_XXXX_init();
நிலை = sl_usbd_XXXX_create_instance(&class_0); நிலை = sl_usbd_XXXX_create_instance(&class_1);
நிலை = sl_usbd_XXXX_add_to_configuration(வகுப்பு_0, cfg_0); நிலை = sl_usbd_XXXX_add_to_configuration(வகுப்பு_1, cfg_0);
நிலை = sl_usbd_XXXX_add_to_configuration(வகுப்பு_0, cfg_1); நிலை = sl_usbd_XXXX_add_to_configuration(வகுப்பு_1, cfg_1);

(1)
(2) (3)
(4) (5)
(6) (6)

(1) வகுப்பை துவக்கவும். எந்தவொரு உள் மாறிகள், கட்டமைப்புகள் மற்றும் வகுப்பு போர்ட்கள் துவக்கப்படும்.
(2) class_0 என்ற வகுப்பு நிகழ்வை உருவாக்கவும். sl_usbd_XXXX_create_instance() செயல்பாடு class_0 உடன் தொடர்புடைய ஒரு வகுப்பு கட்டுப்பாட்டு கட்டமைப்பை ஒதுக்குகிறது.
(3) class_1 என்ற வகுப்பு நிகழ்வை உருவாக்கவும். sl_usbd_XXXX_create_instance() செயல்பாடு class_1 உடன் தொடர்புடைய மற்றொரு வகுப்பு கட்டுப்பாட்டு கட்டமைப்பை ஒதுக்குகிறது.
(4) class_0 என்ற class நிகழ்வை cfg_0 என்ற உள்ளமைவில் சேர்க்கவும். sl_usbd_XXXX_add_to_configuration() என்பது இடைமுகம் 0, இடைமுகம் 1, மாற்று இடைமுகங்கள் மற்றும் தொடர்புடைய IN மற்றும் OUT இறுதிப்புள்ளிகளை உருவாக்கும். class_0 என்ற வகுப்பு நிகழ்வு எண், இடைமுகம் 0 அல்லது இடைமுகம் 1 இல் உள்ள எந்தவொரு தரவுத் தொடர்புக்கும் பயன்படுத்தப்படும்.
(5) class_1 என்ற class நிகழ்வை cfg_0 என்ற உள்ளமைவில் சேர்க்கவும். sl_usbd_XXXX_add_to_configuration() இடைமுகம் 2, இடைமுகம் 3 மற்றும் அவற்றுடன் தொடர்புடைய IN மற்றும் OUT இறுதிப்புள்ளிகளை உருவாக்கும். class_1 என்ற வகுப்பு நிகழ்வு எண், இடைமுகம் 2 அல்லது இடைமுகம் 3 இல் உள்ள எந்தவொரு தரவுத் தொடர்புக்கும் பயன்படுத்தப்படும்.
(6) cfg_1 என்ற மற்ற உள்ளமைவில், அதே வகுப்பு நிகழ்வுகளான class_0 மற்றும் class_1 ஐச் சேர்க்கவும்.
ஒவ்வொரு வகுப்பும் sl_usbd_XXXX_callbacks_t வகையின் கட்டமைப்பை வரையறுக்கிறது. இதன் நோக்கம், நிகழ்வு நிகழும்போது அழைக்கப்படும் ஒவ்வொரு வகுப்பிற்கும் ஒரு கால்பேக் செயல்பாடுகளை வழங்குவதாகும். ஒவ்வொரு வகுப்பிலும் இரண்டு கால்பேக் செயல்பாடுகள் உள்ளன. அவை கீழே உள்ள அட்டவணையில் வழங்கப்பட்டுள்ளன.
அட்டவணை - பொதுவான வகுப்பு திரும்ப அழைக்கும் செயல்பாடுகள்

புலங்கள் விளக்கம் .enable USB வகுப்பு நிகழ்வு வெற்றிகரமாக இயக்கப்பட்டிருக்கும் போது அழைக்கப்பட்டது. .disable USB வகுப்பு நிகழ்வு முடக்கப்பட்டிருக்கும் போது அழைக்கப்பட்டது.

செயல்பாட்டு கையொப்பம் void app_usbd_XXXX_enable(uint8_t class_nbr); void app_usbd_XXXX_disable(uint8_t class_nbr);

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

18/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
USB சாதனம் CDC ACM வகுப்பு
USB சாதன CDC அடிப்படை வகுப்பு முடிந்துவிட்டதுview USB சாதன CDC ACM வகுப்பு வளத் தேவைகள் கோர் USB சாதன CDC ACM துணைப்பிரிவிலிருந்து முடிந்துவிட்டனview USB சாதனம் CDC ACM வகுப்பு உள்ளமைவு USB சாதனம் CDC ACM வகுப்பு நிரலாக்க வழிகாட்டி
இந்தப் பிரிவு, சிலிக்கான் லேப்ஸின் USB சாதன அடுக்கால் ஆதரிக்கப்படும் தகவல் தொடர்பு சாதன வகுப்பு (CDC) வகுப்பு மற்றும் தொடர்புடைய CDC துணைப்பிரிவை விவரிக்கிறது. சிலிக்கான் லேப்ஸ் USB-சாதனம் தற்போது சீரியல் எமுலேஷனுக்குப் பொதுவாகப் பயன்படுத்தப்படும் சுருக்கக் கட்டுப்பாட்டு மாதிரி (ACM) துணைப்பிரிவை ஆதரிக்கிறது.
CDC பல்வேறு தொலைத்தொடர்பு மற்றும் நெட்வொர்க்கிங் சாதனங்களை உள்ளடக்கியது. தொலைத்தொடர்பு சாதனங்களில் அனலாக் மோடம்கள், அனலாக் மற்றும் டிஜிட்டல் தொலைபேசிகள், ISDN டெர்மினல் அடாப்டர்கள் போன்றவை அடங்கும். உதாரணமாகampஎடுத்துக்காட்டாக, நெட்வொர்க்கிங் சாதனங்களில் ADSL மற்றும் கேபிள் மோடம்கள், ஈதர்நெட் அடாப்டர்கள் மற்றும் ஹப்கள் உள்ளன. USB இணைப்பைப் பயன்படுத்தி V.250 (தொலைபேசி நெட்வொர்க்கில் மோடம்களுக்கு) மற்றும் ஈதர்நெட் (லோக்கல் ஏரியா நெட்வொர்க் சாதனங்களுக்கு) போன்ற ஏற்கனவே உள்ள தகவல் தொடர்பு சேவை தரநிலைகளை இணைக்க CDC ஒரு கட்டமைப்பை வரையறுக்கிறது. ஒரு தகவல் தொடர்பு சாதனம் சாதன மேலாண்மை, தேவைப்படும்போது அழைப்பு மேலாண்மை மற்றும் தரவு பரிமாற்றத்திற்கு பொறுப்பாகும்.
CDC ஏழு முக்கிய சாதனக் குழுக்களை வரையறுக்கிறது. ஒவ்வொரு குழுவும் ஒரு தகவல் தொடர்பு மாதிரியைச் சேர்ந்தது, இதில் பல துணைப்பிரிவுகள் இருக்கலாம். CDC அடிப்படை வகுப்பைத் தவிர, ஒவ்வொரு குழு சாதனங்களும் அதன் சொந்த விவரக்குறிப்பு ஆவணத்தைக் கொண்டுள்ளன. ஏழு குழுக்கள்:
பொது சுவிட்ச்டு டெலிபோன் நெட்வொர்க் (PSTN), வாய்ஸ்பேண்ட் மோடம்கள், தொலைபேசிகள் மற்றும் சீரியல் எமுலேஷன் சாதனங்கள் உள்ளிட்ட சாதனங்கள். டெர்மினல் அடாப்டர்கள் மற்றும் தொலைபேசிகள் உள்ளிட்ட ஒருங்கிணைந்த சேவைகள் டிஜிட்டல் நெட்வொர்க் (ISDN) சாதனங்கள். ஈதர்நெட் கட்டுப்பாட்டு மாதிரி (ECM) சாதனங்கள், IEEE 802 குடும்பத்தை ஆதரிக்கும் சாதனங்கள் (எ.கா: கேபிள் மற்றும் ADSL மோடம்கள், WiFi அடாப்டர்கள்) உட்பட. ADSL மோடம்கள் மற்றும் ATM நெட்வொர்க்குகளுடன் இணைக்கப்பட்ட பிற சாதனங்கள் (பணிநிலையங்கள், ரவுட்டர்கள், LAN சுவிட்சுகள்) உட்பட ஒத்திசைவற்ற பரிமாற்ற முறை (ATM) சாதனங்கள். குரல் மற்றும் தரவு தகவல்தொடர்புகளை நிர்வகிக்கப் பயன்படுத்தப்படும் பல-செயல்பாட்டு தகவல்தொடர்பு கைபேசி சாதனங்கள் உட்பட வயர்லெஸ் மொபைல் தகவல்தொடர்புகள் (WMC) சாதனங்கள். ஈதர்நெட்-ஃபிரேம் செய்யப்பட்ட தரவைப் பரிமாறிக்கொள்ளும் ஈதர்நெட் எமுலேஷன் மாதிரி (EEM) சாதனங்கள். அதிவேக நெட்வொர்க் சாதனங்கள் (அதிவேக பாக்கெட் அணுகல் மோடம்கள், லைன் டெர்மினல் உபகரணங்கள்) உள்ளிட்ட நெட்வொர்க் கட்டுப்பாட்டு மாதிரி (NCM) சாதனங்கள்.
CDC மற்றும் அதனுடன் தொடர்புடைய துணைப்பிரிவு செயல்படுத்தல் பின்வரும் விவரக்குறிப்புகளுடன் இணங்குகிறது:
யுனிவர்சல் சீரியல் பஸ், தகவல் தொடர்பு சாதனங்களுக்கான வகுப்பு வரையறைகள், திருத்தம் 1.2, நவம்பர் 3 2010. யுனிவர்சல் சீரியல் பஸ், தகவல் தொடர்புகள், PSTN சாதனங்களுக்கான துணைப்பிரிவு, திருத்தம் 1.2, பிப்ரவரி 9 2007.
USB சாதன CDC அடிப்படை வகுப்பு முடிந்துவிட்டதுview
ஒரு CDC சாதனம் தகவல்தொடர்பு திறனை செயல்படுத்த பின்வரும் இடைமுகங்களைக் கொண்டுள்ளது:
தகவல்தொடர்பு வகுப்பு இடைமுகம் (CCI) சாதன மேலாண்மைக்கும் விருப்பமாக அழைப்பு மேலாண்மைக்கும் பொறுப்பாகும்.
சாதன மேலாண்மை, சாதனத்தின் பொதுவான உள்ளமைவு மற்றும் கட்டுப்பாட்டையும், ஹோஸ்டுக்கு நிகழ்வுகளை அறிவிப்பதையும் செயல்படுத்துகிறது. அழைப்பு மேலாண்மை அழைப்புகளை நிறுவுதல் மற்றும் முடித்தல் ஆகியவற்றை செயல்படுத்துகிறது. அழைப்பு மேலாண்மை ஒரு DCI மூலம் மல்டிபிளக்ஸ் செய்யப்படலாம். அனைத்து CDC சாதனங்களுக்கும் ஒரு CCI கட்டாயமாகும். இது CDC சாதனத்தால் ஆதரிக்கப்படும் தகவல் தொடர்பு மாதிரியைக் குறிப்பிடுவதன் மூலம் CDC செயல்பாட்டை அடையாளம் காட்டுகிறது. CCI ஐத் தொடர்ந்து வரும் இடைமுகம்(கள்) ஆடியோ அல்லது விற்பனையாளர்-குறிப்பிட்ட இடைமுகம் போன்ற எந்த வரையறுக்கப்பட்ட USB வகுப்பு இடைமுகமாகவும் இருக்கலாம். விற்பனையாளர்-குறிப்பிட்ட இடைமுகம் குறிப்பாக ஒரு DCI ஆல் குறிப்பிடப்படுகிறது.
தரவு வகுப்பு இடைமுகம் (DCI) தரவு பரிமாற்றத்திற்கு பொறுப்பாகும். அனுப்பப்படும் மற்றும்/அல்லது பெறப்படும் தரவு ஒரு குறிப்பிட்ட விதிமுறையைப் பின்பற்றுவதில்லை.
வடிவம். தரவு ஒரு தகவல்தொடர்பு வரியிலிருந்து பெறப்பட்ட மூலத் தரவு, தனியுரிம வடிவமைப்பைப் பின்பற்றும் தரவு போன்றவையாக இருக்கலாம். CCI ஐப் பின்பற்றும் அனைத்து DCI களையும் துணை இடைமுகங்களாகக் காணலாம்.
ஒரு CDC சாதனத்தில் குறைந்தது ஒரு CCI மற்றும் பூஜ்ஜியம் அல்லது அதற்கு மேற்பட்ட DCIகள் இருக்க வேண்டும். ஒரு CCI மற்றும் எந்த துணை DCIயும் சேர்ந்து ஹோஸ்டுக்கு ஒரு அம்சத்தை வழங்குகின்றன. இந்த திறன் ஒரு செயல்பாடு என்றும் குறிப்பிடப்படுகிறது. ஒரு CDC கூட்டு சாதனத்தில், நீங்கள் பலவற்றைக் கொண்டிருக்கலாம்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

19/174

முடிந்துவிட்டதுview
செயல்பாடுகள். எனவே, படம் - CDC கூட்டு சாதனத்தில் காட்டப்பட்டுள்ளபடி, சாதனம் பல CCI மற்றும் DCI(கள்) தொகுப்புகளைக் கொண்டிருக்கும்.
படம் - CDC கூட்டு சாதனம்

ஒரு CDC சாதனம் பின்வரும் முனைப்புள்ளிகளின் கலவையைப் பயன்படுத்த வாய்ப்புள்ளது:
ஒரு ஜோடி கட்டுப்பாட்டு IN மற்றும் OUT முனைப்புள்ளிகள், இயல்புநிலை முனைப்புள்ளி எனப்படும். விருப்பமான மொத்த அல்லது குறுக்கீடு IN முனைப்புள்ளி. ஒரு ஜோடி மொத்த அல்லது ஐசோக்ரோனஸ் IN மற்றும் OUT முனைப்புள்ளிகள். சிலிக்கான் லேப்ஸ் USB சாதன அடுக்கு தற்போது ஐசோக்ரோனஸ் முனைப்புள்ளிகளை ஆதரிக்கவில்லை என்பதை நினைவில் கொள்ளவும்.
கீழே உள்ள அட்டவணை வெவ்வேறு முனைப்புள்ளிகளின் பயன்பாட்டையும் அவை CDC இன் எந்த இடைமுகத்தால் பயன்படுத்தப்படுகின்றன என்பதையும் காட்டுகிறது.
அட்டவணை - CDC எண்ட்பாயிண்ட் பயன்பாடு

இறுதிப்புள்ளி
கட்டுப்பாடு IN
கட்டுப்பாடு வெளியே
குறுக்கீடு அல்லது மொத்தமாக IN மொத்தமாக அல்லது ஐசோக்ரோனஸ் IN மொத்தமாக அல்லது ஐசோக்ரோனஸ்
வெளியே

திசை
சாதனத்திலிருந்து ஹோஸ்ட் வரை
சாதனத்திற்கு ஹோஸ்ட்
சாதனத்திலிருந்து ஹோஸ்ட் வரை
சாதனத்திலிருந்து ஹோஸ்ட் வரை
சாதனத்திற்கு ஹோஸ்ட்

இடைமுக பயன்பாடு

CCI

கணக்கெடுப்புக்கான நிலையான கோரிக்கைகள், வகுப்பு சார்ந்த கோரிக்கைகள், சாதனம்

மேலாண்மை, மற்றும் விருப்பமாக அழைப்பு மேலாண்மை.

CCI

கணக்கெடுப்புக்கான நிலையான கோரிக்கைகள், வகுப்பு சார்ந்த கோரிக்கைகள், சாதனம்

மேலாண்மை, மற்றும் விருப்பமாக அழைப்பு மேலாண்மை.

CCI

நிகழ்வு அறிவிப்பு, ரிங் கண்டறிதல், தொடர் வரி நிலை, பிணைய நிலை போன்றவை.

DCI

மூல அல்லது வடிவமைக்கப்பட்ட தரவு தொடர்பு.

DCI

மூல அல்லது வடிவமைக்கப்பட்ட தரவு தொடர்பு.

பெரும்பாலான தகவல் தொடர்பு சாதனங்கள் நிகழ்வுகளின் தொகுப்பாளருக்குத் தெரிவிக்க ஒரு குறுக்கீடு முனைப்புள்ளியைப் பயன்படுத்துகின்றன. USB நெறிமுறை பிழைகள் ஏற்பட்டால் தனியுரிம நெறிமுறை தரவு மறுபரிமாற்றத்தை நம்பியிருக்கும் போது, ​​ஐசோக்ரோனஸ் முனைப்புள்ளிகள் தரவு பரிமாற்றத்திற்குப் பயன்படுத்தப்படக்கூடாது. ஐசோக்ரோனஸ் தகவல்தொடர்புக்கு மறுமுயற்சி வழிமுறைகள் இல்லாததால் இயல்பாகவே தரவை இழக்க நேரிடும்.
ஏழு முக்கிய தகவல்தொடர்பு மாதிரிகள் பல துணைப்பிரிவுகளை உள்ளடக்கியது. சாதன மேலாண்மை மற்றும் அழைப்பு நிர்வாகத்தை கையாள CCI ஐ சாதனம் எவ்வாறு பயன்படுத்த வேண்டும் என்பதை ஒரு துணைப்பிரிவு விவரிக்கிறது. கீழே உள்ள அட்டவணை சாத்தியமான அனைத்து துணைப்பிரிவுகளையும் அவை சேர்ந்த தொடர்பு மாதிரியையும் காட்டுகிறது.
அட்டவணை - CDC துணைப்பிரிவுகள்

துணைப்பிரிவு
நேரடி வரி கட்டுப்பாட்டு மாதிரி சுருக்க கட்டுப்பாட்டு மாதிரி

தொடர்பு மாதிரி
PSTN
PSTN

Exampஇந்த துணைப்பிரிவைப் பயன்படுத்தும் சாதனங்களின் எண்ணிக்கை
யூ.எஸ்.பி ஹோஸ்டால் நேரடியாகக் கட்டுப்படுத்தப்படும் மோடம் சாதனங்கள்
சீரியல் எமுலேஷன் சாதனங்கள், சீரியல் கட்டளை தொகுப்பு மூலம் கட்டுப்படுத்தப்படும் மோடம் சாதனங்கள்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

20/174

முடிந்துவிட்டதுview

துணைப்பிரிவு

தொடர்பு மாதிரி

Exampஇந்த துணைப்பிரிவைப் பயன்படுத்தும் சாதனங்களின் எண்ணிக்கை

தொலைபேசி கட்டுப்பாட்டு மாதிரி

PSTN

பல-சேனல் கட்டுப்பாட்டு ISDN மாதிரி

CAPI கட்டுப்பாட்டு மாதிரி ISDN

ஈதர்நெட் நெட்வொர்க்கிங் ECM கட்டுப்பாட்டு மாதிரி

ஏடிஎம் நெட்வொர்க்கிங்

ஏடிஎம்

கட்டுப்பாட்டு மாதிரி

வயர்லெஸ் ஹேண்ட்செட் கட்டுப்பாட்டு மாதிரி

WMC (டபிள்யூஎம்சி)

சாதன மேலாண்மை WMC

மொபைல் நேரடி வரி மாதிரி

WMC (டபிள்யூஎம்சி)

ஓபெக்ஸ்

WMC (டபிள்யூஎம்சி)

ஈதர்நெட் எமுலேஷன் EEM மாதிரி

நெட்வொர்க் கட்டுப்பாட்டு மாதிரி

என்.சி.எம்

குரல் தொலைபேசி சாதனங்கள்
அடிப்படை விகித முனைய அடாப்டர்கள், முதன்மை விகித முனைய அடாப்டர்கள், தொலைபேசிகள்
அடிப்படை விகித முனைய அடாப்டர்கள், முதன்மை விகித முனைய அடாப்டர்கள், தொலைபேசிகள் DOC-SIS கேபிள் மோடம்கள், PPPoE எமுலேஷனை ஆதரிக்கும் ADSL மோடம்கள், Wi-Fi அடாப்டர்கள் (IEEE 802.11-குடும்பம்), IEEE 802.3 அடாப்டர்கள் ADSL மோடம்கள்
வயர்லெஸ் சாதனங்களுடன் இணைக்கும் மொபைல் முனைய உபகரணங்கள்
வயர்லெஸ் சாதனங்களுடன் இணைக்கும் மொபைல் முனைய உபகரணங்கள் வயர்லெஸ் சாதனங்களுடன் இணைக்கும் மொபைல் முனைய உபகரணங்கள்
வயர்லெஸ் சாதனங்களுடன் இணைக்கும் மொபைல் முனைய உபகரணங்கள் போக்குவரத்தின் அடுத்த அடுக்காக ஈதர்நெட் பிரேம்களைப் பயன்படுத்தும் சாதனங்கள். ரூட்டிங் மற்றும் இணைய இணைப்பு சாதனங்களுக்கு ஏற்றதல்ல IEEE 802.3 அடாப்டர்கள் நெட்வொர்க்கில் அதிவேக தரவு அலைவரிசையை எடுத்துச் செல்கின்றன

USB சாதன CDC ACM வகுப்பு வளத் தேவைகள் கோரிலிருந்து

sl_usbd_cdc_acm_add_to_configuration() செயல்பாட்டிற்கு அழைப்பு மூலம் USB உள்ளமைவில் CDC ACM வகுப்பு நிகழ்வைச் சேர்க்கும் ஒவ்வொரு முறையும், பின்வரும் வளங்கள் மையத்திலிருந்து ஒதுக்கப்படும்.

வளம்
இடைமுகங்கள் மாற்று இடைமுகங்கள் இறுதிப்புள்ளிகள் இடைமுகக் குழுக்கள்

அளவு
2 2 3 1

அந்த எண்கள் உள்ளமைவுக்குரியவை என்பதை நினைவில் கொள்ளவும். உங்கள் SL_USBD_INTERFACE_QUANTITY , SL_USBD_ALT_INTERFACE_QUANTITY , SL_USBD_INTERFACE_GROUP_QUANTITY மற்றும் SL_USBD_DESCRIPTOR_QUANTITY உள்ளமைவு மதிப்புகளை அமைக்கும் போது, ​​வகுப்பு எத்தனை உள்ளமைவுகளைச் சேர்க்கும் என்பதைக் கணக்கில் எடுத்துக்கொள்ள மறக்காதீர்கள். SL_USBD_OPEN_ENDPOINTS_QUANTITY உள்ளமைவு மதிப்புக்கு, ஹோஸ்டால் உள்ளமைவு அமைக்கப்படும் போது மட்டுமே இறுதிப் புள்ளிகள் திறக்கப்படும் என்பதால், ஒரு வகுப்பு நிகழ்வுக்குத் தேவையான இறுதிப் புள்ளிகளின் எண்ணிக்கையை நீங்கள் கணக்கில் எடுத்துக்கொள்ள வேண்டும்.
USB சாதனம் CDC ACM துணைப்பிரிவு முடிந்ததுview

CDC அடிப்படை வகுப்பு, தகவல் தொடர்பு வகுப்பு இடைமுகம் (CCI) மற்றும் தரவு வகுப்பு இடைமுகம் (DCI) ஆகியவற்றைக் கொண்டுள்ளது, இது USB சாதன CDC அடிப்படை வகுப்பில் விரிவாக விவாதிக்கப்படுகிறது.view . இந்தப் பிரிவு ACM வகை CCI பற்றி விவாதிக்கிறது. இது மேலாண்மை உறுப்புக்கான இயல்புநிலை முனைப்புள்ளியையும் அறிவிப்பு உறுப்புக்கான குறுக்கீடு முனைப்புள்ளியையும் கொண்டுள்ளது. DCI வழியாக குறிப்பிடப்படாத தரவை எடுத்துச் செல்ல ஒரு ஜோடி மொத்த முனைப்புள்ளிகள் பயன்படுத்தப்படுகின்றன.
ACM துணைப்பிரிவு இரண்டு வகையான தொடர்பு சாதனங்களால் பயன்படுத்தப்படுகிறது:
AT கட்டளைகளை ஆதரிக்கும் சாதனங்கள் (எடுத்துக்காட்டாக, வாய்ஸ்பேண்ட் மோடம்கள்). தொடர் எமுலேஷன் சாதனங்கள், இவை மெய்நிகர் COM போர்ட் சாதனங்கள் என்றும் அழைக்கப்படுகின்றன.
ACM துணைப்பிரிவுக்கு பல துணைப்பிரிவு-குறிப்பிட்ட கோரிக்கைகள் உள்ளன. அவை சாதனத்தைக் கட்டுப்படுத்தவும் உள்ளமைக்கவும் உங்களை அனுமதிக்கின்றன. அனைத்து ACM கோரிக்கைகளின் முழுமையான பட்டியல் மற்றும் விளக்கத்தை விவரக்குறிப்பில் காணலாம்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

21/174

முடிந்துவிட்டதுview PSTN சாதனங்களுக்கான துணைப்பிரிவு, திருத்தம் 1.2, பிப்ரவரி 9, 2007=, பிரிவு 6.2.2.
இந்தப் பட்டியலிலிருந்து, சிலிக்கான் லேப்ஸ்9 ஏசிஎம் துணைப்பிரிவு பின்வருவனவற்றை ஆதரிக்கிறது:
அட்டவணை - சிலிக்கான் ஆய்வகங்களால் ஆதரிக்கப்படும் ACM கோரிக்கைகள்

துணைப்பிரிவு கோரிக்கை விளக்கம்

செட்கம்அம்சம்பெறுககம்அம்சம்அம்சம்தெளிவுபடுத்துககம்அம்சம்

கொடுக்கப்பட்ட தகவல்தொடர்பு அம்சத்திற்கான அமைப்புகளைக் கட்டுப்படுத்த ஹோஸ்ட் இந்தக் கோரிக்கையை அனுப்புகிறது. தொடர் எமுலேஷனுக்குப் பயன்படுத்தப்படவில்லை.
கொடுக்கப்பட்ட தகவல்தொடர்பு அம்சத்திற்கான தற்போதைய அமைப்புகளைப் பெற ஹோஸ்ட் இந்தக் கோரிக்கையை அனுப்புகிறது. தொடர் எமுலேஷனுக்குப் பயன்படுத்தப்படவில்லை.
கொடுக்கப்பட்ட தகவல்தொடர்பு அம்சத்திற்கான அமைப்புகளை அழிக்க ஹோஸ்ட் இந்த கோரிக்கையை அனுப்புகிறது. தொடர் முன்மாதிரிக்கு பயன்படுத்தப்படவில்லை.

செட்லைன் கோடிங்

ACM சாதன அமைப்புகளை உள்ளமைக்க ஹோஸ்ட் இந்த கோரிக்கையை அனுப்புகிறது: பாட் வீதம், நிறுத்த பிட்களின் எண்ணிக்கை, சமநிலை வகை மற்றும் தரவு பிட்களின் எண்ணிக்கை. ஒரு தொடர் முன்மாதிரிக்கு, திறந்த மெய்நிகர் COM போர்ட்டிற்கான தொடர் அமைப்புகளை நீங்கள் ஒவ்வொரு முறை உள்ளமைக்கும்போதும் இந்த கோரிக்கை ஒரு தொடர் முனையத்தால் தானாகவே அனுப்பப்படும்.

வரி கோடிங் பெறுங்கள்

தற்போதைய ACM அமைப்புகளைப் (பாட் வீதம், நிறுத்த பிட்கள், சமநிலை, தரவு பிட்கள்) பெற ஹோஸ்ட் இந்த கோரிக்கையை அனுப்புகிறது. ஒரு சீரியல் எமுலேஷனுக்கு, சீரியல் டெர்மினல்கள் மெய்நிகர் COM போர்ட் திறக்கும் போது இந்த கோரிக்கையை தானாகவே அனுப்புகின்றன.

SetControlLineState ஹோஸ்ட் அரை-டூப்ளக்ஸ் மோடம்களுக்கான கேரியரைக் கட்டுப்படுத்த இந்தக் கோரிக்கையை அனுப்புகிறது மற்றும் டேட்டா டெர்மினல் எக்யூப்மென்ட் (DTE) தயாராக உள்ளதா இல்லையா என்பதைக் குறிக்கிறது. சீரியல் எமுலேஷன் வழக்கில், DTE ஒரு சீரியல் டெர்மினல் ஆகும். ஒரு சீரியல் எமுலேஷனுக்கு, சில சீரியல் டெர்மினல்கள் கட்டுப்பாடுகள் தொகுப்புடன் இந்தக் கோரிக்கையை அனுப்ப உங்களை அனுமதிக்கின்றன.

செட்பிரேக்

RS-232 பாணி முறிவை உருவாக்க ஹோஸ்ட் இந்த கோரிக்கையை அனுப்புகிறது. ஒரு தொடர் முன்மாதிரிக்கு, சில தொடர் முனையங்கள் இந்த கோரிக்கையை அனுப்ப உங்களை அனுமதிக்கின்றன.

சிலிக்கான் லேப்ஸ்9 ஏசிஎம் துணைப்பிரிவு, தற்போதைய சீரியல் லைன் நிலையைப் பற்றி ஹோஸ்டுக்குத் தெரிவிக்க இன்டர்ரப்ட் IN எண்ட்பாயிண்டைப் பயன்படுத்துகிறது. சீரியல்
line state என்பது ஹோஸ்டுக்கு இதைப் பற்றித் தெரிவிக்கும் ஒரு பிட்மேப் ஆகும்:

மிகைப்படுத்தப்பட்டதால் தரவு நிராகரிக்கப்பட்டது சமநிலை பிழை ஃப்ரேமிங் பிழை ரிங் சிக்னல் கண்டறிதலின் நிலை முறிவு கண்டறிதல் பொறிமுறையின் நிலை பரிமாற்ற கேரியரின் நிலை ரிசீவர் கேரியர் கண்டறிதலின் நிலை

சிலிக்கான் லேப்ஸ்9 ஏசிஎம் துணைப்பிரிவு செயல்படுத்தல் பின்வரும் விவரக்குறிப்புகளுடன் இணங்குகிறது:
யுனிவர்சல் சீரியல் பஸ், கம்யூனிகேஷன்ஸ், PSTN சாதனங்களுக்கான துணைப்பிரிவு, திருத்தம் 1.2, பிப்ரவரி 9, 2007.
USB சாதன CDC ACM வகுப்பு உள்ளமைவு

இந்தப் பிரிவு CDC ACM வகுப்பை (தொடர்பு சாதன வகுப்பு, சுருக்கக் கட்டுப்பாட்டு மாதிரி) எவ்வாறு கட்டமைப்பது என்பதைப் பற்றி விவாதிக்கிறது. உள்ளமைவு அளவுருக்களின் இரண்டு குழுக்கள் உள்ளன:
USB சாதனம் CDC ACM வகுப்பு பயன்பாட்டு குறிப்பிட்ட உள்ளமைவுகள் USB சாதனம் CDC ACM வகுப்பு நிகழ்வு உள்ளமைவுகள்
USB சாதனம் CDC ACM வகுப்பு பயன்பாட்டு குறிப்பிட்ட உள்ளமைவுகள்

CDC அடிப்படை வகுப்பு ACM துணைப்பிரிவு
CDC அடிப்படை வகுப்பு

முதலில், சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதன சி.டி.சி வகுப்பு தொகுதியைப் பயன்படுத்த, உங்கள் பயன்பாட்டுத் தேவைகளுக்கு ஏற்ப சி.டி.சி கம்பைல்-டைம் உள்ளமைவை #define-s சரிசெய்ய வேண்டும். அவை sl_usbd_core_config.h தலைப்புக்குள் மீண்டும் தொகுக்கப்படுகின்றன. file CDC பிரிவின் கீழ். அவற்றின் நோக்கம், எத்தனை USB CDC பொருட்களை ஒதுக்க வேண்டும் என்பது குறித்து USB சாதன தொகுதிக்குத் தெரிவிப்பதாகும்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

22/174

முடிந்துவிட்டதுview

இந்த உள்ளமைவு கட்டமைப்பில் கிடைக்கும் ஒவ்வொரு உள்ளமைவு புலத்தையும் கீழே உள்ள அட்டவணை விவரிக்கிறது.
அட்டவணை - USB சாதன CDC உள்ளமைவு வரையறுக்கிறது

கட்டமைப்பு பெயர்
SL_USBD_CDC_CL AS S_INSTANCE_QUANT ITY
SL_USBD_CDC_CONF IGURATION_QUANTI
TY
SL_USBD_CDC_தரவு _இடைமுகம்_QUANTI
TY

விளக்கம்
செயல்பாட்டிற்கு அழைப்பு மூலம் நீங்கள் ஒதுக்கும் வகுப்பு நிகழ்வுகளின் எண்ணிக்கை
sl_usbd_cdc_acm_create_instance() ஐ உருவாக்கு.
உள்ளமைவுகளின் எண்ணிக்கை. SL_usbd_cdc_acm_add_to_configuration() இல் உள்ள ஒன்று அல்லது அதற்கு மேற்பட்ட aaaa உள்ளமைவுகளில் ACM வகுப்பு நிகழ்வுகளைச் சேர்க்கலாம்.
அனைத்து CDC செயல்பாடுகளுக்கும் மொத்த தரவு இடைமுகங்களின் எண்ணிக்கை (DCI). ஒவ்வொரு CDC ACM செயல்பாடும் aaaaaaaaaa sl_usbd_cdc_acm_create_instance() செயல்பாட்டிற்கு dd dt இடைமுகத்தை ஏற்படுத்தும்.

இயல்புநிலை மதிப்பு
2
1
2

ACM துணைப்பிரிவு
ACM துணைப்பிரிவு கீழே உள்ள அட்டவணையில் காட்டப்பட்டுள்ளபடி ஒரு தொகுத்தல் நேர உள்ளமைவைக் கொண்டுள்ளது.
அட்டவணை - USB சாதன CDC ACM உள்ளமைவு வரையறை

கட்டமைப்பு பெயர்
SL_USBD_CDC_ACM_SUBCL ASS_I NSTANCE_QUANTITY

விளக்கம்
அழைப்பின் மூலம் நீங்கள் ஒதுக்கும் துணைப்பிரிவு நிகழ்வுகளின் எண்ணிக்கையை உள்ளமைக்கிறது
செயல்பாடு sl_usbd_cdc_acm_create_instance() .

இயல்புநிலை மதிப்பு
2

USB சாதன CDC ACM வகுப்பு நிகழ்வு உள்ளமைவுகள்

இந்தப் பிரிவு CDC ACM தொடர் வகுப்பு நிகழ்வுகளுடன் தொடர்புடைய உள்ளமைவுகளை வரையறுக்கிறது. வகுப்பு நிகழ்வு உருவாக்க வரி நிலை இடைவெளி அழைப்பு mgmt திறன்கள் p_acm_callbacks
வகுப்பு நிகழ்வு உருவாக்கம்

ஒரு CDC ACM தொடர் வகுப்பு நிகழ்வை உருவாக்க, T செயல்பாட்டை sl_usbd_cdc_acm_create_instance() என அழைக்கவும். இங்கே விவரிக்கப்பட்டுள்ளபடி, அவரது செயல்பாடு மூன்று உள்ளமைவு வாதங்களைக் கொண்டுள்ளது.

வரி_நிலை_இடைவெளி
இது உங்கள் CDC ACM சீரியல் வகுப்பு நிகழ்வு T aa ஹோஸ்டுக்கு வரி நிலை அறிவிப்புகளைப் புகாரளிக்கும் இடைவெளி (மில்லி விநாடிகளில்). அவரது v lue இரண்டின் சக்தியாக இருக்க வேண்டும் (1, 2, 4, 8, 16, முதலியன).

அழைப்பு_எம்ஜிஎம்டி_திறன்கள்
பிட்மேப்பின் அழைப்பு மேலாண்மை திறன்கள். பிட்மேப்பின் சாத்தியமான மதிப்புகள் பின்வருமாறு:

மதிப்பு (பிட்)
SL_USBD_ACM_SERIAL_CALL_MGMT_DEV
SL_USBD_ACM_SERIAL_CALL_MGMT_DATA_CCI _DCI

விளக்கம்
சாதனம் அழைப்பு நிர்வாகத்தை தானே கையாளுகிறது. சாதனம் ஒரு தரவு வகுப்பு இடைமுகம் வழியாக அழைப்பு மேலாண்மை தகவலை அனுப்ப/பெற முடியும்.

p_acm_callbacks (பரிந்துரைகள்)

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

23/174

முடிந்துவிட்டதுview

aa M aa p_acm_callbacks என்பது sl_usbd_cdc_acm_callbacks_t வகையின் கட்டமைப்பிற்கான சுட்டிக்காட்டியாகும். CDC AC Cl ss CDC ACM நிகழ்வு நிகழும்போது அழைக்கப்பட வேண்டிய கால்பேக் செயல்பாடுகளின் தொகுப்பை வழங்குவதே இதன் நோக்கமாகும். அனைத்து கால்பேக்குகளும் கட்டாயமில்லை, மேலும் கால்பேக் தேவையில்லாதபோது கால்பேக்குகள் கட்டமைப்பு மாறியில் ஒரு பூஜ்ய சுட்டிக்காட்டி ( NULL ) ஐ அனுப்ப முடியும். கீழே உள்ள அட்டவணை இந்த உள்ளமைவு கட்டமைப்பில் கிடைக்கும் ஒவ்வொரு உள்ளமைவு புலத்தையும் விவரிக்கிறது.
அட்டவணை – sl_usbd_cdc_acm _callbacks_t உள்ளமைவு அமைப்பு

வயல்வெளிகள்

விளக்கம்

.இயக்கு

USB வகுப்பு நிகழ்வு இயக்கப்பட்டிருக்கும் போது அழைக்கப்படுகிறது.

வெற்றிகரமாக.

.முடக்கு

USB வகுப்பு நிகழ்வு முடக்கப்பட்டிருக்கும் போது அழைக்கப்படுகிறது.

.line_control_changed வரி கட்டுப்பாட்டு மாற்றம் பெறப்படும்போது அழைக்கப்படுகிறது.

line_coding_changed வரி குறியீட்டு மாற்றம் பெறப்படும்போது அழைக்கப்படுகிறது.

செயல்பாட்டு கையொப்பம்
void app_usbd_cdc_acm_enable(uint8_t subclass_nbr);
void app_usbd_cdc_acm_disable(uint8_t subclass_nbr);
void app_usbd_cdc_acm_line_control_changed(uint8_t subclass_nbr, uint8_t event, uint8_t event_chngd); bool app_usbd_cdc_acm_line_coding_changed(uint8_t subclass_nbr, subclass_nbr, sl_usbd_cdc_acm_line_coding_t
*p_line_coding_ப_வரி_குறியீடு

திரும்ப அழைக்கும் செயல்பாடுகளுக்கான நிகழ்வு அறிவிப்பு திரும்ப அழைக்கும் பதிவுகள் பகுதியைப் பார்க்கவும் exampலெ.
USB சாதனம் CDC ACM வகுப்பு நிரலாக்க வழிகாட்டி

இந்தப் பிரிவு CDC சுருக்கக் கட்டுப்பாட்டு மாதிரி வகுப்பை எவ்வாறு பயன்படுத்துவது என்பதை விளக்குகிறது. USB சாதன CDC ACM வகுப்பைத் துவக்குதல் உங்கள் சாதனத்தில் USB சாதன CDC ACM வகுப்பு நிகழ்வைச் சேர்த்தல் CDC ACM வகுப்பைப் பயன்படுத்தி தொடர்பு கொள்ளுதல்
USB சாதன CDC ACM வகுப்பைத் துவக்குதல்

உங்கள் சாதனத்தில் CDC ACM வகுப்பு செயல்பாட்டைச் சேர்க்க, நீங்கள் முதலில் sl_usbd_cdc_init() nd sl_usbd_cdc_acm_init() செயல்பாடுகளை செயல்படுத்துவதன் மூலம் CDC அடிப்படை வகுப்பு மற்றும் ACM துணைப்பிரிவை துவக்க வேண்டும். கீழே உள்ள எடுத்துக்காட்டு, defult rguments ஐப் பயன்படுத்தி sl_usbd_cdc_init() nd sl_usbd_cdc_acm_init() ஐ எவ்வாறு செயல்படுத்துவது என்பதைக் காட்டுகிறது.

Example – CDC ACM வகுப்பின் துவக்கம்

sl_status_t நிலை;
status = sl_usbd_cdc_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
status = sl_usbd_cdc_acm_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
உங்கள் சாதனத்தில் USB சாதன CDC ACM வகுப்பு நிகழ்வைச் சேர்த்தல்
உங்கள் சாதனத்தில் CDC ACM வகுப்பு செயல்பாட்டைச் சேர்க்க, நீங்கள் ஒரு நிகழ்வை உருவாக்கி, பின்னர் அதை உங்கள் சாதனத்தின் உள்ளமைவில் சேர்க்க வேண்டும்.
ஒரு CDC ACM வகுப்பு நிகழ்வை உருவாக்குதல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

24/174

முடிந்துவிட்டதுview
உங்கள் சாதனத்தின் உள்ளமைவுகளில் CDC ACM வகுப்பு நிகழ்வைச் சேர்த்தல் நிகழ்வு அறிவிப்பு அழைப்புகளைப் பதிவு செய்தல்
ஒரு CDC ACM வகுப்பு நிகழ்வை உருவாக்குதல்
aa M aaa sl_usbd_cdc_acm_create_instance() என்ற செயல்பாட்டை cll செய்வதன் மூலம் CDC AC cl ss instance ஐ உருவாக்கவும். T aaa M aaa கீழே உள்ள எடுத்துக்காட்டு sl_usbd_cdc_acm_create_instance() என்ற செயல்பாட்டை cll செய்வதன் மூலம் CDC AC cl ss instance ஐ எவ்வாறு உருவாக்குவது என்பதைக் காட்டுகிறது.
Example – sl_usbd_cdc_acm_create_instance() வழியாக CDC ACM செயல்பாட்டை உருவாக்குதல்

uint8_t துணைப்பிரிவு_nbr; sl_status_t நிலை;
நிலை = sl_usbd_cdc_acm_create_instance(64u, SL_USBD_ACM_SERIAL_CALL_MGMT_DATA_CCI_DCI | SL_USBD_ACM_SERIAL_CALL_MGMT_DEV, NULL, &subclass_nbr);
if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
உங்கள் சாதனத்தின் உள்ளமைவுகளில் CDC ACM வகுப்பு நிகழ்வைச் சேர்த்தல்
நீங்கள் ஒரு CDC ACM வகுப்பு நிகழ்வை உருவாக்கிய பிறகு, செயல்பாட்டை அழைப்பதன் மூலம் அதை ஒரு உள்ளமைவில் சேர்க்கலாம்.
sl_usbd_cdc_acm_add_to_configuration() .
கீழே உள்ள உதாரணம் sl_usbd_cdc_acm_add_to_configuration() ஐ எவ்வாறு cll செய்வது என்பதைக் காட்டுகிறது.
Example – USBD ACM க்கு அழைக்கவும் sl_usbd_cdc_acm_add_to_configuration()

sl_status_t நிலை;

நிலை = sl_usbd_cdc_acm_add_to_configuration(subclass_nbr,

(1)

config_nbr_fs); (con));

(2)

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

aaa (1) sl_usbd_cdc_acm_create_instance() ஆல் திருப்பி அனுப்பப்பட்ட உள்ளமைவுக்கு Cl ss எண்ணை dd க்கு மாற்றவும். (2) உள்ளமைவு எண் (இங்கே அதை முழு வேக உள்ளமைவில் சேர்க்கிறது).
நிகழ்வு அறிவிப்பு கால்பேக்குகளைப் பதிவு செய்தல்
CDC ACM சீரியல் வகுப்பு, வரி கட்டுப்பாடு அல்லது குறியீட்டில் ஏற்படும் ஏதேனும் மாற்றங்களை அறிவிப்பு கால்பேக் செயல்பாடுகள் மூலம் உங்கள் பயன்பாட்டிற்கு அறிவிக்க முடியும். ACM நிகழ்வு உருவாக்கத்தின் போது ஒரு கால்பேக் செயல்பாடுகளின் கட்டமைப்பை வாதமாக அனுப்பலாம். அந்த கால்பேக்குகள் விருப்பத்திற்குரியவை என்பதை நினைவில் கொள்ளவும். எ.கா.ample – CDC ACM கால்பேக்குகள் பதிவு, கால்பேக் பதிவு செயல்பாடுகளின் பயன்பாட்டை விளக்குகிறது. எ.கா.ample – CDC ACM கால்பேக்குகள் செயல்படுத்தல் ஒரு முன்னாள் நபரைக் காட்டுகிறதுampதிரும்ப அழைக்கும் செயல்பாடுகளை செயல்படுத்துவது எப்படி.
Example – CDC ACM கால்பேக்குகள் பதிவு

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

25/174

முடிந்துவிட்டதுview

uint8_t துணைப்பிரிவு_nbr; sl_status_t நிலை;
sl_usbd_cdc_acm_callbacks_t sli_usbd_cdc_acm_callbacks = { app_usbd_cdc_acm_connect, app_usbd_cdc_acm_disconnect, app_usbd_cdc_acm_line_control_changed, app_usbd_cdc_acm_line_coding_changed, };
நிலை = sl_usbd_cdc_acm_create_instance(64u, SL_USBD_ACM_SERIAL_CALL_MGMT_DATA_CCI_DCI | SL_USBD_ACM_SERIAL_CALL_MGMT_DEV, &sli_usbd_cdc_acm_callbacks, &subclass_nbr);
if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }
Example – CDC ACM கால்பேக்குகள் செயல்படுத்தல்

bool app_usbd_cdc_acm_line_coding_changed (uint8_t)

துணைப்பிரிவு_nbr,

sl_usbd_cdc_acm_line_coding_t *p_line_coding)

{

uint32_t பாட்ரேட்_புதிய;

uint8_t சமத்துவம்_புதிய;

புதிய_பிட்களை_நிறுத்து;

uint8_t தரவு_பிட்கள்_புதிய;

/* செய்ய வேண்டியவை புதிய வரி குறியீட்டைப் பயன்படுத்து.*/ baudrate_new = p_line_coding->BaudRate; parity_new = p_line_coding->Parity; stop_bits_new = p_line_coding->StopBits; data_bits_new = p_line_coding->DataBits;

திரும்ப (உண்மை);

(1)

}

void app_usbd_cdc_acm_line_control_changed (uint8_t subclass_nbr, uint8_t event, uint8_t event_changed)
{ பூல் rts_state; பூல் rts_state_changed; பூல் dtr_state; பூல் dtr_state_changed; பூல் brk_state; பூல் brk_state_changed;

/* செய்ய வேண்டியவை புதிய வரி கட்டுப்பாட்டைப் பயன்படுத்து. */ rts_state = ((நிகழ்வு & SL_USBD_CDC_ACM_CTRL_RTS) ! 0) ? true : false; rts_state_changed = ((நிகழ்வு_changed & SL_USBD_CDC_ACM_CTRL_RTS) ! 0) ? true : false; dtr_state = ((நிகழ்வு & SL_USBD_CDC_ACM_CTRL_DTR) ! 0) ? true : false; dtr_state_changed = ((நிகழ்வு_changed & SL_USBD_CDC_ACM_CTRL_DTR) ! 0) ? true : false; brk_state = ((நிகழ்வு & SL_USBD_CDC_ACM_CTRL_BREAK) ! 0) ? true : false; brk_state_changed = ((நிகழ்வு_மாற்றப்பட்டது & SL_USBD_CDC_ACM_CTRL_BREAK) ! 0) ? உண்மை : தவறு;
}

(1) வரி குறியீட்டைப் பயன்படுத்துவது தோல்வியுற்றால், இந்தச் செயல்பாட்டிற்கு false என்பதைத் திருப்பி அனுப்புவது முக்கியம். இல்லையெனில், true என்பதைத் திருப்பி அனுப்பவும்.
CDC ACM வகுப்பைப் பயன்படுத்தி தொடர்புகொள்வது
தொடர் நிலை
வரி குறியீட்டு வரி கட்டுப்பாடு

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

26/174

முடிந்துவிட்டதுview

லைன் ஸ்டேட் துணைப்பிரிவு நிகழ்வுத் தொடர்பு
தொடர் நிலை
வரி குறியீடு
USB ஹோஸ்ட் CDC ACM சாதனத்தின் வரி குறியீட்டை (பாட் வீதம், சமநிலை, முதலியன) கட்டுப்படுத்துகிறது. தேவைப்படும்போது, ​​வரி குறியீட்டை அமைப்பதற்கு பயன்பாடு பொறுப்பாகும். கீழே உள்ள அட்டவணையில் விவரிக்கப்பட்டுள்ளபடி, தற்போதைய வரி குறியீட்டை மீட்டெடுக்கவும் அமைக்கவும் இரண்டு செயல்பாடுகள் வழங்கப்பட்டுள்ளன.
அட்டவணை - CDC ACM வரி குறியீட்டு செயல்பாடுகள்

செயல்பாடு
sl_usbd_cdc_acm_g e t_line _co d ing ()
sl_usbd_cdc_acm_s e t_line _co d ing ()

விளக்கம்
உங்கள் பயன்பாடு, SetLineCoding கோரிக்கைகள் அல்லது sl_usbd_cdc_acm_set_line_coding() செயல்பாடு மூலம் ஹோஸ்டிலிருந்து தற்போதைய வரி குறியீட்டு அமைப்புகளைப் பெறலாம்.
உங்கள் பயன்பாடு வரி குறியீட்டை அமைக்கலாம். GetLineCoding கோரிக்கையுடன் ஹோஸ்ட் அமைப்புகளை மீட்டெடுக்கலாம்.

வரி கட்டுப்பாடு
USB ஹோஸ்ட் CDC ACM சாதனத்தின் லைன் கட்டுப்பாட்டை (RTS மற்றும் DTR பின்கள், பிரேக் சிக்னல் மற்றும் பல) கட்டுப்படுத்துகிறது. தேவைப்படும்போது, ​​லைன் கட்டுப்பாடுகளைப் பயன்படுத்துவதற்கு உங்கள் பயன்பாடு பொறுப்பாகும். கீழே உள்ள அட்டவணையில் விவரிக்கப்பட்டுள்ளபடி, தற்போதைய லைன் கட்டுப்பாடுகளை மீட்டெடுக்கவும் அமைக்கவும் ஒரு செயல்பாடு வழங்கப்படுகிறது.
அட்டவணை - CDC ACM லைன் கட்டுப்பாட்டு செயல்பாடுகள்

செயல்பாடு
sl_usb d _cd c_acm_g e t_line _co ntr o l_state ()

உங்கள் பயன்பாடு, SetControlLineState கோரிக்கையுடன் ஹோஸ்டால் அமைக்கப்பட்ட தற்போதைய கட்டுப்பாட்டு வரி நிலையைப் பெறலாம்.

வரி நிலை
USB ஹோஸ்ட் வழக்கமான இடைவெளியில் வரி நிலையை மீட்டெடுக்கிறது. உங்கள் பயன்பாடு ஒவ்வொரு முறை மாறும்போதும் வரி நிலையைப் புதுப்பிக்க வேண்டும். தேவைப்படும்போது, ​​வரி நிலையை அமைப்பதற்கு உங்கள் பயன்பாடு பொறுப்பாகும். கீழே உள்ள அட்டவணையில் விவரிக்கப்பட்டுள்ளபடி, தற்போதைய வரி கட்டுப்பாடுகளை மீட்டெடுக்கவும் அமைக்கவும் இரண்டு செயல்பாடுகள் வழங்கப்பட்டுள்ளன.
அட்டவணை - CDC ACM லைன் ஸ்டேட் செயல்பாடுகள்

செயல்பாடு
sl_usb d _cd c_acm_se t _line _state _e ven nt()
sl_usbd_cdc_acm_cle ar_line _state _e ven nt()

உங்கள் பயன்பாடு எந்த வரி நிலை நிகழ்வையும்(களை) அமைக்கலாம். வரி நிலையை அமைக்கும் போது, ​​தொடர் வரி நிலையில் ஏற்படும் மாற்றத்தைப் பற்றி தெரிவிக்க ஹோஸ்டுக்கு ஒரு குறுக்கீடு IN பரிமாற்றம் அனுப்பப்படும்.
பயன்பாடு வரி நிலையின் இரண்டு நிகழ்வுகளை அழிக்க முடியும்: பரிமாற்ற கேரியர் மற்றும் ரிசீவர் கேரியர் கண்டறிதல். மற்ற அனைத்து நிகழ்வுகளும் ACM தொடர் எமுலேஷன் துணைப்பிரிவால் சுயமாக அழிக்கப்படுகின்றன.

துணைப்பிரிவு நிகழ்வுத் தொடர்பு

சிலிக்கான் லேப்ஸின் ACM துணைப்பிரிவு ஹோஸ்டுடன் தொடர்பு கொள்ள பின்வரும் செயல்பாடுகளை வழங்குகிறது. செயல்பாடுகள்9 அளவுருக்கள் பற்றிய கூடுதல் விவரங்களுக்கு, CDC ACM துணைப்பிரிவு செயல்பாடுகள் குறிப்பைப் பார்க்கவும்.

செயல்பாட்டின் பெயர்
sl_usb d _cd c_acm_ மறு விளம்பரம் () sl_usb d _cd c_acm_write ()

ஆபரேஷன்
மொத்தமாக OUT எண்ட்பாயிண்ட் வழியாக ஹோஸ்டிலிருந்து தரவைப் பெறுகிறது. இந்த செயல்பாடு தடுக்கிறது. மொத்தமாக IN எண்ட்பாயிண்ட் வழியாக ஹோஸ்டுக்கு தரவை அனுப்புகிறது. இந்த செயல்பாடு தடுக்கிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

27/174

முடிந்துவிட்டதுview

அட்டவணை - CDC ACM தொடர்பு API சுருக்கம் aaaaa sl_usbd_cdc_acm_read() nd sl_usbd_cdc_acm_write() ஆகியவை ஒத்திசைவான தகவல்தொடர்புகளை வழங்குகின்றன, இது tr nsfer தடுக்கிறது என்பதைக் குறிக்கிறது. வேறு வார்த்தைகளில் கூறுவதானால், செயல்பாட்டை அழைக்கும்போது, ​​பிழையுடன் அல்லது இல்லாமல் பரிமாற்றம் முடியும் வரை பயன்பாடு தடுக்கப்படுகிறது. எப்போதும் காத்திருப்பதைத் தவிர்க்க ஒரு காலக்கெடுவைக் குறிப்பிடலாம். exampகீழே உள்ள le ஒரு படிக்கவும் எழுதவும் முன்னாள் காட்டுகிறது.ample என்பது மொத்த OUT எண்ட்பாயிண்டைப் பயன்படுத்தி ஹோஸ்டிலிருந்து தரவைப் பெற்று, மொத்த IN எண்ட்பாயிண்டைப் பயன்படுத்தி ஹோஸ்டுக்கு தரவை அனுப்புகிறது.
பட்டியல் - தொடர் வாசிப்பு மற்றும் எழுதுதல் Example

__சீரமைக்கப்பட்டது(4) uint8_t rx_buf[2];

__சீரமைக்கப்பட்டது(4) uint8_t tx_buf[2];

uint32_t

எக்ஸ்ஃபர்_லென்;

sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)

நிலை;

நிலை = sl_usbd_cdc_acm_read(துணை வகுப்பு_nbr,

(1)

rx_buf, (ஆர்எக்ஸ்_பஃப்,)

(2)

2u,

0u,

(3)

&எக்ஸ்ஃபர்_லென்);

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

நிலை = sl_usbd_cdc_acm_write(துணை வகுப்பு_nbr,

(1)

ட்க்ஸ்_பஃப்,

(4)

2u,

0u,

(3)

&எக்ஸ்ஃபர்_லென்);

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

T aaaaa M (1) sl_usbd_cdc_acm_create_instance() உடன் உருவாக்கப்பட்ட he cl ss instnce எண், பரிமாற்றத்தை சரியான மொத்த OUT அல்லது IN எண்ட்பாயிண்டிற்கு வழிநடத்த AC துணைப்பிரிவுக்கு n இன்டர்ன் குறிப்பை வழங்குகிறது. (2) செயல்பாட்டிற்கு வழங்கப்பட்ட இடையகம் அனைத்து தரவையும் இடமளிக்கும் அளவுக்கு பெரியதாக இருப்பதை உங்கள் பயன்பாடு உறுதி செய்ய வேண்டும். இல்லையெனில், ஒத்திசைவு சிக்கல்கள் ஏற்படக்கூடும். (3) எல்லையற்ற தடுப்பு சூழ்நிலையைத் தவிர்க்க, மில்லி விநாடிகளில் வெளிப்படுத்தப்படும் காலக்கெடுவைக் குறிப்பிடவும். 809 இன் மதிப்பு பயன்பாட்டு பணியை எப்போதும் காத்திருக்க வைக்கிறது. (4) பயன்பாடு துவக்கப்பட்ட டிரான்ஸ்மிட் பஃபரை வழங்குகிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

28/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview

USB சாதன HID வகுப்பு

USB சாதன HID வகுப்பு முடிந்துவிட்டதுview USB சாதனம் HID வகுப்பு வள ஆதாரம் மைய USB சாதனத்திலிருந்து தேவைகள் HID வகுப்பு கட்டமைப்பு USB சாதனம் HID வகுப்பு நிரலாக்க வழிகாட்டி HID காலமுறை உள்ளீட்டு அறிக்கைகள் பணி
இந்தப் பிரிவு சிலிக்கான் லேப்ஸ் USB சாதனத்தால் ஆதரிக்கப்படும் மனித இடைமுக சாதனம் (HID) வகுப்பை விவரிக்கிறது.
HID வகுப்பு என்பது மனிதர்கள் கணினி செயல்பாடுகளைக் கட்டுப்படுத்தப் பயன்படுத்தும் சாதனங்களை உள்ளடக்கியது, அதாவது விசைப்பலகைகள், எலிகள், சுட்டி சாதனங்கள் மற்றும் விளையாட்டு சாதனங்கள்.
HID வகுப்பை, கைப்பிடிகள், சுவிட்சுகள், பொத்தான்கள் மற்றும் ஸ்லைடர்கள் போன்ற கட்டுப்பாடுகளைக் கொண்ட ஒரு கூட்டு சாதனத்திலும் பயன்படுத்தலாம்.ampஆடியோ ஹெட்செட்டில் உள்ள le, மியூட் மற்றும் வால்யூம் கட்டுப்பாடுகள் ஹெட்செட்டின் HID செயல்பாட்டால் கட்டுப்படுத்தப்படுகின்றன. HID வகுப்பு கட்டுப்பாடு மற்றும் குறுக்கீடு பரிமாற்றங்களை மட்டுமே பயன்படுத்தி எந்த நோக்கத்திற்காகவும் தரவைப் பரிமாறிக்கொள்ள முடியும்.
HID வகுப்பு பழமையான மற்றும் மிகவும் பரவலாகப் பயன்படுத்தப்படும் USB வகுப்புகளில் ஒன்றாகும். அனைத்து முக்கிய ஹோஸ்ட் இயக்க முறைமைகளும் HID சாதனங்களை நிர்வகிக்க ஒரு சொந்த இயக்கியை வழங்குகின்றன, அதனால்தான் பல்வேறு விற்பனையாளர்-குறிப்பிட்ட சாதனங்கள் HID வகுப்போடு வேலை செய்கின்றன. இந்த வகுப்பில் LEDகள், ஆடியோ, தொட்டுணரக்கூடிய கருத்து போன்ற பல்வேறு வகையான வெளியீட்டு உருப்படிகளும் அடங்கும்.
HID செயல்படுத்தல் பின்வரும் விவரக்குறிப்புகளுடன் இணங்குகிறது:
மனித இடைமுக சாதனங்களுக்கான சாதன வகுப்பு வரையறை (HID), 6/27/01, பதிப்பு 1.11. யுனிவர்சல் சீரியல் பஸ் HID பயன்பாட்டு அட்டவணைகள், 10/28/2004, பதிப்பு 1.12.
USB சாதன HID வகுப்பு முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
ஒரு HID சாதனம் பின்வரும் முனைப்புள்ளிகளைக் கொண்டுள்ளது:
ஒரு ஜோடி கட்டுப்பாட்டு IN மற்றும் OUT முனைப்புள்ளிகள் இயல்புநிலை முனைப்புள்ளி எனப்படும் ஒரு குறுக்கீடு IN முனைப்புள்ளி ஒரு விருப்ப குறுக்கீடு OUT முனைப்புள்ளி
கீழே உள்ள அட்டவணை வெவ்வேறு முனைப்புள்ளிகளின் பயன்பாட்டை விவரிக்கிறது:
அட்டவணை - HID வகுப்பு எண்ட்பாயிண்ட்ஸ் பயன்பாடு

எண்ட்பாயிண்ட் திசை பயன்பாடு

கட்டுப்பாடு IN
கட்டுப்பாடு
வெளியே
குறுக்கீடு IN
குறுக்கிடவும்
வெளியே

சாதனத்திலிருந்து ஹோஸ்ட் வரை
சாதனத்திற்கு ஹோஸ்ட்
சாதனத்திலிருந்து ஹோஸ்ட் வரை
சாதனத்திற்கு ஹோஸ்ட்

கணக்கெடுப்பு, வகுப்பு சார்ந்த கோரிக்கைகள் மற்றும் தரவுத் தொடர்புக்கான நிலையான கோரிக்கைகள் (GET_REPORT கோரிக்கையுடன் ஹோஸ்டுக்கு அனுப்பப்பட்ட உள்ளீடு, அம்ச அறிக்கைகள்). கணக்கெடுப்பு, வகுப்பு சார்ந்த கோரிக்கைகள் மற்றும் தரவுத் தொடர்புக்கான நிலையான கோரிக்கைகள் (SET_REPORT கோரிக்கையுடன் ஹோஸ்டிடமிருந்து பெறப்பட்ட வெளியீடு, அம்ச அறிக்கைகள்). தரவுத் தொடர்பு (உள்ளீடு மற்றும் அம்ச அறிக்கைகள்).
தரவு தொடர்பு (வெளியீடு மற்றும் அம்ச அறிக்கைகள்).

அறிக்கை

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

29/174

முடிந்துவிட்டதுview

ஒரு ஹோஸ்ட் மற்றும் ஒரு HID சாதனம் அறிக்கைகளைப் பயன்படுத்தி தரவைப் பரிமாறிக் கொள்கின்றன. ஒரு அறிக்கையில் HID சாதனத்தின் கட்டுப்பாடுகள் மற்றும் பிற இயற்பியல் நிறுவனங்கள் பற்றிய தகவல்களை வழங்கும் வடிவமைக்கப்பட்ட தரவு உள்ளது. ஒரு கட்டுப்பாடு பயனரால் கையாளக்கூடியது மற்றும் சாதனத்தின் ஒரு அம்சத்தை இயக்குகிறது. உதாரணமாகample, ஒரு கட்டுப்பாடு என்பது ஒரு சுட்டி அல்லது விசைப்பலகையில் உள்ள ஒரு பொத்தான், ஒரு சுவிட்ச் போன்றவையாக இருக்கலாம். பிற நிறுவனங்கள் சில சாதனங்களின் அம்சங்களின் நிலையைப் பற்றி பயனருக்குத் தெரிவிக்கின்றன. உதாரணமாகample, விசைப்பலகையில் உள்ள LEDகள், caps lock இயக்கத்தில் இருப்பது, எண் விசைப்பலகை செயலில் இருப்பது போன்றவற்றைப் பற்றி பயனருக்குத் தெரிவிக்கின்றன.
அறிக்கை தரவின் வடிவம் மற்றும் பயன்பாடு, அறிக்கை விளக்கியின் உள்ளடக்கத்தை பகுப்பாய்வு செய்வதன் மூலம் ஹோஸ்ட்டால் புரிந்து கொள்ளப்படுகிறது. உள்ளடக்கத்தை பகுப்பாய்வு செய்வது ஒரு பாகுபடுத்தி மூலம் செய்யப்படுகிறது. அறிக்கை விளக்கமானது ஒரு சாதனத்தில் உள்ள ஒவ்வொரு கட்டுப்பாட்டாலும் வழங்கப்படும் தரவை விவரிக்கிறது. இது சாதனத்தைப் பற்றிய தகவல்களின் துண்டுகளைக் கொண்டது மற்றும் 1-பைட் முன்னொட்டு மற்றும் மாறி-நீளத்தைக் கொண்டுள்ளது.
தரவு. உருப்படி வடிவம் பற்றிய கூடுதல் விவரங்களுக்கு, பார்க்கவும்
1.11=, பிரிவு 5.6 மற்றும் 6.2.2.
மூன்று முக்கிய வகையான பொருட்கள் உள்ளன:
முக்கிய உருப்படி சில வகையான தரவு புலங்களை வரையறுக்கிறது அல்லது தொகுக்கிறது.
உலகளாவிய உருப்படி ஒரு கட்டுப்பாட்டின் தரவு பண்புகளை விவரிக்கிறது.
உள்ளூர் உருப்படி ஒரு கட்டுப்பாட்டின் தரவு பண்புகளை விவரிக்கிறது.
ஒவ்வொரு உருப்படி வகையும் வெவ்வேறு செயல்பாடுகளால் வரையறுக்கப்படுகிறது. ஒரு உருப்படி செயல்பாட்டை a என்றும் அழைக்கலாம். tag. ஒரு உருப்படி செயல்பாட்டை மூன்று முக்கிய உருப்படி வகைகளில் ஒன்றிற்குச் சொந்தமான துணை உருப்படியாகக் காணலாம். கீழே உள்ள அட்டவணை ஒரு சுருக்கமான விளக்கத்தை வழங்குகிறதுview ஒவ்வொரு உருப்படி வகையிலும் உள்ள உருப்படி9களின் செயல்பாடுகள். ஒவ்வொரு வகையிலும் உள்ள உருப்படிகளின் முழுமையான விளக்கத்திற்கு, பார்க்கவும்
அட்டவணை – ஒவ்வொரு பொருள் வகைக்கும் பொருளின் செயல்பாட்டு விளக்கம்

பொருள் பொருள் வகை செயல்பாடு

விளக்கம்

முக்கிய உள்ளீடு

ஒன்று அல்லது அதற்கு மேற்பட்ட இயற்பியல் கட்டுப்பாடுகளால் வழங்கப்பட்ட தரவு பற்றிய தகவலை விவரிக்கிறது.

முக்கிய வெளியீடு சாதனத்திற்கு அனுப்பப்பட்ட தரவை விவரிக்கிறது.

முக்கிய அம்சம்

சாதனத்தின் ஒட்டுமொத்த நடத்தையை அல்லது அதன் கூறுகளில் ஒன்றைப் பாதிக்கும் சாதனத்திற்கு அனுப்பப்பட்ட அல்லது பெறப்பட்ட சாதன உள்ளமைவுத் தகவலை விவரிக்கிறது.

முக்கிய சேகரிப்பு குழு தொடர்பான உருப்படிகள் (உள்ளீடு, வெளியீடு அல்லது அம்சம்).

தொகுப்பை மூடுகிறது என்பதன் முக்கிய முடிவு. தொகுப்பு

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

30/174

முடிந்துவிட்டதுview

பொருள் பொருள் வகை செயல்பாடு

விளக்கம்

உலகளாவிய பயன்பாட்டு பக்கம்

சாதனத்திற்குள் கிடைக்கும் ஒரு செயல்பாட்டைக் கண்டறியிறது.

தருக்க அலகுகளில் அறிக்கையிடப்பட்ட மதிப்புகளின் குறைந்த வரம்பை உலகளாவிய தருக்கவியல் வரையறுக்கிறது. குறைந்தபட்சம்

தருக்க அலகுகளில் அறிக்கையிடப்பட்ட மதிப்புகளின் மேல் வரம்பை உலகளாவிய தருக்கவியல் வரையறுக்கிறது. அதிகபட்சம்

உலகளாவிய இயற்பியல் என்பது இயற்பியல் அலகுகளில் தெரிவிக்கப்பட்ட மதிப்புகளின் குறைந்த வரம்பை வரையறுக்கிறது, அதாவது இயற்பியல் அலகுகளில் வெளிப்படுத்தப்படும் தருக்க குறைந்தபட்ச குறைந்தபட்சம்.

உலகளாவிய இயற்பியல் என்பது இயற்பியல் அலகுகளில் தெரிவிக்கப்பட்ட மதிப்புகளின் மேல் வரம்பை வரையறுக்கிறது, அதாவது இயற்பியல் அலகுகளில் வெளிப்படுத்தப்படும் தருக்க அதிகபட்ச அதிகபட்சம்.

உலகளாவிய அலகு

அடிப்படை 10 இல் அலகு அடுக்குக்குறியைக் குறிக்கிறது. அடுக்குக்குறி -8 முதல் +7 வரை இருக்கும்.

அடுக்கு

உலகளாவிய அலகு

அறிக்கையிடப்பட்ட மதிப்புகளின் அலகைக் குறிக்கிறது. எடுத்துக்காட்டாக, நீளம், நிறை, வெப்பநிலை அலகுகள் போன்றவை.

உலகளாவிய அறிக்கை அளவு

அறிக்கை புலங்களின் அளவை பிட்களில் குறிக்கிறது.

உலகளாவிய அறிக்கை ஐடி என்பது ஒரு குறிப்பிட்ட அறிக்கையில் சேர்க்கப்பட்ட முன்னொட்டைக் குறிக்கிறது.

உலகளாவிய அறிக்கை எண்ணிக்கை

ஒரு உருப்படிக்கான தரவு புலங்களின் எண்ணிக்கையைக் குறிக்கிறது.

உலகளாவிய புஷ்

CPU அடுக்கில் உலகளாவிய உருப்படி நிலை அட்டவணையின் நகலை வைக்கிறது.

உலகளாவிய பாப்

உருப்படி நிலை அட்டவணையை அடுக்கிலிருந்து கடைசி அமைப்புடன் மாற்றுகிறது.

உள்ளூர் பயன்பாடு

ஒரு பயன்பாட்டுப் பக்கத்திற்குள் ஒரு குறிப்பிட்ட பயன்பாட்டைக் குறிக்க ஒரு குறியீட்டைக் குறிக்கிறது. இது ஒரு குறிப்பிட்ட கட்டுப்பாடு அல்லது கட்டுப்பாடுகளின் குழுவிற்கு விற்பனையாளர் பரிந்துரைத்த பயன்பாட்டைக் குறிக்கிறது. ஒரு பயன்பாடு ஒரு கட்டுப்பாடு உண்மையில் என்ன அளவிடுகிறது என்பது பற்றிய தகவலை ஒரு பயன்பாட்டு டெவலப்பருக்கு வழங்குகிறது.

உள்ளூர் பயன்பாடு

ஒரு அணிவரிசை அல்லது பிட்மேப்புடன் தொடர்புடைய தொடக்கப் பயன்பாட்டை வரையறுக்கிறது.

குறைந்தபட்சம்

உள்ளூர் பயன்பாடு

ஒரு அணிவரிசை அல்லது பிட்மேப்புடன் தொடர்புடைய இறுதிப் பயன்பாட்டை வரையறுக்கிறது.

அதிகபட்சம்

உள்ளூர் வடிவமைப்பாளர் ஒரு கட்டுப்பாட்டிற்குப் பயன்படுத்தப்படும் உடல் பகுதியைத் தீர்மானிக்கிறார். குறியீட்டு எண் இயற்பியலில் ஒரு வடிவமைப்பாளரைக் குறிக்கிறது.

குறியீட்டு

விவரிப்பாளர்.

லோக்கல் டிசைனேட்டர் ஒரு வரிசை அல்லது பிட்மேப்புடன் தொடர்புடைய தொடக்க டிசைனேட்டரின் குறியீட்டை வரையறுக்கிறது. குறைந்தபட்சம்

லோக்கல் டிசைனேட்டர் என்பது ஒரு வரிசை அல்லது பிட்மேப்புடன் தொடர்புடைய முடிவு டிசைனேட்டரின் குறியீட்டை வரையறுக்கிறது. அதிகபட்சம்

உள்ளூர் சர அட்டவணை

ஒரு சர விளக்கிக்கான சர அட்டவணை. இது ஒரு சரத்தை ஒரு குறிப்பிட்ட உருப்படி அல்லது கட்டுப்பாட்டுடன் இணைக்க அனுமதிக்கிறது.

உள்ளூர் சரம்

ஒரு வரிசையில் உள்ள கட்டுப்பாடுகளுக்கு தொடர்ச்சியான சரங்களின் குழுவை ஒதுக்கும்போது முதல் சர குறியீட்டைக் குறிப்பிடுகிறது.

குறைந்தபட்சம் அல்லது பிட்மேப்.

உள்ளூர் உள்ளூர்

அதிகபட்ச சரம்
பிரிப்பான்

ஒரு வரிசை அல்லது பிட்மேப்பில் உள்ள கட்டுப்பாடுகளுக்கு தொடர்ச்சியான சரங்களின் குழுவை ஒதுக்கும்போது கடைசி சர குறியீட்டைக் குறிப்பிடுகிறது.
உள்ளூர் உருப்படிகளின் தொகுப்பின் தொடக்கம் அல்லது முடிவை வரையறுக்கிறது.

ஒரு கட்டுப்பாட்டுத் தரவு குறைந்தபட்சம் பின்வரும் உருப்படிகளை வரையறுக்க வேண்டும்:
உள்ளீடு, வெளியீடு அல்லது அம்சம் முக்கிய உருப்படிகள் பயன்பாடு உள்ளூர் உருப்படி பயன்பாட்டு பக்கம் உலகளாவிய உருப்படி தருக்க குறைந்தபட்ச உலகளாவிய உருப்படி தருக்க அதிகபட்ச உலகளாவிய உருப்படி அறிக்கை அளவு உலகளாவிய உருப்படி

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

31/174

முடிந்துவிட்டதுview
அறிக்கை எண்ணிக்கை உலகளாவிய உருப்படி கீழே உள்ள அட்டவணை ஹோஸ்ட் HID பாகுபடுத்தி பார்வையில் இருந்து ஒரு மவுஸ் அறிக்கை விளக்க உள்ளடக்கத்தின் பிரதிநிதித்துவத்தைக் காட்டுகிறது. மவுஸில் மூன்று பொத்தான்கள் உள்ளன (இடது, வலது மற்றும் சக்கரம்). ex இல் வழங்கப்பட்ட குறியீடுampஇந்த சுட்டி அறிக்கை விளக்க பிரதிநிதித்துவத்துடன் தொடர்புடைய குறியீடு செயல்படுத்தல் கீழே உள்ளது.
படம் - ஹோஸ்ட் HID பாகுபடுத்தியிலிருந்து விளக்க உள்ளடக்கத்தைப் புகாரளிக்கவும் View

(1) பயன்பாட்டுப் பக்க உருப்படி செயல்பாடு சாதனத்தின் பொதுவான செயல்பாட்டைக் குறிப்பிடுகிறது. இந்த எடுத்துக்காட்டில்ample, HID சாதனம் a க்கு சொந்தமானது
பொதுவான டெஸ்க்டாப் கட்டுப்பாடு.
(2) தொகுப்பு பயன்பாட்டுக் குழுக்கள் பொதுவான நோக்கத்தைக் கொண்ட முக்கிய உருப்படிகள் மற்றும் பயன்பாடுகளுக்கு நன்கு தெரிந்திருக்கலாம். வரைபடத்தில், குழு மூன்று உள்ளீட்டு முக்கிய உருப்படிகளைக் கொண்டுள்ளது. இந்தத் தொகுப்பிற்கு, கட்டுப்பாடுகளுக்கான பரிந்துரைக்கப்பட்ட பயன்பாடு பயன்பாட்டு உருப்படியால் சுட்டிக்காட்டப்பட்டபடி ஒரு சுட்டி ஆகும். (3) பயன்பாடுகளுக்கு ஒற்றைக் கட்டுப்பாடு அல்லது கட்டுப்பாடுகளின் குழுவின் பயன்பாடு பற்றிய கூடுதல் விவரங்களை வழங்க உள்ளமைக்கப்பட்ட சேகரிப்புகள் பயன்படுத்தப்படலாம். இந்த எடுத்துக்காட்டில்ample, சேகரிப்பு பயன்பாட்டில் உள்ளமைக்கப்பட்ட சேகரிப்பு இயற்பியல், சேகரிப்பு பயன்பாட்டை உருவாக்கும் அதே மூன்று உள்ளீட்டு உருப்படிகளால் ஆனது. சேகரிப்பு இயற்பியல் என்பது ஒரு வடிவியல் புள்ளியில் சேகரிக்கப்பட்ட தரவு புள்ளிகளைக் குறிக்கும் தரவு உருப்படிகளின் தொகுப்பிற்குப் பயன்படுத்தப்படுகிறது. உதாரணமாகampஆம், பரிந்துரைக்கப்பட்ட பயன்பாடு பயன்பாட்டு உருப்படியால் குறிப்பிடப்பட்டுள்ளபடி ஒரு சுட்டிக்காட்டி ஆகும். இங்கே சுட்டிக்காட்டி பயன்பாடு சுட்டி நிலை ஆயத்தொலைவுகளைக் குறிக்கிறது மற்றும் கணினி மென்பொருள் திரை கர்சரின் இயக்கத்தில் சுட்டி ஆயத்தொலைவுகளை மொழிபெயர்க்கும். (4) உள்ளமைக்கப்பட்ட பயன்பாட்டு பக்கங்களும் சாத்தியமாகும், மேலும் சாதனத்தின் பொதுவான செயல்பாட்டிற்குள் ஒரு குறிப்பிட்ட அம்சத்தைப் பற்றிய கூடுதல் விவரங்களைத் தரும். இந்த வழக்கில், இரண்டு உள்ளீட்டு உருப்படிகள் தொகுக்கப்பட்டு சுட்டியின் பொத்தான்களுடன் ஒத்திருக்கும். ஒரு உள்ளீட்டு உருப்படி சுட்டியின் மூன்று பொத்தான்களை (வலது, இடது மற்றும் சக்கரம்) உருப்படிக்கான தரவு புலங்களின் எண்ணிக்கை (அறிக்கை எண்ணிக்கை உருப்படி), ஒரு தரவு புலத்தின் அளவு (அறிக்கை அளவு உருப்படி) மற்றும் ஒவ்வொரு தரவு புலத்திற்கும் சாத்தியமான மதிப்புகள் (பயன்பாட்டு குறைந்தபட்ச மற்றும் அதிகபட்சம், தருக்க குறைந்தபட்ச மற்றும் அதிகபட்ச உருப்படிகள்) ஆகியவற்றின் அடிப்படையில் வரையறுக்கிறது. மற்ற உள்ளீட்டு உருப்படி 13-பிட் மாறிலியாகும், இது உள்ளீட்டு அறிக்கை தரவை ஒரு பைட் எல்லையில் சீரமைக்க அனுமதிக்கிறது. இந்த உள்ளீட்டு உருப்படி திணிப்பு நோக்கத்திற்காக மட்டுமே பயன்படுத்தப்படுகிறது. (5) ஒரு பொதுவான டெஸ்க்டாப் கட்டுப்பாட்டைக் குறிக்கும் மற்றொரு உள்ளமைக்கப்பட்ட பயன்பாட்டுப் பக்கம் சுட்டி நிலை ஆயத்தொலைவுகளுக்கு வரையறுக்கப்படுகிறது. இந்தப் பயன்பாட்டுப் பக்கத்திற்கு, உள்ளீட்டு உருப்படியானது, இரண்டு பயன்பாட்டுப் பிரிவுகளால் குறிப்பிடப்பட்டுள்ளபடி, x- மற்றும் y-அச்சுக்கு ஒத்த தரவு புலங்களை விவரிக்கிறது.
பொருட்கள்.
முந்தைய மவுஸைப் பகுப்பாய்வு செய்த பிறகு, ஹோஸ்ட்9s HID பாகுபடுத்தி, சாதனத்தால் அனுப்பப்பட்ட உள்ளீட்டு அறிக்கைத் தரவை ஒரு குறுக்கீடு IN பரிமாற்றம் அல்லது GET_REPORT கோரிக்கைக்கு பதிலளிக்கும் விதமாக விளக்க முடியும். மவுஸுடன் தொடர்புடைய உள்ளீட்டு அறிக்கைத் தரவு படம் - ஹோஸ்ட் HID பாகுபடுத்தியிலிருந்து அறிக்கை விளக்க உள்ளடக்கத்தில் காட்டப்பட்டுள்ளது. View is

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

32/174

முடிந்துவிட்டதுview

கீழே உள்ள அட்டவணையில் காட்டப்பட்டுள்ளது. அறிக்கை தரவின் மொத்த அளவு 4 பைட்டுகள். வெவ்வேறு வகையான அறிக்கைகள் ஒரே இறுதிப் புள்ளியில் அனுப்பப்படலாம். வெவ்வேறு வகையான அறிக்கைகளை வேறுபடுத்தும் நோக்கத்திற்காக, தரவு அறிக்கையில் 1-பைட் அறிக்கை ஐடி முன்னொட்டு சேர்க்கப்படும். ex இல் ஒரு அறிக்கை ஐடி பயன்படுத்தப்பட்டிருந்தால்ampசுட்டி அறிக்கையின் மொத்த அளவு 5 பைட்டுகள் இருக்கும்.
அட்டவணை - உள்ளீட்டு அறிக்கை ஹோஸ்டுக்கு அனுப்பப்பட்டது மற்றும் 3 பொத்தான்கள் கொண்ட மவுஸின் நிலைக்கு ஒத்திருக்கிறது.

பிட் ஆஃப்செட்
0 1 2 3 16 24

பிட் எண்ணிக்கை 1 1 1 13 8 8

விளக்கம் பொத்தான் 1 (இடது பொத்தான்). பொத்தான் 2 (வலது பொத்தான்). பொத்தான் 3 (சக்கர பொத்தான்). பயன்படுத்தப்படவில்லை. அச்சு X இல் நிலை. அச்சு Y இல் நிலை.

ஒரு இயற்பியல் விளக்கி, ஒரு கட்டுப்பாடு அல்லது கட்டுப்பாடுகளைச் செயல்படுத்த நோக்கம் கொண்ட உடலின் பகுதி அல்லது பகுதிகளைக் குறிக்கிறது. ஒரு பயன்பாடு ஒரு சாதனத்தின் கட்டுப்பாட்டுக்கு ஒரு செயல்பாட்டை ஒதுக்க இந்தத் தகவலைப் பயன்படுத்தலாம். இயற்பியல் விளக்கி என்பது விருப்பத்தேர்வு வகுப்பு-குறிப்பிட்ட விளக்கியாகும், மேலும் பெரும்பாலான சாதனங்கள் அதைப் பயன்படுத்துவதில் சிறிய லாபத்தைக் கொண்டுள்ளன. பார்க்கவும்
மையத்திலிருந்து USB சாதன HID வகுப்பு வளத் தேவைகள்

sl_usbd_hid_add_to_configuration() செயல்பாட்டிற்கு அழைப்பு மூலம் USB உள்ளமைவில் HID வகுப்பு நிகழ்வைச் சேர்க்கும் ஒவ்வொரு முறையும், பின்வரும் வளங்கள் மையத்திலிருந்து ஒதுக்கப்படும்.

வளம்
இடைமுகங்கள் மாற்று இடைமுகங்கள் இறுதிப்புள்ளிகள் இடைமுகக் குழுக்கள்

அளவு
1 1 1 (2 குறுக்கீடு OUT எண்ட்பாயிண்ட் இயக்கப்பட்டிருந்தால்) 0

அந்த எண்கள் உள்ளமைவுக்குரியவை என்பதை நினைவில் கொள்ளவும். உங்கள் SL_USBD_INTERFACE_QUANTITY , SL_USBD_ALT_INTERFACE_QUANTITY , SL_USBD_INTERFACE_GROUP_QUANTITY மற்றும் SL_USBD_DESCRIPTOR_QUANTITY உள்ளமைவு மதிப்புகளை அமைக்கும் போது, ​​வகுப்பு எத்தனை உள்ளமைவுகளைச் சேர்க்கும் என்பதைக் கணக்கில் எடுத்துக்கொள்ள மறக்காதீர்கள். SL_USBD_OPEN_ENDPOINTS_QUANTITY உள்ளமைவு மதிப்புக்கு, ஹோஸ்டால் உள்ளமைவு அமைக்கப்படும் போது மட்டுமே இறுதிப் புள்ளிகள் திறக்கப்படும் என்பதால், ஒரு வகுப்பு நிகழ்வுக்குத் தேவையான இறுதிப் புள்ளிகளின் எண்ணிக்கையை நீங்கள் கணக்கில் எடுத்துக்கொள்ள வேண்டும்.
USB சாதன HID வகுப்பு உள்ளமைவு

HID வகுப்பை உள்ளமைக்க இரண்டு குழுக்கள் உள்ளமைவு அளவுருக்கள் பயன்படுத்தப்படுகின்றன:
USB சாதனம் HID வகுப்பு பயன்பாடு-குறிப்பிட்ட கட்டமைப்புகள் USB சாதனம் HID வகுப்பு நிகழ்வு கட்டமைப்புகள்
USB சாதன HID வகுப்பு பயன்பாடு-குறிப்பிட்ட உள்ளமைவுகள்

முதலில், சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதன HID வகுப்பு தொகுதியைப் பயன்படுத்த, உங்கள் பயன்பாட்டுத் தேவைகளுக்கு ஏற்ப HID தொகுத்தல்-நேர உள்ளமைவு வரையறைகளை சரிசெய்யவும். அவை sl_usbd_core_config.h தலைப்புக்குள் மீண்டும் தொகுக்கப்படுகின்றன. file HID பிரிவின் கீழ். அவற்றை அளவு உள்ளமைவுகள் மற்றும் HID பணி உள்ளமைவுகள் என இரண்டு பிரிவுகளாகப் பிரிக்கலாம். அளவு உள்ளமைவுகளின் நோக்கம், எத்தனை USB HID பொருள்களை ஒதுக்க வேண்டும் என்பது குறித்து USB சாதன தொகுதிக்குத் தெரிவிப்பதாகும்.
கீழே உள்ள அட்டவணை ஒவ்வொரு உள்ளமைவு வரையறையையும் விவரிக்கிறது.
அட்டவணை - USB சாதன HID உள்ளமைவு வரையறுக்கிறது

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

33/174

முடிந்துவிட்டதுview

கட்டமைப்பு பெயர்
SL_USBD_HID_CL ASS_I NSTANCE_QUANTITY
SL_USBD_HID_URATION_QUANTITY ஐ உள்ளமைக்கவும்
SL_USBD_HID_REPORT_ ஐடி_QUANTITY
SL_USBD_HID_PUSH_P OP_ITEM_QUANTITY
SL_USBD_HID_TIMER_T ASK_STACK_SIZE
SL_USBD_HID_TIMER_T ASK_PRIORITY க்கு

விளக்கம்
செயல்பாட்டிற்கு அழைப்பு மூலம் நீங்கள் ஒதுக்கும் வகுப்பு நிகழ்வுகளின் எண்ணிக்கை
sl_usbd_hid_create_instance() ஐப் பயன்படுத்தி உருவாக்கவும்.
உள்ளமைவுகளின் எண்ணிக்கை. HID வகுப்பு நிகழ்வுகளை sl_usbd_hid_add_to_configuration() செயல்பாட்டிற்குச் சொந்தமான ஒன்று அல்லது அதற்கு மேற்பட்ட aaaa உள்ளமைவுகளில் சேர்க்கலாம். ஒதுக்க வேண்டிய மொத்த அறிக்கை ஐடிகளின் எண்ணிக்கையை உள்ளமைக்கிறது.
ஒதுக்க வேண்டிய மொத்த புஷ்/பாப் உருப்படிகளின் எண்ணிக்கையை உள்ளமைக்கிறது.
டைமர் பணி அனைத்து டைமர் அடிப்படையிலான HID செயல்பாடுகளையும் கையாளுகிறது. இந்த உள்ளமைவு ஸ்டாக் அளவை (பைட்டுகளின் எண்ணிக்கையில்) அமைக்க உங்களை அனுமதிக்கிறது. HID பணியின் முன்னுரிமை. இது ஒரு CMSIS-RTOS2 முன்னுரிமை.

இயல்புநிலை மதிப்பு
2 1 2 0 2048
முன்னுரிமை உயர்

USB சாதனம் HID வகுப்பு நிகழ்வு கட்டமைப்புகள் வகுப்பு நிகழ்வு உருவாக்கம் துணைப்பிரிவு
நெறிமுறை நாட்டின்_குறியீடு
interval_in மற்றும் interval_out p_hid_callback HID வகுப்பு அறிக்கை விளக்கி Example இந்தப் பிரிவு HID வகுப்பு நிகழ்வுகளுடன் தொடர்புடைய உள்ளமைவுகளை வரையறுக்கிறது.
வகுப்பு நிகழ்வு உருவாக்கம்
ஒரு HID வகுப்பு நிகழ்வை உருவாக்குவது aaa sl_usbd_hid_create_instance() செயல்பாட்டை அழைப்பதன் மூலம் செய்யப்படுகிறது, இது கீழே விவரிக்கப்பட்டுள்ள உள்ளமைவு வாதங்களை பிரிக்கிறது.
துணைப்பிரிவு
HID துணைப்பிரிவின் குறியீடு. சாத்தியமான மதிப்புகள்:
SL_USBD_HID_SUBCL ASS_NONE SL_USBD_HID_SUBCL ASS_BOOT
துவக்க துணைப்பிரிவைப் பயன்படுத்தும் ஒரு HID சாதனம் நிலையான அறிக்கை வடிவங்களைப் பயன்படுத்த வேண்டும். துணைப்பிரிவு குறியீடுகள் பற்றிய கூடுதல் தகவலுக்கு, HID விவரக்குறிப்பு திருத்தம் 1.11 இன் பிரிவு 4.2 ஐப் பார்க்கவும்.
நெறிமுறை
HID சாதனத்தால் பயன்படுத்தப்படும் நெறிமுறை. சாத்தியமான மதிப்புகள்:
SL_USBD_HID_PROTOCOL_இல்லை SL_USBD_HID_PROTOCOL_KBD SL_USBD_HID_PROTOCOL_மவுஸ்
உங்கள் HID செயல்பாடு ஒரு மவுஸாக இருந்தால், நெறிமுறை aa SL_USBD_HID_PROTOCOL_MOUSE ஆக அமைக்கப்பட வேண்டும். அது விசைப்பலகையாக இருந்தால், அது O SL_USBD_HID_PROTOCOL_KBD ஆக அமைக்கப்பட வேண்டும். அதன்படி, நெறிமுறை SL_USBD_HID_PROTOCOL_NONE ஆக அமைக்கப்பட வேண்டும். துணைப்பிரிவு குறியீடுகள் பற்றிய கூடுதல் தகவலுக்கு, HID விவரக்குறிப்பு திருத்தம் 1.11 இன் பிரிவு 4.3 ஐப் பார்க்கவும்.
நாட்டின்_குறியீடு
நாட்டின் குறியீட்டின் ஐடி. சாத்தியமான மதிப்புகள்:
SL_USBD_HID_CODE_ஆதரிக்கப்படவில்லை

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

34/174

முடிந்துவிட்டதுview
SL_USBD_HID_CODE_ARABIC SL_USBD_HID_CODE_CODE_BELGIAN SL_USBD_HID_COUNTRY_CODE_CANADIAN_BILINGUAL SL_USBD_HID_COUNTRY_CODE_CNADIAN_FRENCH SL_USBD_HID_COUNTRY_CODE_CZECH_REPUBLIC SL_USBD_HID_COUNTRY_CODE_DANISH SL_USBD_HID_COUNTRY_CODE_FRENCH SL_USBD_HID_COUNTRY_CODE_FRENCH SL_USBD_HID_COUNTRY_CODE_GREEMAN SL_USBD_HID_COUNTRY_CODE_GREEK SL_USBD_HID_COUNTRY_CODE_HUNGARY SL_USBD_HID_COUNTRY_CODE_INTERNATIONAL SL_USBD_HID_CODE_ITALIAN SL_USBD_HID_CODE_CODE_JAPAN_KATAKANA SL_USBD_HID_CODE_COREAN SL_USBD_HID_CODE_KOREAN SL_USBD_HID_CODE_NETHERL ANDS_DUTCH SL_USBD_HID_COUNTRY_CODE_NORWEGIAN SL_USBD_HID_COUNTRY_CODE_PERSIAN_FARSI SL_USBD_HID_COUNTRY_CODE_POL மற்றும் SL_USBD_HID_COUNTRY_CODE_PORTUGUESE SL_USBD_HID_COUNTRY_CODE_RUSSIA SL_USBD_HID_COUNTRY_CODE_SLOVAKIA SL_USBD_HID_COUNTRY_CODE_SPANISH SL_USBD_HID_COUNTRY_CODE_SWEDISH SL_USBD_HID_CODE_SWISS_FRENCH SL_USBD_HID_CODE_CODE_SWISS_GERMAN SL_USBD_HID_COUNTRY_CODE_SWITZERL மற்றும் SL_USBD_HID_COUNTRY_CODE_TAIWAN SL_USBD_HID_COUNTRY_CODE_UG OSL AVIA SL_USBD_HID_COUNTRY_CODE_TURKISH_F
நாட்டின் குறியீடு, வன்பொருள் எந்த நாட்டிற்கு மொழிபெயர்க்கப்பட்டுள்ளது என்பதைக் குறிக்கிறது. பெரும்பாலான வன்பொருள் உள்ளூர்மயமாக்கப்படவில்லை, எனவே இந்த அங்கீகாரம் SL_USBD_HID_COUNTRY_CODE_NOT_SUPPORTED (0) ஆக இருக்கும். இருப்பினும், விசை அட்டைகளின் மொழியைக் குறிக்க விசைப்பலகைகள் புலத்தைப் பயன்படுத்துகின்றன.
நாட்டுக் குறியீடுகள் பற்றிய கூடுதல் தகவலுக்கு, HID விவரக்குறிப்பு திருத்தம் 1.11 இன் பிரிவு 6.2.1 ஐப் பார்க்கவும்.
interval_in மற்றும் interval_out
interval_in மற்றும் interval_out ஆகியவை IN குறுக்கீடு முனைப்புள்ளி மற்றும் OUT குறுக்கீடு முனைப்புள்ளியின் வாக்குப்பதிவு இடைவெளியைக் குறிக்கின்றன.
இது இறுதிப்புள்ளியின் வாக்குப்பதிவு இடைவெளியை மில்லி விநாடிகளில் குறிக்கிறது. இந்த மதிப்பை அமைப்பது, உங்கள் சாதனம் ஹோஸ்டுக்கு ஒரு புதிய அறிக்கையை எவ்வளவு அடிக்கடி உருவாக்க வாய்ப்புள்ளது என்பதைப் பொறுத்தது. உதாரணமாக, ஒவ்வொரு 16 மில்லி விநாடிகளுக்கும் ஒரு அறிக்கை உருவாக்கப்பட்டால், இடைவெளி 16 அல்லது அதற்கும் குறைவாக இருக்க வேண்டும்.
மதிப்பு 2 (1, 2, 4, 8, 16, முதலியன) சக்தியாக இருக்க வேண்டும்.
ctrl_rd_en உண்மை என அமைக்கப்பட்டால், interval_out v lue புறக்கணிக்கப்படும்.
p_hid_callback
aaaa p_hid_callback என்பது sl_usbd_hid_callbacks_t வகையின் கட்டமைப்பிற்கான சுட்டிக்காட்டியாகும். HID நிகழ்வு நிகழும்போது அழைக்கப்பட வேண்டிய HID Cl ss கால்பேக் செயல்பாடுகளின் தொகுப்பை வழங்குவதே இதன் நோக்கமாகும்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

35/174

முடிந்துவிட்டதுview

அனைத்து கால்பேக்குகளும் கட்டாயமில்லை, மேலும் கால்பேக்குகள் தேவையில்லாதபோது கால்பேக்குகள் கட்டமைப்பு மாறியில் ஒரு பூஜ்ய சுட்டிக்காட்டி ( NULL ) ஐ அனுப்ப முடியும். கீழே உள்ள அட்டவணை இந்த உள்ளமைவு கட்டமைப்பில் கிடைக்கும் ஒவ்வொரு உள்ளமைவு புலத்தையும் விவரிக்கிறது.
அட்டவணை – sl_usbd_hid_callbacks_t உள்ளமைவு அமைப்பு

வயல்வெளிகள்

விளக்கம்

செயல்பாட்டு கையொப்பம்

.செயல்படுத்து .முடக்கு .get_report_desc
.கெட்_ஃபை_டெஸ்க்
.set_output_report .feature_report பெறு .set_feature_report

USB வகுப்பு நிகழ்வு வெற்றிகரமாக இயக்கப்படும்போது அழைக்கப்படுகிறது. USB வகுப்பு நிகழ்வு முடக்கப்படும்போது அழைக்கப்படுகிறது.
உங்கள் அறிக்கை விளக்கத்தை அனுப்ப HID நிகழ்வு உருவாக்கத்தின் போது அழைக்கப்படுகிறது. உங்கள் ஒவ்வொரு HID செயல்பாடுகளுக்கும், நீங்கள் ஒரு அறிக்கை விளக்கத்தை வழங்க வேண்டும். அறிக்கை விளக்கி, சாதனத்தால் அனுப்பப்படும் காலமுறை அறிக்கையை எவ்வாறு பாகுபடுத்த வேண்டும் என்பதை ஹோஸ்டுக்குக் குறிக்கிறது. உங்கள் சொந்த அறிக்கை விளக்கியை எழுதுவது சவாலானது, அதனால்தான் உதவ சில ஆதாரங்கள் உள்ளன. இது மட்டுமே கட்டாய அழைப்பு திரும்பும் செயல்பாடு. உங்கள் இயற்பியல் விளக்கத்தை அனுப்ப HID நிகழ்வு உருவாக்கத்தின் போது அழைக்கப்படுகிறது. இயற்பியல் விளக்கி என்பது ஒரு கட்டுப்பாடு அல்லது கட்டுப்பாடுகளை செயல்படுத்தும் மனித உடலின் குறிப்பிட்ட பகுதி அல்லது பாகங்கள் பற்றிய தகவலை வழங்கும் ஒரு விளக்கியாகும். இயற்பியல் விளக்கிகளைப் பற்றிய கூடுதல் தகவலுக்கு, HID விவரக்குறிப்பு திருத்தம் 1.11 இன் பிரிவு 6.2.3 ஐப் பார்க்கவும். இயற்பியல் விளக்கி விருப்பமானது மற்றும் பெரும்பாலான நேரம் புறக்கணிக்கப்படுகிறது. இங்கே அனுப்பப்பட்ட இடையகத்தை NULL ஆகவும் நீளம் 0 ஆகவும் அமைக்கலாம். ஹோஸ்ட் உங்கள் அறிக்கை விளக்கியில் விவரிக்கப்பட்டுள்ளபடி ஒரு அறிக்கையை அமைக்கும்போது (அது ஒரு அறிக்கையை அனுப்பும்போது) அழைக்கப்படுகிறது.
உங்கள் அறிக்கை விளக்கத்தில் விவரிக்கப்பட்டுள்ளபடி, ஹோஸ்ட் ஒரு அம்ச அறிக்கையைக் கோரும்போது அழைக்கப்படுகிறது.
உங்கள் அறிக்கை விளக்கத்தில் விவரிக்கப்பட்டுள்ளபடி, ஹோஸ்ட் ஒரு அம்ச அறிக்கையை அமைக்கும்போது அழைக்கப்படுகிறது.

void app_usbd_hid_enable(uint8_t class_nbr); void app_usbd_hid_disable(uint8_t class_nbr); void app_usbd_hid_get_report_desc(uint8_t class_nbr, const uint8_t *p_report_ptr, uint16_tp_report_len);
void app_usbd_hid_get_phy_desc(uint8_t class_nbr, const uint8_t *p_report_ptr, uint16_tp_report_len);
void app_usbd_hid_set_output_report(uint8_t class_nbr, uint8_t report_id, uint8_t *p_report_buf, uint16_t report_len); void app_usbd_hid_get_feature_report(uint8_t class_nbr, uint8_t report_id, uint8_t *p_report_buf, uint16_t report_len); void app_usbd_hid_s

.நெறிமுறையைப் பெறுங்கள்

தற்போதைய செயலில் உள்ள நெறிமுறையை மீட்டெடுக்கிறது.

void app_usbd_hid_get_protocol(uint8_t class_nbr, uint8_t *p_protocol);

.செட்_ப்ரோட்டோகால்

தற்போதைய செயலில் உள்ள நெறிமுறையை அமைக்கிறது.

void app_usbd_hid_set_protocol(uint8_t class_nbr, uint8_t நெறிமுறை);

HID வகுப்பு அறிக்கை விளக்கி Example

சிலிக்கான் லேப்ஸின் HID வகுப்புகள்ample விண்ணப்பம் ஒரு முன்னாள் வழங்குகிறதுampஒரு எளிய சுட்டிக்கான அறிக்கை விளக்கியின் le. exampகீழே உள்ள le ஒரு சுட்டி அறிக்கை விளக்கத்தைக் காட்டுகிறது.
Example – மவுஸ் ரிப்போர்ட் டிஸ்க்ரிப்டர்

நிலையான uint8_t app_usbd_hid_report_desc[] = {

(1) (2)

SL_USBD_HID_GLOBAL_USAGE_PAGE + 1, SL_USBD_HID_USAGE_PAGE_GENERIC_DESKTOP_CONTROLS,

SL_USBD_HID_LOCAL_USAGE + 1, SL_USBD_HID_CA_மவுஸ்,

(3)

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

36/174

முடிந்துவிட்டதுview

SL_USBD_HID_MAIN_COLLECTION +1, SL_USBD_HID_COLLECTION_APPLICATION,(4)

SL_USBD_HID_LOCAL_USAGE +1, SL_USBD_HID_CP_POINTER,(5)

SL_USBD_HID_MAIN_COLLECTION +1, SL_USBD_HID_COLLECTION_PHYSICAL,(6)

SL_USBD_HID_GLOBAL_USAGE_PAGE +1, SL_USBD_HID_USAGE_PAGE_BUTTON,(7)

SL_USBD_HID_LOCAL_USAGE_MIN +1,0 01,

SL_USBD_HID_LOCAL_USAGE_MAX +1,0 03,

SL_USBD_HID_GLOBAL_LOG_MIN +1,0 00,

SL_USBD_HID_GLOBAL_LOG_MAX +1,0 01,

SL_USBD_HID_GLOBAL_REPORT_COUNT +1,0 03,

SL_USBD_HID_GLOBAL_REPORT_SIZE +1,0 01,

SL_USBD_HID_MAIN_INPUT +1, SL_USBD_HID_MAIN_DATA |

SL_USBD_HID_MAIN_VARIABLE |

SL_USBD_HID_MAIN_ABSOLUTE,

SL_USBD_HID_GLOBAL_REPORT_COUNT +1,0 01,(8)

SL_USBD_HID_GLOBAL_REPORT_SIZE +1,0 0D,

SL_USBD_HID_MAIN_INPUT +1, SL_USBD_HID_MAIN_CONSTANT,(9)

SL_USBD_HID_GLOBAL_USAGE_PAGE +1, SL_USBD_HID_USAGE_PAGE_GENERIC_DESKTOP_CONTROLS,

SL_USBD_HID_LOCAL_USAGE +1, SL_USBD_HID_DV_X,

SL_USBD_HID_LOCAL_USAGE +1, SL_USBD_HID_DV_Y,

SL_USBD_HID_GLOBAL_LOG_MIN +1,0 81,

SL_USBD_HID_GLOBAL_LOG_MAX +1,0 7F,

SL_USBD_HID_GLOBAL_REPORT_SIZE +1,0 08,

SL_USBD_HID_GLOBAL_REPORT_COUNT +1,0 02,

SL_USBD_HID_MAIN_INPUT +1, SL_USBD_HID_MAIN_DATA |

SL_USBD_HID_MAIN_VARIABLE |

SL_USBD_HID_MAIN_தொடர்புடைய,

SL_USBD_HID_MAIN_ENDதொகுப்பு,(10)

SL_USBD_HID_MAIN_ENDதொகுப்பு

(11)};

(1) ஒரு சுட்டி அறிக்கை விளக்கியைக் குறிக்கும் அட்டவணை, ஒவ்வொரு வரியும் ஒரு குறுகிய உருப்படிக்கு ஒத்திருக்கும் வகையில் துவக்கப்படுகிறது. பிந்தையது 1-பைட் முன்னொட்டு மற்றும் 1-பைட் தரவிலிருந்து உருவாக்கப்பட்டது. பார்க்கவும் viewபடத்தில் ஒரு ஹோஸ்ட் HID பாகுபடுத்தியால் ed - ஹோஸ்ட் HID பாகுபடுத்தியிடமிருந்து அறிக்கை விளக்க உள்ளடக்கம் View.
(2) பொதுவான டெஸ்க்டாப் பயன்பாட்டுப் பக்கம் பயன்படுத்தப்படுகிறது.
(3) பொதுவான டெஸ்க்டாப் பயன்பாட்டுப் பக்கத்திற்குள், பயன்பாடு tag கட்டுப்பாடுகளின் குழு ஒரு சுட்டியைக் கட்டுப்படுத்துவதற்கானது என்று கூறுகிறது. ஒரு சுட்டி சேகரிப்பு பொதுவாக இரண்டு அச்சுகள் (X மற்றும் Y) மற்றும் ஒன்று, இரண்டு அல்லது மூன்று பொத்தான்களைக் கொண்டுள்ளது.
(4) சுண்டெலி சேகரிப்பு தொடங்கப்பட்டது.
(5) சுட்டி சேகரிப்பில், ஒரு பயன்பாடு tag சுட்டி கட்டுப்பாடுகள் சுட்டிக்காட்டி சேகரிப்பைச் சேர்ந்தவை என்பதை இன்னும் குறிப்பாகக் குறிக்கிறது. சுட்டிக்காட்டி சேகரிப்பு என்பது ஒரு பயன்பாட்டிற்கு பயனர் நோக்கங்களை இயக்க, குறிக்க அல்லது சுட்டிக்காட்ட ஒரு மதிப்பை உருவாக்கும் அச்சுகளின் தொகுப்பாகும்.
(6) சுட்டி சேகரிப்பு தொடங்கப்பட்டது.
(7) பொத்தான்கள் பயன்பாட்டுப் பக்கம் மூன்று 1-பிட் புலங்களைக் கொண்ட உள்ளீட்டு உருப்படியை வரையறுக்கிறது. ஒவ்வொரு 1-பிட் புலமும் முறையே மவுஸ்9 பொத்தான் 1, 2 மற்றும் 3 ஐக் குறிக்கிறது மற்றும் 0 அல்லது 1 மதிப்பைத் தரும்.
(8) பொத்தான்கள் பயன்பாட்டுப் பக்கத்திற்கான உள்ளீட்டு உருப்படி 13 பிற பிட்களுடன் நிரப்பப்பட்டுள்ளது.
(9) X மற்றும் Y அச்சுகளுடன் சுட்டி நிலையை விவரிக்க மற்றொரு பொதுவான டெஸ்க்டாப் பயன்பாட்டுப் பக்கம் குறிப்பிடப்பட்டுள்ளது. உள்ளீட்டு உருப்படி இரண்டு 8-பிட் புலங்களைக் கொண்டுள்ளது, அதன் மதிப்பு -127 மற்றும் 127 க்கு இடையில் இருக்கலாம்.
(10) சுட்டிக்காட்டி சேகரிப்பு மூடப்பட்டுள்ளது.
(11) சுட்டி சேகரிப்பு மூடப்பட்டுள்ளது.
USB.org HID பக்கம்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

37/174

முடிந்துவிட்டதுview
USB செயல்படுத்துபவர்கள் மன்றம் (USB-IF), அறிக்கை விளக்க வடிவமைப்பு பற்றிய பிற தகவல்களுடன் “HID விளக்கக் கருவி” என்ற கருவியை வழங்குகிறது. மேலும் தகவலுக்கு http://www.usb.org/developers/hidpage/ ஐப் பார்க்கவும்.
USB சாதன HID வகுப்பு நிரலாக்க வழிகாட்டி
இந்தப் பிரிவு HID வகுப்பை எவ்வாறு பயன்படுத்துவது என்பதை விளக்குகிறது. USB சாதன HID வகுப்பைத் துவக்குதல் உங்கள் சாதனத்தில் ஒரு USB சாதன HID வகுப்பு நிகழ்வைச் சேர்த்தல் USB சாதன HID வகுப்பைப் பயன்படுத்தி தொடர்பு கொள்ளுதல்
USB சாதன HID வகுப்பைத் துவக்குதல்
உங்கள் சாதனத்தில் HID வகுப்பு செயல்பாட்டைச் சேர்க்க, நீங்கள் முதலில் sl_usbd_hid_init() செயல்பாட்டை அழைப்பதன் மூலம் வகுப்பை துவக்க வேண்டும்.ampகீழே உள்ள பகுதி, இயல்புநிலை வாதங்களைப் பயன்படுத்தி sl_usbd_hid_init() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது. sl_usbd_hid_init() க்கு அனுப்ப வேண்டிய உள்ளமைவு வாதங்கள் பற்றிய கூடுதல் தகவலுக்கு, USB சாதன HID வகுப்பு பயன்பாட்டு குறிப்பிட்ட உள்ளமைவுகளைப் பார்க்கவும்.
Example – sl_usbd_hid_init() ஐ அழைக்கிறது
sl_status_t நிலை;
status = sl_usbd_hid_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
உங்கள் சாதனத்தில் USB சாதன HID வகுப்பு நிகழ்வைச் சேர்த்தல்
உங்கள் சாதனத்தில் HID வகுப்பு செயல்பாட்டைச் சேர்க்க, நீங்கள் ஒரு நிகழ்வை உருவாக்கி, பின்னர் அதை உங்கள் சாதனத்தின் உள்ளமைவில் சேர்க்க வேண்டும்.
ஒரு HID வகுப்பு நிகழ்வை உருவாக்குதல்
sl_usbd_hid_create_instance() என்ற செயல்பாட்டை அழைப்பதன் மூலம் ஒரு HID வகுப்பு நிகழ்வை உருவாக்கவும்.ampகீழே உள்ள பகுதி, இயல்புநிலை வாதங்களைப் பயன்படுத்தி sl_usbd_hid_create_instance() வழியாக ஒரு எளிய மவுஸ் செயல்பாட்டை எவ்வாறு உருவாக்குவது என்பதைக் காட்டுகிறது. sl_usbd_hid_create_instance() க்கு அனுப்ப வேண்டிய உள்ளமைவு வாதங்கள் பற்றிய கூடுதல் தகவலுக்கு, USB Device HID வகுப்பு நிகழ்வு உள்ளமைவுகளைப் பார்க்கவும்.
Example – sl_usbd_hid_create_instance() வழியாக ஒரு மவுஸ் செயல்பாட்டைச் சேர்த்தல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

38/174

முடிந்துவிட்டதுview
/* உலகளாவிய மாறிலிகள். */ நிலையான const uint8_t app_usbd_hid_mouse_report_desc[] = {
SL_USBD_HID_GLOBAL_USAGE_PAGE + 1, SL_USBD_HID_USAGE_PAGE_GENERIC_DESKTOP_CONTROLS, SL_USBD_HID_LOCAL_USAGE + 1, SL_USBD_HID_CA_MOUSE, SL_USBD_HID_MAIN_COLLECTION + 1, SL_USBD_HID_COLLECTION_APPLICATION, SL_USBD_HID_LOCAL_USAGE + 1, SL_USBD_HID_CP_POINTER, SL_USBD_HID_MAIN_COLLECTION + 1, SL_USBD_HID_COLLECTION_PHYSICAL, SL_USBD_HID_GLOBAL_USAGE_PAGE + 1, SL_USBD_HID_USAGE_PAGE_BUTTON, SL_USBD_HID_LOCAL_USAGE_MIN + 1, 0 01, SL_USBD_HID_LOCAL_USAGE_MAX + 1, 0 03, SL_USBD_HID_GLOBAL_LOG_MIN + 1, 0 00, SL_USBD_HID_GLOBAL_LOG_MAX + 1, 0 01, SL_USBD_HID_GLOBAL_REPORT_COUNT + 1, 0 03, SL_USBD_HID_GLOBAL_REPORT_SIZE + 1, 0 01, SL_USBD_HID_MAIN_INPUT + 1, SL_USBD_HID_MAIN_DATA | SL_USBD_HID_MAIN_VARIABLE | SL_USBD_HID_MAIN_ABSOLUTE, SL_USBD_HID_GLOBAL_REPORT_COUNT + 1, 0 01, SL_USBD_HID_GLOBAL_REPORT_SIZE + 1, 0 0D, SL_USBD_HID_MAIN_INPUT + 1, SL_USBD_HID_MAIN_CONSTANT, SL_USBD_HID_GLOBAL_USAGE_PAGE + 1, SL_USBD_HID_USAGE_PAGE_GENERIC_DESKTOP_CONTROLS, SL_USBD_HID_LOCAL_USAGE + 1, SL_USBD_HID_DV_X, SL_USBD_HID_LOCAL_USAGE + 1, SL_USBD_HID_DV_Y, SL_USBD_HID_GLOBAL_LOG_MIN + 1, 0 81, SL_USBD_HID_GLOBAL_LOG_MAX + 1, 0 7F, SL_USBD_HID_GLOBAL_REPORT_SIZE + 1, 0 08, SL_USBD_HID_GLOBAL_REPORT_COUNT + 1, 0 02, SL_USBD_HID_MAIN_INPUT + 1, SL_USBD_HID_MAIN_DATA | SL_USBD_HID_MAIN_VARIABLE | SL_USBD_HID_MAIN_RELATIVE, SL_USBD_HID_MAIN_ENDசேகரிப்பு, SL_USBD_HID_MAIN_ENDசேகரிப்பு };
/* உள்ளூர் மாறிகள்.*/ uint8_t class_nbr; sl_status_t நிலை;
sl_usbd_hid_callbacks_t app_usbd_hid_callbacks = { NULL, NULL, app_usbd_hid_get_report_desc, NULL, NULL, NULL, NULL, NULL, NULL, NULL };
void app_usbd_hid_get_report_desc(uint8_t class_nbr, const uint8_t **p_report_ptr, uint16_t *p_report_len)
{ (வெற்றிட)வகுப்பு_nbr;
*p_report_ptr = app_usbd_hid_mouse_report_desc; *p_report_len = (app_usbd_hid_mouse_report_desc) இன் அளவு; }
நிலை = sl_usbd_hid_create_instance(SL_USBD_HID_SUBCLASS_BOOT, SL_USBD_HID_PROTOCOL_MOUSE, SL_USBD_HID_CODE_NOT_SUPPORTED, Ex_USBD_HID_Mouse_ReportDesc, அளவு(Ex_USBD_HID_Mouse_ReportDesc), 2u, 2u, true, &app_usbd_hid_callbacks, &class_nbr);
பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

39/174

முடிந்துவிட்டதுview
/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */}
உங்கள் சாதனத்தின் உள்ளமைவுகளில் HID வகுப்பு நிகழ்வைச் சேர்த்தல். நீங்கள் ஒரு HID வகுப்பு நிகழ்வை உருவாக்கிய பிறகு, செயல்பாட்டை அழைப்பதன் மூலம் அதை உள்ளமைவில் சேர்க்கலாம்.
sl_usbd_hid_add_to_configuration() .
முன்னாள்ampகீழே உள்ள sl_usbd_hid_add_to_configuration() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது.
Example – sl_usbd_hid_add_to_configuration() ஐ அழைக்கிறது

sl_status_t நிலை;

sl_usbd_hid_add_to_configuration(வகுப்பு_nbr,

(1)

(2)

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

(1) sl_usbd_hid_create_instance() ஆல் திருப்பி அனுப்பப்பட்ட உள்ளமைவில் சேர்க்க வேண்டிய வகுப்பு எண். (2) உள்ளமைவு எண் (இங்கே அதை முழு வேக உள்ளமைவில் சேர்க்கிறது).
USB சாதன HID வகுப்பைப் பயன்படுத்தி தொடர்புகொள்வது
வகுப்பு நிகழ்வு தொடர்பு ஒத்திசைவான தொடர்பு வகுப்பு நிகழ்வு தொடர்பு HID வகுப்பு ஹோஸ்டுடன் தொடர்பு கொள்ள பின்வரும் செயல்பாடுகளை வழங்குகிறது.
அட்டவணை - HID தொடர்பு API சுருக்கம்

செயல்பாட்டின் பெயர்
sl_usb d _hid _ re ad _sy nc() sl_usb d _hid _write _sy nc()

செயல்பாடு இடையூறு OUT இறுதிப்புள்ளி மூலம் ஹோஸ்டிலிருந்து தரவைப் பெறுகிறது. இந்த செயல்பாடு தடுக்கிறது. குறுக்கீடு IN இறுதிப்புள்ளி மூலம் ஹோஸ்டுக்கு தரவை அனுப்புகிறது. இந்த செயல்பாடு தடுக்கிறது.

ஒத்திசைவான தொடர்பு என்பது பரிமாற்றம் தடுக்கப்படுவதைக் குறிக்கிறது. செயல்பாட்டு அழைப்பின் போது, ​​பிழையுடன் அல்லது இல்லாமல் பரிமாற்றம் முடியும் வரை பயன்பாடுகள் தடுக்கப்படுகின்றன. எப்போதும் காத்திருப்பதைத் தவிர்க்க ஒரு காலக்கெடுவைக் குறிப்பிடலாம். எ.கா.ampகீழே உள்ள le, குறுக்கீடு OUT எண்ட்பாயிண்டைப் பயன்படுத்தி ஹோஸ்டிலிருந்து தரவைப் பெற்று, குறுக்கீடு IN எண்ட்பாயிண்டைப் பயன்படுத்தி ஹோஸ்டுக்கு தரவை அனுப்பும் ஒரு படிக்க மற்றும் எழுதும் முறையைக் காட்டுகிறது.
Example – ஒத்திசைவான HID படிக்கவும் எழுதவும்

__சீரமைக்கப்பட்டது(4) uint8_t rx_buf[2];

__சீரமைக்கப்பட்டது(4) uint8_t tx_buf[2];

uint32_t

எக்ஸ்ஃபர்_லென்;

sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)

நிலை;

நிலை = sl_usbd_hid_read_sync(class_nbr,

(1)

(வெற்றிடத்தை *)rx_buf,

(2)

2u,

0u,

(3)

&எக்ஸ்ஃபர்_லென்);

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

40/174

முடிந்துவிட்டதுview
status =sl_usbd_hid_read_sync(class_nbr,(1)(void *)rx_buf,(2)2u,0u,(3)&xfer_len);if(status ! SL_STATUS_OK){/* பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */}
status =sl_usbd_hid_write_sync(class_nbr,(1)(void *)tx_buf,(4)2u,0u,(3)&xfer_len);if(status ! SL_STATUS_OK){/* பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */}
(1) sl_usbd_hid_create_instance() இலிருந்து உருவாக்கப்பட்ட வகுப்பு நிகழ்வு எண், HID வகுப்பிற்கு பரிமாற்றத்தை சரியான குறுக்கீடு OUT அல்லது IN இறுதிப்புள்ளிக்கு வழிநடத்துவதற்கான உள் குறிப்பை வழங்குகிறது.
(2) செயல்பாட்டிற்கு வழங்கப்பட்ட இடையகம் அனைத்து தரவையும் உள்ளடக்கும் அளவுக்கு பெரியதாக இருப்பதை பயன்பாடு உறுதி செய்ய வேண்டும். இல்லையெனில், ஒத்திசைவு சிக்கல்கள் ஏற்படக்கூடும். உள்நாட்டில், வாசிப்பு செயல்பாடு கட்டுப்பாட்டு முனைப்புள்ளியுடன் அல்லது குறுக்கீடு முனைப்புள்ளியுடன் செய்யப்படுகிறது, இது sl_usbd_hid_create_instance() ஐ அழைக்கும்போது அமைக்கப்பட்ட கட்டுப்பாட்டு வாசிப்பு கொடியைப் பொறுத்து இருக்கும்.
(3) முடிவற்ற தடுப்பு சூழ்நிலையைத் தவிர்க்க, மில்லி விநாடிகளில் வெளிப்படுத்தப்படும் காலக்கெடுவைக் குறிப்பிடலாம். 809 என்ற மதிப்பு பயன்பாட்டுப் பணியை எப்போதும் காத்திருக்கச் செய்கிறது.
(4) பயன்பாடு துவக்கப்பட்ட டிரான்ஸ்மிட் பஃபரை வழங்குகிறது.
HID காலமுறை உள்ளீட்டு அறிக்கைகள் பணி
அலைவரிசையைச் சேமிக்க, அறிக்கையிடல் அதிர்வெண்ணைக் கட்டுப்படுத்துவதன் மூலம், ஒரு குறுக்கீடு IN எண்ட்பாயிண்டிலிருந்து அறிக்கைகளை அமைதிப்படுத்தும் திறனை ஹோஸ்ட் கொண்டுள்ளது. அவ்வாறு செய்ய, ஹோஸ்ட் SET_IDLE கோரிக்கையை அனுப்ப வேண்டும். சிலிக்கான் ஆய்வகங்களால் செயல்படுத்தப்பட்ட HID வகுப்பில், ஒன்று அல்லது பல உள்ளீட்டு அறிக்கைகளுக்கு நீங்கள் பயன்படுத்தக்கூடிய அறிக்கையிடல் அதிர்வெண் வரம்பை மதிக்கும் ஒரு உள் பணி உள்ளது. படம் காலமுறை உள்ளீட்டு அறிக்கைகள் பணி காலமுறை உள்ளீட்டு அறிக்கைகள் பணிகளின் செயல்பாட்டைக் காட்டுகிறது.
படம் - காலமுறை உள்ளீட்டு அறிக்கைகள் பணி

(1) சாதனம் ஒரு SET_IDLE கோரிக்கையைப் பெறுகிறது. இந்தக் கோரிக்கை கொடுக்கப்பட்ட அறிக்கை ஐடிக்கான செயலற்ற கால அளவைக் குறிப்பிடுகிறது. SET_IDLE கோரிக்கை பற்றிய கூடுதல் விவரங்களுக்கு, பார்க்கவும்
(2) ஒரு அறிக்கை ID அமைப்பு (HID வகுப்பு துவக்க கட்டத்தில் ஒதுக்கப்பட்டது) செயலற்ற கால அளவுடன் புதுப்பிக்கப்படுகிறது. செயலற்ற கால அளவு கவுண்டர் செயலற்ற கால மதிப்புடன் துவக்கப்படுகிறது. உள்ளீட்டு அறிக்கைகள் ID கட்டமைப்புகளைக் கொண்ட இணைக்கப்பட்ட பட்டியலின் முடிவில் அறிக்கை ID அமைப்பு செருகப்படுகிறது. செயலற்ற கால மதிப்பு 4-ms அலகில் வெளிப்படுத்தப்படுகிறது, இது 4 முதல் 1020 ms வரம்பைக் கொடுக்கிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

41/174

முடிந்துவிட்டதுview
செயலற்ற கால அளவு குறுக்கீடு IN எண்ட்பாயிண்டின் வாக்குப்பதிவு இடைவெளியை விடக் குறைவாக இருந்தால், அறிக்கைகள் வாக்குப்பதிவு இடைவெளியில் உருவாக்கப்படும்.
(3) ஒவ்வொரு 4 ms-க்கும், காலமுறை உள்ளீட்டு அறிக்கை பணி உள்ளீட்டு அறிக்கைகள் ID பட்டியலை உலவுகிறது. ஒவ்வொரு உள்ளீட்டு அறிக்கை ID-க்கும், பணி இரண்டு சாத்தியமான செயல்பாடுகளில் ஒன்றைச் செய்கிறது. பணி காலத்தின் கால அளவு, செயலற்ற காலத்திற்குப் பயன்படுத்தப்படும் 4-ms அலகுடன் பொருந்துகிறது. ஹோஸ்டால் எந்த SET_IDLE கோரிக்கைகளும் அனுப்பப்படவில்லை என்றால், உள்ளீட்டு அறிக்கைகள் ID பட்டியல் காலியாக இருக்கும், மேலும் பணி செயலாக்க எதுவும் இல்லை. பணி செயல்முறைகள் 0-லிருந்து வேறுபட்ட மற்றும் 0-ஐ விட அதிகமான செயலற்ற கால அளவைக் கொண்ட அறிக்கை IDகளை மட்டுமே.
(4) கொடுக்கப்பட்ட உள்ளீட்டு அறிக்கை ஐடிக்கு, செயலற்ற காலம் கடந்துவிட்டதா என்பதை பணி சரிபார்க்கிறது. செயலற்ற காலம் கடந்துவிடவில்லை என்றால், கவுண்டர் குறைக்கப்பட்டு, ஹோஸ்டுக்கு எந்த உள்ளீட்டு அறிக்கையும் அனுப்பப்படாது.
(5) செயலற்ற கால அளவு முடிந்துவிட்டால் (அதாவது, செயலற்ற கால அளவு கவுண்டர் பூஜ்ஜியத்தை அடைந்திருந்தால்), குறுக்கீடு IN எண்ட்பாயிண்ட் வழியாக sl_usbd_hid_write_sync() செயல்பாட்டை அழைப்பதன் மூலம் ஹோஸ்டுக்கு ஒரு உள்ளீட்டு அறிக்கை அனுப்பப்படும்.
(6) பணியால் அனுப்பப்படும் உள்ளீட்டு அறிக்கை தரவு, அறிக்கை விளக்கத்தில் விவரிக்கப்பட்டுள்ள ஒவ்வொரு உள்ளீட்டு அறிக்கைக்கும் ஒதுக்கப்பட்ட உள் தரவு இடையகத்திலிருந்து வருகிறது. ஒரு பயன்பாட்டு பணி, உள்ளீட்டு அறிக்கையை அனுப்ப sl_usbd_hid_write_sync() செயல்பாட்டை அழைக்கலாம். உள்ளீட்டு அறிக்கை தரவை அனுப்பிய பிறகு, sl_usbd_hid_write_sync() ஒரு உள்ளீட்டு அறிக்கை ஐடியுடன் தொடர்புடைய உள் இடையகத்தை அனுப்புகிறது. பின்னர், ஒவ்வொரு செயலற்ற கால அளவு கடந்த பிறகும், பயன்பாட்டு பணி உள் இடையகத்தில் தரவைப் புதுப்பிக்கும் வரை, காலமுறை உள்ளீட்டு அறிக்கை பணி எப்போதும் அதே உள்ளீட்டு அறிக்கை தரவை அனுப்புகிறது. காலமுறை உள்ளீட்டு அறிக்கை பணியால் செய்யப்படும் பரிமாற்றத்தின் சரியான நேரத்தில் மாற்றம் ஏற்பட்டால், உள்ளீட்டு அறிக்கை ஐடி தரவின் சிதைவைத் தவிர்க்க சில பூட்டுதல் வழிமுறை உள்ளது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

42/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
USB சாதன MSC வகுப்பு
USB சாதன MSC வகுப்பு முடிந்ததுview USB சாதனம் MSC வகுப்பு வள ஆதாரங்கள் மைய USB சாதனத்திலிருந்து தேவைகள் MSC வகுப்பு கட்டமைப்பு USB சாதனம் MSC வகுப்பு நிரலாக்க வழிகாட்டி USB சாதனம் MSC வகுப்பு சேமிப்பக இயக்கிகள்
இந்தப் பிரிவு சிலிக்கான் லேப்ஸ் USB சாதனத்தால் ஆதரிக்கப்படும் நிறை சேமிப்பு சாதன வகுப்பை (MSC) விவரிக்கிறது. MSC என்பது ஒரு USB சாதனத்திற்கும் ஹோஸ்டுக்கும் இடையில் தகவல்களைப் பரிமாறிக்கொள்ள உதவும் ஒரு நெறிமுறையாகும். மாற்றப்படும் தகவல் என்பது செயல்படுத்தக்கூடிய நிரல்கள், மூல குறியீடு, ஆவணங்கள், படங்கள், உள்ளமைவுத் தரவு அல்லது பிற உரை அல்லது எண் தரவு போன்ற மின்னணு முறையில் சேமிக்கக்கூடிய எதையும் குறிக்கிறது. USB சாதனம் ஹோஸ்டுக்கு வெளிப்புற சேமிப்பக ஊடகமாகத் தோன்றுகிறது, இது பரிமாற்றத்தை செயல்படுத்துகிறது fileஇழுத்து விடுதல் வழியாக.
A file அமைப்பு எவ்வாறு வரையறுக்கிறது fileசேமிப்பக ஊடகத்தில் ஒழுங்கமைக்கப்பட்டுள்ளன. USB மாஸ் ஸ்டோரேஜ் வகுப்பு விவரக்குறிப்புக்கு எந்த குறிப்பிட்ட விவரக்குறிப்பும் தேவையில்லை. file இணக்கமான சாதனங்களில் பயன்படுத்த வேண்டிய அமைப்பு. அதற்கு பதிலாக, சிறிய கணினி அமைப்பு இடைமுகம் (SCSI) வெளிப்படையான கட்டளைத் தொகுப்பைப் பயன்படுத்தி தரவின் பிரிவுகளைப் படிக்கவும் எழுதவும் இது ஒரு எளிய இடைமுகத்தை வழங்குகிறது. எனவே, இயக்க முறைமைகள் USB டிரைவை ஒரு வன் இயக்கி போல நடத்தலாம், மேலும் அதை எந்த file அவர்கள் விரும்பும் அமைப்பு.
USB நிறை சேமிப்பு சாதன வகுப்பு இரண்டு போக்குவரத்து நெறிமுறைகளை ஆதரிக்கிறது, பின்வருமாறு:
மொத்தமாக மட்டும் போக்குவரத்து (BOT) கட்டுப்பாடு/மொத்தமாக/குறுக்கீடு (CBI) போக்குவரத்து (ஃப்ளாப்பி டிஸ்க் டிரைவ்களுக்கு மட்டுமே பயன்படுத்தப்படுகிறது)
நிறை சேமிப்பக சாதன வகுப்பு, BOT நெறிமுறையைப் பயன்படுத்தி மட்டுமே SCSI வெளிப்படையான கட்டளைத் தொகுப்பை செயல்படுத்துகிறது, இது தரவு மற்றும் நிலைத் தகவல்களை அனுப்ப மொத்த இறுதிப் புள்ளிகள் மட்டுமே பயன்படுத்தப்படும் என்பதைக் குறிக்கிறது. MSC செயல்படுத்தல் பல தருக்க அலகுகளை ஆதரிக்கிறது.
MSC செயல்படுத்தல் பின்வரும் விவரக்குறிப்புகளுக்கு இணங்க உள்ளது:
யுனிவர்சல் சீரியல் பஸ் மாஸ் ஸ்டோரேஜ் வகுப்பு விவரக்குறிப்பு முடிந்ததுview, திருத்தம் 1.3 செப்டம்பர் 5, 2008. யுனிவர்சல் சீரியல் பஸ் மாஸ் ஸ்டோரேஜ் வகுப்பு மொத்தமாக மட்டும் போக்குவரத்து, திருத்தம் 1.0 செப்டம்பர் 31, 1999.
USB சாதனம் MSC aCl ss முடிந்துவிட்டதுview
நெறிமுறை எண்ட்பாயிண்ட்ஸ் வகுப்பு கோரிக்கைகள் சிறிய கணினி அமைப்பு இடைமுகம் (SCSI)
நெறிமுறை
இந்தப் பிரிவில், நிறை சேமிப்பு வகுப்பின் மொத்த-ஒன்லி போக்குவரத்து (BOT) நெறிமுறையைப் பற்றி விவாதிப்போம். மொத்த-ஒன்லி போக்குவரத்து நெறிமுறை மூன்று s ஐக் கொண்டுள்ளது.tages:
கட்டளை போக்குவரத்து தரவு போக்குவரத்து நிலை போக்குவரத்து
மாஸ் ஸ்டோரேஜ் கட்டளைகள் ஹோஸ்டால் கமாண்ட் பிளாக் ரேப்பர் (CBW) எனப்படும் ஒரு அமைப்பு மூலம் அனுப்பப்படுகின்றன. தரவு போக்குவரத்து தேவைப்படும் கட்டளைகளுக்கு stage, CBW இன் நீளம் மற்றும் கொடி புலங்களால் குறிப்பிடப்பட்டபடி சாதனத்திலிருந்து சரியான எண்ணிக்கையிலான பைட்டுகளை அனுப்ப அல்லது பெற ஹோஸ்ட் முயற்சிக்கும். தரவு போக்குவரத்துக்குப் பிறகு stage, கட்டளையின் நிலை மற்றும் ஏதேனும் தரவு எச்சத்தை விவரிக்கும் சாதனத்திலிருந்து கட்டளை நிலை ரேப்பரை (CSW) பெற ஹோஸ்ட் முயற்சிக்கிறது (இருந்தால்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

43/174

முடிந்துவிட்டதுview
ஏதேனும்). தரவு போக்குவரத்தை உள்ளடக்காத கட்டளைகளுக்கு stage, CBW அனுப்பப்பட்ட பிறகு ஹோஸ்ட் நேரடியாக CSW ஐப் பெற முயற்சிக்கிறது. இந்த நெறிமுறை படம் - MSC நெறிமுறையில் விரிவாகக் காட்டப்பட்டுள்ளது.
படம் - MSC நெறிமுறை

இறுதி புள்ளிகள்
சாதனப் பக்கத்தில், BOT விவரக்குறிப்புக்கு இணங்க, MSC பின்வரும் முனைப்புள்ளிகளால் ஆனது: ஒரு ஜோடி கட்டுப்பாட்டு IN மற்றும் OUT முனைப்புள்ளிகள் இயல்புநிலை முனைப்புள்ளி எனப்படும். ஒரு ஜோடி மொத்த IN மற்றும் OUT முனைப்புள்ளிகள்.
கீழே உள்ள அட்டவணை இறுதிப்புள்ளிகளின் வெவ்வேறு பயன்பாடுகளைக் குறிக்கிறது.
அட்டவணை - MSC எண்ட்பாயிண்ட் பயன்பாடு

இறுதிப்புள்ளி
கட்டுப்பாடு IN கட்டுப்பாடு வெளியே மொத்தமாக மொத்தமாக வெளியே

திசை
சாதனம் ஹோஸ்டிலிருந்து சாதனம் ஹோஸ்டிலிருந்து சாதனம் சாதனம் ஹோஸ்டிலிருந்து சாதனம்

பயன்பாடு
கணக்கெடுப்பு மற்றும் MSC வகுப்பு சார்ந்த கோரிக்கைகள் கணக்கெடுப்பு மற்றும் MSC வகுப்பு சார்ந்த கோரிக்கைகள் CSW மற்றும் தரவை அனுப்பவும் CBW மற்றும் தரவைப் பெறவும்

வகுப்பு கோரிக்கைகள்
MSC BOT நெறிமுறைக்கு இரண்டு வரையறுக்கப்பட்ட கட்டுப்பாட்டு கோரிக்கைகள் உள்ளன. இந்த கோரிக்கைகளும் அவற்றின் விளக்கங்களும் கீழே உள்ள அட்டவணையில் விரிவாகக் கொடுக்கப்பட்டுள்ளன.

அட்டவணை - மாஸ் ஸ்டோரேஜ் வகுப்பு கோரிக்கைகள்

வகுப்பு கோரிக்கைகள்
மொத்தமாக மட்டும் மாஸ் சேமிப்பகத்தை மீட்டமைத்தல்

விளக்கம்
இந்த கோரிக்கை வெகுஜன சேமிப்பக சாதனத்தையும் அதனுடன் தொடர்புடைய இடைமுகத்தையும் மீட்டமைக்கப் பயன்படுகிறது. இந்த கோரிக்கை சாதனத்தை அடுத்த கட்டளைத் தொகுதியைப் பெறத் தயார் செய்கிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

44/174

முடிந்துவிட்டதுview

வகுப்பு கோரிக்கைகள்

விளக்கம்

அதிகபட்சத்தைப் பெறுங்கள் இந்தக் கோரிக்கை சாதனத்தால் ஆதரிக்கப்படும் மிக உயர்ந்த தருக்க அலகு எண்ணை (LUN) திருப்பி அனுப்பப் பயன்படுகிறது. உதாரணத்திற்குampலெ, ஏ

LUN

LUN 0 மற்றும் LUN 1 கொண்ட சாதனம் 1 மதிப்பை வழங்கும். ஒற்றை தருக்க அலகு கொண்ட சாதனம் 0 ஐ வழங்கும் அல்லது

கோரிக்கை. திரும்பப் பெறக்கூடிய அதிகபட்ச மதிப்பு 15 ஆகும்.

சிறிய கணினி அமைப்பு இடைமுகம் SCSI

நிரலாக்க இடைமுக மட்டத்தில், MSC சாதனம் SCSI மற்றும் SFF-8020i (ATAPI) போன்ற நிலையான சேமிப்பக-ஊடக தொடர்பு நெறிமுறைகளில் ஒன்றை செயல்படுத்துகிறது. "நிரலாக்க இடைமுகம்" எந்த நெறிமுறை செயல்படுத்தப்படுகிறது என்பதைக் குறிப்பிடுகிறது, மேலும் USB சேமிப்பக சாதனத்துடன் தொடர்புகொள்வதற்கு பொருத்தமான சாதன இயக்கியை ஏற்ற ஹோஸ்ட் இயக்க முறைமைக்கு உதவுகிறது. SCSI என்பது USB MSC சேமிப்பக சாதனங்களுடன் பயன்படுத்தப்படும் மிகவும் பொதுவான நெறிமுறையாகும். எங்கள் GSDK பயனர்கள் பெட்டிக்கு வெளியே பயன்படுத்தக்கூடிய MSC SCSI துணைப்பிரிவுக்கான செயல்படுத்தலை நாங்கள் வழங்குகிறோம்.
SCSI என்பது கணினிகள் மற்றும் புற சாதனங்களுக்கு இடையேயான தொடர்பைக் கையாள்வதற்கான தரநிலைகளின் தொகுப்பாகும். இந்த தரநிலைகளில் கட்டளைகள், நெறிமுறைகள், மின் இடைமுகங்கள் மற்றும் ஒளியியல் இடைமுகங்கள் ஆகியவை அடங்கும். USB போன்ற பிற வன்பொருள் இடைமுகங்களைப் பயன்படுத்தும் சேமிப்பக சாதனங்கள், சாதனம்/ஹோஸ்ட் தகவலைப் பெறுவதற்கும், சாதனத்தின் செயல்பாட்டைக் கட்டுப்படுத்துவதற்கும், சேமிப்பக ஊடகத்தில் தரவுத் தொகுதிகளை மாற்றுவதற்கும் SCSI கட்டளைகளைப் பயன்படுத்துகின்றன.
SCSI கட்டளைகள் பரந்த அளவிலான சாதன வகைகள் மற்றும் செயல்பாடுகளை உள்ளடக்கியது, எனவே, சாதனங்களுக்கு இந்த கட்டளைகளின் துணைக்குழு தேவைப்படுகிறது. பொதுவாக, அடிப்படை தகவல்தொடர்புக்கு பின்வரும் கட்டளைகள் அவசியம்:
விசாரணை வாசிப்பு திறன்(10) படிக்க(10) கோரிக்கை புலன் சோதனை அலகு தயார் எழுத்து(10)
மையத்திலிருந்து USB சாதன MSC வகுப்பு வளத் தேவைகள்

sl_usbd_msc_add_to_configuration() செயல்பாடு வழியாக ஒரு USB உள்ளமைவில் ஒரு MSC வகுப்பு நிகழ்வைச் சேர்க்கும் ஒவ்வொரு முறையும், பின்வரும் வளங்கள் மையத்திலிருந்து ஒதுக்கப்படும்.

வளம்
இடைமுகங்கள் மாற்று இடைமுகங்கள் இறுதிப்புள்ளிகள் இடைமுகக் குழுக்கள்

அளவு
1 1 2 0

அந்த எண்கள் உள்ளமைவுக்குரியவை என்பதை நினைவில் கொள்ளவும். உங்கள் SL_USBD_INTERFACE_QUANTITY , SL_USBD_ALT_INTERFACE_QUANTITY , SL_USBD_INTERFACE_GROUP_QUANTITY மற்றும் SL_USBD_DESCRIPTOR_QUANTITY உள்ளமைவு மதிப்புகளை அமைக்கும் போது, ​​வகுப்பு எத்தனை உள்ளமைவுகளைச் சேர்க்கும் என்பதைக் கணக்கில் எடுத்துக்கொள்ள மறக்காதீர்கள். SL_USBD_OPEN_ENDPOINTS_QUANTITY உள்ளமைவு மதிப்புக்கு, ஹோஸ்டால் உள்ளமைவு அமைக்கப்படும் போது மட்டுமே இறுதிப் புள்ளிகள் திறக்கப்படும் என்பதால், ஒரு வகுப்பு நிகழ்வுக்குத் தேவையான இறுதிப் புள்ளிகளின் எண்ணிக்கையை நீங்கள் கணக்கில் எடுத்துக்கொள்ள வேண்டும்.
USB சாதன MSC வகுப்பு உள்ளமைவு

MSC வகுப்பை உள்ளமைக்க இரண்டு குழுக்கள் உள்ளமைவு அளவுருக்கள் பயன்படுத்தப்படுகின்றன:
USB சாதனம் MSC வகுப்பு பயன்பாடு-குறிப்பிட்ட கட்டமைப்புகள் USB சாதனம் MSC வகுப்பு தருக்க அலகு கட்டமைப்பு
USB சாதன MSC வகுப்பு பயன்பாடு-குறிப்பிட்ட உள்ளமைவுகள்

வகுப்பு தொகுத்தல்-நேர கட்டமைப்புகள் வகுப்பு நிகழ்வு உருவாக்கம்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

45/174

முடிந்துவிட்டதுview

வகுப்பு தொகுத்தல்-நேர உள்ளமைவுகள்
சிலிக்கான் லேப்ஸ் USB சாதன MSC வகுப்பு மற்றும் SCSI துணை வகுப்பு ஆகியவை sl_usbd_core_config.h இல் அமைந்துள்ள #defines வழியாக தொகுக்கும் நேரத்தில் கட்டமைக்கப்படுகின்றன. file.
அட்டவணை - பொதுவான உள்ளமைவு மாறிலிகள்

கட்டமைப்பு பெயர்

விளக்கம்

SL_USBD_MSC_CLASS_INST நீங்கள் செயல்பாட்டிற்கு அழைப்பு மூலம் ஒதுக்கும் வகுப்பு நிகழ்வுகளின் எண்ணிக்கை

ANCE_QUANTITY அளவு

sl_usbd_msc_scsi_create_instance() ஐ உருவாக்கு.

SL_USBD_MSC_CONFIGURA ஒரு அழைப்பின் மூலம் ஒரு வகுப்பு நிகழ்வைச் சேர்க்கக்கூடிய உள்ளமைவுகளின் எண்ணிக்கை

TION_QUANTITY அளவு

செயல்பாடு sl_usbd_msc_scsi_add_to_configuration() .

SL_USBD_MSC_LUN_QUANT ஒரு வகுப்பு நிகழ்விற்கு நீங்கள் அழைப்பின் மூலம் சேர்க்கும் தருக்க அலகுகளின் எண்ணிக்கை

ITY

செயல்பாடு sl_usbd_msc_scsi_lun_add() .

SL_USBD_MSC_SCSI_64_BIT 64 பிட்களின் லாஜிக்கல் பிளாக் முகவரி (LBA)க்கான ஆதரவை இயக்குகிறது அல்லது முடக்குகிறது.
_LBA_EN_இன்னிசை

SL_USBD_MSC_DATA_BUFF வகுப்பு நிகழ்விற்கான தரவு இடையகத்தின் அளவு பைட்டுகளில் ER_SIZE

இயல்புநிலை மதிப்பு
2
1
2
0
512

வகுப்பு நிகழ்வு உருவாக்கம்
USB சாதனத்தை உருவாக்குவது MSC SCSI வகுப்பு நிகழ்வு sl_usbd_msc_scsi_create_instance() செயல்பாட்டை அழைப்பதன் மூலம் செய்யப்படுகிறது. இந்த செயல்பாடு கீழே விவரிக்கப்பட்டுள்ள ஒரு உள்ளமைவு வாதத்தை எடுக்கும்.
p_scsi_கால்பேக்குகள்
p_scsi_callbacks என்பது sl_usbd_msc_scsi_callbacks_t வகையின் உள்ளமைவு கட்டமைப்பிற்கான ஒரு சுட்டிக்காட்டியாகும். பொதுவான usb சாதன வகுப்பு callbacks connect/disconnect உடன் கூடுதலாக, இது MSC வகுப்பிற்கு லாஜிக்கல் அலகில் ஒரு நிகழ்வு நிகழும்போது அழைக்கப்படும் விருப்பமான callback செயல்பாடுகளின் தொகுப்பை வழங்குகிறது. callbacks தேவையில்லை என்றால், இந்த வாதத்திற்கு ஒரு null pointer ( NULL ) ஐ அனுப்பலாம்.
இந்த உள்ளமைவு கட்டமைப்பில் கிடைக்கும் ஒவ்வொரு உள்ளமைவு புலத்தையும் கீழே உள்ள அட்டவணை விவரிக்கிறது.
அட்டவணை – sl_usbd_msc_scsi_callbacks_t உள்ளமைவு அமைப்பு

வயல்வெளிகள்

விளக்கம்

.இயக்கு

USB வகுப்பு நிகழ்வு வெற்றிகரமாக இயக்கப்பட்டவுடன் அழைக்கப்படுகிறது.

.disable USB வகுப்பு நிகழ்வு முடக்கப்பட்டிருக்கும் போது அழைக்கப்படுகிறது.

ஹோஸ்டிலிருந்து ஒரு தருக்க அலகு வெளியேற்றப்படும் போது .host_eject செயல்பாடு அழைக்கப்படுகிறது.

செயல்பாட்டு கையொப்பம்
வெற்றிட app_usbd_msc_scsi_enable(uint8_t class_nbr);
void app_usbd_msc_scsi_disable(uint8_t class_nbr); void app_usbd_msc_scsi_host_eject(uint8_t class_nbr, uint8_t lu_nbr);

USB சாதன MSC வகுப்பு தருக்க அலகு உள்ளமைவு

ஒரு MSC வகுப்பு நிகழ்வில் ஒரு தருக்க அலகைச் சேர்ப்பது, sl_usbd_msc_lun_add() என்ற செயல்பாட்டை அழைப்பதன் மூலம் செய்யப்படுகிறது. இந்த செயல்பாடு கீழே விவரிக்கப்பட்டுள்ள ஒரு உள்ளமைவு வாதத்தை எடுக்கும்.

p_lu_தகவல்

p_lu_info என்பது sl_usbd_msc_scsi_lun_info_t வகை கட்டமைப்பிற்கான ஒரு சுட்டிக்காட்டியாகும். இதன் நோக்கம் தருக்க அலகு பற்றிய தகவலை MSC வகுப்பிற்கு வழங்குவதாகும்.
இந்த உள்ளமைவு கட்டமைப்பில் கிடைக்கும் ஒவ்வொரு உள்ளமைவு புலத்தையும் கீழே உள்ள அட்டவணை விவரிக்கிறது.

அட்டவணை – sl_usbd_msc_scsi_lun_info_t உள்ளமைவு அமைப்பு

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

46/174

முடிந்துவிட்டதுview

களம்

விளக்கம்

களம்
.scsi_lun_api_p tr tr .scsi_lun_api_p

விளக்கம்
இந்த தருக்க அலகைக் கையாளும் மீடியா இயக்கி API-க்கான சுட்டி. சேமிப்பக இயக்கிகள் பற்றிய கூடுதல் தகவலுக்கு USB சாதன MSC வகுப்பு சேமிப்பக இயக்கிகளைப் பார்க்கவும்.

.வென்ட் ஓ ஆர்_ஐடி _ பி டிஆர்
.தயாரிப்பு_ஐடி_பிடிஆர்
.p ro d uct_ re v isi on_level .is_ re ad _only

தருக்க அலகின் விற்பனையாளர் அடையாளத்தைக் கொண்ட ஒரு சரத்திற்கு சுட்டிக்காட்டி. சரத்தின் அதிகபட்ச நீளம் 8 எழுத்துகள். தருக்க அலகின் தயாரிப்பு அடையாளத்தைக் கொண்ட ஒரு சரத்திற்கு சுட்டிக்காட்டி. சரத்தின் அதிகபட்ச நீளம் 16 எழுத்துகள். தயாரிப்பு திருத்த நிலை.
தருக்க அலகைப் புள்ளியில் இருந்து மட்டுமே படிக்க வேண்டும் என்பதைக் குறிக்கும் கொடி view ஹோஸ்டின் ( உண்மை ) அல்லது இல்லை ( தவறு ) .

USB சாதன MSC வகுப்பு நிரலாக்க வழிகாட்டி

இந்தப் பகுதி MSC வகுப்பை எவ்வாறு பயன்படுத்துவது என்பதை விளக்குகிறது.
USB சாதன MSC வகுப்பைத் துவக்குதல் உங்கள் சாதனத்தில் ஒரு USB சாதன MSC SCSI வகுப்பு நிகழ்வைச் சேர்த்தல் USB சாதன MSC வகுப்பு தருக்க அலகு கையாளுதல்
USB சாதன MSC வகுப்பைத் துவக்குதல்

உங்கள் சாதனத்தில் MSC SCSI வகுப்பு செயல்பாட்டைச் சேர்க்க, முதலில் sl_usbd_msc_init() மற்றும் sl_usbd_msc_scsi_init() என்ற செயல்பாட்டை அழைப்பதன் மூலம் MSC அடிப்படை வகுப்பு மற்றும் SCSI துணைப்பிரிவை துவக்கவும்.
முன்னாள்ampகீழே உள்ள le sl_usbd_msc_init() மற்றும் sl_usbd_msc_scsi_init() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது.

Example – sl_usbd_msc_init() மற்றும் sl_usbd_msc_scsi_init() ஐ அழைக்கிறது

sl_status_t நிலை;
status = sl_usbd_msc_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
status = sl_usbd_msc_scsi_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}
உங்கள் சாதனத்தில் ஒரு USB சாதன MSC SCSI வகுப்பு நிகழ்வைச் சேர்த்தல்.
உங்கள் சாதனத்தில் MSC SCSI வகுப்பு செயல்பாட்டைச் சேர்க்க, முதலில் ஒரு நிகழ்வை உருவாக்கி, பின்னர் அதை உங்கள் சாதனத்தின் உள்ளமைவில் சேர்க்கவும். உங்கள் நிகழ்வில் குறைந்தது ஒரு தருக்க அலகையாவது சேர்க்க வேண்டும்.
ஒரு MSC SCSI வகுப்பு நிகழ்வை உருவாக்குதல்
sl_usbd_msc_scsi_create_instance() என்ற செயல்பாட்டை அழைப்பதன் மூலம் ஒரு MSC SCSI வகுப்பு நிகழ்வை உருவாக்கவும்.
முன்னாள்ampகீழே உள்ள பகுதி, இயல்புநிலை வாதங்களைப் பயன்படுத்தி sl_usbd_msc_scsi_create_instance() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது. sl_usbd_msc_scsi_create_instance() க்கு அனுப்ப வேண்டிய உள்ளமைவு வாதங்கள் பற்றிய கூடுதல் தகவலுக்கு, USB சாதன MSC வகுப்பு பயன்பாட்டு குறிப்பிட்ட உள்ளமைவுகளைப் பார்க்கவும்.
Example – sl_usbd_ msc_scsi_create_instance() ஐ அழைக்கிறது

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

47/174

முடிந்துவிட்டதுview

uint8_t வகுப்பு_nbr; sl_status_t நிலை;
sl_usbd_msc_scsi_callbacks_t app_usbd_msc_scsi_callbacks = { .enable = NULL, .disable = NULL, .host_eject = NULL };
நிலை = sl_usbd_msc_scsi_create_instance(&app_usbd_msc_scsi_callbacks,0 &class_nbr);
if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }
உங்கள் சாதனத்தின் உள்ளமைவுகளில் MSC வகுப்பு நிகழ்வைச் சேர்த்தல்
நீங்கள் ஒரு MSC வகுப்பு நிகழ்வை உருவாக்கிய பிறகு, செயல்பாட்டை அழைப்பதன் மூலம் அதை ஒரு உள்ளமைவில் சேர்க்கலாம்.
sl_usbd_msc_add_to_configuration() .
முன்னாள்ampகீழே உள்ளவை, இயல்புநிலை வாதங்களைப் பயன்படுத்தி sl_usbd_msc_scsi_add_to_configuration() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகின்றன.
Example – sl_usbd_ msc_scsi_add_to_configuration() ஐ அழைக்கிறது

sl_status_t நிலை;

நிலை = sl_usbd_msc_scsi_add_to_configuration(class_nbr,

(1)

config_nbr_fs); (con));

(2)

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

(1) sl_usbd_msc_scsi_create_instance() ஆல் திருப்பி அனுப்பப்பட்ட உள்ளமைவில் சேர்க்க வேண்டிய வகுப்பு எண். (32) உள்ளமைவு எண் (இங்கே அதை முழு வேக உள்ளமைவில் சேர்க்கிறது).
USB சாதன MSC வகுப்பு தருக்க அலகு கையாளுதல்
ஒரு தருக்க அலகைச் சேர்த்தல் ஒரு சேமிப்பு ஊடகத்தை இணைத்தல்/பிரித்தல்
ஒரு தருக்க அலகைச் சேர்த்தல்
உங்கள் MSC SCSI வகுப்பு நிகழ்வில் ஒரு தருக்க அலகைச் சேர்க்கும்போது, ​​அது ஒரு சேமிப்பக ஊடகத்துடன் (RAMDisk, SD அட்டை, ஃபிளாஷ் நினைவகம் போன்றவை) பிணைக்கப்பட வேண்டும். சேமிப்பக ஊடகத்துடன் தொடர்பு கொள்ள MSC வகுப்பு ஒரு சேமிப்பக இயக்கியைப் பயன்படுத்துகிறது. தருக்க அலகைச் சேர்க்கும்போது இந்த இயக்கி வழங்கப்பட வேண்டும்.
முன்னாள்ampகீழே உள்ள le sl_usbd_msc_scsi_lun_add() வழியாக ஒரு தருக்க அலகை எவ்வாறு சேர்ப்பது என்பதைக் காட்டுகிறது.
Example – sl_usbd_msc_scsi_lun_add() வழியாக ஒரு தருக்க அலகைச் சேர்த்தல்

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

48/174

முடிந்துவிட்டதுview

sl_usbd_msc_scsi_lun_t *lu_object_ptr = பூஜ்யம்;

sl_usbd_msc_scsi_lun_info_t lu_info;

sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)

நிலை;

lu_info.sl_usbd_msc_scsi_lun_api_t = &app_usbd_scsi_storage_block_device_api;

lu_info.vendor_id_ptr_

= "சிலிக்கான் ஆய்வகங்கள்";

lu_info.product_id_ptr பற்றி

= “தொகுதி சாதனம் முன்னாள்ampலெ”;

lu_info.product_revision_level = 0x1000u;

lu_info.படிக்க_மட்டும்_

= பொய்;

நிலை = sl_usbd_msc_scsi_lun_add(class_nbr, &lu_info, &lu_object_ptr);
if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }

ஒரு சேமிப்பு ஊடகத்தை இணைத்தல்/பிரித்தல்
தருக்க அலகு சேர்க்கப்பட்ட பிறகு, ஹோஸ்ட் பக்கத்திலிருந்து கிடைக்க ஒரு சேமிப்பக ஊடகம் இணைக்கப்பட வேண்டும். MSC வகுப்பு தருக்க அலகுடன் சேமிப்பக ஊடக இணைப்பைக் கட்டுப்படுத்த இரண்டு செயல்பாடுகளை வழங்குகிறது: sl_usbd_msc_scsi_lun_attach() மற்றும் sl_usbd_msc_scsi_lun_detach() . தேவைப்பட்டால் உட்பொதிக்கப்பட்ட பயன்பாட்டிலிருந்து மீண்டும் அணுகலைப் பெறுவதற்காக, சேமிப்பக சாதனத்தை அகற்றுவதைப் பின்பற்ற இந்த செயல்பாடுகள் உங்களை அனுமதிக்கின்றன.
முன்னாள்ampகீழே உள்ள sl_usbd_msc_scsi_lun_attach() மற்றும் sl_usbd_msc_scsi_lun_detach() செயல்பாட்டை எவ்வாறு பயன்படுத்துவது என்பதைக் காட்டுகிறது.
Example – மீடியா இணைப்பு/பிரித்தல்

sl_status_t நிலை;

status = sl_usbd_msc_scsi_lun_attach(lu_object_ptr); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}

(1)

நிலை = sl_usbd_msc_scsi_lun_detach(lu_object_ptr); (நிலை ! SL_STATUS_OK) {
/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}

(2)

status = sl_usbd_msc_scsi_lun_attach(lu_object_ptr) (status ! SL_STATUS_OK) {
/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */
}

(3)

(1) இந்த தருணத்திலிருந்து, MSC சாதனம் ஒரு ஹோஸ்டுடன் இணைக்கப்பட்டிருந்தால், சேமிப்பக ஊடகத்தை அணுக முடியும்.
(2) MSC சாதனம் ஒரு ஹோஸ்டுடன் இணைக்கப்பட்டிருந்தால், மீடியா இப்போது கிடைக்கவில்லை என்று தோன்றும். இந்த நேரத்தில், உட்பொதிக்கப்பட்ட பயன்பாட்டிலிருந்து மீடியாவில் செயல்பாடுகளைச் செய்ய முடியும்.
(3) மீண்டும், MSC சாதனம் ஹோஸ்டுடன் இணைக்கப்பட்டிருந்தால், சேமிப்பக ஊடகம் இணைக்கப்பட்டதாகத் தோன்றும்.
USB சாதன MSC வகுப்பு சேமிப்பக இயக்கிகள்
USB சாதன MSC வகுப்பிற்கு ஒரு சேமிப்பக ஊடகத்துடன் தொடர்பு கொள்ள ஒரு சேமிப்பக இயக்கி தேவை. இப்போதைக்கு, சிலிக்கான் லேப்ஸ் இயக்கிகளை வழங்கவில்லை.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

49/174

முடிந்துவிட்டதுview
TPY aa he இயக்கி AI என்பது typedef sl_usbd_msc_scsi_lun_api_t ஆல் வரையறுக்கப்படுகிறது. sl_usbd_msc_scsi_lun_api_t v rible ஐ sl_usbd_msc_scsi_lun_add() உடன் logic l யூனிட்டை dd செய்யும் போது உங்கள் sl_usbd_msc_scsi_lun_info_t v rible, p ssed s rgument ஐ aaaaaaaa சேர்க்க வேண்டும். கட்டமைப்புகள் பற்றிய கூடுதல் விவரங்களுக்கு USB Device MSC SCSI API பகுதியைப் பார்க்கவும். சேமிப்பக இயக்கி செயல்படுத்தல் RAM இல் உள்ள பிரிவுகளின் வரிசையைப் போல எளிமையாக இருக்கலாம். வழக்கமான துறை அளவு (அதாவது, தொகுதி அளவு) வெகுஜன சேமிப்பு சாதனங்களுக்கு 512 ஆகவும், CD-ROM களுக்கு 2048 ஆகவும் இருக்கும்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

50/174

முடிந்துவிட்டதுview
முடிந்துவிட்டதுview
USB சாதன விற்பனையாளர் வகுப்பு
USB சாதன விற்பனையாளர் வகுப்பு முடிந்ததுview USB சாதன விற்பனையாளர் வகுப்பு வளத் தேவைகள் மைய USB சாதன விற்பனையாளர் வகுப்பு கட்டமைப்பு USB சாதன விற்பனையாளர் வகுப்பு நிரலாக்க வழிகாட்டி விற்பனையாளர் வகுப்பு, தனியுரிம நெறிமுறையை செயல்படுத்தக்கூடிய விற்பனையாளர்-குறிப்பிட்ட சாதனங்களை உருவாக்க உங்களை அனுமதிக்கிறது. இது ஹோஸ்டுக்கும் சாதனத்திற்கும் இடையில் தரவை மாற்ற ஒரு ஜோடி மொத்த இறுதிப்புள்ளிகளை நம்பியுள்ளது. மொத்த பரிமாற்றங்கள் பெரிய அளவிலான கட்டமைக்கப்படாத தரவை மாற்றுவதற்கு வசதியானவை மற்றும் பிழை கண்டறிதல் மற்றும் மறுமுயற்சி பொறிமுறையைப் பயன்படுத்தி நம்பகமான தரவு பரிமாற்றத்தை வழங்குகின்றன. மொத்த இறுதிப்புள்ளிகளுக்கு கூடுதலாக, விற்பனையாளர் வகுப்பு விருப்ப ஜோடி குறுக்கீடு இறுதிப்புள்ளிகளையும் பயன்படுத்தலாம். OS ஆனது விற்பனையாளர் வகுப்பைக் கையாள ஒரு இயக்கியைக் கொண்டிருந்தால், எந்த இயக்க முறைமையும் (OS) விற்பனையாளர் வகுப்போடு வேலை செய்ய முடியும். OS ஐப் பொறுத்து, இயக்கி சொந்தமாகவோ அல்லது விற்பனையாளர் சார்ந்ததாகவோ இருக்கலாம். உதாரணமாக, Microsoft Windows® இன் கீழ், உங்கள் பயன்பாடு விற்பனையாளர் சாதனத்துடன் தொடர்பு கொள்ள Microsoft வழங்கிய WinUSB இயக்கியுடன் தொடர்பு கொள்கிறது.
USB சாதன விற்பனையாளர் வகுப்பு முடிந்ததுview
படம் – விண்டோஸ் ஹோஸ்ட் மற்றும் வெண்டர் கிளாஸுக்கு இடையிலான பொது கட்டமைப்பு, வெண்டர் கிளாஸைப் பயன்படுத்தி ஹோஸ்டுக்கும் சாதனத்திற்கும் இடையிலான பொதுவான கட்டமைப்பைக் காட்டுகிறது. இந்த எடுத்துக்காட்டில்ampசரி, ஹோஸ்ட் இயக்க முறைமை MS விண்டோஸ் ஆகும்.
படம் – MS விண்டோஸ் ஹோஸ்ட் மற்றும் விற்பனையாளர் வகுப்பிற்கு இடையிலான பொதுவான கட்டமைப்பு

MS Windows பக்கத்தில், பயன்பாடு ஒரு USB நூலகத்துடன் தொடர்புகொள்வதன் மூலம் விற்பனையாளர் சாதனத்துடன் தொடர்பு கொள்கிறது. libusb போன்ற நூலகங்கள், ஒரு சாதனத்தையும் அதனுடன் தொடர்புடைய குழாய்களையும் நிர்வகிக்கவும், கட்டுப்பாடு, மொத்த மற்றும் குறுக்கீடு முனைப்புள்ளிகள் மூலம் சாதனத்துடன் தொடர்பு கொள்ளவும் ஒரு API ஐ வழங்குகின்றன.
சாதனப் பக்கத்தில், விற்பனையாளர் வகுப்பு பின்வரும் இறுதிப் புள்ளிகளால் ஆனது:
ஒரு ஜோடி கட்டுப்பாட்டு IN மற்றும் OUT முனைப்புள்ளிகள் இயல்புநிலை முனைப்புள்ளி எனப்படும். ஒரு ஜோடி மொத்த IN மற்றும் OUT முனைப்புள்ளிகள்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

51/174

முடிந்துவிட்டதுview

ஒரு ஜோடி குறுக்கீடு IN மற்றும் OUT முனைப்புள்ளிகள். இந்த ஜோடி விருப்பத்திற்குரியது. கீழே உள்ள அட்டவணை வெவ்வேறு முனைப்புள்ளிகளின் பயன்பாட்டைக் குறிக்கிறது:
அட்டவணை - விற்பனையாளர் வகுப்பு எண்ட்பாயிண்ட்ஸ் பயன்பாடு

எண்ட்பாயிண்ட் திசை

கட்டுப்பாடு IN
கட்டுப்பாடு
வெளியே
மொத்தமாக IN

சாதன-ஹோஸ்ட்
>ஹோஸ்ட்-டுடிவைஸ்
சாதன-ஹோஸ்ட்

மொத்தமாக வெளியே
குறுக்கீடு IN
குறுக்கிடவும்
வெளியே

சாதனத்திற்கு ஹோஸ்ட்
சாதன-ஹோஸ்ட்
சாதனத்திற்கு ஹோஸ்ட்

பயன்பாடு
கணக்கெடுப்பு மற்றும் விற்பனையாளர் சார்ந்த கோரிக்கைகளுக்கான நிலையான கோரிக்கைகள்.
கணக்கெடுப்பு மற்றும் விற்பனையாளர் சார்ந்த கோரிக்கைகளுக்கான நிலையான கோரிக்கைகள்.
மூல தரவு தொடர்பு. தரவை ஒரு தனியுரிம நெறிமுறையின்படி கட்டமைக்க முடியும்.
மூல தரவு தொடர்பு. தரவை ஒரு தனியுரிம நெறிமுறையின்படி கட்டமைக்க முடியும்.
மூல தரவு தொடர்பு அல்லது அறிவிப்பு. தரவை ஒரு தனியுரிம நெறிமுறையின்படி கட்டமைக்க முடியும். மூல தரவு தொடர்பு அல்லது அறிவிப்பு. தரவை ஒரு தனியுரிம நெறிமுறையின்படி கட்டமைக்க முடியும்.

ஹோஸ்டுக்கு அல்லது ஹோஸ்டிலிருந்து தரவை அனுப்ப அல்லது பெற சாதன பயன்பாடு மொத்த மற்றும் குறுக்கீடு எண்ட்பாயிண்ட்களைப் பயன்படுத்தலாம். ஹோஸ்டால் அனுப்பப்படும் விற்பனையாளர்-குறிப்பிட்ட கோரிக்கைகளை டிகோட் செய்ய இயல்புநிலை எண்ட்பாயிண்டை மட்டுமே இது பயன்படுத்த முடியும். நிலையான கோரிக்கைகள் சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதனத்தின் கோர் லேயரால் உள்நாட்டில் நிர்வகிக்கப்படுகின்றன.
மையத்திலிருந்து USB சாதன விற்பனையாளர் வகுப்பு வளத் தேவைகள்

sl_usbd_vendor_add_to_configuration() செயல்பாடு வழியாக ஒரு உள்ளமைவில் ஒரு விற்பனையாளர் வகுப்பு நிகழ்வைச் சேர்க்கும் ஒவ்வொரு முறையும், பின்வரும் வளங்கள் மையத்திலிருந்து ஒதுக்கப்படும்.

வளம்
இடைமுகங்கள் மாற்று இடைமுகங்கள் இறுதிப்புள்ளிகள் இடைமுகக் குழுக்கள்

அளவு
1 1 2 (4 நீங்கள் குறுக்கீடு முனைப்புள்ளிகளை இயக்கியிருந்தால்) 0

அந்த எண்கள் உள்ளமைவுக்குரியவை என்பதை நினைவில் கொள்ளவும். உங்கள் SL_USBD_INTERFACE_QUANTITY , SL_USBD_ALT_INTERFACE_QUANTITY , SL_USBD_INTERFACE_GROUP_QUANTITY மற்றும் SL_USBD_DESCRIPTOR_QUANTITY உள்ளமைவு மதிப்புகளை அமைக்கும் போது, ​​வகுப்பு எத்தனை உள்ளமைவுகளைச் சேர்க்கும் என்பதைக் கணக்கில் எடுத்துக்கொள்ள மறக்காதீர்கள். SL_USBD_OPEN_ENDPOINTS_QUANTITY உள்ளமைவு மதிப்புக்கு, ஹோஸ்டால் உள்ளமைவு அமைக்கப்படும் போது மட்டுமே இறுதிப் புள்ளிகள் திறக்கப்படும் என்பதால், ஒரு வகுப்பு நிகழ்வுக்குத் தேவையான இறுதிப் புள்ளிகளின் எண்ணிக்கையை நீங்கள் கணக்கில் எடுத்துக்கொள்ள வேண்டும்.
USB சாதன விற்பனையாளர் வகுப்பு உள்ளமைவு

விற்பனையாளர் வகுப்பை உள்ளமைக்க இரண்டு குழுக்கள் உள்ளமைவு அளவுருக்கள் பயன்படுத்தப்படுகின்றன:
USB சாதன விற்பனையாளர் வகுப்பு பயன்பாடு-குறிப்பிட்ட உள்ளமைவுகள் USB சாதன விற்பனையாளர் வகுப்பு நிகழ்வு உள்ளமைவுகள்
USB சாதன விற்பனையாளர் வகுப்பு பயன்பாடு-குறிப்பிட்ட உள்ளமைவுகள்
முதலில், சிலிக்கான் லேப்ஸ் யூ.எஸ்.பி சாதன விற்பனையாளர் வகுப்பு தொகுதியைப் பயன்படுத்த, உங்கள் பயன்பாட்டுத் தேவைகளுக்கு ஏற்ப விற்பனையாளர் தொகுத்தல்-நேர உள்ளமைவு வரையறைகளை சரிசெய்யவும். அவை sl_usbd_core_config.h தலைப்புக்குள் மீண்டும் தொகுக்கப்படுகின்றன. file விற்பனையாளர் பிரிவின் கீழ். அளவு உள்ளமைவுகளின் நோக்கம், எத்தனை USB விற்பனையாளர் பொருட்களை ஒதுக்க வேண்டும் என்பது குறித்து USB சாதன தொகுதிக்கு தெரிவிப்பதாகும்.
கீழே உள்ள அட்டவணை ஒவ்வொரு உள்ளமைவு வரையறையையும் விவரிக்கிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

52/174

முடிந்துவிட்டதுview

அட்டவணை - USB சாதன விற்பனையாளர் உள்ளமைவு வரையறுக்கிறது

கட்டமைப்பு பெயர்

விளக்கம்

இயல்புநிலை மதிப்பு

SL_USBD_VENDOR_CLASS_INSTANCE_QUANTITY sl_usbd_vendor_create_instance() என்ற 2 செயல்பாட்டிற்கு அழைப்பு மூலம் நீங்கள் ஒதுக்கும் வகுப்பு நிகழ்வுகளின் எண்ணிக்கை.

SL_USBD_VENDOR_CONFIGURATIY உள்ளமைவுகளின் எண்ணிக்கை. விற்பனையாளர் வகுப்பு நிகழ்வுகளை sl_usbd_vendor_add_to_configuration() செயல்பாட்டிற்கு அழைப்பதன் மூலம் ஒன்று அல்லது அதற்கு மேற்பட்ட உள்ளமைவுகளில் 1 சேர்க்கலாம்.

USB சாதன விற்பனையாளர் வகுப்பு நிகழ்வு உள்ளமைவுகள்

இந்தப் பிரிவு விற்பனையாளர் வகுப்பு நிகழ்வுகளுடன் தொடர்புடைய உள்ளமைவுகளை வரையறுக்கிறது.
வகுப்பு நிகழ்வு உருவாக்கம் intr_en இடைவெளி p_vendor_callbacks
வகுப்பு நிகழ்வு உருவாக்கம்

ஒரு விற்பனையாளர் வகுப்பு நிகழ்வை உருவாக்குவது sl_usbd_vendor_create_instance() என்ற செயல்பாட்டை அழைப்பதன் மூலம் செய்யப்படுகிறது, இது கீழே விவரிக்கப்பட்டுள்ள மூன்று உள்ளமைவு வாதங்களை எடுக்கும்.

உள்_என்
ஒரு ஜோடி குறுக்கீடு முனைப்புள்ளிகள் சேர்க்கப்பட வேண்டுமா இல்லையா என்பதைக் குறிக்கும் பூலியன்.

மதிப்பு
உண்மை பொய்

விளக்கம்
உட்பொதிக்கப்பட்ட பயன்பாட்டிற்கு ஒரு ஜோடி IN/OUT முனைப்புள்ளிகள் சேர்க்கப்பட்டு கிடைக்கச் செய்யப்படும். எந்த குறுக்கீடு முனைப்புள்ளியும் சேர்க்கப்படாது. ஒரு ஜோடி மொத்த IN/OUT முனைப்புள்ளி மட்டுமே கிடைக்கும்.

இடைவெளி
நீங்கள் intr_en ஐ true என அமைத்தால், குறுக்கீடு எண்ட்பாயிண்ட்ஸ் வாக்குப்பதிவு இடைவெளியை (மில்லி விநாடிகளில்) குறிப்பிடலாம். intr_en ஐ false என அமைத்தால், வகுப்பால் அது புறக்கணிக்கப்படும் என்பதால் இடைவெளியை 0 என அமைக்கலாம்.
p_vendor_callbacks_பயன்படுத்துபவர்கள்
p_vendor_callbacks என்பது ஒரு callback functions கட்டமைப்பு மாறிக்கான ஒரு சுட்டிக்காட்டியாகும். இதை நீங்கள் class specific control requests-ஐ கையாள குறிப்பிடலாம். நீங்கள் எந்த class specific requests-ஐயும் பயன்படுத்தவில்லை என்றால் அல்லது அறிவிப்பை இயக்க/முடக்க வேண்டும் என்றால், இதை NULL என அமைக்கலாம்.
முன்னாள்ampகீழே உள்ள le உங்கள் வகுப்பு குறிப்பிட்ட கோரிக்கை கையாளுபவரின் எதிர்பார்க்கப்படும் கையொப்பத்தை வழங்குகிறது.
Example – வகுப்பு-குறிப்பிட்ட கோரிக்கை செயல்பாட்டின் கையொப்பம்

void app_usbd_vendor_req_handle(uint8_t)

வகுப்பு_நபர், (1)

const sl_usbd_setup_req_t *p_setup_req); (2)

sl_usbd_vendor_callbacks_t app_usbd_vendor_callback_functions =
{
.enable = NULL, .disable = NULL, .setup_req = app_usbd_vendor_req_handle,
};

(1) விற்பனையாளர் வகுப்பு நிகழ்வு எண்.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

53/174

முடிந்துவிட்டதுview

(2) ஹோஸ்டிடமிருந்து பெறப்பட்ட அமைவு கோரிக்கைக்கான சுட்டி.
USB சாதன விற்பனையாளர் வகுப்பு நிரலாக்க வழிகாட்டி
இந்தப் பிரிவு விற்பனையாளர் வகுப்பை எவ்வாறு பயன்படுத்துவது என்பதை விளக்குகிறது. USB சாதன விற்பனையாளர் வகுப்பைத் துவக்குதல் உங்கள் சாதனத்தில் ஒரு USB சாதன விற்பனையாளர் வகுப்பு நிகழ்வைச் சேர்த்தல் USB சாதன விற்பனையாளர் வகுப்பைப் பயன்படுத்தி தொடர்பு கொள்ளுதல்
USB சாதன விற்பனையாளர் வகுப்பைத் துவக்குதல்
உங்கள் சாதனத்தில் ஒரு விற்பனையாளர் வகுப்பு செயல்பாட்டைச் சேர்க்க, முதலில் USBD_Vendor_Init() செயல்பாட்டை அழைப்பதன் மூலம் வகுப்பை துவக்கவும். exampகீழே உள்ள le sl_usbd_vendor_init() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது.
Example – sl_usbd_vendor_init() ஐ அழைக்கிறது

sl_status_t நிலை;
status = sl_usbd_vendor_init(); if (status ! SL_STATUS_OK) { /* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */ }
உங்கள் சாதனத்தில் ஒரு USB சாதன விற்பனையாளர் வகுப்பு நிகழ்வைச் சேர்த்தல்.
உங்கள் சாதனத்தில் விற்பனையாளர் வகுப்பு செயல்பாட்டைச் சேர்க்க, நீங்கள் முதலில் ஒரு நிகழ்வை உருவாக்க வேண்டும், பின்னர் அதை உங்கள் சாதனத்தின் உள்ளமைவில்(களில்) சேர்க்க வேண்டும்.
ஒரு விற்பனையாளர் வகுப்பு நிகழ்வை உருவாக்குதல் உங்கள் சாதனத்தின் உள்ளமைவுகளில் விற்பனையாளர் வகுப்பு நிகழ்வைச் சேர்த்தல்
ஒரு விற்பனையாளர் வகுப்பு நிகழ்வை உருவாக்குதல்
sl_usbd_vendor_create_instance() என்ற செயல்பாட்டை அழைப்பதன் மூலம் ஒரு விற்பனையாளர் வகுப்பு நிகழ்வை உருவாக்கவும்.ampகீழே உள்ள பகுதி, இயல்புநிலை வாதங்களைப் பயன்படுத்தி sl_usbd_vendor_create_instance() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது. sl_usbd_vendor_create_instance() க்கு அனுப்ப வேண்டிய உள்ளமைவு வாதங்கள் பற்றிய கூடுதல் தகவலுக்கு, USB சாதன விற்பனையாளர் வகுப்பு நிகழ்வு உள்ளமைவுகளைப் பார்க்கவும்.
Example – sl_usbd_vendor_create_instance() ஐ அழைக்கிறது

uint8_t வகுப்பு_nbr; sl_status_t நிலை;

நிலை = sl_usbd_vendor_create_instance(தவறு,

(1)

0u,

(2)

app_usbd_vendor_callback_functions, (3)

&வகுப்பு_nbr);

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

(1) இந்த வகுப்பு நிகழ்வில் குறுக்கீடு முனைப்புள்ளிகள் இல்லை. (2) குறுக்கீடு முனைப்புள்ளிகள் முடக்கப்பட்டுள்ளதால் இடைவெளி புறக்கணிக்கப்படுகிறது.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

54/174

முடிந்துவிட்டதுview

(3) விற்பனையாளர்-குறிப்பிட்ட வகுப்பு கோரிக்கைகளை கையாளும் உங்கள் பயன்பாட்டின் ஒரு பகுதியாக இருக்கும் திரும்ப அழைக்கும் செயல்பாடு. மேலும் தகவலுக்கு USB சாதன விற்பனையாளர் வகுப்பைப் பயன்படுத்தி தொடர்புகொள்வதைப் பார்க்கவும். உங்கள் சாதனத்தின் உள்ளமைவு(களில்) விற்பனையாளர் வகுப்பு நிகழ்வைச் சேர்த்தல் நீங்கள் ஒரு விற்பனையாளர் வகுப்பு நிகழ்வை உருவாக்கிய பிறகு, USBD_Vendor_ConfigAdd() செயல்பாட்டை அழைப்பதன் மூலம் அதை உள்ளமைவில் சேர்க்கலாம். exampகீழே உள்ள le, இயல்புநிலை வாதங்களைப் பயன்படுத்தி sl_usbd_vendor_add_to_configuration() ஐ எவ்வாறு அழைப்பது என்பதைக் காட்டுகிறது.
Example – sl_usbd_vendor_add_to_configuration() ஐ அழைக்கிறது

sl_status_t நிலை;

நிலை = sl_usbd_vendor_add_to_configuration(class_nbr,

(1)

config_nbr_fs); (con));

(2)

(நிலை ! SL_STATUS_OK) {

/* ஒரு பிழை ஏற்பட்டது. பிழை கையாளுதலை இங்கே சேர்க்க வேண்டும். */

}

(1) sl_usbd_vendor_create_instance() ஆல் திருப்பி அனுப்பப்பட்ட உள்ளமைவில் சேர்க்க வேண்டிய வகுப்பு எண். (2) உள்ளமைவு எண் (இங்கே அதை முழு வேக உள்ளமைவில் சேர்க்கிறது).
USB சாதன விற்பனையாளர் வகுப்பைப் பயன்படுத்தி தொடர்புகொள்வது
பொது ஒத்திசைவான தொடர்பு ஒத்திசைவற்ற தொடர்பு விற்பனையாளர் கோரிக்கை பொது ஹோஸ்டுடன் தொடர்பு கொள்ள விற்பனையாளர் வகுப்பு பின்வரும் செயல்பாடுகளை வழங்குகிறது. செயல்பாட்டின் அளவுருக்கள் பற்றிய கூடுதல் விவரங்களுக்கு, USB சாதன விற்பனையாளர் API ஐப் பார்க்கவும்.
அட்டவணை - விற்பனையாளர் தொடர்பு API சுருக்கம்

செயல்பாட்டின் பெயர்
sl_usb d _v e nd o r_ re ad _b ulk_sy nc() sl_usb d _v e nd o r_write _b ulk_sy nc() sl_usb d _v e nd o r_ re ad _b ulk_asy nc() sl_usb d _v e nd o r_ re ad _b ulk_asy nc() sl_usb d _v e nd o r_ re ad _inte rrup t_sy nc() sl_usb d _v e nd o r_ re ad _inte rrup t_sy nc() sl_usb d _v e nd o r_ re ad _inte rrup t_sy nc() sl_usb d _v e nd o r_ re ad _inte rrup t_asy nc
()
sl_usb d _v e nd o r_write _inte rrup t_asy nc
()

Operation Receives data from host through bulk OUT endpoint. This function is blocking. Sends data to host through bulk IN endpoint. This function is blocking. Receives data from host through bulk OUT endpoint. This function is non-blocking. Sends data to host through bulk IN endpoint. This function is non-blocking. Receives data from host through interrupt OUT endpoint. This function is blocking. Sends data to host through interrupt IN endpoint. This function is blocking. Receives data from host through interrupt OUT endpoint. This function is non-
தடுப்பது.
Sends data to host through interrupt IN endpoint. This function is non-blocking.

The vendor requests are also another way to communicate with the host. When managing vendor requests sent by the host, the application can receive or send data from or to the host using the control endpoint; you will need to provide an application callback passed as a parameter of sl_usbd_vendor_create_instance() . Synchronous Communication

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

55/174

முடிந்துவிட்டதுview

Synchronous communication means that the transfer is blocking. When a function is called, the application blocks until the transfer completes with or without an error. A timeout can be specified to avoid waiting forever. The example below shows a read and write that receives data from the host using the bulk OUT endpoint and sends data to the host using the bulk IN endpoint.
Example – Synchronous Bulk Read and Write

__சீரமைக்கப்பட்டது(4) uint8_t rx_buf[2];

__சீரமைக்கப்பட்டது(4) uint8_t tx_buf[2];

uint32_t

எக்ஸ்ஃபர்_லென்;

sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)

நிலை;

status = sl_usbd_vendor_read_bulk_sync(class_nbr,

(1)

(void *)&rx_buf[0],

(2)

2u,

0u,

(3)

&எக்ஸ்ஃபர்_லென்);

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

status = sl_usbd_vendor_write_bulk_sync( class_nbr,

(1)

(void *)&tx_buf[0],

(4)

2u,

0u,

(3)

false,

(5)

&எக்ஸ்ஃபர்_லென்);

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

(1) The class instance number created with sl_usbd_vendor_create_instance() provides an internal reference to the Vendor class to route the transfer to the proper bulk OUT or IN endpoint.
(2) The application must ensure that the buffer provided to the function is large enough to accommodate all the data. Otherwise, synchronization issues might happen.
(3) In order to avoid an infinite blocking situation, a timeout expressed in milliseconds can be specified. A value of 809 makes the application task wait forever.
(4) பயன்பாடு துவக்கப்பட்ட டிரான்ஸ்மிட் பஃபரை வழங்குகிறது.
(5) If this flag is set to true , and the transfer length is multiple of the endpoint maximum packet size, the device stack will send a zero-length packet to the host to signal the end of the transfer.
The use of interrupt endpoint communication functions, sl_usbd_vendor_read_interrupt_sync() and sl_usbd_vendor_write_interrupt_sync() , is similar to bulk endpoint communication functions presented in Example – Synchronous Bulk Read and Write.
ஒத்திசைவற்ற தொடர்பு
Asynchronous communication means that the transfer is non-blocking. When a function is called, the application passes the transfer information to the device stack and does not block. Other application processing can be done while the transfer is in progress over the USB bus. Once the transfer has completed, a callback function is called by the device stack to inform the application about the transfer completion. The example below shows asynchronous read and write.
Example – Asynchronous Bulk Read and Write

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

56/174

முடிந்துவிட்டதுview

void app_usbd_vendor_comm (uint8_t class_nbr)

{

__சீரமைக்கப்பட்டது(4) uint8_t rx_buf[2];

__சீரமைக்கப்பட்டது(4) uint8_t tx_buf[2];

sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)

நிலை;

status = sl_usbd_vendor_read_bulk_async(class_nbr,

(void *)&rx_buf[0],

(2)

2u,

app_usbd_vendor_rx_completed,

NULL);

(4)

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

status = sl_usbd_vendor_write_bulk_async(class_nbr,

(void *)&tx_buf[0],

(5)

2u,

app_usbd_vendor_tx_completed,

NULL,

(4)

false);

(6)

(நிலை ! SL_STATUS_OK) {

/* $$$$ பிழையைக் கையாளவும். */

}

}

(1) (3)
(1) (3)

static void app_usbd_vendor_rx_completed(uint8_t class_nbr,

(3)

void *p_buf,

uint32_t buf_len,

uint32_t xfer_len,

void *p_callback_arg,

sl_status_t status)

{

(நிலை ! SL_STATUS_OK) {

/* $$$$ Do some processing. */

} வேறு {

/* $$$$ பிழையைக் கையாளவும். */

}

}

static void app_usbd_vendor_tx_completed(uint8_t class_nbr,

(3)

void *p_buf,

uint32_t buf_len,

uint32_t xfer_len,

void *p_callback_arg,

sl_status_t status)

{

(நிலை ! SL_STATUS_OK) {

/* $$$$ Do some processing. */

} வேறு {

/* $$$$ பிழையைக் கையாளவும். */

}

}

(1) The class instance number provides an internal reference to the Vendor class to route the transfer to the proper bulk OUT or IN endpoint. (2) The application must ensure that the buffer provided is large enough to accommodate all the data. Otherwise, there may be synchronization issues. (3) The application provides a callback function pointer passed as a parameter. Upon completion of the transfer, the device stack calls this callback function so that the application can finalize the transfer by analyzing the transfer result. For instance, on completion of a read operation, the application might perform processing on the received data. Upon write completion, the application can indicate if the write was successful and how many bytes were sent.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

57/174

முடிந்துவிட்டதுview
(4) An argument associated with the callback can be also passed. Then in the callback context, some private information can be retrieved. (5) The application provides the initialized transmit buffer. (6) If this flag is set to true , and the transfer length is a multiple of the endpoint maximum packet size, the device stack will send a zero-length packet to the host to signal the end of transfer. The use of interrupt endpoint communication functions, sl_usbd_vendor_read_interrupt_async() and sl_usbd_vendor_write_interrupt_async() , is similar to the bulk endpoint communication functions presented in Example Asynchronous Bulk Read and Write.
Vendor Request
The USB 2.0 specification defines three types of requests: standard, class, and vendor. All standard requests are handled directly by the core layer, while class requests are managed by the proper associated class. Vendor requests can be processed by the vendor class. To process vendor requests, you must provide an application callback as a parameter of sl_usbd_vendor_create_instance() . After a vendor request is received by the USB device, it must be decoded properly. The example below shows vendor request decoding. Certain requests may be required to receive from or send to the host during the data stage of a control transfer. If no data stage is present, you only have to decode the Setup packet. This example shows the three types of data stage management: no data, data OUT and data IN.
Example – Vendor Request Decoding

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

58/174

முடிந்துவிட்டதுview

#define APP_VENDOR_REQ_NO_DATA

0x01u

#define APP_VENDOR_REQ_RECEIVE_DATA_FROM_HOST 0x02u

#define APP_VENDOR_REQ_SEND_DATA_TO_HOST 0x03u

#define APP_VENDOR_REQ_DATA_BUF_SIZE

50u

static uint8_t app_vendor_req_buf[APP_VENDOR_REQ_DATA_BUF_SIZE];

static bool app_usbd_vendor_req (uint8_t

class_nbr,

const sl_usbd_setup_req_t *p_setup_req)

(1)

{

bool valid;

sl_status_t நிலை;

uint16_t req_len;

uint32_t xfer_len;

(void)class_nbr;

switch(p_setup_req->bRequest) { case APP_VENDOR_REQ_NO_DATA: valid = true; break;

(2) (3)

case APP_VENDOR_REQ_RECEIVE_DATA_FROM_HOST:

(4)

req_len = p_setup_req->wLength;

if (req_len > APP_VENDOR_REQ_DATA_BUF_SIZE) {

// Not enough room to receive data.

return (false);

}

// Receive data via Control OUT EP. // Wait transfer completion forever. status = sl_usbd_core_read_control_sync((void *)&app_vendor_req_buf[0u],
req_len, 0u, &xfer_len); if (status ! SL_STATUS_OK) { valid = false; } else { valid = true; } break;

case APP_VENDOR_REQ_SEND_DATA_TO_HOST:

(5)

req_len = APP_VENDOR_REQ_DATA_BUF_SIZE;

// Fill buf with a pattern. Mem_Set((void *)&AppVendorReqBuf[0u],
'ஏ',
req_len);

// Send data via Control IN EP. // Wait transfer completion forever. status = sl_usbd_core_write_control_sync((void *)&app_vendor_req_buf[0u],
req_len, 0u, false, &xfer_len); if (status ! SL_STATUS_OK) { valid = DEF_FAIL; } else { valid = DEF_OK; } break;

இயல்புநிலை:

(6)

// Request is not supported.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

59/174

முடிந்துவிட்டதுview

valid =true;break;
case APP_VENDOR_REQ_RECEIVE_DATA_FROM_HOST:(4) req_len = p_setup_req->wLength;if(req_len > APP_VENDOR_REQ_DATA_BUF_SIZE){// Not enough room to receive data.return(false);}// Receive data via Control OUT EP.// Wait transfer completion forever. status =sl_usbd_core_read_control_sync((void *)&app_vendor_req_buf[0u],
req_len,0u,&xfer_len);if(status ! SL_STATUS_OK){ valid =false;}else{ valid =true;}break;
case APP_VENDOR_REQ_SEND_DATA_TO_HOST:(5) req_len = APP_VENDOR_REQ_DATA_BUF_SIZE;// Fill buf with a pattern.Mem_Set((void *)&AppVendorReqBuf[0u],’A’,
req_len);// Send data via Control IN EP.// Wait transfer completion forever. status =sl_usbd_core_write_control_sync((void *)&app_vendor_req_buf[0u],
req_len,0u,false,&xfer_len);if(status ! SL_STATUS_OK){ valid = DEF_FAIL;}else{ valid = DEF_OK;}break;
default:(6)// Request is not supported. valid = DEF_FAIL;break;}return(valid);}

(1) The core will pass the Setup packet content to your application. The structure sl_usbd_setup_req_t contains the same fields as defined by the USB 2.0 specification (refer to section “9.3 USB Device Requests” of the specification for more details):

typedef struct {

uint8_t bmRequestType; /* Characteristics of request.

*/

uint8_t bRequest; /* Specific request.

*/

uint16_t wValue; /* Varies according to request.

*/

uint16_t wIndex; /* Varies according to request; typically used as index.*/

uint16_t wLength; /* Transfer length if data stagஇ தற்போது.

*/

} sl_usbd_setup_req_t;

(2) Determine the request. You may use a switch statement if you are using different requests. In this example, there are three different requests corresponding to the three types of the data stage: APP_VENDOR_REQ_NO_DATA, APP_VENDOR_REQ_RECEIVE_DATA_FROM_HOST, and APP_VENDOR_REQ_SEND_DATA_TO_HOST.
(3) If no data stage is present, you only need to decode the other fields. The presence of a data stage or not is indicated by the field wLength being non-null or null.
(4) If the host sends data to the device, you must call the function sl_usbd_core_read_control_sync() . The buffer provided should be able to contain up to wLength bytes. If any error occurs, return false to the core that will stall the status stage of the control transfer, indicating to the host that the request cannot be processed. true is returned in case of success.
(5) If the host receives data from the device, you must call the function sl_usbd_core_write_control_sync() . If any error occurs, return false to the core that will stall the status stage of the control transfer, indicating to the host that the request cannot be processed. true is returned in case of success.
(6) In this example, all requests not recognized are marked by returning false to the core. This one will stall the data or status stage of the control transfer indicating to the host that the request is not supported.
The host sends vendor requests through a host vendor application. USb libraries, such as libusb, can be used to help you develop your custom host vendor application.

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

60/174

API ஆவணம்
API ஆவணம்
API ஆவணம்
தொகுதிகளின் பட்டியல்
USB Device API USB Device ACM API USB Device CDC API USB Device Core API USB Device HID API USB Device MSC API USB Device MSC SCSI API USB Device Vendor API

விளக்கம்
USB Device API USB Device ACM API USB Device CDC API USB Device Core API USB Device HID API USB Device MSC API USB Device MSC SCSI API USB Device Vendor API

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

61/174

USB Device API
USB Device API
USB Device API
USB Device API.
தொகுதிகள்
USB Device ACM API USB Device CDC API USB Device Core API USB Device HID API USB Device MSC API USB Device MSC SCSI API USB Device Vendor API

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

62/174

USB Device ACM API

USB Device ACM API

USB Device ACM API

USB Device CDC ACM API.
தொகுதிகள்
a sl_usbd_cdc_ cm_line_coding_t sl_usbd_cdc_acm_callbacks_t
செயல்பாடுகள்

sl_status_t sl_status_t
sl_status_t sl_status_t sl_status_t
sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)
sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)
sl_status_t (ஸ்ரீ_ஸ்டேட்டஸ்_டி)
sl_status_t sl_status_t sl_status_t sl_status_t sl_status_t

a sl_usbd_cdc_ cm_init(void)
GLOBAL VARIABLES.
ssll__uussbbdd__ccddcc__aaccmm__ccraellabtaec_kins_stta*npc_ea(cumin_tc1a6l_lbtalicnkes_,sutaintte8__int t*eprv_saul,bucinlats1s6__nt bcra)ll_mgmt_capabilities,
Add a new instance of the CDC ACM serial emulation subclass.
a a a a sl_usbd_cdc_ cm_ dd_to_configur tion(uint8_t subcl ss_nbr, uint8_t config_nbr)
Add a CDC ACM subclass class instance into USB device configuration.
a a sl_usbd_cdc_ cm_is_en bled(uint8_t subclass_nbr, bool *p_enabled)
Get the CDC ACM serial emulation subclass enable state.
a a a sl_usbd_cdc_ cm_re d(uint8_t subcl ss_nbr, uint8_t *p_buf, uint32_t buf_len, uint16_t timeout, uint32_t
*p_xfer_len) Receive data on the CDC ACM serial emulation subclass.
a a a a sl_usbd_cdc_ cm_re d_ sync(uint8_t subcl ss_nbr, uint8_t *p_buf, uint32_t buf_len, a a a a sl_usbd_cdc_ sync_function_t sync_fnct, void *p_ sync_ rg)
Receive data on the CDC ACM serial emulation subclass asynchronously.
a a sl_usbd_cdc_ cm_write(uint8_t subcl ss_nbr, uint8_t *p_buf, uint32_t buf_len, uint16_t timeout, uint32_t
*p_xfer_len) Send data on the CDC ACM serial emulation subclass.
a a a sl_usbd_cdc_ cm_write_ sync(uint8_t subcl ss_nbr, uint8_t *p_buf, uint32_t buf_len, a a a a sl_usbd_cdc_ sync_function_t sync_fnct, void *p_ sync_ rg)
Send data on the CDC ACM serial emulation subclass asynchronously.
a a a sl_usbd_cdc_ cm_get_line_control_st te(uint8_t subcl ss_nbr, uint8_t *p_line_ctrl)
Return the state of control lines.
a a a sl_usbd_cdc_ cm_get_line_coding(uint8_t subcl ss_nbr, sl_usbd_cdc_ cm_line_coding_t *p_line_coding)
Get the current state of the line coding.
a a a sl_usbd_cdc_ cm_set_line_coding(uint8_t subcl ss_nbr, sl_usbd_cdc_ cm_line_coding_t *p_line_coding)
Set a new line coding.
a a a sl_usbd_cdc_ cm_set_line_st te_event(uint8_t subcl ss_nbr, uint8_t events)
Set a line state event(s).
a a a a sl_usbd_cdc_ cm_cle r_line_st te_event(uint8_t subcl ss_nbr, uint8_t events)
Clear a line state event(s).

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

63/174

USB Device ACM API
மேக்ரோக்கள்
#define SL_USBD_CDC_ACM_NBR_NONE 255u
தொகுதி.
#define SL_USBD_CDC_ACM_PARITY_NONE 0u
PORT SETTINGS DEFINES.
#define SL_USBD_CDC_ACM_PARITY_ODD 1u #define SL_USBD_CDC_ACM_PARITY_EVEN 2u #define SL_USBD_CDC_ACM_PARITY_MARK 3u #define SL_USBD_CDC_ACM_PARITY_SPACE 4u #define SL_USBD_CDC_ACM_STOP_BIT_1 0u #define SL_USBD_CDC_ACM_STOP_BIT_1_5 1u #define SL_USBD_CDC_ACM_STOP_BIT_2 2u #define SL_USBD_CDC_ACM_CTRL_BREAK 0 01u
LINE EVENTS FLAGS DEFINES.
#define SL_USBD_CDC_ACM_CTRL_RTS 0 02u #define SL_USBD_CDC_ACM_CTRL_DTR 0 04u #define SL_USBD_CDC_ACM_STATE_DCD 0 01u #define SL_USBD_CDC_ACM_STATE_DSR 0 02u #define SL_USBD_CDC_ACM_STATE_BREAK 0 04u #define SL_USBD_CDC_ACM_STATE_RING 0 08u #define SL_USBD_CDC_ACM_STATE_FRAMING 0 10u #define SL_USBD_CDC_ACM_STATE_PARITY 0 20u #define SL_USBD_CDC_ACM_STATE_OVERUN 0 40u #define SL_USBD_CDC_ACM_CALL_MGMT_DEV 0 01u
CALL MANAGEMENT CAPABILITIES.
#define SL_USBD_CDC_ACM_CALL_MGMT_DATA_CCI_DCI 0 02u #define SL_USBD_CDC_ACM_CALL_MGMT_DATA_OVER_DCI 0 02u | 0 01u)
Function Documentation
sl_usbd_cdc_acm_init
sl_status_t sl_usbd_cdc_acm_init (void )
GLOBAL VARIABLES. Parameters
பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

64/174

USB Device ACM API

வகை
வெற்றிடமானது

Direction N/A

Argument Name

MACROS GLOBAL CONSTANTS FUNCTION PROTOTYPES CDC ACM FUNCTIONS

Initialize the CDC ACM serial emulation subclass.
திரும்புகிறது

Returns SL_STATUS_OK on success or another SL_STATUS code on failure.

விளக்கம்

sl_usbd_cdc_acm_create_instance

sl_status_t sl_usbd_cdc_acm_create_instance (uint16_t line_state_interval, uint16_t call_mgmt_capabilities, sl_usbd_cdc_acm_callbacks_t * p_acm_callbacks, uint8_t * p_subclass_nbr)

Add a new instance of the CDC ACM serial emulation subclass.
அளவுருக்கள்

வகை
uint16_t
uint16_t

Direction Argument Name

விளக்கம்

N/A

line_state_interval Line state notification interval in milliseconds (value must

be a power of 2).

N/A

call_mgmt_capabilities Call Management Capabilities bitmap. OR’ed of the

following flags:

SL_USBD_CDC_ACM_CALL_MGMT_DEV Device handles call management itself. SL_USBD_CDC_ACM_CALL_MGMT_DATA_CCI_DCI Device can send/receive call management information over a Data Class interface.

sl_usbd_cdc_acm_callbacks_t N/A
*

uint8_t *

N/A

p_acm_callbacks p_subclass_nbr

Optional pointers to callback functions to be called on various events.
Param to variable that will receive CDC ACM serial emulation subclass instance number.

திரும்புகிறது

Return SL_STATUS_OK on success or another SL_STATUS code on failure.

sl_usbd_cdc_acm_add_to_configuration

sl_status_t sl_usbd_cdc_acm_add_to_configuration (uint8_t subclass_nbr, uint8_t config_nbr)

Add a CDC ACM subclass class instance into USB device configuration.
அளவுருக்கள்

வகை
uint8_t uint8_t

Direction N/A N/A

Argument Name
subclass_nbr config_nbr

Description CDC ACM serial emulation subclass instance number. Configuration index to add new test class interface to.

திரும்புகிறது

பதிப்புரிமை © 2025 சிலிக்கான் ஆய்வகங்கள். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.

65/174

USB Device ACM API
Returns SL_STATUS_OK on success or another SL_STATUS code on failure.

sl_usbd_cdc_acm_is_enabled

sl_status_t sl_usbd_cdc_acm_is_enabled (uint8_t subclass_nbr, bool * p_enabled)

Get the CDC ACM serial emulation subclass enable state.
அளவுருக்கள்

வகை

திசை

Argument Name

விளக்கம்

uint8_t N/A

subclass_nbr CDC ACM serial emulation subclass instance number.

bool * N/A

p_enabled

Boolean to a variable that will receive enable status. The variable is set to true, CDC ACM serial emulation is enabled. The va

ஆவணங்கள் / ஆதாரங்கள்

SILICON LABS USB Device Stack [pdf] வழிமுறை கையேடு
USB Device Stack, Device Stack, Stack

குறிப்புகள்

கருத்து தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்படாது. தேவையான புலங்கள் குறிக்கப்பட்டுள்ளன *