Tusitala:TorchIoTBootCamp
So'oga:https://zhuanlan.zhihu.com/p/339700391
Mai le:Quora
1. Fa'atomuaga
Ua ofoina atu e Silicon Labs se fofo host+NCP mo le mamanuina o le Zigbee gateway. I lenei fausaga, e mafai e le host ona fesootaʻi ma le NCP e ala i le UART poʻo le SPI interface. E masani ona faʻaaogaina le UART aua e sili atu ona faigofie nai lo le SPI.
Ua saunia fo'i e Silicon Labs se galuega fa'ata'ita'i mo le polokalame talimalo, o le fa'ata'ita'iga leaZ3GatewayHost. O le faʻataʻitaʻiga e faʻagaoioia i luga o se faiga e pei o Unix. Atonu e manaʻo nisi tagata faʻatau i se faʻataʻitaʻiga talimalo e mafai ona faʻagaoioia i luga o se RTOS, ae paga lea, e leai se faʻataʻitaʻiga talimalo e faʻavae i le RTOS mo le taimi nei. E manaʻomia e tagata faʻaoga ona atiaʻe a latou lava polokalama talimalo e faʻavae i luga o le RTOS.
E taua le malamalama i le UART gateway protocol a'o le'i faia se polokalame talimalo fa'apitoa. Mo le UART based NCP ma le SPI based NCP, e fa'aogaina e le talimalo le EZSP protocol e fesoota'i ai ma le NCP.EZSPe faapuupuu mo lePolokalama Fa'asologa a le EmberZnet, ma ua fa'amatalaina i totonuUG100Mo le NCP e faʻavae i le UART, o loʻo faʻatinoina se protocol vaega maualalo e feaveaʻi faʻamatalaga EZSP ma le faʻatuatuaina i luga o le UART, o leLEFUfa'atonuga, fa'apu'upu'uga mo le'Au'aunaga Fa'asologa AsynchronousMo nisi fa'amatalaga e uiga i le ASH, fa'amolemole taga'i i leUG101maUG115.
O le sootaga i le va o le EZSP ma le ASH e mafai ona faʻaalia e le ata lenei:
E mafai ona fa'aalia le fa'atulagaga o fa'amaumauga o le EZSP ma le ASH protocol i le ata o lo'o mulimuli mai:
I lenei itulau, o le a matou faʻalauiloaina ai le faagasologa o le faʻatulagaina o faʻamaumauga UART ma nisi o faʻavaa autu e masani ona faʻaaogaina i le Zigbee gateway.
2. Fa'avaa
E mafai ona faʻaalia le faagasologa lautele o le faʻavaa i le siata lenei:
I lenei siata, o faʻamatalaga o lona uiga o le faʻavaa EZSP. I se tulaga lautele, o faiga faʻavaa e faʻapea: |Leai|Laasaga|Faʻasinomaga|
|:-|:-|:-|
|1|Fa'atumu le Fa'avaa EZSP|UG100|
|2|Fa'asologa Fa'afuase'i o Fa'amaumauga|Vaega 4.3 o le UG101|
|3|Fa'aopoopo le Control Byte|Mataupu 2 ma le Mataupu 3 o le UG101|
|4|Fuafua le CRC|Vaega 2.3 o le UG101|
|5|Fa'atumuina o le Byte|Vaega 4.2 o le UG101|
|6|Fa'aopoopo le Fa'ailoga Fa'ai'u|Vaega 2.4 o le UG101|
2.1. Fa'atumu le Fa'avaa EZSP
O le faatulagaga o le faavaa EZSP o loʻo faʻaalia i le Mataupu 3 o le UG100.
Ia matau e ono suia lenei faatulagaga pe a faaleleia le SDK. A suia le faatulagaga, matou te tuuina atu i ai se numera fou o le lomiga. O le numera fou o le lomiga a le EZSP o le 8 i le taimi na tusia ai lenei tusiga (EmberZnet 6.8).
Ona e ono eseese le faatulagaga o le fa'avaa o le EZSP i le va o lomiga eseese, e iai se mana'oga fa'amalosia e tatau i le 'au talimalo ma le NCP onaE TATAUgalulue faʻatasi ma le lomiga lava e tasi o le EZSP. A leai, e le mafai ona latou fesootaʻi e pei ona faʻamoemoeina.
Ina ia ausia lena mea, o le poloaiga muamua i le va o le 'au talimalo ma le NCP e tatau ona avea ma poloaiga o le lomiga. I se isi faaupuga, e tatau i le 'au talimalo ona toe maua le lomiga EZSP o le NCP a'o le'i faia se isi fesootaiga. Afai e ese le lomiga EZSP mai le lomiga EZSP o le itu 'au talimalo, e tatau ona taofia le fesootaiga.
O le manaʻoga faʻalilolilo i tua atu o lenei mea, o le faʻatulagaga o le faʻatonuga o le lomiga e mafaiAUA NE'I SUIA. O le faatulagaga o le poloaiga o le lomiga EZSP e pei o le mea o loo i lalo:
链接:https://zhuanlan.zhihu.com/p/339700391
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
2.2. Fa'avasegaina o Fa'amaumauga
O le faagasologa auiliili o le randomization o loʻo faʻamatalaina i le vaega 4.3 o le UG101. O le faʻavaa atoa o le EZSP o le a randomized. O le randomization e faʻapitoa-POʻO le faʻavaa EZSP ma se faʻasologa pseudo-random.
O loʻo i lalo le algorithm o le fatuina o le pseudo-random sequence.
- rand0 = 0×42
- afai o le vaega 0 o le randi e 0, randi+1 = randi >> 1
- afai o le vaega 0 o le randi e 1, randi+1 = (randi >> 1) ^ 0xB8
2.3. Fa'aopoopo le Control Byte
O le control byte o se fa'amaumauga e tasi le byte, ma e tatau ona fa'aopoopo i le ulu o le fa'avaa. O le fa'atulagaga o lo'o fa'aalia i le laulau o lo'o i lalo:
O le aotelega, e 6 ituaiga o paite pulea. O ituaiga muamua e tolu e faʻaaogaina mo faʻavaa masani ma faʻamatalaga EZSP, e aofia ai le DATA, ACK ma le NAK. O ituaiga mulimuli e tolu e faʻaaogaina e aunoa ma faʻamatalaga EZSP masani, e aofia ai le RST, RSTACK ma le ERROR.
O le faatulagaga o le RST, RSTACK ma le ERROR o loʻo faʻamatalaina i le vaega 3.1 i le 3.3.
2.4. Fuafua le CRC
O le 16-bit CRC e fuafuaina i luga o bytes mai le control byte seia oo i le faaiuga o faamatalaga. O le CRCCCITT masani (g(x) = x16 + x12 + x5 + 1) e amataina i le 0xFFFF. O le most significant byte e muamua atu i le least significant byte (big-endian mode).
2.5. Fa'atumuina o le Byte
E pei ona faʻamatalaina i le vaega 4.2 o le UG101, o loʻo i ai ni tau faʻapitoa o le byte e faʻaaogaina mo ni faʻamoemoega faʻapitoa. O nei tau e mafai ona maua i le laulau o loʻo mulimuli mai:
A aliali mai nei tau i totonu o le fa'avaa, o le a faia se togafitiga fa'apitoa i fa'amaumauga. – Fa'aofi le escape byte 0x7D i luma o le byte ua fa'asaoina – Fa'aliliu le bit5 o le byte ua fa'asaoina
O nisi nei o faʻataʻitaʻiga o lenei algorithm:
2.6. Fa'aopoopo le Fa'ailoga Fa'ai'u
O le laasaga mulimuli o le faaopoopoina lea o le fu'a fa'ai'u 0x7E i le pito o le fa'avaa. A mae'a lena, e mafai ona auina atu fa'amatalaga i le uafu UART.
3. Faiga o le Aveesea o le Fa'avaa
A maua faʻamatalaga mai le UART, e naʻo le pau le mea e manaʻomia ona tatou faia o laʻasaga faʻafeagai e faʻaliliu ai le faʻamatalaga.
4. Fa'asinomaga
Taimi na lafoina ai: Fepuari-08-2022








