<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 高速單片機W77E58的特點(diǎn)及應用

高速單片機W77E58的特點(diǎn)及應用

作者: 時(shí)間:2012-02-07 來(lái)源:網(wǎng)絡(luò ) 收藏

一、前言

本文引用地址:http://dyxdggzs.com/article/172171.htm

隨著(zhù)電子技術(shù)的發(fā)展,的功能日益強大,集成度日益提高,運行速度也越來(lái)越快。過(guò)去,需要擴展幾片外圍芯片才能實(shí)現的功能現在完全可以由自己去實(shí)現,本文介紹的就是這樣一種具有許多功能的。

是臺灣華邦公司生產(chǎn)的與MCS51系列單片機兼容的可多次編程的快速微處理 器,在它內部集成有32K的可重復編程的flash ROM、256字節的片內存儲器、1K的 用MOVX指令訪(fǎng)問(wèn)的SRAM、可編程的看門(mén)狗定時(shí)器、3個(gè)16位定時(shí)器、2個(gè)增強型的全雙工串行口、片內RC振蕩器、雙16位數據指針等諸多功能。在很多場(chǎng)合,幾乎不用擴展外圍芯片就能夠滿(mǎn)足系統要求,而且,由于它采用了全新設計的微處理器內核,去除多余的時(shí)鐘和存儲周期,因此,在相同的晶振頻率下,根據不同的指令類(lèi)型,其運行速度一般比傳統8051系列快1.5到3倍,一般情況下,平均可達 2.5倍以上。另外,由于采用全靜態(tài)CMOS設計,能工作在低速晶振頻率下,因此,和普通的8051相比,若W77E58采用低速工作頻率,在相同的指令吞吐量下,W77E58的節電性能也將大大提高。

二、W77E58的及功能

1. 兼容性

77E58的指令功能完全兼容于80C52(包括對狀態(tài)位和標志位的影響),只有一點(diǎn)不同的就是在普通80C52的指令系統中,沒(méi)有操作指令(op-code)A5H,而在W77 E58的指令系統中,增加了一條指令DEC DPTR(數據指針DPTR減一),其操作指令 (op-code)為A5H。而且,W77E58也具有80C52的全部資源和功能,包括4個(gè)8位I /O口,3個(gè)16位定時(shí)器,全雙工串口,中斷源等。W77E58的增加的新功能都是用普通8052所保留的特殊功能寄存器實(shí)現的,不與普通80C52的資源產(chǎn)生任何沖突,因此,W77E58可以直接用在已設計好的80C52系統中使用,而為原有系統編寫(xiě)的程 序幾乎不做任何改動(dòng),系統就可正常工作,需要注意的只是由于新的內核所造成的指令執行時(shí)間的改變及訪(fǎng)問(wèn)外部存儲器的讀寫(xiě)速度的限制。W77E58的封裝也完全兼容于80C52,它所增加的與硬件有關(guān)的功能都是復用80C52的P1口,并且 W77E58 的44pin PLCC/QFP封裝比普通的8051多一組4位的I/O口。

2.

77E58的外部工作時(shí)鐘頻率可達40MHz,而且,由于W77E58采用了重新設計的微處理器內核,去除了多余的時(shí)鐘和存儲周期,運行速度大大提高,這不僅僅是運行 晶振頻率的提高,而是將普通8051的每個(gè)機器周期(machine cycle)包含12個(gè) 時(shí)鐘周期(clock period)縮減到每個(gè)機器周期包含4個(gè)時(shí)鐘周期,這樣,即使在相同的時(shí)鐘頻率下,根據不同的指令類(lèi)型,其運行速度一般比傳統8051提高1. 5到3倍。因此,若程序中需要軟件定時(shí),其執行時(shí)間須根據W77E58的指令的執行時(shí)間應重新計算,一般情況下,每一個(gè)機器周期有一次取指(包括操作碼和操作數)操作,由于在W77E58的256個(gè)操作碼指令中,有128個(gè)是單字節指令,因此,W77E58的指令有一半的執行時(shí)間只須一個(gè)機器周期,即4個(gè)時(shí)鐘周期。圖1以單周期指令為例說(shuō)明了W77E58的指令的時(shí)序關(guān)系。

