色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于PIC16F84單片機和AD7416溫度器件實現溫度檢測系統的設計

電子設計 ? 來源:單片機與嵌入式系統應用 ? 作者:李學海,董丹,李 ? 2020-04-21 07:59 ? 次閱讀

引言

在測量儀器儀表中,溫度的檢測幾乎成為必不可少的部分。傳統的模擬溫度傳感器,如AD590,因外圍電路復雜、需調零等缺點,給應用開發帶來一些麻煩。利用數字溫度傳感器配合單片機來設計各種控制系統,越來越多受到業內人士的推崇。美國模擬器件公司生產的AD7416是一款功能較多的溫度器件,它在一個芯片上集成了I2C總線接口、溫度傳感器、10位數摸轉換器和窗口門限溫度控制器等功能。它與其它數字溫度傳感器相比具有體積小、編程簡單等優點。

在本文介紹的溫度檢測系統中,其前端溫度檢測應用的是AD7416,控制器應用的是PIC16F84,將探測到的溫度上傳到上位機(PC機)。由于PIC16F84單片機是一款廉價的低端型號,其內部沒有配置I2C接口UART接口等外圍模塊,因此需要利用虛擬技術來模擬I2C和UART的功能,分別與下位器件AD7416和上位機進行通信。文后提供了完整的算法設計和程序清單。在此程序基礎上稍加改動也可以適用于其它PIC單片機,甚至是其它廠家的單片機,來實現同樣的功能。故本文具有比較廣泛的啟發性和實用價值。

1、 硬件簡介

硬件接線圖如圖1所示,前端電路主要由1片10位串行數字溫度傳感器AD7416和1片RISC型PIC16F84微控制器組成,上位機由PC兼容機擔當。不過,上位機不是必須的,圖1中給出了可選的相連PC的串行接口。通過該串口,可把檢測到的現場溫度值上傳到PC機,以便進行實時處理、存儲和監控。

基于PIC16F84單片機和AD7416溫度器件實現溫度檢測系統的設計

1.1 與PC機的接口簡介硬件引腳連接關系如表1所列,其中列出了各引腳的功能。利用PIC16F84端口A的2條引腳與AD7416連接;利用端口B的3條引腳在前端電路與PC機之間傳送信息,也可以直接傳輸給LED數碼管驅動電路以供顯示。

PIC16F84單片機與PC機的通信接口選用并行打印口,通信方式選用串行同步方式。其中,并行打印口既可以是25芯的D型插口,也可以是36芯的Centronics連接器,如圖2所示。串行同步方式通信的信號時序如圖3所示。

1.2 AD7416簡介

AD7416是一個帶有溫度超限功能的10位串行數字溫度傳感器,采用8引腳的SOIC或μSOIC封裝。其內部結構如圖4所示,引腳布局如圖5所示,引腳功能如表2所列。

表2 引腳功能說明

AD7416具有如下特點:10位溫度至數字轉換器;超溫指示端為低電平有效的漏極開路型輸出腳,可以實現“線與”接線方式;I2C兼容的串行接口;可選的串行總線地址,允許在單一總線上連接多達8個AD7416;低功耗節電方式(典型2mA);400ms更新速率;55℃~+125℃溫度測量范圍。AD7416有5個內部寄存器。其中4個是數字寄存器,一個是地址指針寄存器。地址指針寄存器是一個8位寄存器,用于存放指定4個數據寄存器的地址碼。對AD7416每一次串行寫操作的第一個數據字節是數據寄存器的地址碼,這就是隨后的數據字節要寫入的地址。其實,地址指針寄存器只需最低兩位(記作P1和P0)用來選擇數據寄存器,如表3所列。

溫度值寄存器是一個16位只讀寄存器,其高10位以2的補碼格式儲存由模數轉換器產生的10位溫度測量讀數;配置寄存器是一個8位讀/寫寄存器,用來設置AD7416的工作方式;THYST回滯溫控點設置寄存器是一個16位的讀/寫寄存器,其高9位存儲以2的補碼格式表示下限溫控點設定值;TOTI上限溫控點設置寄存器一個16位讀/寫寄存器,其高9位存儲以2的補碼格式表示上限溫控點設定值。AD7416上電時地址指針指向溫度值寄存器,2個溫控點分別指定TOTI=80℃和THYST=75℃。這樣的缺省設置使得AD7416可以獨立用作一個恒溫控制器,而不需要與串行總線連接以及受控于其它主控器件。

