達(dá)拉斯半導(dǎo)體DS87C550 EPROM高速微控制器具有A/D和PWM功能,是廣受歡迎的87C552微控制器的增強(qiáng)版本。它是 8051C87 的 552 直接替代品,通過執(zhí)行具有四個時鐘周期的代碼來提高性能。本應(yīng)用筆記描述了在舊版8032設(shè)計中集成軟件環(huán)路、上電復(fù)位和存儲器接口時序時與該處理器相關(guān)的問題。
介紹
DS87C550高速微控制器具有模數(shù)和PWM,設(shè)計與許多8051衍生產(chǎn)品高度兼容。它采用與 87C552 相同的引腳排列和基本資源設(shè)計,但顯著增強(qiáng)了性能能力和大量額外資源。由于指令集和引腳排列是相同的,因此在許多情況下允許將其用作該設(shè)備的直接替代品。但是,在這樣做時,必須考慮一些問題。本應(yīng)用筆記討論了這些問題。
處理器速度
DS87C550與100指令集8051%兼容,指令的執(zhí)行也得到了簡化,提高了性能。以前需要 12 個時鐘才能完成的單字節(jié)指令現(xiàn)在在 4 個時鐘中執(zhí)行。此外,DS87C550可以接受高達(dá)33 MHz的時鐘速度,而在某些版本的8032中,最大時鐘速度為12 MHz。由于DS87C550具有更高的性能,在評估DS8051C<>作為傳統(tǒng)<>微控制器的替代品時,必須考慮與速度相關(guān)的問題。
存儲器接口時序
對于相同頻率的晶體,DS87C550縮短指令執(zhí)行時間,可加快外部存儲器訪問時間。例如,8032的數(shù)據(jù)手冊規(guī)定,當(dāng)使用12 MHz晶體時,程序存儲器的地址訪問時間必須為302 ns或更短(忽略任何地址鎖存開銷)。同樣使用87 MHz晶體的DS550C12需要地址訪問時間更短230 ns的存儲器。由于當(dāng)今大多數(shù)可用的存儲器都提供更快的訪問時間,因此這不太可能是一個重要的設(shè)計考慮因素。
軟件循環(huán)
另一個與速度相關(guān)的問題是軟件計時的使用。通常情況下,軟件編寫者將使用處理器假定的恒定執(zhí)行速度作為實時參考。通常需要已知數(shù)量的時鐘才能執(zhí)行的緊密循環(huán)將用于生成延遲。由于DS87C550執(zhí)行指令的速度比標(biāo)準(zhǔn)8032快得多,這些先前設(shè)計的定時環(huán)路將不再產(chǎn)生最初預(yù)期的結(jié)果。雖然通常不鼓勵使用軟件定時環(huán)路,但實際上它們在嵌入式應(yīng)用程序中使用得相當(dāng)頻繁。DS87C550的設(shè)計使內(nèi)部定時器默認(rèn)為與8032定時器完全相同的狀態(tài)。如果編寫應(yīng)用程序代碼以使用這些計時器而不是軟件延遲,則代碼將按原始預(yù)期運行。
中斷
與其他8051衍生產(chǎn)品相比,為了適應(yīng)高速微控制器系列的擴(kuò)展功能,需要對中斷矢量地址圖進(jìn)行輕微重組,如下表所示。
中斷名稱 | 中斷說明 | 矢量地址 | ||
DS87C550 | D7C552 | DS80C320 | ||
INT0-bar | 外部中斷 0 | 03小時 | 03小時 | 03小時 |
SCON1 | 串行端口 1 | 0Bh | - | 3Bh |
A/D | 模數(shù)轉(zhuǎn)換器 | 13小時 | 53小時 | - |
TF0 | 定時器 0 | 1Bh | 0Bh | 0Bh |
INT2/CF0 | 外部中斷 2 或捕獲 0 | 23小時 | 33小時 | 43小時 |
CM0F | 比較匹配 0 | 2Bh | 5Bh | - |
PFI | 電源故障中斷 | 33小時 | - | 33小時 |
INT1-bar | 外部中斷 1 | 3Bh | 13小時 | 13小時 |
INT3-bar/CF1 | 外部中斷 3 或捕獲 1 | 43小時 | - | 4Bh |
CM1F | 比較匹配 1 | 4Bh | 63小時 | - |
TF1 | 定時器 1 | 53小時 | 1Bh | 1Bh |
INT4/CF2 | 外部中斷 2 或捕獲 2 | 5Bh | - | 53小時 |
CM2F | 比較匹配 2 | 63小時 | 6Bh | - |
SCON0 | 串口 0 | 6Bh | 23小時 | 23小時 |
INT5 棒/CF3 | 外部中斷 5 或捕獲 3 | 73小時 | - | 5Bh |
TF2 | 定時器 2 | 7Bh | 73小時 | 2Bh |
DS87C550集成電路,產(chǎn)生自己的上電復(fù)位功能。這消除了與外部元件相關(guān)的成本和電路板空間。雖然RST引腳仍可能連接到外部復(fù)位發(fā)生電路,但這種內(nèi)部特性允許選擇移除外部元件以降低成本。盡管這些特性設(shè)計為在不需要時是透明的,但在少數(shù)情況下,內(nèi)部電源故障復(fù)位功能可能會以不希望的方式與現(xiàn)有設(shè)計交互。其中一種情況可能是,如果設(shè)計要求復(fù)位電壓處于特定點或存在特定持續(xù)時間。另一種情況可能是依賴電池備份的RAM進(jìn)行數(shù)據(jù)存儲。如果RAM包含自己的電壓檢測電路,并且在DS87C550離開復(fù)位(4.0 V)的相同電壓下沒有失去保護(hù),則處理器可能會錯誤地訪問受保護(hù)的RAM。雖然這些情況并不常見,但它們?nèi)匀皇敲總€特定應(yīng)用需要考慮的問題。
功耗
DS87C550除了是性能更高的器件外,在考慮等效工作時,也是比8032功耗更低的器件。所有CMOS器件都表現(xiàn)出這樣的特性:隨著速度的提高,它們消耗更多的功率。由于DS87C550是性能更高的器件,在給定的晶體頻率下,它會消耗更多的功率。但是,如果考慮等量的工作量,則其消耗的功率略低于傳統(tǒng)的8032。這種功耗差異可能只對電池供電應(yīng)用很重要,在這種情況下,停止模式電源可能是一個重要的考慮因素。
特殊功能寄存器更改
DS87C550的特殊功能寄存器(SFR)圖與8051系列的其他成員略有不同,以適應(yīng)新的功能集。下表突出顯示了87C550或DS87C552/80上具有不同功能的DS320C8051 SFR位置。使用專為DS87C550設(shè)計的匯編器/編譯器頭文件,將消除移植8051系列其他成員軟件時的混淆。
Address | DS87C550 | 87C552 | DS80C320 | Notes |
86h | DPS | - | DPS | DS87C550 has new bits. |
87h | PCON | PCON | PCON | DS87C550 has new bits. |
90h | P1 | P1 | P1 | DS87C550 alternate pin functions changed |
91h | RCON | - | EXIF | |
9Fh | PMR | - | - | |
A1h | SADDR0 | - | - | |
A2h | SADDR1 | - | - | |
A9h | CMPL0 | CML0 | SADDR0 | |
AAh | CMPL1 | CML1 | SADDR1 | |
B8h | IP | IP0 | IP | DS87C550 adds PAD bit |
BEh | T2CON | - | - | |
BFh | T2MOD | - | - | |
C0h | P4 | - | SCON1 | |
C1h | - | - | SBUF1 | |
C4h | P5 | P5 | PMR | |
C8h | T2IR | TM2IR | T2CON | |
C9h | CMPH0 | CMH0 | T2MOD | |
CAh | CMPH1 | CMH1 | RCAP2L | |
CBh | CMPH2 | CMH2 | RCAP2H | |
CCh | CPTH0 | CTH0 | TL2 | |
CDh | CPTH1 | CTH1 | TH2 | |
D8h | SCON1 | S1CON | WDCON | |
D9h | SBUF1 | S1STA | - | |
ECh | TL2 | TML2 | - | |
EDh | TH2 | TMH2 | - | |
FFh | WDCON | T3 | - |
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7467瀏覽量
150881 -
PWM
+關(guān)注
關(guān)注
114文章
5121瀏覽量
213220
發(fā)布評論請先 登錄
相關(guān)推薦
評論