日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

DM9000 寄存器的定义

發布時間:2025/5/22 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DM9000 寄存器的定义 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

DM9000(A)是一個全集成、功能強大、性價比高的快速以太網MAC控制器,它帶有一個通用處理器接口、EEPROM接口、10/100 PHY和16KB的SRAM(13KB作為接收FIFO,3KB作為發送FIFO)。它采用單電源供電,可兼容3.3V、5V的IO接口電平。

??? DM9000(A)同樣支持MII(Media Independent Interface 介質無關)接口,連接到HPNA(Home Phone-line Networking Alliance 家用電話網絡聯盟)設備上或其它支持MII的設備。

??? DM9000(A)包含一系列可被訪問的控制狀態寄存器,這些寄存器是字節對齊的,他們在硬件或軟件復位時被設置成初始值。

??? 以下為DM9000的寄存器功能詳解:

NCR (00H):網絡控制寄存器(Network Control Register )

7:EXT_PHY:1選擇外部PHY,0選擇內部PHY,不受軟件復位影響。

6:WAKEEN:事件喚醒使能,1使能,0禁止并清除事件喚醒狀態,不受軟件復位影響。

5:保留。

4:FCOL:1強制沖突模式,用于用戶測試。

3:FDX:全雙工模式。內部PHY模式下只讀,外部PHY下可讀寫。

2-1:LBK:回環模式(Loopback)00通常,01MAC內部回環,10內部PHY 100M模式數字回環,11保留。

0:RST:1軟件復位,10us后自動清零。

NSR (01H):網絡狀態寄存器(Network Status Register )

7:SPEED:媒介速度,在內部PHY模式下,0為100Mbps,1為10Mbps。當LINKST=0時,此位不用。

6:LINKST:連接狀態,在內部PHY模式下,0為連接失敗,1為已連接。

5:WAKEST:喚醒事件狀態。讀取或寫1將清零該位。不受軟件復位影響。

4:保留。

3:TX2END:TX(發送)數據包2完成標志,讀取或寫1將清零該位。數據包指針2傳輸完成。

2:TX2END:TX(發送)數據包1完成標志,讀取或寫1將清零該位。數據包指針1傳輸完成。

1:RXOV:RX(接收)FIFO(先進先出緩存)溢出標志。

0:保留。

TCR(02H):發送控制寄存器(TX Control Register)

7:保留。

6:TJDIS:Jabber傳輸使能。1使能Jabber傳輸定時器(2048字節),0禁止。

注釋:Jabber是一個有CRC錯誤的長幀(大于1518byte而小于6000byte)或是數據包重組錯誤。原因:它可能導致網絡丟包。多是由于 作站有硬件或軟件錯誤。

5:EXCECM:額外沖突模式控制。0當額外的沖突計數多于15則終止本次數據包,1始終嘗試發發送本次數據包。

4:PAD_DIS2:禁止為數據包指針2添加PAD。

3:CRC_DIS2:禁止為數據包指針2添加CRC校驗。

2:PAD_DIS2:禁止為數據包指針1添加PAD。

1:CRC_DIS2:禁止為數據包指針1添加CRC校驗。

0:TXREQ:TX(發送)請求。發送完成后自動清零該位。

TSR_I(03H):數據包指針1的發送狀態寄存器1(TX Status Register I)

7:TJTO:Jabber傳輸超時。該位置位表示由于多于2048字節數據被傳輸而導致數據幀被截掉。

6:LC:載波信號丟失。該位置位表示在幀傳輸時發生紅載波信號丟失。在內部回環模式下該位無效。

5:NC:無載波信號。該位置位表示在幀傳輸時無載波信號。在內部回環模式下該位無效。

4:LC:沖突延遲。該位置位表示在64字節的沖突窗口后又發生沖突。

3:COL:數據包沖突。該位置位表示傳輸過程中發生沖突。

2:EC:額外沖突。該位置位表示由于發生了第16次沖突(即額外沖突)后,傳送被終止。

1-0:保留。

TSR_II(04H):數據包指針2的發送狀態寄存器2(TX Status Register II)

同TSR_I

略。

RCR(05H):接收控制寄存器(RX Control Register )