AD7416以10位2的補碼格式表示溫度數值,在16位溫度值寄存器中的存儲方式如表4所列。表5列出了幾個溫度數值的編碼示例。

為了避免在噪聲環境下的誤觸發,AD7416內部集成了一個故障排隊計數器。假若故障排隊值設定為4,則必須連續4次(400ms)周期性地測量溫度值大于TOTI或者小于THYST預定值,OTI端才送出有效電平。該條件只要不滿足,排隊計數器就會被自動復位,OTI端也就不會錯誤地輸出有效電平,從而抑制了噪聲干擾。

1.3 PIC16F84簡介

PIC16F84是18引腳CMOS工藝的RISC微控制器,只有35條指令并且全部指令均為統一長度14位。它有1×14KB的片內Flash程序存儲器,36×8KB的通用寄存器和64×8KB的E2PROM數據存儲器。它有13個通用I/O引腳。每個引腳有吸納25mA或輸出20mA的能力。PIC16F84還有一個8位的定時器/計數器和一個自帶PC時鐘源的看門狗監視器。

PIC16F84由于具有Flash工藝特性,所以它極適合于那些可能會經常改動程序的應用。例如,用戶可以隨時改動已經出廠產品中的單片機程序,以增加或調整產品的功能。另外,它內部的E2PROM型數據存儲器不僅有掉電保護數據的功能,更重要的是它是由單片機內部進行控制操作的,即外部電路無法對其進行讀寫。因此,它有極高的數據保密性。這使得PIC16F84在加密性產品,如智能IC卡、密碼鎖、電子防盜系統等方面有很廣泛的應用。PIC16F84引腳布局如圖6所示。

2、 軟件簡介

為本應用項目開發的軟件程序,可以對AD7416內部的寄存器編程,以及從這些數據寄存器讀取溫度值。PIC16F84扮演著上傳下達的角色,單片機端的軟件程序采用了匯編語言。AD7416一側的通信程序,將利用并行端口RA來模擬I2C總線協議,控制AD7416的工作方式,并且讀取它的溫度測量值。PC機一側的通信程序,將利用并行端口RB來連接PC的并行打印機口,把所收集到的溫度上傳給PC機,PC機端的軟件程序采用的是C語言

整個軟件采用了模塊化的程序設計方法。為了實現PIC16F84和AD7416之間I2C協議之下的串行通信,編寫了一些專用子程序。這些子程序段包括:符號定義、PIC16F84的端口初始化、啟動信號時序產生、停止信號時序產生、發送字節、讀取字節、讀取溫度、向PC機串行被動發送等。具體程序見網站www.dpj.com.cn中的程序段0~程序段8。其中兩個比較復雜的程序段還給出了流程圖,如圖7和圖8所示。

2.1 采集溫度數據

在發送字節子程序SENDBYTE被調用以后,AD7416就作好了提供溫度數據的準備。從AD7416中讀取溫度數據,既可以1字節形式,也可以2字節形式。以2字節形式會更加精確,在本例中采用的就是2字節形式。這2個字節被讀取后,保存到用戶定義的2個寄存器HIHGBYTE和LOWBYTE內,之后用戶再轉移給其它外部器件或設備,以便作進一步地分析等處理。READBYTE子程序的功能相似于SENDBYE子程序的功能。不過,對于讀取過程,需要檢測SDATA線的狀態,并且LOWBYTE寄存器也要作相應改動。

2個字節的讀取過程需要主控器(即PIC16F84),在每個字節的讀取之后分別輸出不同的應答(ACK)信號電平。為了利用同一個數據讀取程序,提供2種不同的ACK信號電平,需要查看ACKSTAUS寄存器的bit1,由該位的狀態決定所需ACK信號脈沖的類型。

2.2 通過打印口向PC機上傳數據

PC機的打印口提供了一種從PIC單片機到PC機傳送數據的簡易途徑,以便在PC機上進行數據的記錄和監測等處理。由于對打印機端口功能的討論超出了本文的關注范圍,因此文中只涉及一些必要的相關內容。隨后所介紹的僅是一個如何以最少連線(僅需要3條)實現溫度數據傳送給PC機的簡明范例。單片機其它的I/O端口引腳還可以留作它用。單片機向PC機每次傳送16位的溫度值,并且是以高位(MSB)開始傳送的。PC機與單片機之間的三條接口連接,分別定義為SYNC(串行同步)、SDATA(串行數據)和SCLK(串行時鐘)。

