WIFI模塊通過USRP協(xié)議的設(shè)置指令
1、包頭:1個(gè)字節(jié),固定值0xFF;
2、長(zhǎng)度:2個(gè)字節(jié),長(zhǎng)度之后(不包括長(zhǎng)度),校驗(yàn)字之前(不包括校驗(yàn)字)的所有字節(jié)數(shù);
3、命令字:1個(gè)字節(jié),命令類型,0x02為設(shè)置指令;
4、保留字:1個(gè)字節(jié),默認(rèn)為0x00;
5、SSID:(不定長(zhǎng))路由器的SSID;
6、分隔符:2個(gè)字節(jié),SSID結(jié)束符,固定值0x0D,0x0A;
7、密碼:(不定長(zhǎng))路由器的密碼;
8、校驗(yàn)字:1個(gè)字節(jié),包頭之后(不包括包頭),校驗(yàn)字之前(不包括校驗(yàn)字)的所有字節(jié)的累加和。
設(shè)置回復(fù)指令
1、包頭:1個(gè)字節(jié),固定值0xFF;
2、長(zhǎng)度:2個(gè)字節(jié),長(zhǎng)度之后(不包括長(zhǎng)度),校驗(yàn)字之前(不包括校驗(yàn)字)的所有字節(jié)數(shù);
3、命令字:1個(gè)字節(jié),命令類型,0x82為設(shè)置指令對(duì)應(yīng)的回復(fù)指令;
4、校驗(yàn)值:1個(gè)字節(jié),SSID的校驗(yàn)結(jié)果,如果可以查到此SSID對(duì)應(yīng)的網(wǎng)絡(luò)值為0x01,如果查不到,值為0x00;
5、校驗(yàn)值:1個(gè)字節(jié),密碼的校驗(yàn)結(jié)果,如果密碼的格式正確值為0x01,如果不正確,值為0x00;
6、校驗(yàn)字:1個(gè)字節(jié),包頭之后(不包括包頭),校驗(yàn)字之前(不包括校驗(yàn)字)的所有字節(jié)的累加和。
例子:
手機(jī)發(fā)送給模塊(十六進(jìn)制數(shù)):FF 00 0F 02 00 54 45 53 54 31 0D 0A 31 32 33 34 35 36 CE
模塊返回給手機(jī)(十六進(jìn)制數(shù)):FF 00 03 82 01 01 87
解釋:手機(jī)向模塊發(fā)送設(shè)置指令,設(shè)置SSID為“TEST1”,密碼為“123456”。模塊返回給手機(jī)的信息是:存在SSID為“TEST1”的網(wǎng)絡(luò),密碼格式正確。