找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

TC77溫度傳感器+51單片機+LCD1602顯示的仿真與源碼

  [復制鏈接]
跳轉到指定樓層
#
ID:115061 發(fā)表于 2018-2-5 10:14 | 只看該作者 |只看大圖 回帖獎勵 |正序瀏覽 |閱讀模式
這個傳感器網(wǎng)上的資料很少,自己研究了幾天,大致搞出來了。下面是仿真圖:


單片機源程序:
  1. #include<reg52.h>
  2. #include"delay.h"
  3. #include"lcd602.h"

  4. //**************端口定義*******************
  5. sbit DIN=P3^1;  //串行數(shù)據(jù)
  6. sbit LOAD=P3^2; //片選
  7. sbit CLK=P3^0;  //串行時鐘

  8. //**************數(shù)組定義*******************
  9. //uchar tab1[]={"temp:     "};

  10. /*******************變量定義********************/
  11. int temp1;
  12. bit flag_temp;
  13. /*********************************SPI讀兩個字節(jié)*************************************/
  14. spi_read_byte(uint dat)
  15. {
  16.                 uchar i;
  17.                 uint date;
  18.                 LOAD=0; //拉低片選線,選中器件
  19.                 delayxms(5);
  20.                 //讀取數(shù)據(jù)
  21.                 for (i=0;i<13;i++) //移位循環(huán) 16 次
  22.                 {        
  23.                     date<<=1;             // 低一位移位到最高位
  24.                     CLK=1; //清零時鐘總線
  25.                         
  26.                         if(DIN)
  27.                         date|=0x0001; //每次取高字節(jié)
  28.                     CLK=0; //時鐘上升沿,發(fā)送地址
  29.                 }

  30.                 for (i=0;i<16;i++) //移位循環(huán) 16 次
  31.                 {
  32.                     CLK=1; //清零時鐘總線
  33.                         DIN=(bit)(dat&0x8000); //每次取高字節(jié)
  34.                     dat<<=1; //左移一位
  35.                     CLK=0; //時鐘上升沿,發(fā)送地址
  36.                 }

  37.                 LOAD=1; //發(fā)送結束,上升沿鎖存數(shù)據(jù)

  38.                 return(date);                   // 返回讀出的一字節(jié)
  39. }
  40. /*******************主函數(shù)********************/
  41. void main(void)
  42. {               
  43.         chushihua();

  44.                 while(1)
  45.                 {                     
  46.                             temp1=spi_read_byte(0xffff);             //關斷模式
  47.                                 
  48.                                     if(temp1>0x0fff)                            //temp1>0x0fff  溫度為負數(shù)
  49.                                         {
  50.                                                 flag_temp=1;
  51.                                                 temp1=(~temp1+1)&0x1fff;
  52.                                         }
  53.                                         else
  54.                                         {
  55.                                                 flag_temp=0;
  56.                                         }

  57.                                         if(flag_temp==0)
  58.                                         {write_zifu(1,5,'+');}
  59.                                         if(flag_temp==1)
  60.                                         {write_zifu(1,5,'-');}
  61.                                        
  62.                                     write_num3(1,6,temp1*0.0625*10);
  63.                 }
  64. }
復制代碼

全部資料51hei下載地址:
TC77溫度傳感器.rar (138.06 KB, 下載次數(shù): 57)



評分

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

查看全部評分

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

使用道具 舉報

板凳
ID:689229 發(fā)表于 2023-3-25 12:02 | 只看該作者
東西怎么下載,可以運行嗎?我下來看看
回復

使用道具 舉報

沙發(fā)
ID:72951 發(fā)表于 2019-10-14 20:37 | 只看該作者
不錯,值得學習。
回復

使用道具 舉報

樓主
ID:319331 發(fā)表于 2018-5-1 21:19 | 只看該作者
哇,可以可以,找了好久終于找到了
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

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