7:保留。

6:WTDIS:看門狗定時器禁止。1禁止,0使能。

5:DIS_LONG:丟棄長數據包。1為丟棄數據包長度超過1522字節的數據包。

4:DIS_CRC:丟棄CRC校驗錯誤的數據包。

3:ALL:忽略所有多點傳送。

2:RUNT:忽略不完整的數據包。

1:PRMSC:混雜模式(Promiscuous Mode)

0:RXEN:接收使能。

RSR(06H):接收狀態寄存器(RX Status Register )

7:RF:不完整數據幀。該位置位表示接收到小于64字節的幀。

6:MF:多點傳送幀。該位置位表示接收到幀包含多點傳送地址。

5:LCS:沖突延遲。該位置位表示在幀接收過程中發生沖突延遲。

4:RWTO:接收看門狗定時溢出。該位置位表示接收到大于2048字節數據幀。

3:PLE:物理層錯誤。該位置位表示在幀接收過程中發生物理層錯誤。

2:AE:對齊錯誤(Alignment)。該位置位表示接收到的幀結尾處不是字節對齊,即不是以字節為邊界對齊。

1:CE:CRC校驗錯誤。該位置位表示接收到的幀CRC校驗錯誤。

0:FOE:接收FIFO緩存溢出。該位置位表示在幀接收時發生FIFO溢出。

ROCR(07H):接收溢出計數寄存器(Receive Overflow Counter Register)

7:RXFU:接收溢出計數器溢出。該位置位表示ROC(接收溢出計數器)發生溢出。

6-0:ROC:接收溢出計數器。該計數器為靜態計數器,指示FIFO溢出后,當前接收溢出包的個數。

BPTR(08H):背壓門限寄存器(Back Pressure Threshold Register)

7-4:BPHW:背壓門限最高值。當接收SRAM空閑空間低于該門限值,則MAC將產生一個擁擠狀態。1=1K字節。默認值為3H,即3K字節空閑空間。不要超過SRAM大小。

3-0:JPT:擁擠狀態時間。默認為200us。0000為5us,0001為10us,0010為15us,0011為25us,0100為50us,0101為100us,0110為150us,0111為200us,1000為250us,1001為300us,1010為350us,1011為400us,1100為450us,1101為500us,1110為550us,1111為600us。

FCTR(09H):溢出控制門限寄存器(Flow Control Threshold Register)

7-4:HWOT:接收FIFO緩存溢出門限最高值。當接收SRAM空閑空間小于該門限值,則發送一個暫停時間(pause_time)為FFFFH的暫停包。若該值為0,則無接收空閑空間。1=1K字節。默認值為3H,即3K字節空閑空間。不要超過SRAM大小。

3-0:LWOT:接收FIFO緩存溢出門限最低值。當接收SRAM空閑空間大于該門限值,則發送一個暫停時間(pause_time)為0000H的暫停包。當溢出門限最高值的暫停包發送之后,溢出門限最低值的暫停包才有效。默認值為8K字節。不要超過SRAM大小。

RTFCR(0AH):接收/發送溢出控制寄存器(RX/TX Flow Control Register)

7:TXP0:1發送暫停包。發送完成后自動清零,并設置TX暫停包時間為0000H。

6:TXPF:1發送暫停包。發送完成后自動清零,并設置TX暫停包時間為FFFFH。

5:TXPEN:強制發送暫停包使能。按溢出門限最高值使能發送暫停包。

4:BKPA:背壓模式。該模式僅在半雙工模式下有效。當接收SRAM超過BPHW并且接收新數據包時,產生一個擁擠狀態。

3:BKPM:背壓模式。該模式僅在半雙工模式下有效。當接收SRAM超過BPHW并數據包DA匹配時,產生一個擁擠狀態。

2:RXPS:接收暫停包狀態。只讀清零允許。

1:RXPCS:接收暫停包當前狀態。

0:FLCE:溢出控制使能。1設置使能溢出控制模式。

EPCR/PHY_CR(0BH):EEPROM和PHY控制寄存器(EEPROM & PHY Control Register)

7-6:保留。

5:REEP:重新加載EEPROM。驅動程序需要在該操作完成后清零該位。

