ZHCSP02B November 2022 – May 2025 TCAL9538
PRODUCTION DATA
輸入端口寄存器(寄存器 0)反映引腳的輸入邏輯電平,無論配置寄存器將引腳定義為輸入還是輸出。輸入端口寄存器為只讀。寫入此寄存器時將不起作用。默認值 (X) 由外部應(yīng)用的邏輯電平?jīng)Q定。在執(zhí)行讀取操作之前,系統(tǒng)將連同命令字節(jié)發(fā)送寫入傳輸,以指示 I2C 器件接下來將訪問輸入端口寄存器。
| 位 | I-7 | I-6 | I-5 | I-4 | I-3 | I-2 | I-1 | I-0 |
| 默認值 | X | X | X | X | X | X | X | X |
輸出端口寄存器(寄存器 1)顯示由配置寄存器定義為輸出的引腳的輸出邏輯電平。該寄存器中的位值對定義為輸入的引腳沒有影響。反過來,從該寄存器讀取的值反映了控制輸出選擇的觸發(fā)器中的值,而不是實際的引腳值。
| 位 | O-7 | O-6 | O-5 | O-4 | O-3 | O-2 | O-1 | O-0 |
| 默認值 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
極性反轉(zhuǎn)寄存器(寄存器 2)允許對配置寄存器定義為輸入的引腳進行極性反轉(zhuǎn)。如果對該寄存器中的某個位進行設(shè)置(寫入”1“),則相應(yīng)端口引腳的極性會反轉(zhuǎn)。如果該寄存器中的某個位被清除(寫入”0“),則相應(yīng)端口引腳的原始極性會保留。
| 位 | P-7 | P-6 | P-5 | P-4 | P-3 | P-2 | P-1 | P-0 |
| 默認值 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
配置寄存器(寄存器 3)配置 I/O 引腳的方向。如果該寄存器中的某個位設(shè)置為 1,則相應(yīng)端口引腳被啟用為具有高阻抗輸出驅(qū)動器的輸入。如果該寄存器中的某個位被清除為 0,則相應(yīng)端口引腳被啟用為輸出。
| 位 | C-7 | C-6 | C-5 | C-4 | C-3 | C-2 | C-1 | C-0 |
| 默認值 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
輸出驅(qū)動強度寄存器控制 P 端口 GPIO 緩沖器的輸出驅(qū)動電平。每個 GPIO 都可以通過兩個寄存器控制位獨立地配置為所需的輸出電流電平。例如,端口 P7 由寄存器 41(位 7 和 6)控制,端口 P6 由寄存器 41(位 5 和 4)控制,依此類推。GPIO 的輸出驅(qū)動電平編程為 00b = 0.25x 驅(qū)動強度、01b = 0.5x 驅(qū)動強度、10b = 0.75x 驅(qū)動強度或 11b = 1x,以實現(xiàn)全驅(qū)動強度能力。
| 位 | CC-3 | CC-3 | CC-2 | CC-2 | CC-1 | CC-1 | CC-0 | CC-0 |
| 默認值 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| 位 | CC-7 | CC-7 | CC-6 | CC-6 | CC-5 | CC-5 | CC-4 | CC-4 |
| 默認值 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
輸入鎖存寄存器啟用和禁用 P 端口 GPIO 引腳的輸入鎖存功能。該寄存器僅在引腳配置為輸入端口時有效。當(dāng)輸入鎖存寄存器位為 0 時,不鎖存相應(yīng)的輸入引腳狀態(tài)。相應(yīng)輸入引腳的狀態(tài)變化會產(chǎn)生中斷。讀取輸入寄存器會清除中斷。如果在讀取輸入端口寄存器之前輸入返回到其初始邏輯狀態(tài),則中斷被清除。
將輸入鎖存寄存器位設(shè)置為 1 時,會鎖存相應(yīng)的輸入引腳狀態(tài)。輸入狀態(tài)的變化會產(chǎn)生一個中斷,輸入邏輯值被加載到輸入端口寄存器(寄存器 0 和 1)的相應(yīng)位中。讀取輸入端口寄存器會清除中斷。但是,如果輸入引腳在讀取輸入端口寄存器之前返回其初始邏輯狀態(tài),則不會清除中斷,并且輸入端口寄存器的相應(yīng)位會保持引發(fā)中斷的邏輯值。
例如,如果 P4 輸入處于邏輯 0 狀態(tài),然后轉(zhuǎn)換為邏輯 1 狀態(tài),再返回邏輯 0 狀態(tài),則輸入端口寄存器將捕獲此更改并生成中斷(如果未屏蔽)。當(dāng)對輸入端口 0 寄存器執(zhí)行讀取操作時,假設(shè)沒有其他輸入發(fā)生變化,中斷將被清除,并且輸入端口寄存器的第 4 位將讀取“1”。輸入端口寄存器第 4 位的下一次讀取現(xiàn)在應(yīng)讀取“0”。
當(dāng)非鎖存輸入與鎖存輸入同時切換狀態(tài),然后返回其原始狀態(tài)時,中斷保持激活。輸入寄存器的讀取只反映了鎖存輸入狀態(tài)的變化,同時也清除了中斷。如果輸入鎖存寄存器從鎖存配置變?yōu)榉擎i存配置,并且輸入邏輯值恢復(fù)到其原始狀態(tài),中斷將被清除。
如果輸入引腳從鎖存輸入變?yōu)榉擎i存輸入,則從輸入端口寄存器讀取會反映當(dāng)前端口邏輯電平。如果輸入引腳從非鎖存輸入變?yōu)殒i存輸入,則從輸入寄存器讀取會反映鎖存邏輯電平。
| 位 | L-7 | L-6 | L-5 | L-4 | L-3 | L-2 | L-1 | L-0 |
| 默認值 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
上拉/下拉使能寄存器允許用戶啟用或禁用 GPIO 引腳上的上拉/下拉電阻器。將該位設(shè)置為邏輯 1 可以選擇上拉/下拉電阻器。將該位設(shè)置為邏輯 0 會斷開上拉/下拉電阻器與 GPIO 引腳的連接。當(dāng) GPIO 配置為輸出時,電阻器被禁用。使用上拉/下拉選擇寄存器選擇上拉或下拉電阻器。
| 位 | PE-7 | PE-6 | PE-5 | PE-4 | PE-3 | PE-2 | PE-1 | PE-0 |
| 默認值 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
上拉/下拉選擇寄存器允許用戶通過編程相應(yīng)的寄存器位來配置每個 GPIO,以具有上拉或下拉電阻器。將某個位設(shè)置為邏輯 1 會為該 GPIO 引腳選擇一個 100kΩ 的上拉電阻器。將某個位設(shè)置為邏輯 0 會為該 GPIO 引腳選擇一個 100kΩ 的下拉電阻器。如果通過寄存器 43 禁用上拉/下拉功能,則寫入該寄存器對 GPIO 引腳沒有影響。
| 位 | PUD-7 | PUD-6 | PUD-5 | PUD-4 | PUD-3 | PUD-2 | PUD-1 | PUD-0 |
| 默認值 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
上電時,中斷屏蔽寄存器默認為邏輯 1,在系統(tǒng)啟動期間禁用中斷??梢酝ㄟ^將相應(yīng)的屏蔽位設(shè)置為邏輯 0 來啟用中斷。
如果輸入改變了狀態(tài),并且中斷屏蔽寄存器中的相應(yīng)位為 1,則屏蔽中斷并且不斷言中斷引腳。如果中斷屏蔽寄存器中的相應(yīng)位設(shè)置為 0,則中斷引腳被斷言。
當(dāng)輸入改變了狀態(tài),并且產(chǎn)生的中斷被屏蔽時,將中斷屏蔽寄存器位設(shè)置為 0 將導(dǎo)致中斷引腳被斷言。如果當(dāng)前已經(jīng)是中斷源的輸入的中斷屏蔽位設(shè)置為 1,則中斷引腳被解除斷言。
| 位 | M-7 | M-6 | M-5 | M-4 | M-3 | M-2 | M-1 | M-0 |
| 默認值 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
中斷狀態(tài)寄存器是一個只讀寄存器,用于識別中斷源。讀取時,邏輯 1 表示相應(yīng)的輸入引腳是中斷源。邏輯 0 表示輸入引腳不是中斷源。當(dāng)中斷屏蔽寄存器中的相應(yīng)位設(shè)置為 1(已屏蔽)時,中斷狀態(tài)位將返回邏輯 0。
| 位 | S-7 | S-6 | S-5 | S-4 | S-3 | S-2 | S-1 | S-0 |
| 默認值 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
輸出端口配置寄存器選擇按端口推挽或開漏 I/O 級。邏輯 0 會將 I/O 配置為推挽式(Q1 和 Q2 處于活動狀態(tài),請參閱圖 7-2)。邏輯 1 將 I/O 配置為開漏(Q1 被禁用,Q2 處于活動狀態(tài)),建議的命令序列是在配置寄存器 (03) 將端口引腳設(shè)置為輸出之前,對該寄存器 (4F) 進行編程。
| 位 | 保留 | ODEN-0 | ||||||
| 默認值 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |