欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3344|回復: 4
收起左側

單片機DS18B20顯示程序的分析,百位是怎么顯示的?

[復制鏈接]
ID:516297 發表于 2019-4-19 23:42 | 顯示全部樓層 |閱讀模式
DS18B20中的定義之后為什么顯示百位調用第一個,顯示十位調用第二個,顯示各位調用第一個???并且用舉例子的方法解釋一下百位是怎么顯示的???


unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
unsigned char code table1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,
                        0x87,0xff,0xef};


void display(uint temp)            //顯示程序
{
   uchar A1,A2,A2t,A3,ser;
   ser=temp/10;
   SBUF=ser;
   A1=temp/100;
   A2t=temp%100;
   A2=A2t/10;
   A3=A2t%10;
   dula=0;
   P0=table[A1];        //顯示百位
   dula=1;
   dula=0;

   wela=0;
   P0=0xfe;
   wela=1;
   wela=0;
   delay(1);

   dula=0;
   P0=table1[A2];        //顯示十位
   dula=1;
   dula=0;

   wela=0;
   P0=0xfd;
   wela=1;
   wela=0;
   delay(1);

   P0=table[A3];        //顯示個位
   dula=1;
   dula=0;

   P0=0xfb;
   wela=1;
   wela=0;
   delay(1);
}

uint tmp()               //get the temperature
{
  float tt;
  uchar a,b;
  dsreset();
  delay(1);
  tmpwritebyte(0xcc);
  tmpwritebyte(0xbe);
  a=tmpread();
  b=tmpread();
  temp=b;
  temp<<=8;             //two byte  compose a int variable
  temp=temp|a;
  tt=temp*0.0625;
  temp=tt*10+0.5;
  return temp;
}


回復

使用道具 舉報

ID:213173 發表于 2019-4-20 09:30 | 顯示全部樓層
void display(uint temp)//temp是包含1位小數的溫度值,放大10倍后成為整數
{
   uchar A1,A2,A2t,A3,ser;
   ser=temp/10;//把整數部分賦值給ser
   SBUF=ser;        //串口發送實際溫度的整數
   A1=temp/100;//分離百位數(實際是溫度的十位數)
   A2t=temp%100;//分離百位以下整數
   A2=A2t/10;//分離十位數(實際是溫度的個位數)
   A3=A2t%10;//分離個位數(實際是溫度的小數)
        ......
        ......
}
回復

使用道具 舉報

ID:277550 發表于 2019-4-20 10:00 | 顯示全部樓層
  temp=tt*10+0.5;    放大了10位

A1=temp/100;     百位
   A2t=temp%100; 十位和個位
   A2=A2t/10;       十位
   A3=A2t%10;      個位
回復

使用道具 舉報

ID:501535 發表于 2019-4-22 16:34 | 顯示全部樓層
放大了10位
回復

使用道具 舉報

ID:479806 發表于 2019-4-25 08:40 | 顯示全部樓層
好像用sprintf語句不用這么麻煩的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表