找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 14953|回復(fù): 31
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)+max6675采集熱電偶溫度源碼與仿真 調(diào)試成功

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:296583 發(fā)表于 2018-3-25 00:34 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
51單片機(jī)用max6675采集熱電偶溫度 已調(diào)試成功    帶電路
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)源程序如下:

  1. #include "include.h"
  2. #include "12864.h"
  3. unsigned int i,j;
  4. unsigned char Flag_connect;
  5. unsigned int MAX6675_Temp;
  6. /********************************************************************     
  7. /********************************************************************
  8.                             主函數(shù)
  9. *********************************************************************/
  10. int max6675();
  11. void InitTimer0(void);
  12. void main()                                                                                                                                                                                            
  13. {
  14.         unsigned int t;
  15.     InitTimer0();
  16.          Ini_Lcd();  //初始化液晶
  17.           Write_Str ( 0, 0, "溫度:    " );        
  18.         //        unsigned char cnt = 11;

  19. while(1)
  20. {
  21.              t=MAX6675_ReadReg();
  22.                   Flag_connect=t&0x04;                         //讀出數(shù)據(jù)的D2位是熱電偶掉線標(biāo)志位,該位為1表示掉線,該位為0表示連接
  23.                   Flag_connect=Flag_connect>>2;         //MAX6675是否在線

  24.                 t = t<<1;                                                   //讀出來的數(shù)據(jù)的D3~D14是溫度值
  25.                 t = t>>4;
  26.                 MAX6675_Temp = t/4;                                //測得的溫度單位是0.25,所以要乘以0.25(即除以4)才能得到以度為單位的溫度值
  27.                
  28.                 for(t=0; t<200; t++)                        //顯示溫度
  29.                 {  
  30.                 if(Flag_connect==0)
  31.                 LCD_DispDec ( 4, 0,MAX6675_Temp, 3, 0 );
  32.                 }



  33.         
  34. }
  35. }


  36. void Timer0Interrupt(void) interrupt 1
  37. {        
  38.         TF0=0;
  39.   TH0=0xfc;
  40.   TL0=0x18;
  41.         i++;
  42.          if(i==500)
  43.         {  i=0;
  44.       Key_Flag = 1;
  45.          }
  46. }



  47. void InitTimer0(void)
  48. {
  49.     TMOD = 0x01;
  50.     TH0 = 0xfc;
  51.     TL0 = 0x18;
  52.    
  53.     ET0 = 1;
  54.     TR0 = 1;
  55.          EA = 1;
  56. ……………………

  57. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
見2樓

評分

參與人數(shù) 3黑幣 +85 收起 理由
zhangshanqiao + 30
zkele + 5 贊一個(gè)!
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏14 分享淘帖 頂3 踩
回復(fù)

使用道具 舉報(bào)

來自 2#
ID:314908 發(fā)表于 2020-11-12 00:23 | 只看該作者
修改ok

max6675.jpg (432.24 KB, 下載次數(shù): 104)

max6675.jpg

max6675.rar

171.39 KB, 下載次數(shù): 222, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 回帖助人的獎(jiǎng)勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

板凳
ID:287819 發(fā)表于 2018-3-25 17:13 | 只看該作者
正好需要 感謝分享
回復(fù)

使用道具 舉報(bào)

地板
ID:296923 發(fā)表于 2018-3-25 20:43 | 只看該作者
學(xué)習(xí)一下
回復(fù)

使用道具 舉報(bào)

5#
ID:296886 發(fā)表于 2018-3-25 21:37 | 只看該作者
挺好的啊
回復(fù)

使用道具 舉報(bào)

6#
ID:223841 發(fā)表于 2018-3-26 10:28 | 只看該作者
樓主好,我用的單片機(jī)是 STC8A8K64S4,用的你這個(gè)程序,顯示不出來溫度。顯示是 -16.00 請指導(dǎo)。謝謝
回復(fù)

使用道具 舉報(bào)

7#
ID:223841 發(fā)表于 2018-3-26 10:28 | 只看該作者
#include "intrins.h"
#include "stc15x.h"
#include "MAX6675.h"
#include "delay.h"
#include <JLX12864.h>
#define uchar unsigned char
#define uint  unsigned int

unsigned int MAX6675_Temp;
unsigned char Flag_connect;
unsigned char MAX6675_Temp_char[4];///4
unsigned int MAX6675_ReadReg(void)
{
        unsigned char i;   
        unsigned int dat;
         
        i=0;   
        dat=0;   
        
        MAX6675_CS=0;
        MAX6675_SCK=0;
  DelayXus(100);
        
        for(i=0; i<16; i++)                //get D15-D0 from 6675  
        {      
                MAX6675_SCK=1;
           DelayXus(100);
                dat = dat<<1;   
                if( MAX6675_SO==1 )   ///if( MAX6675_SO&0x04 )///
                        dat = dat|0x01;   
                MAX6675_SCK = 0;   
                 DelayXus(100);
        }
        MAX6675_CS = 1;
        
//  MAX6675_SCK = 1;        
//if(MAX6675_SO&0x04) //NORMAL
//dat>>=3;
dat=100;
          return dat;   
}  

void Get_MAX6675_Dispay_char()
{
    unsigned int t;
                t=MAX6675_ReadReg();
    Flag_connect=t&0x04;  
    Flag_connect=Flag_connect>>2;  
                t=t<<1;
                t=t>>4;        
                MAX6675_Temp = t/4;  

if(Flag_connect==0)
{

               
//                if(MAX6675_Temp>999)
                MAX6675_Temp_char[0]=MAX6675_Temp/1000+'0';
//                if(MAX6675_Temp>99)
                MAX6675_Temp_char[1]=MAX6675_Temp%1000/100+'0';
//    if(MAX6675_Temp>9)
                MAX6675_Temp_char[2]=MAX6675_Temp%100/10+'0';////10%10
                MAX6675_Temp_char[3]=MAX6675_Temp%10+'0';

}
//else {
//             MAX6675_Temp_char[0]=0+'6';
//                         MAX6675_Temp_char[1]=0+'6';
//                         MAX6675_Temp_char[2]=0+'6';
//                         MAX6675_Temp_char[3]=0+'6';
//     }
     

///display_GB2312_string(7,40,0,"66");
}
回復(fù)

使用道具 舉報(bào)

8#
ID:223841 發(fā)表于 2018-3-26 10:43 | 只看該作者
你好,我用的單片機(jī)型號是 STC8A8K64S4,用的這個(gè)程序,溫度顯示不出來啊? 是什么原因呢?
回復(fù)

使用道具 舉報(bào)

9#
ID:313292 發(fā)表于 2018-4-21 18:53 | 只看該作者
改亂了

調(diào)試失敗的程序,求幫助.7z

48.82 KB, 下載次數(shù): 12, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報(bào)

10#
ID:313292 發(fā)表于 2018-4-22 09:16 | 只看該作者
我這里 只有8個(gè)顯示數(shù)碼管    和四個(gè)數(shù)碼管一樣的方法嗎
回復(fù)

使用道具 舉報(bào)

11#
ID:314149 發(fā)表于 2018-4-22 23:46 | 只看該作者
期待!
回復(fù)

使用道具 舉報(bào)

12#
ID:355601 發(fā)表于 2018-6-21 19:41 | 只看該作者
新手,學(xué)習(xí)了。非常感謝樓主。
回復(fù)

使用道具 舉報(bào)

13#
ID:355601 發(fā)表于 2018-6-21 20:08 | 只看該作者
在嗎?我是新手,你給的原理圖我點(diǎn)仿真怎么數(shù)碼管不亮?
回復(fù)

使用道具 舉報(bào)

14#
ID:355601 發(fā)表于 2018-6-21 20:10 | 只看該作者
樓主,能幫我設(shè)計(jì)個(gè)6路熱電偶輸入的電路嗎,數(shù)碼管每隔一秒顯示一路溫度,跪謝了。單片機(jī)最好用PIC16F1946,51的也可以。
回復(fù)

使用道具 舉報(bào)

15#
ID:425491 發(fā)表于 2018-11-15 01:42 來自觸屏版 | 只看該作者
樓主,我下載了你的文件進(jìn)行仿真為什么數(shù)碼管不亮啊
回復(fù)

使用道具 舉報(bào)

16#
ID:426861 發(fā)表于 2018-11-15 09:32 | 只看該作者
頂一個(gè)                                            
回復(fù)

使用道具 舉報(bào)

17#
ID:444519 發(fā)表于 2018-12-11 22:37 | 只看該作者
多謝分享
回復(fù)

使用道具 舉報(bào)

18#
ID:422778 發(fā)表于 2018-12-18 15:40 | 只看該作者
win10下載總提示病毒,直接就刪除了
回復(fù)

使用道具 舉報(bào)

19#
ID:458245 發(fā)表于 2018-12-29 20:05 | 只看該作者
123456

爐溫.zip

370.11 KB, 下載次數(shù): 68, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報(bào)

20#
ID:245919 發(fā)表于 2019-2-28 11:14 | 只看該作者
數(shù)碼管點(diǎn)不亮
回復(fù)

使用道具 舉報(bào)

21#
ID:122152 發(fā)表于 2019-2-28 12:35 | 只看該作者
學(xué)習(xí)一下,謝謝分享
回復(fù)

使用道具 舉報(bào)

22#
ID:485731 發(fā)表于 2019-3-9 17:49 | 只看該作者
正好需要,多謝樓主
回復(fù)

使用道具 舉報(bào)

23#
ID:507401 發(fā)表于 2019-4-8 21:38 | 只看該作者
新手來臨學(xué)習(xí)當(dāng)中!!
回復(fù)

使用道具 舉報(bào)

24#
ID:507401 發(fā)表于 2019-4-18 17:04 | 只看該作者
學(xué)習(xí)。我用52單片機(jī)讀出的溫度有問題。unsigned int ReadMAX6675() //  從MAX6675讀取溫度 {         unsigned char count;         Value=0;     MAX6675_SCK=1;         _nop_();_nop_();         MAX6675_CS=0;//置低,使MAX6675停止轉(zhuǎn)換開始讀數(shù)         for(count=16;count>0;count--) //獲取16位MSB                  {                          MAX6675_SCK=0;  //sck置低                           Value=Value<<1;     //左移                     if(MAX6675_SO==1) //取當(dāng)前值                                    Value|=0x01;                           else                                    Value&=0xff;                           MAX6675_SCK=1;                         _nop_();_nop_();                  }          MAX6675_CS=1;  //開始新的轉(zhuǎn)換          return Value; }
回復(fù)

使用道具 舉報(bào)

25#
ID:62363 發(fā)表于 2019-6-16 21:19 | 只看該作者
大家都不要下了,掛羊頭賣狗肉的,根本用不了,下載的時(shí)候還報(bào)有病d。就像他網(wǎng)頁貼的一樣程序里寫的是LCD12864,仿真里只有數(shù)碼管 還不亮!
回復(fù)

使用道具 舉報(bào)

26#
ID:729216 發(fā)表于 2020-4-15 00:51 | 只看該作者
很需要!
回復(fù)

使用道具 舉報(bào)

27#
ID:743330 發(fā)表于 2020-5-3 18:34 | 只看該作者
用不了
回復(fù)

使用道具 舉報(bào)

28#
ID:749297 發(fā)表于 2020-5-26 10:06 | 只看該作者
這個(gè)仿真思路還是不錯(cuò)的
回復(fù)

使用道具 舉報(bào)

29#
ID:65956 發(fā)表于 2020-5-27 10:57 | 只看該作者
硬件圖明明是數(shù)碼管的,可是程序卻是液晶的,這樣太不負(fù)責(zé)任了,會誤導(dǎo)新手的
回復(fù)

使用道具 舉報(bào)

30#
ID:770609 發(fā)表于 2020-6-5 18:30 | 只看該作者
感想樓主分享!
回復(fù)

使用道具 舉報(bào)

31#
ID:987796 發(fā)表于 2021-12-4 16:02 | 只看該作者
誰有這個(gè)的相應(yīng)文檔可以分享下嗎?
回復(fù)

使用道具 舉報(bào)

32#
ID:1036371 發(fā)表于 2022-6-22 14:46 | 只看該作者
這貨是釣魚的下載還要扣錢
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表