E pili ana iā Zigbee EZSP UART

Mea kākau:TorchIoTBootCamp
Ka loulou: https://zhuanlan.zhihu.com/p/339700391
Mai: Quora

1. Hoʻolauna

Ua hāʻawi aku ʻo Silicon Labs i kahi hoʻonā hoʻokipa + NCP no ka hoʻolālā puka puka Zigbee. Ma kēia hoʻolālā, hiki i ka mea hoʻokipa ke kamaʻilio me ka NCP ma o ka UART a i ʻole SPI interface. ʻO ka mea maʻamau, hoʻohana ʻia ka UART no ka mea ʻoi aku ka maʻalahi ma mua o ka SPI.

Ua hoʻolako pū ʻo Silicon Labs i kahi papahana laʻana no ka papahana hoʻokipa, ʻo ia ka laʻanaZ3GatewayHost. Holo ka hāpana ma kahi ʻōnaehana like me Unix. Makemake paha kekahi mau mea kūʻai aku i kahi hōʻailona hoʻokipa e hiki ke holo ma kahi RTOS, akā naʻe, ʻaʻohe kumu hoʻohālike hoʻokipa RTOS no ka manawa. Pono nā mea hoʻohana e hoʻomohala i kā lākou papahana hoʻokipa ma muli o RTOS.

He mea nui e hoʻomaopopo i ka protocol gateway UART ma mua o ka hoʻomohala ʻana i kahi papahana hoʻokipa maʻamau. No ka NCP ma muli o ka UART a me ka NCP ma muli o SPI, hoʻohana ka mea hoʻokipa i ka protocol EZSP e kamaʻilio me ka NCP.EZSPpōkole noEmberZnet Serial Protocol, a ua hoakakaia maUG100. No ka NCP e pili ana i ka UART, ua hoʻokō ʻia kahi protocol papa haʻahaʻa e lawe pono i ka ʻikepili EZSP ma luna o UART, ʻo ia kaLEHUprotocol, pōkole noPūʻali Serial Asynchronous. No ka ʻike hou aku e pili ana iā ASH, e ʻoluʻolu e nānāUG101aUG115.

Hiki ke hōʻike ʻia ka pilina ma waena o EZSP a me ASH e kēia kiʻi:

1

Hiki ke hōʻike ʻia ke ʻano ʻikepili o ka EZSP a me ka protocol ASH e kēia kiʻi:

2

Ma kēia ʻaoʻao, e hoʻolauna mākou i ke kaʻina hana o ka hoʻopili ʻana i ka ʻikepili UART a me kekahi mau kiʻi kiʻi i hoʻohana pinepine ʻia ma ka ʻīpuka Zigbee.

2. Ka hoʻopololei

Hiki ke hōʻike ʻia ke kaʻina hana hoʻolālā maʻamau e ka pakuhi aʻe:

3

Ma kēia pakuhi, ʻo ka ʻikepili ke ʻano o ka frame EZSP. Ma keʻano laulā, ʻo nā kaʻina hana paʻa: |ʻAʻole|Step|Reference|

|:-|:-|:-|

|1|Hoʻopiha i ka EZSP Frame|UG100|

|2|Hoʻokaʻawale ʻikepili|Pauku 4.3 o UG101|

|3|Hoʻohui i ka Control Byte|Chap2 a me Chap3 o UG101|

|4|E helu i ka CRC|Pauku 2.3 o UG101|

|5|Byte Stuffing|Pauku 4.2 o UG101|

|6|Hoʻohui i ka Hae Hoʻopau|Pauku 2.4 o UG101|

2.1. E hoopiha i ka EZSP Frame

Hōʻike ʻia ke ʻano hoʻohālikelike EZSP ma ka Mokuna 3 o UG100.

4

E noʻonoʻo e loli paha kēia ʻano i ka wā e hoʻonui ai ka SDK. Ke hoʻololi ke ʻano, e hāʻawi mākou i kahi helu mana hou. ʻO ka helu helu EZSP hou loa he 8 ke kākau ʻia kēia ʻatikala (EmberZnet 6.8).

No ka mea he ʻokoʻa paha ka ʻano hoʻohālikelike EZSP ma waena o nā mana like ʻole, aia kahi koi koi e ka host a me ka NCPPonohana me ka mana like EZSP. A i ʻole, ʻaʻole hiki iā lākou ke kamaʻilio e like me ka mea i manaʻo ʻia.

