زگبي اي زي ايس پي يو آر ٽي بابت

ليکڪ: ٽارچ آئي او ٽي بوٽ ڪيمپ
لنڪ: https://zhuanlan.zhihu.com/p/339700391
کان: ڪوورا

1. تعارف

سلڪون ليبز زگبي گيٽ وي ڊيزائن لاءِ هوسٽ + اين سي پي حل پيش ڪيو آهي. هن آرڪيٽيڪچر ۾، هوسٽ يو اي آر ٽي يا ايس پي آءِ انٽرفيس ذريعي اين سي پي سان رابطو ڪري سگهي ٿو. عام طور تي، يو اي آر ٽي استعمال ڪيو ويندو آهي ڇاڪاڻ ته اهو ايس پي آءِ کان گهڻو آسان آهي.

سلڪون ليبز ميزبان پروگرام لاءِ هڪ نمونو منصوبو پڻ فراهم ڪيو آهي، جيڪو نمونو آهيZ3 گيٽ وي هوسٽ. نمونو يونڪس جهڙي سسٽم تي هلندو آهي. ڪجهه گراهڪ شايد هڪ هوسٽ نمونو چاهين ٿا جيڪو RTOS تي هلائي سگهي ٿو، پر بدقسمتي سان، هن وقت ڪو به RTOS تي ٻڌل هوسٽ نمونو ناهي. صارفين کي RTOS تي ٻڌل پنهنجو هوسٽ پروگرام ٺاهڻ جي ضرورت آهي.

ڪسٽمائيزڊ هوسٽ پروگرام ٺاهڻ کان اڳ UART گيٽ وي پروٽوڪول کي سمجهڻ ضروري آهي. UART تي ٻڌل NCP ۽ SPI تي ٻڌل NCP ٻنهي لاءِ، هوسٽ NCP سان رابطو ڪرڻ لاءِ EZSP پروٽوڪول استعمال ڪندو آهي.اي زي ايس پيمختصر آهيايمبر زني سيريل پروٽوڪول، ۽ ان جي وضاحت ڪئي وئي آهييو جي 100. UART تي ٻڌل NCP لاءِ، EZSP ڊيٽا کي UART تي قابل اعتماد طريقي سان پهچائڻ لاءِ هڪ هيٺين پرت پروٽوڪول لاڳو ڪيو ويو آهي، اهو آهيايشپروٽوڪول، مختصر طور تيغير هم وقت ساز سيريل هوسٽ. ASH بابت وڌيڪ تفصيل لاءِ، مهرباني ڪري ڏسويو جي 101۽يو جي 115.

EZSP ۽ ASH جي وچ ۾ تعلق هيٺ ڏنل ڊاگرام ذريعي واضح ڪري سگهجي ٿو:

1

EZSP ۽ ASH پروٽوڪول جي ڊيٽا فارميٽ کي هيٺ ڏنل ڊاگرام ذريعي بيان ڪري سگهجي ٿو:

2

هن صفحي ۾، اسين UART ڊيٽا ۽ ڪجهه اهم فريم کي فريم ڪرڻ جي عمل کي متعارف ڪرائينداسين جيڪي اڪثر Zigbee گيٽ وي ۾ استعمال ٿيندا آهن.

2. فريمنگ

عام فريمنگ جي عمل کي هيٺ ڏنل چارٽ ذريعي بيان ڪري سگهجي ٿو:

3

هن چارٽ ۾، ڊيٽا جو مطلب آهي EZSP فريم. عام طور تي، فريمنگ جا عمل آهن: |نه|قدم|حوالو|

|:-|:-|:-|

|1|EZSP فريم ڀريو|UG100|

|2|ڊيٽا بي ترتيب ڪرڻ|UG101 جو سيڪشن 4.3|

|3|UG101| جو ڪنٽرول بائيٽ|Chap2 ۽ Chap3 شامل ڪريو.

|4|CRC جو حساب ڪريو|UG101 جو سيڪشن 2.3|

|5|بائيٽ اسٽفنگ|UG101 جو سيڪشن 4.2|

|6|اختتامي جھنڊو شامل ڪريو|UG101 جو سيڪشن 2.4|

2.1. EZSP فريم ڀريو

EZSP فريم فارميٽ UG100 جي باب 3 ۾ ڏيکاريل آهي.

4

ڌيان ڏيو ته هي فارميٽ تبديل ٿي سگهي ٿو جڏهن SDK اپ گريڊ ٿيندو. جڏهن فارميٽ تبديل ٿيندو، اسان ان کي هڪ نئون ورزن نمبر ڏينداسين. جڏهن هي مضمون لکيو ويندو ته تازو EZSP ورزن نمبر 8 آهي (EmberZnet 6.8).

جيئن ته EZSP فريم فارميٽ مختلف نسخن جي وچ ۾ مختلف ٿي سگهي ٿو، هڪ لازمي گهرج آهي ته ميزبان ۽ NCPضرورساڳئي EZSP ورزن سان ڪم ڪريو. ٻي صورت ۾، اهي توقع مطابق رابطو نٿا ڪري سگهن.

