找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機(jī)+AD590mf 溫度計(jì)源程序與原理圖

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:403379 發(fā)表于 2018-11-14 21:41 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
電路原理圖如下:


檢測的溫度范圍為-55℃-+150℃

單片機(jī)源程序如下:
  1. #include <reg52.H>
  2. //定義與ADC有關(guān)的特殊功能寄存器
  3. sfr ADC_CONTR =0xC5;
  4. sfr ADC_DATA  =0xC6;
  5. sfr ADC_LOW2  =0xBE;
  6. sfr P1M0  =0x91;
  7. sfr P1M1  =0x92;

  8. sbit P24 = P0^0; //個(gè)位
  9. sbit P25 = P0^1; //十位
  10. sbit P26 = P0^2; //百位
  11. sbit P27 = P0^3; //千位
  12. sbit P07 = P2^7; //小數(shù)點(diǎn)

  13. int DATA_LED[11] =
  14. {
  15.         0X3F,/*0*/
  16.         0X06,/*1*/
  17.         0X5B,/*2*/
  18.         0X4F,/*3*/
  19.         0X66,/*4*/
  20.         0X6D,/*5*/
  21.         0X7D,/*6*/
  22.         0X07,/*7*/
  23.         0X7F,/*8*/
  24.         0X6F,/*9*/

  25.         0xFF
  26. };

  27. void delay(int timer)                           //延時(shí)函數(shù)
  28. {
  29.         while(timer--);
  30. }

  31. void led(int n)                                                 //數(shù)碼管顯示及數(shù)據(jù)處理程序
  32. {
  33. //        P2 = 0x39;                                                 //C
  34.         P2 = DATA_LED[n % 10];                  //個(gè)位        
  35.         P07=0;
  36.         P27 = 1;
  37.         delay(500);
  38.         P27 = 0;
  39.   
  40.         P2 = 0xFF;
  41.         P2 = DATA_LED[n / 10 % 10];                //十位
  42.         P07=0;
  43.         P26 = 1;
  44.         delay(500);
  45.         P26 = 0;
  46.   
  47.         P2 = 0xFF;
  48.         P2 = DATA_LED[n / 100 % 10];        //百位
  49.         P07=1;
  50.         P25 = 1;
  51.         delay(500);
  52.         P25 = 0;
  53.   
  54.         P2 = 0xff;
  55.         P2 = DATA_LED[n / 1000 % 10];        //千位          
  56.         P07=0;
  57.         P24 = 1;
  58.         delay(500);
  59.         P24 = 0;
  60. }

  61. int Ad_Change(char channel)                     //AD轉(zhuǎn)換
  62. {
  63.         int AD_Result_Temp = 0 ;
  64.         P1 = 0xff;                                         //將P1口置高,為A/D轉(zhuǎn)換作準(zhǔn)備
  65.         ADC_CONTR = ADC_CONTR|0x80;                 //1000,0000打開A/D轉(zhuǎn)換電源
  66.         P1M0 = 0x03;                                //0000,0011用于A/D轉(zhuǎn)換的P1.x口,先設(shè)為開漏
  67.         P1M1 = 0x03;                                //0000,0011P1.0--P1.1先設(shè)為開漏。斷開內(nèi)部上拉電阻
  68.         delay(20);                             //20

  69.         ADC_CONTR = ADC_CONTR&0xE0;                 //1110,0000 清ADC_FLAG,ADC_START位和低3位
  70.         ADC_CONTR = ADC_CONTR|(channel);        //設(shè)置當(dāng)前通道號(hào)

  71.         delay(1);                    //延時(shí)使輸入電壓達(dá)到穩(wěn)定
  72.         ADC_DATA = 0;                                      //清A/D轉(zhuǎn)換結(jié)果寄存器
  73.         ADC_LOW2 = 0;
  74.         ADC_CONTR = ADC_CONTR|0x08;                 //0000,1000ADCS = 1,啟動(dòng)轉(zhuǎn)換

  75.         do { ; }   
  76.         while((ADC_CONTR & 0x10)==0);           //0001,0000等待A/D轉(zhuǎn)換結(jié)束

  77.         ADC_CONTR = ADC_CONTR&0xE7;                 //1110,0111清ADC_FLAG位,停止A/D轉(zhuǎn)換
  78.         AD_Result_Temp = 0 ;
  79.         AD_Result_Temp = ((AD_Result_Temp|ADC_DATA)<<2)|(ADC_LOW2&0x03);
  80.                                                                                 …………
  81. …………
  82. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
AD590傳感器程序.zip (1.19 KB, 下載次數(shù): 84)



評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

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

使用道具 舉報(bào)

沙發(fā)
ID:667939 發(fā)表于 2019-12-19 09:51 來自觸屏版 | 只看該作者
有原理圖嗎
回復(fù)

使用道具 舉報(bào)

板凳
ID:667939 發(fā)表于 2019-12-19 10:09 來自觸屏版 | 只看該作者
為什么只顯示8888
回復(fù)

使用道具 舉報(bào)

地板
ID:667939 發(fā)表于 2019-12-19 17:52 來自觸屏版 | 只看該作者
2438792733 發(fā)表于 2019-12-19 10:09
為什么只顯示8888

我也是
回復(fù)

使用道具 舉報(bào)

5#
ID:931500 發(fā)表于 2021-6-2 14:43 | 只看該作者
這個(gè)傳感器程序是要加載進(jìn)設(shè)計(jì)的對吧
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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