單片機以太網(wǎng)控制芯片W7100A數(shù)據(jù)手冊(二)
4. I/O端口
根據(jù)SFR寄存器的設(shè)置,W7100A的GPIO有三種模式:’上拉’,’下拉’和’保持’。
‘Keep’模式通過同時設(shè)置上拉和下拉寄存器來實現(xiàn)。
GPIO在’Keep’工作模式下保持之前的值。
I/O口的功能描述如下表。
表4.1 I/O口引腳功能
對I/O端口的讀寫操作都是通過對應(yīng)的特殊功能寄存器(SFR的P0(0x80),P1(0x90),P2(0xA0),P3(0xB0))來實現(xiàn)的。有些讀端口指令從寄存器讀取數(shù)據(jù),而有些從端口引腳讀取數(shù)據(jù)。”讀-修改-寫”指令是直接操作寄存器,如下表所示。
表4.2 讀-修改-寫指令
所有其它讀端口的指令都是讀端口引腳。所有端口引腳都可以作為GPIO(通用輸入/輸出)。W7100A的GPIO如下圖所示。GPIO的輸出驅(qū)動根據(jù)Px的上拉或下拉SFR的值應(yīng)該是0V或3.3V
P0_PD(0xE3):GPIO0下拉電阻寄存器, 相應(yīng)引腳為1表示下拉。
P0_PD(0xE3)
5. 定時器
W7100A包含兩個16位的定時器/計數(shù)器,Timer0和Timer1。在定時器模式,定時器寄存器以每12個時鐘周期的周期遞增。在計數(shù)器模式下,定時器寄存器在相對應(yīng)引腳(T0或T1)的下降沿遞增。輸入引腳在每一個CLK周期都采樣。
5.1 Timers0,1
5.1.1
Timer0,1的引腳功能描述如下,所有的引腳都是單向的。這些引腳沒有三態(tài)輸出和內(nèi)部信號。
表5.1 Timers0,1引腳描述
Timer0和Timer1與標準8051的定時器完全兼容。每一個定時器包括2個8位的寄存器:TH0(0x8C)和TL0(0x8A),TH1(0x8D)和TL1(0x8B)。定時器有四種工作模式,描述如下。
注意:
GATE – 選通控制
1: 當(dāng)GATEx引腳為高電平且TRx控制位為”1”時,Timer x 允許工作。
0: 當(dāng)TRx置”1”時,Timer x允許工作
CT – 定時器/計數(shù)器選擇位
1: 計數(shù)器模式,Timer x的時鐘源來自Tx引腳
0: 定時器模式,使用內(nèi)部時鐘
M1, M0 – 模式選擇位
TCON(0x88)
圖5.2 Timer0,1配置寄存器
注意:
TR0 - Timer0運行控制位
1: 使能
0: 禁止
TR1 - Timer 1運行控制位
1: 使能
0: 禁止
外部輸入引腳GATE0和GATE1可通過編程設(shè)置,實現(xiàn)脈沖寬度測量的功能。
5.1.1
與Timer0,1中斷相關(guān)的位如下。通過IE寄存器可以產(chǎn)生一個中斷,中斷優(yōu)先級可以通過IP寄存器進行配置。
IE(0xA8)
圖5.2 Timer0,1配置寄存器
注意:
TR0 - Timer0運行控制位
1: 使能
0: 禁止
TR1 - Timer 1運行控制位
1: 使能
0: 禁止
外部輸入引腳GATE0和GATE1可通過編程設(shè)置,實現(xiàn)脈沖寬度測量的功能。
5.1.2 中斷
與Timer0,1中斷相關(guān)的位如下。通過IE寄存器可以產(chǎn)生一個中斷,中斷優(yōu)先級可以通過IP寄存器進行配置。
評論