انهي کي حاصل ڪرڻ لاءِ، ميزبان ۽ اين سي پي جي وچ ۾ پهرين حڪم ورزن ڪمانڊ هجڻ گهرجي. ٻين لفظن ۾، ميزبان کي ڪنهن ٻئي رابطي کان اڳ اين سي پي جو اي زي ايس پي ورجن ٻيهر حاصل ڪرڻ گهرجي. جيڪڏهن اي زي ايس پي ورجن ميزبان پاسي جي اي زي ايس پي ورجن کان مختلف آهي، ته پوءِ رابطي کي ختم ڪرڻ گهرجي.

ان جي پويان لازمي ضرورت اها آهي ته ورزن ڪمانڊ جو فارميٽ ڪري سگهي ٿوڪڏهن به نه بدلجو. EZSP ورجن ڪمانڊ فارميٽ هيٺ ڏنل آهي:

5

پيرا ميٽر فيلڊ جي وضاحت ۽ ورجن جي جواب جي فارميٽ UG100 جي باب 4 ۾ ملي سگهي ٿي. پيرا ميٽر فيلڊ هوسٽ پروگرام جو EZSP ورجن آهي. جڏهن هي مضمون لکيو ويو آهي، اهو 8 آهي.
7
نالو: TorchIoTBootCamp
链接: https://zhuanlan.zhihu.com/p/339700391
来源: 知乎
著作权归作者所有。商业转载请联系作者获得授权،非商业转转请注明出处.

2.2. ڊيٽا بي ترتيب ڪرڻ

تفصيلي بي ترتيب ڪرڻ جو عمل UG101 جي سيڪشن 4.3 ۾ بيان ڪيو ويو آهي. سڄو EZSP فريم بي ترتيب ڪيو ويندو. بي ترتيب ڪرڻ EZSP فريم ۽ هڪ سيوڊو-بي ترتيب ترتيب کي خاص ڪرڻ لاءِ آهي.

هيٺ ڏنل آهي pseudo-random sequence پيدا ڪرڻ جو الگورتھم.

  • رينڊ0 = 0×42
  • جيڪڏهن رينڊي جو بٽ 0 0 آهي، رينڊي+1 = رينڊي >> 1
  • جيڪڏهن رينڊي جو بٽ 0 1 آهي، رينڊي+1 = (رينڊي >> 1) ^ 0xB8

2.3. ڪنٽرول بائيٽ شامل ڪريو

ڪنٽرول بائيٽ هڪ بائيٽ ڊيٽا آهي، ۽ ان کي فريم جي هيڊ ۾ شامل ڪيو وڃي. فارميٽ هيٺ ڏنل جدول سان ڏيکاريل آهي:

6

مجموعي طور تي، ڪنٽرول بائيٽس جا 6 قسم آهن. پهرين ٽي EZSP ڊيٽا سان عام فريم لاءِ استعمال ڪيا ويندا آهن، جن ۾ DATA، ACK ۽ NAK شامل آهن. آخري ٽي عام EZSP ڊيٽا کان سواءِ استعمال ڪيا ويندا آهن، جن ۾ RST، RSTACK ۽ ERROR شامل آهن.

RST، RSTACK ۽ ERROR جو فارميٽ سيڪشن 3.1 کان 3.3 ۾ بيان ڪيو ويو آهي.

2.4. سي آر سي جو حساب ڪريو

هڪ 16-بٽ CRC ڪنٽرول بائيٽ کان ڊيٽا جي آخر تائين بائيٽس تي ڳڻيو ويندو آهي. معياري CRCCCITT (g(x) = x16 + x12 + x5 + 1) 0xFFFF تي شروع ڪيو ويندو آهي. سڀ کان اهم بائيٽ گهٽ ۾ گهٽ اهم بائيٽ (وڏي-اينڊيئن موڊ) کان اڳ هوندو آهي.

2.5. بائيٽ اسٽفنگ

جيئن UG101 جي سيڪشن 4.2 ۾ بيان ڪيو ويو آهي، ڪجهه محفوظ بائيٽ ويليوز آهن جيڪي خاص مقصد لاءِ استعمال ٿين ٿيون. اهي ويليوز هيٺ ڏنل جدول ۾ ڳولي سگهجن ٿيون:

7

جڏهن اهي قدر فريم ۾ ظاهر ٿيندا، ته ڊيٽا سان هڪ خاص علاج ڪيو ويندو. - محفوظ بائيٽ جي سامهون اسڪيپ بائيٽ 0x7D داخل ڪريو - ان محفوظ بائيٽ جي بٽ 5 کي الٽ ڪريو.

هيٺ هن الگورتھم جا ڪجهه مثال آهن:

8

2.6. اينڊ فليگ شامل ڪريو

آخري قدم فريم جي آخر ۾ آخري جھنڊو 0x7E شامل ڪرڻ آهي. ان کان پوءِ، ڊيٽا UART پورٽ ڏانهن موڪلي سگهجي ٿو.

3. ڊي فريمنگ جو عمل

جڏهن UART کان ڊيٽا ملي ٿي، ته اسان کي ان کي ڊيڪوڊ ڪرڻ لاءِ صرف الٽا قدم کڻڻا پوندا.

4. حوالا


پوسٽ جو وقت: فيبروري-08-2022
WhatsApp آن لائن چيٽ!