3. 中斷源

77E58除了具有80C52的6個(gè)中斷源外,又另外增加了6個(gè)中斷源,共有12個(gè)可定義兩種優(yōu)先級的中斷源,每個(gè)中斷源都有獨立的中斷使能位、中斷優(yōu)先權位、中斷 標志位和中斷向量。但是,為了同80C32兼容,所有新增加的中斷的優(yōu)先級都在 原有中斷的優(yōu)先級之后,其中斷優(yōu)先級及中斷向量如下表1所示,除了同80C32有相同的兩個(gè)外部中斷INT0和INT1外,W77E58又增加了4個(gè)外部中斷INT2、INT3、I NT4、INT5。同80C32一樣,外部中斷INT0和INT1有邊沿觸發(fā)和電平觸發(fā)兩種觸發(fā)方式,當中斷被響應后,其中斷標志位由硬件自動(dòng)清除;而外部中斷INT2到INT5 只有邊沿觸發(fā)方式,其中斷標志位可被獨立設為由硬件或軟件清除,缺省設置為 由軟件清除,當然,用戶(hù)可根據需要通過(guò)修改相對應的特殊寄存器,將外部中斷 INT2到INT5設為由硬件清除中斷標志位。

7.jpg

4. 兩個(gè)增強全雙工串口

和80C32相比,W77E58除了具有同80C32一樣的全雙工串口外,W77E58又增加了一個(gè)全雙工串口,其外部引腳RXD1、TXD1和P1.2、P1.3復用。然而,這兩個(gè)串口除了具有同原有80C32的串口相同的功能外,又增加了兩個(gè)增強型的,即多機通訊自動(dòng)地址識別和幀錯誤檢測功能,但是需要注意的是,這兩個(gè)串口也有一點(diǎn)細微的差別,那就是串口0(原有保留串口)可以用定時(shí)器0和定時(shí)器1作為波特率發(fā)生器,而串口1只能使用定時(shí)器1作為波特率發(fā)生器。

(1) 自動(dòng)幀錯誤檢測

自動(dòng)幀錯誤檢測指的是在數據傳輸的過(guò)程中,如果由于噪音等隨機干擾造成接收方接收不到正確的停止位,W77E58能夠自動(dòng)檢測出并設置標志FE(FE_1),此標 志被定位在SCON.7(SCON1.7),用戶(hù)可以訪(fǎng)問(wèn),并且必須軟件清除。

8.jpg

(2) 多機通訊自動(dòng)地址識別

在標準的8051系列單片機中,當進(jìn)行多機通訊時(shí),發(fā)送9位數據,最后一位只當作地址/數據識別位,但是并不能區分準確地址,準確地址須靠軟件識別,而在W77 E58中,增加了地址特殊寄存器SADDR和地址屏蔽特殊寄存器SADEN,只有SADEN中的某一位為1,計算實(shí)際地址時(shí)相對應的SADDR的位才有效,若SADEN中某一位是0 ,則進(jìn)行實(shí)際地址計算時(shí)忽略對應的SADDR中的位。例如:
SADDR:10100100
SADEN:11111010  
實(shí)際地址:10101X1X

在進(jìn)行多機通訊時(shí),只有接收到的地址幀和根據SADDR、SADEN計算出的地址完全 相同時(shí),從機才會(huì )置位中斷標志,這完全由硬件自動(dòng)完成,而不是象標準8051系 列那樣必須靠軟件完成。

5. 可軟件編程的訪(fǎng)問(wèn)外部存儲器的存取速度

標準的8051在執行MOVX指令訪(fǎng)問(wèn)外部存儲器時(shí),執行時(shí)間固定為2個(gè)機器周期,而 W77E58可根據外部存儲器的響應速度來(lái)選擇執行MOVX指令時(shí)存取速度,這可以通 過(guò)選擇特殊寄存器CKCON(clock control)的MD0-MD2的值來(lái)實(shí)現,特殊寄存器C KCON各位說(shuō)明見(jiàn)表2,MD0-MD2的取值與外部存儲器訪(fǎng)問(wèn)周期的關(guān)系見(jiàn)表3。

6. 內存

在W77E58中,有32KB的可多次編程(Multiple-Time Programmable)flash ROM, 256字節的片內RAM,1KB的片內用MOVX指令訪(fǎng)問(wèn)的SRAM,這在大多情況下,足以滿(mǎn)足用戶(hù)要求。

7. 可編程看門(mén)狗定時(shí)器(Watchdog Timer)

在W77E58中,集成了一個(gè)用戶(hù)可編程的看門(mén)狗定時(shí)器,溢出時(shí)間選擇如表4所示,在軟件編程中,用戶(hù)可以隨時(shí)復位看門(mén)狗定時(shí)器。若程序跑飛,看門(mén)狗定時(shí)器溢出,則看門(mén)狗定時(shí)器自動(dòng)設定中斷標志,在512個(gè)時(shí)鐘周期后,產(chǎn)生硬件復位,并保留2個(gè)機器周期后,程序恢復到地址0000H處開(kāi)始執行。

9.jpg

10.jpg


8. 雙16位數據指針(Dual 16-bit Data Pointers)

W77E58提供有兩組數據數據指針DPTR和DPTR1,另外還增加了一條附加的指令DEC DPTR,在處理連續的一片內存空間時(shí),可大大提高代碼效率。用戶(hù)可以通過(guò)DPS (DATA POINTER SELECT)位標志來(lái)選擇使用DPTR或DPTR1,DPS是特殊寄存器DPS (86H)的最低位(LSB),當DPS為0時(shí),選擇DPTR,當DPS為1時(shí),選擇DPTR1。下面以數據塊傳輸來(lái)比較一下使用雙數據指針時(shí)的優(yōu)越性。

SH和SL為源數據區高位地址和地位地址;

DH和DL為目的數據區高位地址和地位地址;

CNT為傳送數據的字節數。

W77E58還有對某些重點(diǎn)標志位修改時(shí)的限時(shí)存取保護功能、定時(shí)器定時(shí)記數時(shí)按照4分頻(W77E58的機器周期)或12分頻(標準8051系列的機器周期)的選擇功能、使用片內RC振蕩器或片外晶體振蕩器的選擇功能、節電工作方式的電源管理功能等諸多優(yōu)點(diǎn),由于篇幅有限,不再贅述。

三、前景

通過(guò)以上和功能的介紹可以看出,W77E58確實(shí)是一個(gè)非常難得的、功能強大的微處理器產(chǎn)品,尤其特別適合于對存儲器資源有一定要求和對軟件運行速度有特別要求的場(chǎng)合。由于它與國內目前使用最廣泛的8051系列產(chǎn)品兼容,用戶(hù)使用時(shí)不必重新花時(shí)間去學(xué)習其指令系統,前期也不必在開(kāi)發(fā)仿真裝置上重新投資,就可利用原有開(kāi)發(fā)仿真裝置對其大部分功能進(jìn)行直接仿真開(kāi)發(fā),有些功能進(jìn)行間接開(kāi)發(fā),比如第二串口,可先利用第一串口進(jìn)行調試,最后將程序移植即可。在需要提高原有設計系統的運行速度時(shí),除了需要修改有關(guān)靠軟件定時(shí)的指令,其它幾乎不用做任何修改,就可直接替換8051系列使用。在對其新增功能進(jìn)行軟件開(kāi)發(fā)設計時(shí),只須在匯編軟件的REG52.INC中加入新增特殊功能寄存器的定義,就可利用原匯編調試軟件對為W77E58寫(xiě)的軟件進(jìn)行調試。因此,W77E58的出現給系 統的開(kāi)發(fā)設計提供了更廣闊的前景。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>