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