最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

共用體與通信協(xié)議

2021-06-07 17:37 作者:GXTon_阿通  | 我要投稿

經(jīng)常會(huì)遇到這種協(xié)議:

就是每一位代表一個(gè)狀態(tài),

比如:

接收的是0x01代表溫度故障,二進(jìn)制是 0000 0001

0x02代表濕度故障,二進(jìn)制是 0000 0010

0x03代表溫度/濕度都故障,二進(jìn)制是 0000 0011

.......

針對(duì)上面這種協(xié)議,可以利用共用體和位域編寫.

下面講解共用體,?位域的知識(shí):


例如:

union data

{

int i;

char ch;

float f;

}

上面的?i,ch,f都公用的一段內(nèi)存,如果改變其中的一個(gè),另外的兩個(gè)變量也會(huì)有相同的變化.

通過(guò)上面位域和公用體的講解,大致了解了這里的特性.

可以通過(guò)他們的特性,進(jìn)行協(xié)議的編寫.

比如:

先建立一個(gè)結(jié)構(gòu)體:(是利用了位域的)

然后再建立一個(gè)共用體

這樣all和bit兩個(gè)變量就被聯(lián)合在一起了.

也就是我給all賦值,然后bit就會(huì)有改變.

這樣我在接收到協(xié)議后,給all賦值,就直接可以去查看bit的相應(yīng)位,得到某個(gè)器件是否發(fā)生故障了.

共用體與通信協(xié)議的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
芮城县| 错那县| 阜康市| 普兰县| 高安市| 贵德县| 武宣县| 陇西县| 蒙山县| 安陆市| 方山县| 甘南县| 涡阳县| 罗江县| 靖西县| 梅州市| 慈利县| 平湖市| 灵璧县| 吴堡县| 南充市| 卓资县| 襄樊市| 巴楚县| 玉溪市| 丹江口市| 孟连| 唐海县| 洛扎县| 上犹县| 财经| 临邑县| 象州县| 庆云县| 五峰| 霍州市| 五莲县| 呼图壁县| 南涧| 通渭县| 蕉岭县|