ஆசிரியர் : டார்ச்சியோட்பூட் கேம்ப்
இணைப்பு : https: //zhuanlan.zhihu.com/p/339700391
: Quora இலிருந்து
1. அறிமுகம்
சிலிக்கான் லேப்ஸ் ஜிக்பீ நுழைவாயில் வடிவமைப்பிற்கு ஹோஸ்ட்+என்.சி.பி தீர்வை வழங்கியுள்ளது. இந்த கட்டமைப்பில், ஹோஸ்ட் NCP உடன் UART அல்லது SPI இடைமுகம் மூலம் தொடர்பு கொள்ளலாம். மிகவும் பொதுவாக, UART SPI ஐ விட மிகவும் எளிமையானது என்பதால் இது பயன்படுத்தப்படுகிறது.
சிலிக்கான் லேப்ஸ் ஹோஸ்ட் திட்டத்திற்கான மாதிரி திட்டத்தையும் வழங்கியுள்ளது, இது மாதிரிZ3gatewayhost
. மாதிரி யுனிக்ஸ் போன்ற அமைப்பில் இயங்குகிறது. சில வாடிக்கையாளர்கள் ஒரு RTOS இல் இயங்கக்கூடிய ஹோஸ்ட் மாதிரியை விரும்பலாம், ஆனால் துரதிர்ஷ்டவசமாக, தற்போதைக்கு RTOS அடிப்படையிலான ஹோஸ்ட் மாதிரி இல்லை. பயனர்கள் ஆர்டிஓக்களின் அடிப்படையில் தங்கள் சொந்த ஹோஸ்ட் திட்டத்தை உருவாக்க வேண்டும்.
தனிப்பயனாக்கப்பட்ட ஹோஸ்ட் திட்டத்தை உருவாக்குவதற்கு முன் UART நுழைவாயில் நெறிமுறையைப் புரிந்துகொள்வது முக்கியம். UART அடிப்படையிலான NCP மற்றும் SPI அடிப்படையிலான NCP இரண்டிற்கும், ஹோஸ்ட் NCP உடன் தொடர்பு கொள்ள EZSP நெறிமுறையைப் பயன்படுத்துகிறது.EZSPகுறுகியதாகும்எம்பெர்ஸ்நெட் தொடர் நெறிமுறை, அது வரையறுக்கப்பட்டுள்ளதுUG100. UART அடிப்படையிலான NCP ஐப் பொறுத்தவரை, EZSP தரவை UART இல் நம்பத்தகுந்த வகையில் கொண்டு செல்ல குறைந்த அடுக்கு நெறிமுறை செயல்படுத்தப்படுகிறது, அதுதான்சாம்பல்நெறிமுறை, குறுகியஒத்திசைவற்ற தொடர் ஹோஸ்ட். ஆஷ் பற்றிய கூடுதல் விவரங்களுக்கு, தயவுசெய்து பார்க்கவும்UG101மற்றும்UG115.
EZSP க்கும் சாம்பலுக்கும் இடையிலான உறவை பின்வரும் வரைபடத்தால் விளக்கலாம்:
EZSP மற்றும் ASH நெறிமுறையின் தரவு வடிவத்தை பின்வரும் வரைபடத்தால் விளக்கலாம்:
இந்த பக்கத்தில், UART தரவையும், ஜிக்பீ நுழைவாயிலில் அடிக்கடி பயன்படுத்தப்படும் சில முக்கிய பிரேம்களையும் வடிவமைக்கும் செயல்முறையை நாங்கள் அறிமுகப்படுத்துவோம்.
2. பிரேம்
பொதுவான பிரேம் செயல்முறையை பின்வரும் விளக்கப்படத்தால் விளக்கலாம்:
இந்த விளக்கப்படத்தில், தரவு என்பது EZSP சட்டகம் என்று பொருள். பொதுவாக, ஃப்ரேமிங் செயல்முறைகள்: | இல்லை | படி | குறிப்பு |
|:-|:-|:-|
| 1 | EZSP சட்டத்தை நிரப்பவும் | UG100 |
| 2 | தரவு சீரற்றமயமாக்கல் | UG101 இன் பிரிவு 4.3 |
| 3 | கட்டுப்பாட்டு பைட்டைச் சேர்க்கவும் | UG101 இன் CHAP2 மற்றும் CHAP3 |
| 4 | UG101 இன் CRC | பிரிவு 2.3 ஐக் கணக்கிடுங்கள்
| 5 | பைட் திணிப்பு | UG101 இன் பிரிவு 4.2 |
| 6 | இறுதிக் கொடியைச் சேர்க்கவும் | UG101 இன் பிரிவு 2.4 |
2.1. EZSP சட்டத்தை நிரப்பவும்
EZSP பிரேம் வடிவம் UG100 இன் அத்தியாயம் 3 இல் விளக்கப்பட்டுள்ளது.
SDK மேம்படுத்தும்போது இந்த வடிவம் மாறக்கூடும் என்று கவனம் செலுத்துங்கள். வடிவம் மாறும்போது, அதற்கு புதிய பதிப்பு எண்ணைக் கொடுப்போம். இந்த கட்டுரை எழுதப்படும்போது சமீபத்திய EZSP பதிப்பு எண் 8 ஆகும் (எம்பெர்ஸ்நெட் 6.8).
வெவ்வேறு பதிப்புகளுக்கு இடையில் EZSP பிரேம் வடிவம் வேறுபட்டிருக்கலாம் என்பதால், ஹோஸ்ட் மற்றும் என்.சி.பி.வேண்டும்அதே EZSP பதிப்பில் வேலை செய்யுங்கள். இல்லையெனில், அவர்களால் எதிர்பார்த்தபடி தொடர்பு கொள்ள முடியாது.
அதை அடைய, ஹோஸ்டுக்கும் என்சிபிக்கும் இடையிலான முதல் கட்டளை பதிப்பு கட்டளையாக இருக்க வேண்டும். வேறு வார்த்தைகளில் கூறுவதானால், ஹோஸ்ட் வேறு எந்த தகவல்தொடர்புக்கும் முன் NCP இன் EZSP பதிப்பை மீண்டும் பெற வேண்டும். ஹோஸ்ட் பக்கத்தின் EZSP பதிப்போடு EZSP பதிப்பு வேறுபட்டால், தகவல்தொடர்பு கைவிடப்பட வேண்டும்.
இதன் பின்னணியில் உள்ள மறைமுகத் தேவை என்னவென்றால், பதிப்பு கட்டளையின் வடிவம் முடியும்ஒருபோதும் மாற வேண்டாம். EZSP பதிப்பு கட்டளை வடிவம் கீழே உள்ளது:
链接 : https: //zhuanlan.zhihu.com/p/339700391
来源
著作权归作者所有。商业转载请联系作者获得授权
2.2. தரவு சீரற்றமயமாக்கல்
விரிவான சீரற்றமயமாக்கல் செயல்முறை UG101 இன் பிரிவு 4.3 இல் விவரிக்கப்பட்டுள்ளது. முழு EZSP சட்டமும் சீரற்றதாக இருக்கும். சீரற்றமயமாக்கல் என்பது பிரத்தியேகமாக அல்லது EZSP சட்டகம் மற்றும் ஒரு போலி-சீரற்ற வரிசை.
போலி-சீரற்ற வரிசையை உருவாக்குவதற்கான வழிமுறை கீழே.
- RAND0 = 0 × 42
- ராண்டியின் பிட் 0 என்றால் 0, ராண்டி+1 = ராண்டி >> 1
- ராண்டியின் பிட் 0 என்றால் 1, ராண்டி+1 = (ராண்டி >> 1) ^ 0xb8
2.3. கட்டுப்பாட்டு பைட் சேர்க்கவும்
கட்டுப்பாட்டு பைட் என்பது ஒரு பைட் தரவு, மேலும் சட்டகத்தின் தலையில் சேர்க்கப்பட வேண்டும். வடிவம் கீழே உள்ள அட்டவணையுடன் விளக்கப்பட்டுள்ளது:
முற்றிலும், 6 வகையான கட்டுப்பாட்டு பைட்டுகள் உள்ளன. முதல் மூன்று தரவு, ACK மற்றும் NAK உள்ளிட்ட EZSP தரவுகளுடன் பொதுவான பிரேம்களுக்குப் பயன்படுத்தப்படுகின்றன. RST, RSTACK மற்றும் பிழை உள்ளிட்ட பொதுவான EZSP தரவு இல்லாமல் கடைசி மூன்று பயன்படுத்தப்படுகின்றன.
RST, RSTACK மற்றும் பிழையின் வடிவம் பிரிவு 3.1 முதல் 3.3 வரை விவரிக்கப்பட்டுள்ளது.
2.4. CRC ஐக் கணக்கிடுங்கள்
கட்டுப்பாட்டு பைட்டிலிருந்து தரவின் இறுதி வரை பைட்டுகளில் 16-பிட் சி.ஆர்.சி கணக்கிடப்படுகிறது. நிலையான Crcccitt (g (x) = x16 + x12 + x5 + 1) 0xffff க்கு துவக்கப்படுகிறது. மிக முக்கியமான பைட் குறைந்த குறிப்பிடத்தக்க பைட் (பிக்-எண்டியன் பயன்முறை) க்கு முன்னதாகவே உள்ளது.
2.5. பைட் திணிப்பு
UG101 இன் பிரிவு 4.2 இல் விவரிக்கப்பட்டுள்ளபடி, சில ஒதுக்கப்பட்ட பைட் மதிப்புகள் சிறப்பு நோக்கத்திற்காக பயன்படுத்தப்படுகின்றன. இந்த மதிப்புகளை பின்வரும் அட்டவணையில் காணலாம்:
இந்த மதிப்புகள் சட்டகத்தில் தோன்றும்போது, தரவுக்கு ஒரு சிறப்பு சிகிச்சை செய்யப்படும். .
இந்த வழிமுறையின் சில எடுத்துக்காட்டுகள் கீழே:
2.6. இறுதிக் கொடியைச் சேர்க்கவும்
இறுதி கட்டம் 0x7E இறுதி கொடி சட்டத்தின் முடிவில் சேர்க்க வேண்டும். அதன் பிறகு, தரவை UART துறைமுகத்திற்கு அனுப்பலாம்.
3. டி-ஃப்ரேமிங் செயல்முறை
UART இலிருந்து தரவு பெறப்படும்போது, அதை டிகோட் செய்ய தலைகீழ் படிகளைச் செய்ய வேண்டும்.
4. குறிப்புகள்
இடுகை நேரம்: பிப்ரவரி -08-2022