4:WEP:EEPROM寫使能。

3:EPOS:EEPROM或PHY操作選擇位。0選擇EEPROM,1選擇PHY。

2:ERPRR:EEPROM讀,或PHY寄存器讀命令。驅動程序需要在該操作完成后清零該位。

1:ERPRW:EEPROM寫,或PHY寄存器寫命令。驅動程序需要在該操作完成后清零該位。

0:ERRE:EEPROM或PHY的訪問狀態。1表示EEPROM或PHY正在被訪問。

EPAR/PHY_AR(0CH):EEPROM或PHY地址寄存器(EEPROM & PHY Address Register)

7-6:PHY_ADR:PHY地址的低兩位(bit1,bit0),而PHY地址的bit[4:2]強制為000。如果要選擇內部PHY,那么此2位強制為01,實際應用中要強制為01。

5-0:EROA:EEPROM字地址或PHY寄存器地址。

EPDRL/PHY_DRL(0DH):EEPROM或PHY數據寄存器低半字節(EEPROM & PHY Low Byte Data Register)

7-0:EE_PHY_L

EPDRL/PHY_DRH(0EH):EEPROM或PHY數據寄存器高半字節(EEPROM & PHY High Byte Data Register)

7-0:EE_PHY_H

WUCR(0FH):喚醒控制寄存器(Wake Up Control Register)

7-6:保留。

5:LINKEN:1使能“連接狀態改變”喚醒事件。該位不受軟件復位影響。

4:SAMPLEEN:1使能“Sample幀”喚醒事件。該位不受軟件復位影響。

3:MAGICEN:1使能“Magic Packet”喚醒事件。該位不受軟件復位影響。

2:LINKST:1表示發生了連接改變事件和連接狀態改變事件。該位不受軟件復位影響。

1:SAMPLEST:1表示接收到“Sample幀”和發生了“Sample幀”事件。該位不受軟件復位影響。

0:MAGICST:1表示接收到“Magic Packet”和發生了“Magic Packet”事件。該位不受軟件復位影響。

PAR(10H -- 15H):物理地址(MAC)寄存器(Physical Address Register)

7-0:PAD0 -- PAD5:物理地址字節0 -- 字節5(10H -- 15H)。用來保存6個字節的MAC地址。

MAR(16H -- 1DH):多點發送地址寄存器(Multicast Address Register )

7-0:MAB0 -- MAB7:多點發送地址字節0 -- 字節7(16H --1DH)。

GPCR(1FH):GPIO控制寄存器(General Purpose Control Register)

7-4:保留。

3-0:GEP_CNTL:GPIO控制。定義GPIO的輸入輸出方向。1為輸出,0為輸入。GPIO0默認為輸出做POWER_DOWN功能。其它默認為輸入。因此默認值為0001。

GPR(1FH):GPIO寄存器(General Purpose Register)

7-4:保留。

3-1:GEPIO3-1:GPIO為輸出時,相關位控制對應GPIO端口狀態,GPIO為輸入時,相關位反映對應GPIO端口狀態。(類似于單片機對IO端口的控制)。

0:GEPIO0:功能同上。該位默認為輸出1到POWER_DEWN內部PHY。若希望啟用PHY,則驅動程序需要通過寫“0”將PWER_DOWN信號清零。該位默認值可通過EEPROM編程得到。參考EEPROM相關描述。

TRPAL(22H):發送SRAM讀指針地址低半字節(TX SRAM Read Pointer Address Low Byte)

7-0:TRPAL

TRPAH(23H):發送SRAM讀指針地址高半字節(TX SRAM Read Pointer Address High Byte )

7-0:TRPAH

RWPAL(24H):接收SRAM指針地址低半字節(RX SRAM Write Pointer Address Low Byte)

7-0:RWPAL

RWPAH(25H):接收SRAM指針地址高半字節(RX SRAM Write Pointer Address High Byte)

7-0:RWPAH

VID(28H -- 29H):生產廠家序列號(Vendor ID)

7-0:VIDL:低半字節(28H),只讀,默認46H。

7-0:VIDH:高半字節(29H),只讀,默認0AH。

