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

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

單片機(jī)應(yīng)用實踐篇之單總線上單個DS18B20的溫度讀取顯示編程(基于LCD...

2023-07-11 22:20 作者:無數(shù)碎片尋你  | 我要投稿

處理整數(shù)部分,老師前面講了,就是高五位是符號,所以我認(rèn)為需要單獨拿出來判斷一下,因為這會影響整數(shù)部分(中間的七位),是負(fù)數(shù),這幾位數(shù)就是補(bǔ)碼了,就需要取反,然后加一了,整數(shù)就沒關(guān)系,所以我單獨寫了一個函數(shù)來處理這個,大家可以直接用,

我把老師main 函數(shù)里這個換了

len = chuli(int Temp,str);

//處理整數(shù)部分


unsigned char chuli(int dat, unsigned char *str)

{

unsigned char i = 0;

unsigned char len = 0;

unsigned char buf[7];

//提取符號

unsigned char sign;

unsigned char zheng;

sign = dat >> 7; //將整數(shù)部分移走,此時sign代表符號位

//然后開始提取整數(shù)部分

zheng = dat & 0x007F; //消除了符號位

//此時zheng 有可能是負(fù)數(shù)(補(bǔ)碼),也有可能是整數(shù),所以需要判斷

if(sign > 0)

{

*str++ = '-';

len++;

//如果是負(fù)數(shù), 說明是補(bǔ)碼, 所以需要還原成源碼

//現(xiàn)在我們只需要 整數(shù)取反, 并且保留七位整數(shù),然后加一即可

zheng = ((~dat) & 0x07F )+ 1 ;

}



//下面把整數(shù)填進(jìn)數(shù)組

do

{

buf[i++] = zheng %10 + '0'; //dat%10 + 0x30; buf[0] = '8' buf[1] = '7'

zheng /= 10;

}while(zheng > 0); //每取到一位數(shù), 就截取掉

len += i;

while(i-- > 0)

{

*str++ = buf[i];

}

*str = '\0';

return len;

}

單片機(jī)應(yīng)用實踐篇之單總線上單個DS18B20的溫度讀取顯示編程(基于LCD...的評論 (共 條)

分享到微博請遵守國家法律
临邑县| 咸阳市| 富民县| 墨江| 泰和县| 壤塘县| 昌都县| 龙江县| 额尔古纳市| 栾川县| 临泉县| 富锦市| 塔城市| 洞头县| 海口市| 阳泉市| 长阳| 进贤县| 正阳县| 伊通| 安顺市| 澳门| 贵德县| 依兰县| 铅山县| 泰兴市| 名山县| 吉木萨尔县| 化隆| 荣成市| 太仆寺旗| 东至县| 岫岩| 泰州市| 广西| 肇州县| 德清县| 义乌市| 响水县| 辉县市| 正镶白旗|