當PIC16F84從AD7416讀取一次溫度測量結果,它將把SYNC線電平拉低以通知PC機,并且開始一個計數器的遞減過程。如果在該計數器遞減到0之前,還沒有檢測到來自PC機時鐘的(SCLK)上升沿,則將SYNC電平恢復到高電平,以中止本次數據的發送。這種設計方法允許在未連接PC機,或PC機端軟件沒有運行時,仍然能令PIC16F84繼續讀取溫度數據。

當PIC16F84檢測到SCLK的上升沿時,就利用溫度數據的最高位(MSB)來設置SDATA。隨后繼續監視SCLK線,并且當該線變低時,一個用戶定義的位計數器減1。再等待另一個SCLK上升沿,以便繼續發送后續數據,直到16位數據全部發送完畢。在發送完后,將SCLK線拉高以告知PC機此發送過程結束。

3、程序清單

程序清單包括完整的單片機端匯編語言程序和PC機端的C高級語言程序。詳見網站www.dpj.com.cn。

4、結語

可以說,本文提供了一個具有借鑒意義的溫度檢測系統的軟硬件開發參考模型。在此基礎上,如果PC機端軟件利用VB或VC設計成圖形界面就更方便于用戶操作。如果利用PIC16F84的其它I/O端口引腳再擴展幾條I2C總線,并且每條總線上掛接1~8片AD7416,則可以形成一個更加完善的分布式多點溫度檢測系統。

總之,采用數字溫度傳感器,可以使設計者完全 打破傳統的設計模式(傳感器+ADC),從而大大簡化了設計方案,提高了電路的可靠性。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6039

    文章

    44575

    瀏覽量

    636396
  • 檢測系統
    +關注

    關注

    3

    文章

    957

    瀏覽量

    43065
  • 總線
    +關注

    關注

    10

    文章

    2891

    瀏覽量

    88165
