在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

51單片機中AD/DA轉換器介紹及原理詳解

dytfki8u8yql ? 來源:電子技術控 ? 2023-08-29 09:12 ? 次閱讀

一、AD/DA介紹

AD(AnalogtoDigital):模擬-數字轉換,將模擬信號轉換為計算機可操作的數字信號,DA (Digital to Analog) :數字-模擬轉換,將計算機輸出的數字信號轉換為模擬信號。AD/DA轉換打開了計算機與模擬信號的大門,極大的提高了計算機系統的應用范圍,也為模擬信號數字化處理提供了可能。

二、硬件電路模型

b8a4d0ec-4596-11ee-a2ef-92fbcf53809c.png

AD轉換通常有多個輸入通道,用多路選擇開關連接至AD轉換器,以實現AD多路復用的目的,提高硬件利用率;AD/DA與單片機數據傳送可使用并口(速度快、 原理簡單),也可使用串口(接線少、使用方便);可將AD/DA模塊直接集成在單片機內,這樣直接寫入/讀出寄存器就可進行AD/DA轉換, 單片機的I0口可直接復用為AD/DA的通道 。

三、AD/DA原理待定學習

b8c1c95e-4596-11ee-a2ef-92fbcf53809c.png

四、XPT2046

b8ef80e2-4596-11ee-a2ef-92fbcf53809c.png

AD/DA性能指標

指AD/DA數字 量的精細程度,通常用位數表示。例如,對于5V電源系統來說, 8位的AD可將5V等分為256份,即數字量變化最小-個單位時,模擬量變化5V/256=0.01953125V,所以,8位AD的電壓分辨率為0.01953125V, AD/DA的位數越高, 分辨率 就越高。
轉換速度: 表示AD/DA的最大采樣/建立頻率,通常用轉換頻率或者轉換時間來表示,對于采樣/輸出高速信號,應注意AD/DA的轉換速度。
可將AD/DA模塊直接集成在單片機內,這樣直接寫入/讀出寄存器就可進行AD/DA轉換, 單片機的I0口可直接復用為AD/DA的通道 。

XPT2046時序,采用SPI方式通信

b90d9bae-4596-11ee-a2ef-92fbcf53809c.png

DIN——MISO——主設備輸入、從設備輸出

DOUT——MOSI——主設備輸出,從設備輸入

起始位——第一位,即 S 位。控制字的首位必須是 1,即 S= 1。在 XPT2046 的 DIN 引腳檢測到起始位前,所有的輸入將被忽略。

地址——接下來的 3 位( A2、 A1 和 A0)選擇多路選擇器的現行通道(見表 3、表 4 和圖 6),觸摸屏驅動和參考源輸入。

b9407844-4596-11ee-a2ef-92fbcf53809c.png

MODE——模式選擇位,用于設置 ADC 的分辨率。MODE= 0,下一次的轉換將是 12 位模式;MODE= 1,下一次的轉換將是 8 位模式。

SER/ DFR位控制參考源模式,選擇單端模式( SER/DFR = 1),或者差分模式( SER/DFR = 0)。在X坐標、 Y坐標和觸摸壓力測量中,為達到最佳性能,首選差分工作模式。參考電壓來自開關驅動器的電壓。在單端模式下,轉換器的參考電壓固定為VREF相對于GND引腳的電壓(更詳細的說明,見表 3 和表 4,圖 5 和圖 8)。采用單端模式時,X- Y-接地。

PD0 和 PD1——表 5 展示了掉電和內部參考電壓配置的關系。ADC 的內部參考電壓可以單獨關閉或者打開,但是,在轉換前,需要額外的時間讓內部參考電壓穩定到最終穩定值;如果內部參考源處于掉電狀態,還要確保有足夠的喚醒時間。ADC 要求是即時使用,無喚醒時間的。另外還得注意,當 BUSY 是高電平的時候,內部參考源禁止進入掉電模式。XPT2046 的通道改變后,如果要關閉參考源,則要重新對 XPT2046 寫入命令。即PD1為1是內部參考電壓2.5V,,PD1為0是外部參考電壓VREF。

b956cefa-4596-11ee-a2ef-92fbcf53809c.png

五、代碼


		/*---------------------------------------------------------------------*/ /* --- 公眾號:我愛單片機 ----------------------------------------------*/ /* --- Web: www.52dpj.com --------------------------------------------*/ /* --- QQ: 1256711178 -------------------------------------------------*/ /*---------------------------------------------------------------------*/ #include  // 引腳定義 sbit XPT2046_CS = P3 ^ 5; sbit XPT2046_DCLK = P3 ^ 6; sbit XPT2046_DIN = P3 ^ 4; sbit XPT2046_DOUT = P3 ^ 7; /** * @brief ZPT2046讀取AD值 * @param Command 命令字,范圍:頭文件內定義的宏,結尾的數字表示轉換的位數 * @retval AD轉換后的數字量,范圍:8位為0~255,12位為0~4095 */ unsigned int XTP2046_ReadAD(unsigned char Command) // 指令包括選擇的通道,分辨率8、12位,參考電壓,單端模式 { unsigned int ADVAlue = 0; unsigned char i; XPT2046_DCLK = 0; XPT2046_CS = 0; for (i = 0; i < 8; i++) // 發送指令 { XPT2046_DIN = Command & (0x80 >> i); // 高位在前,先發送高位 XPT2046_DCLK = 1; XPT2046_DCLK = 0; } for (i = 0; i < 16; i++) // 讀取AD數據 { XPT2046_DCLK = 1; XPT2046_DCLK = 0; if (XPT2046_DOUT) { ADVAlue |= (0x8000 >> i); } // 高位在前,一共讀16位,但只有前12位有效,后四位用0填充 } XPT2046_CS = 1; if (Command & 0x08) // 根據模式選擇8位還是12位 { return ADVAlue >> 8; // 當8位時,讀取到的數據是高八位,因此要往后移8位才是真實數據 } else { return ADVAlue >> 4; // 當12位時,有效數據是12位,后四位都是無效數據,因此往后移4位是真實數據 } } main.c #include  #include "LCD1602.h" #include "Delay.h" #include "XPT2046.h" unsigned int ADVAlue; void main() { LCD_Init(); LCD_ShowString(1, 1, "ADJ NTC RG"); while (1) { ADVAlue = XTP2046_ReadAD(XTP2046_XP_8); // 讀取AIN0,可調電阻 LCD_ShowNum(2, 1, ADVAlue, 4); // 顯示AIN0 ADVAlue = XTP2046_ReadAD(XTP2046_YP_8); // 讀取AIN1,熱敏電阻 LCD_ShowNum(2, 6, ADVAlue, 4); // 顯示AIN1 ADVAlue = XTP2046_ReadAD(XTP2046_VBAT_8); // 讀取AIN2,光敏電阻 LCD_ShowNum(2, 11, ADVAlue, 4); // 顯示AIN2 Delay(10); } }

審核編輯:湯梓紅

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

    關注

    6040

    文章

    44594

    瀏覽量

    636928
  • 轉換器
    +關注

    關注

    27

    文章

    8738

    瀏覽量

    147560
  • 51單片機
    +關注

    關注

    274

    文章

    5705

    瀏覽量

    123919
  • 模擬信號
    +關注

    關注

    8

    文章

    1137

    瀏覽量

    52541
  • 數字信號
    +關注

    關注

    2

    文章

    975

    瀏覽量

    47604

原文標題:51單片機AD模數轉換,使用SPI通信方式