PID(2AH --2BH):產品序列號(Product ID)

7-0:PIDL:低半字節(2AH),只讀,默認00H。

7-0:PIDH:高半字節(2BH),只讀,默認90H。

CHIPR(2CH):芯片修訂版本(CHIP Revision)

7-0:PIDH:只讀,默認00H。

TCR2(2DH):傳輸控制寄存器2(TX Control Register 2)

7:LED:LED模式。1設置LED引腳為模式1,0設置LED引腳為模式0或根據EEPROM的設定。

6:RLCP:1重新發送有沖突延遲的數據包。

5:DTU:1禁止重新發送“underruned”數據包。

4:ONEPM:單包模式。1發送完成前發送一個數據包的命令能被執行,0發送完成前發送兩個以上數據包的命令能被執行。

3-0:IFGS:幀間間隔設置。0XXX為96bit,1000為64bit,1001為72bit,1010為80bit,1011為88bit,1100為96bit,1101為104bit,1110為112bit,1111為120bit。

OCR(2EH):操作測試控制寄存器(Operation Control Register)

7-6:SCC:設置內部系統時鐘。00為50MHz,01為20MHz,10為100MHz,11保留。

5:保留。

4:SOE:內部SRAM輸出使能始終開啟。

3:SCS:內部SRAM片選始終開啟。

2-0:PHYOP:為測試用內部PHY操作模式。

SMCR(2FH):特殊模式控制寄存器(Special Mode Control Register)

7:SM_EN:特殊模式使能。

6-3:保留。

2:FLC:強制沖突延遲。

1:FB1:強制最長“Back-off”時間。

0:FB0:強制最短“Back-off”時間。

ETXCSR(30H):傳輸前(Early)控制、狀態寄存器(Early Transmit Control/Status Register)

7:ETE:傳輸前使能。

6:ETS2:傳輸前狀態2。

5:ETS1:傳輸前狀態1。

4-2:保留。

1-0:ETT:傳輸前門限。當寫到發送FIFO緩存里的數據字節數達到該門限,則開始傳輸。00為12.5%,01為25%,10為50%,11為75%。

TCSCR(31H):傳輸校驗和控制寄存器(Transmit Check Sum Control Register)

7-3:保留。

2:UDPCSE:UDP校驗和產生使能。

1:TCPCSE:TCP檢驗和產生使能。

0:IPCSE:IP校驗和產生使能。

RCSCSR(32H):接收校驗和控制狀態寄存器(Receive Check Sum Control Status Register )

7:UDPS:UDP校驗和狀態。1表示UDP數據包校驗失敗。

6:TCPS:TCP校驗和狀態。1表示TCP數據包校驗失敗。

5:IPS:IP校驗和狀態。1表示IP數據包校驗失敗。

4:UDPP:1表示UDP數據包。

3:TCPP:1表示TCP數據包。

2:IPP:1表示IP數據包。

1:RCSEN:接收檢驗和檢驗使能。1使能校驗和校驗,將校驗和狀態位(bit7-2)存儲到數據包的各自的報文頭的第一個字節。

0:DCSE:丟棄校驗和錯誤的數據包。1使能丟棄校驗和錯誤的數據包,若IP/TCP/UDP的校驗和域錯誤,則丟棄該數據包。

MRCMDX(F0H):存儲器地址不變的讀數據命令(Memory Data Pre-Fetch Read Command Without Address Increment Register)

7-0:MRCMDX:從接收SRAM中讀數據,讀取之后,指向內部SRAM的讀指針不變。

