DAC框圖

- VDDA:模擬電源輸入
- VSSAL:模擬電源接地輸入
- Vref+:正模擬參考電壓輸入
——————————————- DORx:輸入數字寄存器
- DAC_OUT:模擬輸出通道
- DAC_OUT1 ->PA4
- DAC_OUT2 ->PA5
DAC概述
- 12位數字輸入,電壓輸出
- 2種模式
- 12位模式:此時數據可以設置成左對齊或右對齊
- 8位模式
- 2個DAC
- 每個DAC轉換器對應一個通道
- 可以獨立轉換
- 也可以同時進行轉換,並同步地更新2個通道的輸出
寄存器
| 簡稱 | 全稱 |
|---|---|
| DAC_CR | DAC control register |
| DAC_SWTRIGER | DAC software trigger register |
| DAC_DHR12R1 | DAC channel1 12-bit right-aligned data holding register |
| DAC_DHRx | DAC channelx data holding register |
過程
- 軟件將數據加載到DAC_DHRx寄存器
- 寫入的數據將移位並存儲到相應的 DHRx(數據保 持寄存器 x,即內部非存儲器映射寄存器)
- 根據是否選擇硬件觸發,DHRx 寄存器將被自動加載,或者通過軟件或外部事件觸發加載到
- DORx 寄存器的數據在 t SETTLING 時間后給模擬輸出電壓
時序:
- 如果未選擇硬件觸發:
- (DAC_CR 寄存器中的 TENx 位復位)
- 經過一個 APB1 時鍾周期后, DAC_DHRx寄存器中存儲的數據將自動轉移到 DAC_DORx 寄存器。
- 如果選擇硬件觸發
- (置位 DAC_CR 寄存器中的 TENx位)且觸發條件到來
- 將在三個 APB1 時鍾 周期后進行轉移。
- 當 DAC_DORx 加載了 DAC_DHRx內容時,模擬輸出電壓將在一段時間 t SETTLING 后可用,具體時間取決於電源電壓和模擬輸出負載。

數據保持寄存器
對於 DAC 單通道 x,有三種可能的方式:
- 8 位右對齊:軟件必須將數據加載到 DAC_DHR8Rx [7:0] 位(存儲到 DHRx[11:4] 位)。
- 12 位左對齊:軟件必須將數據加載到 DAC_DHR12Lx [15:4] 位(存儲到 DHRx[11:0] 位)。
- 12 位右對齊:軟件必須將數據加載到 DAC_DHR12Rx [11:0] 位(存儲到 DHRx[11:0] 位)。
DAC 輸出電壓
經過線性轉換后,數字輸入會轉換為 0 到 VREF+ 之間的輸出電壓。
各 DAC 通道引腳的模擬輸出電壓通過以下公式確定:

