Onye dere ya: TorchIoTBootCamp
Njikọ: https://zhuanlan.zhihu.com/p/339700391
Site na: Quora
1. Okwu Mmalite
Silicon Labs enyela ngwọta host+NCP maka imewe ọnụ ụzọ ámá Zigbee. N'ime usoro a, onye nnabata nwere ike ikwurịta okwu na NCP site na UART ma ọ bụ SPI interface. Ọtụtụ mgbe, a na-eji UART ebe ọ dị mfe karịa SPI.
Silicon Labs enyekwala ọrụ nlele maka mmemme nnabata, nke bụ ihe nlele ahụ.Z3GatewayHostIhe nlele ahụ na-agba ọsọ na sistemụ dị ka Unix. Ụfọdụ ndị ahịa nwere ike ịchọ ihe nlele nnabata nke nwere ike ịgba ọsọ na RTOS, mana ọ dị mwute ikwu na ọ dịghị ihe nlele nnabata dabere na RTOS maka oge a. Ndị ọrụ kwesịrị ịmepụta mmemme nnabata nke ha dabere na RTOS.
Ọ dị mkpa ịghọta usoro ọnụ ụzọ ámá UART tupu ịmepụta mmemme nnabata ahaziri ahazi. Maka ma NCP dabere na UART na NCP dabere na SPI, onye nnabata na-eji usoro EZSP iji kparịta ụka na NCP.EZPdị mkpụmkpụ makaUsoro Usoro EmberZnet, a kọwakwara ya naUG100Maka NCP nke dabeere na UART, a na-eme usoro oyi akwa dị ala iji buru data EZSP nke ọma n'elu UART, nke ahụ bụASHusoro, mkpụmkpụ makaOnye nnabata Serial AsynchronousMaka nkọwa ndị ọzọ gbasara ASH, biko leeUG101naUG115.
Enwere ike igosi mmekọrịta dị n'etiti EZSP na ASH site na eserese a:
Enwere ike iji eserese a gosi usoro data nke EZSP na usoro ASH:
N'ebe a, anyị ga-ewebata usoro nhazi data UART na ụfọdụ fremu isi nke a na-ejikarị eme ihe na Zigbee gateway.
2. Nhazi usoro
Enwere ike igosi usoro nhazi izugbe site na eserese a:
N'ime chaatị a, data ahụ pụtara etiti EZSP. N'ozuzu, usoro nhazi bụ: |Ee e|Nzọụkwụ|Ntụaka|
|:-|:-|:-|
|1| Jupụta EZSP Frame|UG100|
|2|Nhazi Data|Ngalaba nke 4.3 nke UG101|
|3|Tinye Njikwa Byte|Isi nke 2 na Isi nke 3 nke UG101|
|4|Gbakọọ CRC|Nkebi nke 2.3 nke UG101|
|5|Ntinye Byte|Ngalaba nke 4.2 nke UG101|
|6|Tinye Ọkwa Ọgwụgwụ|Ngalaba 2.4 nke UG101|
2.1. Jupụta EZSP Frame
E gosiri usoro etiti EZSP na Isi nke 3 nke UG100.
Lezienụ anya na usoro a nwere ike ịgbanwe mgbe SDK kwalitere. Mgbe usoro ahụ gbanwere, anyị ga-enye ya nọmba ụdị ọhụrụ. Nọmba ụdị EZSP kachasị ọhụrụ bụ 8 mgbe e dere akụkọ a (EmberZnet 6.8).
Ebe ọ bụ na usoro etiti EZSP nwere ike ịdị iche n'etiti ụdị dị iche iche, enwere ihe achọrọ na onye ọbịa na NCPGA-AGHỊna-arụ ọrụ na otu ụdị EZSP ahụ. Ma ọ bụghị ya, ha enweghị ike ikwurịta okwu dịka a tụrụ anya ya.
Iji mezuo nke ahụ, iwu mbụ dị n'etiti onye ọbịa na NCP ga-abụrịrị iwu ụdị. N'ikwu ya n'ụzọ ọzọ, onye ọbịa ga-eweghachi ụdị EZSP nke NCP tupu nkwukọrịta ọ bụla ọzọ. Ọ bụrụ na ụdị EZSP dị iche na ụdị EZSP nke akụkụ onye ọbịa, a ga-akwụsị nkwukọrịta ahụ.
Ihe a chọrọ n'azụ nke a bụ na usoro nke iwu ụdị ahụ nwere ikeAGBANWELAUsoro iwu ụdị EZSP dị ka nke dị n'okpuru:
Aha ya: https://zhuanlan.zhihu.com/p/339700391
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
2.2. Nhazi data
A kọwara usoro nhazi zuru ezu na ngalaba nke 4.3 nke UG101. A ga-eme nhazi EZSP dum n'usoro. Nhazi ahụ bụ naanị maka etiti EZSP na usoro pseudo-random.
N'okpuru ebe a bụ algọridim nke imepụta usoro pseudo-random.
- rand0 = 0 × 42
- ọ bụrụ na bit 0 nke randi bụ 0, randi+1 = randi >> 1
- ọ bụrụ na bit 0 nke randi bụ 1, randi+1 = (randi >> 1) ^ 0xB8
2.3. Tinye byte Njikwa
Ígwè njikwa ahụ bụ data otu byte, a ga-etinyekwa ya n'isi fremu ahụ. E gosipụtara usoro a na tebụl dị n'okpuru:
N'ozuzu, e nwere ụdị byte njikwa isii. A na-eji atọ mbụ eme ihe maka fremu nkịtị nwere data EZSP, gụnyere DATA, ACK na NAK. A na-eji atọ ikpeazụ eme ihe na-enweghị data EZSP nkịtị, gụnyere RST, RSTACK na ERROR.
A kọwara usoro nke RST, RSTACK na ERROR na ngalaba 3.1 ruo 3.3.
2.4. Gbakọọ CRC
A na-agbakọ CRC nke 16-bit site na byte njikwa ruo na njedebe nke data ahụ. A na-amalite CRCCCITT ọkọlọtọ (g(x) = x16 + x12 + x5 + 1) ka ọ bụrụ 0xFFFF. byte kachasị mkpa na-ebute byte kacha nta (ụdị big-endian).
2.5. Ihe e ji mee Byte
Dịka akọwara na ngalaba nke 4.2 nke UG101, enwere ụfọdụ uru byte echekwara ejiri maka ebumnuche pụrụ iche. Enwere ike ịchọta uru ndị a na tebụl na-esonụ:
Mgbe ụkpụrụ ndị a pụtara na fremu ahụ, a ga-eme ọgwụgwọ pụrụ iche na data ahụ. – Tinye byte mgbapụ 0x7D n'ihu byte echekwara – Gbanwee bit5 nke byte echekwara ahụ
N'okpuru ebe a bụ ụfọdụ ihe atụ nke algọridim a:
2.6. Tinye ọkọlọtọ njedebe
Nzọụkwụ ikpeazụ bụ itinye akara njedebe 0x7E na njedebe nke etiti ahụ. Mgbe nke ahụ gasịrị, enwere ike izipu data ahụ na ọdụ ụgbọ mmiri UART.
3. Usoro iwepụ ihe n'ime frame
Mgbe e nwetara data site na UART, naanị ihe anyị ga-eme bụ ime ihe ndị ọzọ iji gbanwee ya.
4. Ntụaka
Oge ozi: Feb-08-2022