收藏 人收藏

    評論

    相關推薦

    PIC16F84單片機的中文資料

    PIC16F84單片機的內部硬件資源:學些PIC 單片機,在Microchip 尚未推出其他Flash 系列的情況下,很多菜鳥都是從PIC16F84
    發表于 08-26 15:00

    數字溫度傳感器AD7416及其應用

    數字溫度傳感器AD7416 及其應用AD7416 是美國模擬器件公司(ADI)出品的單片數字溫度
    發表于 12-05 09:06

    用AD7416+PIC16F84+PC機構建的測溫系統

    在測量儀器儀表中,溫度檢測幾乎成為必不可少的部分。傳統的模擬溫度傳感器,如AD590,因外圍電路復雜、需調零等缺點,給應用開發帶來一些麻煩。利用數字溫度傳感器配合
    發表于 03-08 11:44

    PIC16F84中文資料

    PIC16F84單片機的內部結構,如圖1所示的框圖。由圖1看出,其基本組成可分為四個主要部分,即運算器ALU和工作寄存器W;程序存儲器;數據存儲器和輸入/輸出(I/O)口;堆棧存儲器和定
    發表于 01-17 23:33 ?636次下載

    用AD7416+PIC16F84+PC機構建的測溫系統

    全面系統地介紹帶I2C 總線接口的10 位數字溫度傳感器AD7416 和RISC 型8 位單片機PIC16F84,以及與PC
    發表于 04-15 09:23 ?21次下載

    基于PIC16F84單片機的IC卡智能水表設計

    本文介紹了一種基于低功耗芯片PIC16F84 的IC 卡智能水表的設計,文中給出了系統的硬件設計和軟件設計。該IC 卡水表具有低成本、低功耗、可靠性高等優點,可廣泛應用于各城市供
    發表于 06-18 10:16 ?115次下載

    數字式溫度傳感器AD7416及其應用

    本文詳細介紹了新型數字式溫度傳感器AD7416的功能、特點及使用方法,并給出了應用實例。通過實踐應用,可知AD7416 測溫范圍寬、準確度高、連接及編程簡單。關鍵詞: AD7416;I
    發表于 07-03 09:50 ?50次下載

    PIC16F84單片機的內部硬件資源

    PIC16F84 單片機的內部硬件資源:學些PIC 單片機,在Microchip 尚未推出其他Flash 系列的情況下,很多菜鳥都是從PIC16F8
    發表于 08-25 18:35 ?94次下載

    數字溫度傳感器AD7416及其應用

    AD7416 是美國模擬器件公司(ADI)出品的單片數字溫度傳感器,其片內寄存器可以設置高/低溫度門限,并可通過I2C 接口對內部寄存器進行
    發表于 11-26 14:54 ?39次下載

    I2C接囗芯片AD7416溫度采樣匯編語言程序設計

    論述了基于數字溫度傳感器的單片機溫度測控系統。把PC實現減法運算的方法運用到MCU的匯編語言
    發表于 03-02 14:31 ?44次下載

    PIC單片機循環程序實例

    在這里介紹一種定時程序,說明循環程序在PIC單片機上的應用。筆者仍以PIC16F84單片機為例建立其定時源程序清單
    發表于 04-26 10:25 ?3158次閱讀

    PIC8位單片機的基本組成

    PIC系列8位單片機為適應各種不同的用途,有多種型號可供選用。但是,盡管PIC單片機有不同的檔次和型號,但其最基本的組成則大同小異。因此,在這里先從型號
    發表于 11-15 14:47 ?1947次閱讀
    <b class='flag-5'>PIC</b>8位<b class='flag-5'>單片機</b>的基本組成

    溫度傳感器AD7416的工作原理及應用解析

    AD7416掛接在同一個串行總線上。該溫度傳感器可廣泛應用于數據采集系統中的環境溫度監測、工業過程控制、電池充電以及個為計算機等系統
    發表于 03-08 14:25 ?4615次閱讀
    <b class='flag-5'>溫度</b>傳感器<b class='flag-5'>AD7416</b>的工作原理及應用解析

    采用單片機AT89C2051和AD7416芯片實現多路溫濕度循環檢測系統的設計

    單片機AT89C2051來實現AD7416的信號采集和輸出控制,硬件設計簡單可靠,系統溫度節點可擴展性強。為確保
    發表于 04-12 11:55 ?1895次閱讀
    采用<b class='flag-5'>單片機</b>AT89C2051和<b class='flag-5'>AD7416</b>芯片<b class='flag-5'>實現</b>多路溫濕度循環<b class='flag-5'>檢測</b><b class='flag-5'>系統</b>的設計

    AD7416通過仿真I2C?接口連接到PIC16F84

    AD7416通過仿真I2C?接口連接到PIC16F84
    發表于 04-19 12:15 ?6次下載
    <b class='flag-5'>AD7416</b>通過仿真I2C?接口連接到<b class='flag-5'>PIC16F84</b>
    主站蜘蛛池模板: 中文在线中文资源| 免费国产足恋网站| 一边亲着一面膜下奶韩剧免费| 久久亚洲AV无码精品午色夜麻豆| 柏木舞子在线| 在线 国产 欧美 专区| 少爷被多个暗卫肉高h| 男男腐文污高干嗯啊快点1V1| 国产亚洲高清视频| 趁老师睡着吃她的奶水| 永久免费无码AV国产网站| 视频网站入口在线看| 男生在床上脱美女 胸| 久久99精品涩AV毛片观看 | 少妇被躁爽到高潮无码久久| 美女在线永久免费网站| 九九影院午夜理论片无码| 国产精品久久久精品a级小说| c了瑜伽老师嗷嗷叫一节课视频| 一个人免费视频在线观看高清版| 小向美奈子厨房magnet| 日韩久久影院| 欧美一区二区激情视频| 老师湿乎乎两半嫩| 久久精品观看| 九九久久精品| 混乱家庭电影完整版在线看| 国产成人一区二区三区在线观看 | 久久精品国产亚洲AV影院| 黄网13区| 加勒比一本之道高清视频在线观看| 国产精品视频第一区二区三区| 德国xxxx| 高清国语自产拍在线| 岛国片免费在线观看| 成年美女黄网站色app| www.久久精品视频| 草莓视频在线看免费高清观看| xxnxx美女| 大桥未久电影在线| 动漫女生的逼|