No ka hoʻokō ʻana i kēlā, ʻo ke kauoha mua ma waena o ka mea hoʻokipa a me ka NCP pono ke ʻano kauoha. I nā huaʻōlelo ʻē aʻe, pono ka mea hoʻokipa e kiʻi i ka mana EZSP o ka NCP ma mua o kekahi kamaʻilio ʻē aʻe. Inā ʻokoʻa ka mana EZSP me ka mana EZSP o ka ʻaoʻao hoʻokipa, pono e hoʻopau ʻia ke kamaʻilio.

ʻO ke koi implicit ma hope o kēia, ʻo ke ʻano o ke kauoha version hiki keAOLE LOLI. ʻO ka palapala kauoha mana EZSP e like me lalo:

5

Hiki ke ʻike ʻia nā wehewehe ʻana o ke kahua hoʻohālikelike a me ke ʻano o ka pane mana ma ka Mokuna 4 o UG100. ʻO ke kahua hoʻohālikelike ka mana EZSP o ka papahana hoʻokipa. Ke kākau ʻia kēia ʻatikala, ʻo ia ka 8.
7
作者:TorchIoTBootCamp
链接:https://zhuanlan.zhihu.com/p/339700391
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2.2. ʻIkepili Randomization

Ua wehewehe ʻia ke kaʻina hana randomization ma ka pauku 4.3 o UG101. E hoʻokaʻawale ʻia ke kiʻi EZSP holoʻokoʻa. ʻO ka randomization i kūʻokoʻa-OR ke kiʻi EZSP a me kahi kaʻina pseudo-random.

Aia ma lalo ka algorithm o ka hana ʻana i ke kaʻina pseudo-random.

  • rand0 = 0×42
  • inā he 0 ka bit 0 o randi, randi+1 = randi >> 1
  • inā he 1 ka bit 0 o randi, randi+1 = (randi >> 1) ^ 0xB8

2.3. Hoʻohui i ka Control Byte

ʻO ka byte mana he ʻikepili hoʻokahi byte, a pono e hoʻohui ʻia i ke poʻo o ke kiʻi. Hōʻike ʻia ke ʻano me ka papa ma lalo:

6

ʻO ka holoʻokoʻa, aia 6 mau ʻano o nā bytes mana. Hoʻohana ʻia nā mea mua ʻekolu no nā papa maʻamau me ka ʻikepili EZSP, me DATA, ACK a me NAK. Hoʻohana ʻia nā ʻekolu hope me ka ʻole o ka ʻikepili EZSP maʻamau, me RST, RSTACK a me ERROR.

Ua wehewehe ʻia ke ʻano o ka RST, RSTACK a me ERROR ma ka pauku 3.1 a i ka 3.3.

2.4. E helu i ka CRC

Ua helu ʻia kahi CRC 16-bit ma nā bytes mai ka byte mana a hiki i ka hopena o ka ʻikepili. Hoʻomaka ka CRCCCITT maʻamau (g(x) = x16 + x12 + x5 + 1) i 0xFFFF. ʻO ka byte nui loa ma mua o ka byte liʻiliʻi loa (big-endian mode).

2.5. Hoʻopiha ʻia ʻo Byte

E like me ka wehewehe ʻana ma ka pauku 4.2 o UG101, aia kekahi mau helu byte i mālama ʻia no ke kumu kūikawā. Hiki ke loaʻa kēia mau waiwai ma ka papa ʻaina aʻe:

7

Ke ʻike ʻia kēia mau waiwai i loko o ke kiʻi, e hana ʻia kahi hana kūikawā i ka ʻikepili. - E hoʻokomo i ka byte pakele 0x7D i mua o ka byte i mālama ʻia - E hoʻohuli i ka bit5 o kēlā byte i mālama ʻia.

Ma lalo iho nei kekahi mau laʻana o kēia algorithm:

8

2.6. Hoʻohui i ka Hae Hoʻopau

ʻO ka hana hope e hoʻohui i ka hae hope 0x7E i ka hopena o ke kiʻi. Ma hope o kēlā, hiki ke hoʻouna ʻia ka ʻikepili i ke awa UART.

3. Kaʻina De-framing

Ke loaʻa ka ʻikepili mai ka UART, pono mākou e hana i nā ʻanuʻu ʻē aʻe e hoʻokaʻawale iā ia.

4. Hoike


Ka manawa hoʻouna: Feb-08-2022
WhatsApp Online Chat !