MRCMDX1(F1H):存儲器讀地址不變的讀數據命令(Memory Data Read Command With Address Increment Register

同上。

MRCMD(F2H):存儲器讀地址自動增加的讀數據命令(Memory Data Read Command With Address Increment Register)

7-0:MRCMD:從接收SRAM中讀數據,讀取之后,指向內部SRAM的讀指針自動增加1、2或4,根據處理器的操作模式而定(8位、16位或32位)。

MRRL(F4H):存儲器讀地址寄存器低半字節(Memory Data Read_ address Register Low Byte)

7-0:MDRAL

MRRH(F5H):存儲器讀地址寄存器高半字節Memory Data Read_ address Register High Byte

7-0:MDRAH:若IMR的bit7=1,則該寄存器設置為0CH。

MWCMDX(F6H):存儲器讀地址不變的讀數據命令(Memory Data Write Command Without Address Increment Register)

7-0:MWCMDX:寫數據到發送SRAM中,之后指向內部SRAM的寫地址指針不變。

MWCMD(F8H):存儲器讀地址自動增加的讀數據命令(Memory Data Write Command With Address Increment Register)

7-0:MWCMD:寫數據到發送SRAM中,之后指向內部SRAM的讀指針自動增加1、2或4,根據處理器的操作模式而定(8位、16位或32位)。

MWRL(FAH):存儲器寫地址寄存器低半字節(Memory Data Write_ address Register Low Byte)

7-0:MDRAL

MWRH(FBH):存儲器寫地址寄存器高半字節(Memory Data Write _ address Register High Byte)

7-0:MDRAH

TXPLL(FCH):發送數據包長度寄存器低半字節(TX Packet Length Low Byte Register)

7-0:TXPLL

TXPLH(FDH):發送數據包長度寄存器高半字節(TX Packet Length High Byte Register)

7-0:TXPLH

ISR(FEH):終端狀態寄存器(Interrupt Status Register)

7-6:IOMODE:處理器模式。00為16位模式,01為32位模式,10為8位模式,00保留。

5:LNKCHG:連接狀態改變。

4:UDRUN:傳輸“Underrun”

3:ROOS:接收溢出計數器溢出。

2:ROS:接收溢出。

1:PTS:數據包傳輸。

0:PRS:數據包接收。

ISR寄存器各狀態寫1清除

IMR(FFH):終端屏蔽寄存器(Interrupt Mask Register)

7:PAR:1使能指針自動跳回。當SRAM的讀、寫指針超過SRAM的大小時,指針自動跳回起始位置。需要驅動程序設置該位,若設置則REG_F5(MDRAH)將自動位0CH。

6:保留。

5:LNKCHGI:1使能連接狀態改變中斷。

4:UDRUNI:1使能傳輸“Underrun”中斷。

3:ROOI:1使能接收溢出計數器溢出中斷。

2:ROI:1使能接收溢出中斷。

1:PTI:1使能數據包傳輸終端。

0:PRI:1使能數據包接收中斷。

注釋:其中“藍色字體”表示在DM9000初始化中要用到的寄存器。

??? 訪問以上寄存器的方法是通過總線驅動的方式,即通過對IOR、IOW、AEN、CMD以及SD0--SD15等相關引腳的操作來實現。其中CMD引腳為高電平時為寫寄存器地址,為低電平時為寫數據到指定地址的寄存器中。詳細過程請參考數據手冊中“讀寫時序”部分。

??? 在DM9000(A)中,還有一些PHY寄存器,也稱之為介質無關接口MII寄存器,需要我們去訪問。這些寄存器是字對齊的,即16位寬。下面列出三個常用的PHY寄存器。

BMCR(00H):基本模式控制寄存器(Basic Mode Control Register)

15:reset:1PHY軟件復位,0正常操作。復位操作使PHY寄存器的值為默認值。復位操作完成后,該位自動清零。

14:loopback:1Loop-back使能,0正常操作。

13:speed selection:1為100Mbps,0為10Mbps。連接速度即可以根據該位選擇,也可以根據第12位,即自動協商選擇。當自動協商使能時,即第12位為1,該位將會返回自動協商后的速度值。

12:auto-negotiation enable:1自動協商使能。使得第13位和第8位的值反應自動協商后的狀態。

11:power down:POWER_DOWN模式。1為POWER_DOWN,0為正常操作。在POWER_DOWN狀態下,PHY應當響應操作處理。在轉變到POWER_DOWN狀態或已經運行在POWER_DOWN狀態下時,PHY不會在MII上產生虛假信號。

10:isolate:1除了一些操作外,PHY將從MII中隔離,0為正常操作。當該位置位,PHY不會響應TXD[3:0],TX_EN和TX_ER輸入,并且在TX_CLK,RX_CLK,RX_DV,RX_ER,RXD[3:0],COL和CRS輸出上為高阻態。當PHY被隔離,則它將響應操作處理。

9:restart auto-aegotiation:1重新初始化自動協商協議,0為正常操作。當第12位禁止該功能,則該位無效。初始化后該位自動清零。

8:duplex mode:1為全雙工操作,0為正常操作。當第12位被禁止(置0)時該位被置位,若第12位被置位,則該位反應自動協商后的狀態。

7:collision test:1為沖突測試使能,0為正常操作。若該位置位,聲明TX_EN將引起COL信號被聲明。

6-0:保留。

ANAR(04H):自動協商廣告寄存器(Auto-negotiation Advertisement Register)

15:NP:0表示無有效的下一頁,1表示下一頁有效。PHY沒有下一頁,所以該位始終為0。

14:ACK:1表示連接對象數據接收認證,0表示無認證。PHY的自動協商狀態機會自動控制該位。

13:RF:1表示本地設備處于錯誤狀態,0為無錯誤檢驗。

12-11:保留。

10:FCS:1表示處理器支持溢出控制能力,0表示不支持。

9:T4:1表示本地設備支持100BASE-T4,0表示不支持。PHY不支持100BASE-T4,所以該位永遠是0。

8:TX_FDX:1為本地設備支持100BASE-TX全雙工模式,0為不支持。

7:TX_HDX:1為本地設備支持100BASE-TX,0為不支持。

6:10_FDX:1為本地設備支持100BASE-T全雙工模式,0為不支持。

5:10_HDX:1為本地設備支持100BASE-T,0為不支持。

4-0:selecter:協議選擇位,00001為默認值,表示設備支持IEEE802.3CSMA/CD,不用修改。

DSCR(16H):DAVICOM詳細配置寄存器(DAVICOM Specified Configuration Register)

15:BP_4B5B:1為繞過4B5B編碼和5B4B解碼功能,0為正草4B5B和5B4B功能。

14:BP_SCR:1為繞過擾頻和解擾功能,0為正常操作。

13:BP_ALIGN:1為繞過接收時的解擾、符號隊列、解碼功能和發送時的符號編碼、擾頻功能,0正常操作。

12:BP_ADPOK:1為強制信號探測功能使能,0為正常操作。該位僅為調試使用

11:保留。

10:TX:1表示100BASE-TX操作,0保留。

9-8:保留。

7:F_LINK_100:0為正常100Mbps,1為強制100Mbps良好連接狀態。

6-5:保留,強制為0.

4:RPDCTR-EN:1為使能自動簡化POWER_DOWN,0為禁止。

3:SMRST:1為重新初始化PHY的狀態機,初始化后該位自動清零。

2:MFPSC:1表示MII幀引導抑制開啟,0表示關閉。

1:SLEEP:睡眠模式。該位置位將導致PHY進入睡眠模式,通過將該位清零喚醒睡眠模式,其中配置將還原為睡眠模式之前的狀態,但狀態機將重新初始化。

0:RLOUT:該位置位將使接收到的數據放入發送通道中。

??? 訪問PHY寄存器的方法是:

(1)寄存器地址寫到EPAR/PHY_AR(0CH)寄存器中,注意將寄存器地址的第6位置1(地址與0x40或運算即可),以表明寫的是PHY地址,而不是EEPROM地址。

(2)將數據高字節寫到PHY_DRH(0EH)寄存器中。

(3)將數據低字節寫到PHY_DRL(0DH)寄存器中。

(4)發送PHY命令(0x0a)到EPCR/PHY_CR(0BH)寄存器中。

(5)延時5us,發送命令0x08到EPCR/PHY_CR(0BH)寄存器中,清除PHY寫操作。

??? 以上為DM9000(A)常用寄存器功能的詳細介紹,通過對這些寄存器的操作訪問,我們便可以實現對DM9000的初始化、數據發送、接收等相關操作。而要實現ARP、IP、TCP等功能,則需要對相關協議的理解,由編寫相關協議或移植協議棧來實現。

轉載于:https://www.cnblogs.com/xmphoenix/archive/2011/05/16/2048071.html

總結

以上是生活随笔為你收集整理的DM9000 寄存器的定义的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。