文章出處:【微信號:電子技術控,微信公眾號:電子技術控】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    單片機原理及應用: DA轉換器的主要指標與接口#單片機

    單片機DA轉換器
    學習硬聲知識
    發布于 :2022年11月08日 23:27:12

    單片機原理及應用: DA轉換器芯片DAC0832#單片機

    單片機DAC0832DA轉換器
    學習硬聲知識
    發布于 :2022年11月08日 23:29:04

    求助51單片機連接DA轉換器的問題。

    51單片機連了一個 DAC7611 轉換器(12位串行)。發現了一個問題,在我給它送入偶數時候,DAC7611的確能輸出正確的電壓。比如送入500,它輸出就是500mv,并且很穩定。。但是給它送入
    發表于 07-16 20:00

    51單片機中斷詳解

    單片機_中斷理解51單片機中斷詳解(上)51單片機中斷詳解
    發表于 11-22 06:08

    51單片機和stm32單片機如何串口通信呢,需要電平轉換器嗎?

    51單片機和stm32單片機如何串口通信呢,需要電平轉換器嗎?
    發表于 11-01 07:47

    AD轉換器AD976與51單片機的接口設計

    AD轉換器AD976與51單片機的接口設計。
    發表于 01-25 10:25 ?82次下載

    51單片機DA轉換器的應用

    D/A轉換器單片機接口方便與否,主要決定于轉換器本身是否帶數據鎖存。有兩類D/A轉換器,一類是不帶鎖存
    發表于 04-17 15:38 ?8533次閱讀
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>與<b class='flag-5'>DA</b><b class='flag-5'>轉換器</b>的應用

    使用51單片機驅動TLV5616數據轉換器的驅動程序免費下載

    本文檔的主要內容詳細介紹的是使用51單片機驅動TLV5616數據轉換器的驅動程序免費下載。
    發表于 08-02 17:34 ?10次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>驅動TLV5616數據<b class='flag-5'>轉換器</b>的驅動程序免費下載

    使用51單片機進行PCF8591的AD和DA轉換的程序免費下載

    本文檔的主要內容詳細介紹的是使用51單片機進行PCF8591的AD和DA轉換的程序免費下載。
    發表于 07-19 17:38 ?20次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>進行PCF8591的AD和<b class='flag-5'>DA</b><b class='flag-5'>轉換</b>的程序免費下載

    如何進行51單片機的AD和DA轉換

    本文檔的主要內容詳細介紹的是如何進行51單片機的AD和DA轉換詳細資料說明。
    發表于 06-17 17:44 ?18次下載
    如何進行<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的AD和<b class='flag-5'>DA</b><b class='flag-5'>轉換</b>

    如何使用單片機設計AD和DA轉換器詳細資料說明

     某些單片機內部巳經集成了AD DA轉換器,使其在工控行業、儀器儀表.家電產品的應用與日俱增.但是這類單片機還存在價格偏高、引腳利用率較低的問題.
    發表于 06-13 17:17 ?11次下載
    如何使用<b class='flag-5'>單片機</b>設計AD和<b class='flag-5'>DA</b><b class='flag-5'>轉換器</b>詳細資料說明

    使用51單片機和ADS7816轉換器進行連接的源代碼免費下載

    本文檔的主要內容詳細介紹的是使用51單片機和ADS7816轉換器進行連接的源代碼免費下載。
    發表于 11-11 17:55 ?39次下載

    使用單片機實現DA轉換的實驗文件免費下載

    本文檔的主要內容詳細介紹的是使用單片機實現DA轉換的實驗文件免費下載。
    發表于 03-24 11:11 ?20次下載

    基于C51單片機DA方波可控制發生

    基于C51單片機DA方波可控制發生文章目錄前言一、DA轉換器1.
    發表于 11-23 16:22 ?8次下載
    基于C<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>DA</b>方波可控制發生<b class='flag-5'>器</b>

    單片機基礎】ADC0809模數轉換器詳解

    單片機基礎】ADC0809模數轉換器詳解
    發表于 11-23 17:21 ?44次下載
    【<b class='flag-5'>單片機</b>基礎】ADC0809模數<b class='flag-5'>轉換器</b><b class='flag-5'>詳解</b>
    主站蜘蛛池模板: 看黄视频免费| 国产成人精品日本亚洲语音1| 日本zzzwww大片免费| 手机看片日韩国产| 免费看片你懂的| 福利99| 日女人免费视频| 中文字幕一区二区三区精品 | 国内久久精品视频| 国产精品久久永久免费| 午夜在线视频免费观看| 色视频色露露永久免费观看| 国产未成女年一区二区| 欧美激情啪啪| 美女又黄又www| 下农村女人一级毛片| 色老头永久免费网站| 美女黄网站| 97久久人人| 日本加勒比在线播放| 欧美色插| 成人aaa| 色在线网站| 久久夜色精品国产亚洲噜噜| 国产黄色大片又色又爽| 天天在线综合网| 99久久香蕉国产综合影院| 亚洲色图27p| 亚洲1页| 国产精品9999| 欧美黄免在线播放| a男人的天堂久久a毛片| 色多多在线视频| 国产精品三级在线观看| 神马午夜51| 国产在线h视频| 中文字幕天堂| 你懂的在线视频播放| 越南黄色录像| aa亚洲| 亚洲人成电影在在线观看网色|