AFE20408 有一個 FLEXIO 引腳可單獨配置為 GPIO 或特殊功能引腳。FLEXIO 引腳執行的功能取決于寫入 GEN_CFG_1 寄存器(位于寄存器映射的通用配置頁面)的 FLEXIO_FUNC 字段的值。
在 AFE20408 上,FLEXIO 引腳執行以下功能。要在任何 DAC 上啟用 FLEXIO 特殊功能,必須設置 FLEXIO_EN 寄存器(位于 DAC 配置寄存器頁面)中的相應位。
- RESET:當 FLEXIO_FUNC 為 0x01 時,FLEXIO 引腳用作低電平有效外部復位引腳。這是 FLEXIO 引腳的默認功能
- ALARMOUT:當 FLEXIO_FUNC 設置為 0x02 時,FLEXIO 引腳用作低電平有效警報輸出。ALARMOUT 引腳默認為低電平有效推挽輸出,但有效電平和驅動類型都可以通過向 FLEXIO_OUT_POL 和 FLEXIO_OUT_ODE 位寫入所需的值來進行配置;另請參閱節 7.2.1.4。ALARMOUT_SRC 寄存器(通用配置寄存器頁面中的地址 0x48 和 0x49)用于配置會將引腳置為有效的警報;另請參閱節 7.2。
- GPIO:當 FLEXIO_FUNC 設置為 0x04 時,FLEXIO 引腳用作 GPIO 引腳。GPIO 在寫入操作期間用作輸出,在讀取操作期間用作輸入。當 GPIO 引腳用作輸出時,可以向 GPIO_DATA 寄存器(位于全局寄存器映射中)的 GPIO 位寫入所需的值來設置引腳狀態。與 ALARMOUT 功能一樣,GPIO 輸出默認為低電平有效推挽輸出,但可以通過向 FLEXIO_OUT_POL 和 FLEXIO_OUT_ODE 位寫入所需的值來配置有效電平和驅動類型。當 GPIO 引腳用作輸入時,通過讀取 GPIO_DATA 寄存器地址來獲取該引腳上的數字值。在上電復位或任何強制復位后,所有 GPIO_DATA 位都復位為 1。
- LDAC:當 FLEXIO_FUNC 設置為 0x08 時,FLEXIO 引腳將用作 DAC 輸出 DACA0 和 DACA2 的觸發輸入。具體而言,當這些 DAC 配置為在同步模式下運行時,這些 DAC 的有效數據寄存器僅在引腳拉至邏輯 0 后才會更新。
- ALARMIN:當 FLEXIO_FUNC 設置為 0x10 時,FLEXIO 引腳用作低電平有效警報輸入引腳。在 AFE20408 上,ALARMIN 輸入可以通過設置 DAC_APD_SRC 和 OUT_APD_SRC 寄存器(位于 DAC 配置寄存器頁面)中的相應位來觸發 DAC 自動斷電和 OUT 引腳自動斷電事件。
- DRVEN:當 FLEXIO_FUNC 設置為 0x20 時,除了器件上現有的 DRVEN0 和 DRVEN1 引腳外,FLEXIO 引腳還充當額外的開關控制輸入 DRVEN2。通過向 FLEXIO_EN 寄存器(位于 DAC 配置寄存器映射中)中的相應位寫入所需的值,可以在任何所需的 DAC 上啟用 DRVEN2 控制。