Maidir le Zigbee EZSP UART

Údar: TorchIoTBootCamp
Nasc: https://zhuanlan.zhihu.com/p/339700391
Ó: Quora

1. Réamhrá

Tá réiteach óstach+NCP curtha ar fáil ag Silicon Labs le haghaidh dearadh geata Zigbee. Sa ailtireacht seo, is féidir leis an óstach cumarsáid a dhéanamh leis an NCP trí chomhéadan UART nó SPI. Is minic a úsáidtear UART mar go bhfuil sé i bhfad níos simplí ná SPI.

Chuir Silicon Labs tionscadal samplach ar fáil don chlár óstach freisin, arb é an sampla éZ3GatewayHostRitheann an sampla ar chóras cosúil le Unix. B’fhéidir go mbeadh sampla óstach ar féidir leis rith ar RTOS ag teastáil ó roinnt custaiméirí, ach ar an drochuair, níl aon sampla óstach bunaithe ar RTOS ann faoi láthair. Caithfidh úsáideoirí a gclár óstach féin a fhorbairt bunaithe ar RTOS.

Tá sé tábhachtach prótacal geata UART a thuiscint sula bhforbraítear clár óstach saincheaptha. I gcás NCP bunaithe ar UART agus NCP bunaithe ar SPI araon, úsáideann an t-óstach an prótacal EZSP chun cumarsáid a dhéanamh leis an NCP.EZSPis gearr doPrótacal Sraitheach EmberZnet, agus tá sé sainmhínithe iUG100I gcás NCP bunaithe ar UART, cuirtear prótacal ciseal íochtarach i bhfeidhm chun sonraí EZSP a iompar go hiontaofa thar UART, sin é anASHprótacal, giorrúchán doÓstach Sraitheach AsincrónachLe haghaidh tuilleadh sonraí faoi ASH, féach le do thoil arUG101agusUG115.

Is féidir an gaol idir EZSP agus ASH a léiriú leis an léaráid seo a leanas:

1

Is féidir formáid sonraí an EZSP agus phrótacal ASH a léiriú leis an léaráid seo a leanas:

2

Ar an leathanach seo, cuirfimid i láthair an próiseas chun sonraí UART a fhrámú agus roinnt frámaí eochair a úsáidtear go minic i ngeata Zigbee.

2. Frámaíocht

Is féidir an próiseas frámaithe ginearálta a léiriú leis an gcairt seo a leanas:

3

Sa chairt seo, ciallaíonn na sonraí fráma EZSP. Go ginearálta, is iad seo a leanas na próisis frámaithe: |Gan|Céim|Tagairt|

|:-|:-|:-|

|1|Líon Fráma EZSP|UG100|

|2|Randamú Sonraí|Roinn 4.3 de UG101|

|3|Cuir an Beart Rialaithe leis|Caibidil 2 agus Caibidil 3 de UG101|

|4|Ríomh an CRC|Alt 2.3 de UG101|

|5|Líonadh Beart|Alt 4.2 de UG101|

|6|Cuir an Bratach Deiridh leis|Alt 2.4 de UG101|

2.1. Líon Fráma EZSP

Léirítear formáid fráma EZSP i gCaibidil 3 de UG100.

4

Tabhair faoi deara go bhféadfadh an fhormáid seo athrú nuair a dhéantar uasghrádú ar an SDK. Nuair a athraíonn an fhormáid, tabharfaimid uimhir leagain nua di. Is é 8 an uimhir leagain is déanaí de EZSP nuair a scríobhadh an t-alt seo (EmberZnet 6.8).

Ós rud é go bhféadfadh formáid fráma EZSP a bheith difriúil idir leaganacha éagsúla, tá ceanglas éigeantach ann go gcaithfidh an t-óstach agus an NCPNÍ MÓRoibríonn siad leis an leagan céanna de EZSP. Seachas sin, ní féidir leo cumarsáid a dhéanamh mar a bhíothas ag súil leis.

Chun é sin a bhaint amach, ní mór don chéad ordú idir an t-óstach agus an NCP a bheith ina ordú leagan. Is é sin le rá, ní mór don óstach leagan EZSP an NCP a aisghabháil roimh aon chumarsáid eile. Má tá leagan an EZSP difriúil le leagan EZSP thaobh an óstaigh, ní mór an chumarsáid a chur ar ceal.

Is é an riachtanas intuigthe atá taobh thiar de seo ná gur féidir formáid an ordaithe leagan a úsáidNÁ ATHRAIGH CHOÍCHESeo a leanas formáid ordaithe leagan EZSP:

5

Is féidir na mínithe ar an réimse paraiméadair agus formáid an fhreagra leagan a fháil i gCaibidil 4 de UG100. Is é an réimse paraiméadair leagan EZSP an chláir óstach. Nuair a scríobhtar an t-alt seo, is é 8 atá ann.
7
Íoslódáil: TorchIoTBootCamp
suíomh: https://zhuanlan.zhihu.com/p/339700391
ainm: 知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明。

2.2. Randamú Sonraí

Déantar cur síos mionsonraithe ar an bpróiseas randamaithe i roinn 4.3 de UG101. Déanfar fráma iomlán an EZSP a randamú. Is é an randamú ná fráma an EZSP a eisiach NÓ agus seicheamh bréag-randamach a dhéanamh.

Seo thíos an algartam chun an seicheamh bréag-randamach a ghiniúint.

  • rand0 = 0×42
  • más ionann giotán 0 de randi agus 0, randi+1 = randi >> 1
  • más ionann giotán 0 de randi agus 1, randi+1 = (randi >> 1) ^ 0xB8

2.3. Cuir an Beart Rialaithe leis

Is sonraí aon-bheart amháin é an beart rialaithe, agus ba chóir é a chur le ceann an fhráma. Léirítear an fhormáid leis an tábla thíos:

6

San iomlán, tá 6 chineál beart rialaithe ann. Úsáidtear na chéad trí cinn le haghaidh frámaí coitianta le sonraí EZSP, lena n-áirítear DATA, ACK agus NAK. Úsáidtear na trí cinn dheireanacha gan sonraí EZSP coitianta, lena n-áirítear RST, RSTACK agus ERROR.

Déantar cur síos ar fhormáid an RST, an RSTACK agus an ERROR i roinn 3.1 go 3.3.

2.4. Ríomh an CRC

Ríomhtar CRC 16-giotán ar na beart ón mbeart rialaithe go dtí deireadh na sonraí. Déantar an CRCCCITT caighdeánach (g(x) = x16 + x12 + x5 + 1) a thosú go 0xFFFF. Tagann an beart is suntasaí roimh an mbeart is lú suntas (mód mór-endian).

2.5. Líonadh Beart

Mar a thuairiscítear i roinn 4.2 de UG101, tá roinnt luachanna beart curtha in áirithe a úsáidtear chun críocha speisialta. Is féidir na luachanna seo a fháil sa tábla seo a leanas:

7

Nuair a thaispeántar na luachanna seo sa fhráma, déanfar cóireáil speisialta ar na sonraí. – Cuir an beart éalaithe 0x7D os comhair an bheart atá curtha in áirithe – Cuir giotán5 an bheart atá curtha in áirithe sin ar ais

Seo a leanas roinnt samplaí den algartam seo:

8

2.6. Cuir an Bratach Deiridh leis

Is é an chéim dheireanach ná an bratach deiridh 0x7E a chur le deireadh an fhráma. Ina dhiaidh sin, is féidir na sonraí a sheoladh chuig an gcalafort UART.

3. Próiseas Dífhrámaithe

Nuair a fhaightear sonraí ón UART, ní gá dúinn ach na céimeanna droim ar ais a dhéanamh chun iad a dhíchódú.

4. Tagairtí


Am an phoist: 8 Feabhra 2022
Comhrá Ar Líne WhatsApp!