電工之家_電工基礎知識學習網站
當前位置:電工之家 > 電工知識 > 單片機 > 正文

單片機如何實現模擬輸出的

時間:2019-10-05 10:40 來源:電工之家

想要單片機輸出模擬信號,屬于數字信號轉化為模擬信號,簡稱數模轉換;而單片機內部的ADC模塊屬于模擬信號轉化為數字信號,簡稱模數轉換,比如電壓電流采樣、溫度測量、濕度測量、壓力測量等都屬于模數轉換。
單片機如何實現模擬輸出的
由于帶DA轉換接口的單片機很少,可以使用DA芯片進行外圍擴展,單片機只是核心處理器,所有功能并不能做得面面俱到,想要精通掌握單片機,各種外圍電路擴展是必不可少的。如下圖,使用DA專用芯片DAC0832進行外擴,DAC0832是8位的電流型輸出D/A轉換芯片,接口簡單,較容易控制。
單片機如何實現模擬輸出的
D/A接口擴展電路
其中D0~D7為8位數據輸入線,與單片機普通IO口相連即可;CS為片選信號,低電平有效,與單片機IO口相連接;ILE為數據鎖存控制允許輸入線,高電平有效,可直接接5V即可;Vref為基準電壓輸入,范圍-10V~10V;Rfb為反饋信號輸入線,內部有相應的反饋電阻;Iout1、Iout2為電流輸出端,將電流轉化為電壓可實現單極性輸出及雙極型輸出。
單極性輸出:VO = - VREF ×D/256,輸出電壓范圍:(0 ~ - VREF ×255/256)之間,當VREF = -5V, VOUT =0~5×(255/256)V;當VREF = +5V, VOUT = 0 ~ -5×(255/256)V。上圖原理為單極性輸出接法。
雙極性輸出:雙極性輸出在單極性輸出的基礎上再加一級運放進行轉換,基本原理如下圖所示。
單片機如何實現模擬輸出的
選擇R2=R3=2R1,則輸出電壓VOUT= 2×VREF×D/256 -VREF= (2D/256-1)VREF,從公式也可以看出,當數據D=0(8個數據輸入線全為0)時, VOUT= -VREF;當數據D=128(8個數據輸入線為10000000)時, VOUT= 0;當數據D=255(8個數據輸入線全為1)時, VOUT= (2×255/256-1)×VREF= (127/128)VREF,所以當數字量輸入D在0~255時,輸出電壓在- VREF ~+ VREF之間變化

看過《單片機如何實現模擬輸出的》的人還看了以下文章
單片機輸出模擬量方式及具體實現原理 單片機輸出模擬量方式及具體實現原理
單片機輸出模擬量,主要有兩種方式,通過DA模塊或者PWM模塊輸出; 以我目前經常使用的ST的Cortex-M0系列的處理STM32F051處理器為例。 在我負責的產品中,有一款產品需要由單片機產生鈴聲,為了節省成本,沒有使用專用的鈴聲芯片,而是由單片機的D/A模塊輸出...
MSP430F5529型號的單片機引腳為什么這么亂 MSP430F5529型號的單片機引腳為什么這么亂
查看MSP430F5529這個單片機型號的數據手冊發現,其引腳定義布局還是比較規范的,具體表現如下: (1)引腳Pin1~Pin8,全部都是普通IO引腳,可以被同時定義A4~A15,CB4~CB11或者P6.4~P7.3; (2)引腳Pin9~Pin20,幾乎都是單功能定義引腳,軟件或者硬件工程師在...
單片機程序怎么寫占用資源少 單片機程序怎么寫占用資源少
單片機一般是用匯編語言編程,盡量減少代碼的數量是一個高級程序設計者所追求的。單片機編程中,第一部分一般是初始化,這段程序一點也少不了多少。以后的部分基本上是功能性的,所以在部分應該是結構化、模塊化的編程可以實現程序代碼最少,而且由于采用結...
單片機總是學不會怎么辦 單片機總是學不會怎么辦
學會單片機的開發和應用其實并不難,關鍵是你的基礎知識夠不夠用。如果你是一個大三學生,已經有了數學、物理、電路的基本知識,就是自學單片機應該也能很快入門。如果你已經有了單片機原理的基礎知識,只是沒有實踐經驗,那就要從實際動手開始。因為光有理...
單片機能代替plc嗎 單片機能代替plc嗎
就個人經歷談談我的看法吧,僅供參考。 07研究生期間,我當時研究方向是嵌入式,但因為老板的軍工項目接觸了PLC。項目是在國家的一個研究所后來改制成有限責任公司進行,目前應該是行業內非常大的一家企業了。一開始接觸項目時,我發現是個大工程,涉及兩臺...
信誉搏彩平台