久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2841|回復: 6
打印 上一主題 下一主題
收起左側

怎么把這多個單片機程序合成一個呀?求大神指教

[復制鏈接]
跳轉到指定樓層
樓主
(1) DS18B20讀取轉錄溫度程序設計
voidtempchang(void)         //獲取并轉換
{
  dsreset();
  delay(1);
  tpye(0xcc);                  //讀寫并讀rom指令
  tpye(0x44);                  //寫溫度轉換指令
}
uint gt_temp()                //讀取寄存器存儲數據
{
uchar a,b;
dsreset();
delay(1);
tpye(0xcc);      
tpye(0xbe);                   //uint 給外面一個溫度數值
a=tpread();                   //低八位
b=tpread();                   //低八位
temp=256*b+a;
f_temp=temp*0.0625;           //分辨率0.0625,溫度在寄存器為12位
temp=f_temp*10+0.5;           //將f_temp乘以10
return temp;                  //整型
}
(2) 數碼管顯示程序設計
ucharflag1,flag2,flag3,flag4,numm,q,b,s,g; //共陰數碼管
ucharcode number[]= { 0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,};
ucharcode number1[]={0xbf,0x86,0xdb,0xcf,0xe6,
0xed,0xfd,0x87,0xff,0xef};   
(3) 按鍵電路電路設計
void keyscan()      
{
    if(s1==0)   
    {P2=0xff;
     delay(5);  
     if(s1==0)  
      {   
       numm++;     
        if(numm==1)            //第一種情況
        {
        flag=1;
        }
        if(numm==2)            //第一種情況
        {
        flag=2;
        }
        if(numm==3)            //第一種情況
        {
        numm=0;
        flag=0;
        }
        while(!s1);
     }     
    }
    if(numm==1)                //提高或降低下限
     {
     flag=1;
       if(s2==0)               
       {
          delay(5);         
          if(s2==0)         
          {      
              l+=10;      
              if(l==1000)   
             l=200;
          }
          while(!s2);   
       }
       if(s3==0)           
       {
          delay(5);         
          if(s3==0)         
          {
            l-=10;         
            if(l==0)        
            l=200;           
          }
          while(!s3);   
       }
   }
if(numm==2)                    //提高或降低上限
   {
      flag=2;
       if(s2==0)            
       {
          delay(5);         
          if(s2==0)        
          {
              h+=10;        
              if(h==1000)      
             h=200;      
          }
          while(!s2);   
       }
       if(s3==0)                  
       {
          delay(5);              
          if(s3==0)               
          {            
              h-=10;         
              if(h==0)            
             h=300;
          }
          while(!s3);   
       }
   }
}
(4) 報警程序設計
void main()           
{
  init();
  while(1)
  {
   tempchang();         
   if(temp>h)             //高于設定值上限,則報警
   {
       high();           
   }
    if(temp<l)            //低于設定值下限,則報警
   {
       low();         
   }   
  }
}
(5) DS18B20讀取字節函數設計
voiddsreset(void)           //復位,初始化測溫函數
{
  uint i;
  ds=0;                     
  i=140;                    //延時512μs
  while(i>0) i--;
  ds=1;                     //等待復位,若收到低電平則復位成功
  i=4;                       //讀取完之后等待48us再接著讀取下一個數
  while(i>0) i--;            //消耗時間
}
bittpreadbit(void)          //讀一位數據
{
  uint i;
  bit dat;
  ds=0;i++;                  //總線拉低1μs
  ds=1;i++;i++;             //釋放總線,延時
  dat=ds;
  i=8;
  while(i>0)i--;
  return(dat);
}
uchartpread(void)           //讀一字節數據
{
uint i,j,dat;
dat=0;
for(i=1;i<=8;i++)
{
  j=tpreadbit();
  dat=(j<<7)|(dat>>1);
}
return(dat);                // 復位函數
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:25310 發表于 2019-11-25 14:27 | 只看該作者
把文件加入到里面,再用Main 函數調用。
附圖為你參考

目錄.jpg (104.08 KB, 下載次數: 62)

目錄.jpg
回復

使用道具 舉報

板凳
ID:263427 發表于 2019-11-25 14:54 | 只看該作者
看一下新建工程的視頻,就可以啦。
回復

使用道具 舉報

地板
ID:123289 發表于 2019-11-25 17:35 | 只看該作者
主線是:將各個程序做成一個個的函數。而后在主程序中依序調用。
細節是:你需要仔細分配系統資源,規劃好時序。
回復

使用道具 舉報

5#
ID:641608 發表于 2019-11-25 23:55 來自手機 | 只看該作者
自己要規劃好
回復

使用道具 舉報

6#
ID:470332 發表于 2019-11-26 09:20 | 只看該作者
先鞏固一下C語言,然后看看別人的程序怎么寫的
回復

使用道具 舉報

7#
ID:535176 發表于 2019-11-26 21:25 | 只看該作者
判斷好邏輯關系,直接加到一個工程里就行
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美精品成人一区二区三区四区 | 国产欧美在线一区二区 | 99热在线免费 | 国产精品无码永久免费888 | 国产欧美精品一区二区色综合朱莉 | 久久伊人在 | 免费午夜视频在线观看 | 国产人久久人人人人爽 | 免费九九视频 | 午夜小视频在线播放 | 99reav | 欧美成人免费在线视频 | 国产精品高清在线 | 国产精品揄拍一区二区 | 亚洲视频在线一区 | 午夜免费视频 | 国产三级精品视频 | 亚洲av一级毛片 | 亚州成人 | 久久电影一区 | 免费在线观看黄网站 | 天天射天天操天天干 | 成人精品国产免费网站 | 91中文字幕在线 | 国产精品 欧美精品 | 久久com| 91社区视频 | 国产精品视频网 | 国产精品日本一区二区在线播放 | 国产a区 | 黄色大全免费看 | 毛片免费在线观看 | 久久久久久免费免费 | 日韩伦理一区二区 | 久久久久国产精品 | 青青久草 | 一级午夜aaa免费看三区 | 亚洲入口| 亚洲网站在线观看 | 青青草综合网 | 精品国产精品一区二区夜夜嗨 |