摘要: 多种原因会促使我们把以前使用高速微控制器(DS80C310 / DS80C320 / DS80C323 / DS8xC520)的8051年设计升级到新的超高速闪存微控制器(DS89C430 / DS89C450)。促使产品升级的原因是:更高的性能、增值服务和外设以及灵活的内部闪存存储器。本应用笔记讨论了两个微控制器系列的重要差异,说明如何从高速升级到超高速器件。
马克西姆的高速微控制器系列包括多种不同的8051微控制器,与早期的8051每机器周期12个时钟相比,它们可以达到每机器周期4个时钟的更高速度。有些高速微控制器完全利用外部程序存储器,比如DS80C310;有些控制器包含内部EPROM或罗程序存储器,比如DS87C520 / DS83C520。这些高速器件都与现有的8051微控制器引脚兼容,所以在大部分情况下,更换一个快速器件并做很少的软件调整,就可以很容易升级设计。
通过同样的方式,超高速闪存微控制器可以替换高速微控制器设计进行升级。这些功能更强大的新型微控制器包括DS89C430 / DS89C450重要改进包括:扩展了内部程序闪存存储器(达到64 kb),重新设计的超高速微控制器核工作在单时钟周期指令,速度是早期8051年设计的12倍。
本应用笔记讨论如何从高速微控制器升级到超高速闪存器件,介绍在升级设计时必须考虑的函数集,引脚的变动以及SFR的差异。
下列器件的编程指南可以参考高速微控制器用户指南(PDF,只有英文)
ds80c310
ds80c320
ds80c323
ds83c520
ds87c520
下列器件的编程指南请参考超高速闪存微控制器用户指南(PDF,只有英文)
ds89c430
ds89c450
表1. 器件功能比较
功能 | DS80C310 | DS80C320 DS80C323 | DS87C520 DS83C520 | DS89C430 DS89C450 |
每机器周期时钟 | 4 | 4 | 4 | 1 |
工作电压范围(V) | 4.5 - 5.5 | 4.25 ~ 5.5 (DS80C320) 2.7至5.5 (DS80C323) | 4.5 - 5.5 | 4.5 - 5.5 |
时钟速率(MHz, max) | 33 | 33 (DS80C320) 18 (DS80C323) | 33 | 33 |
指令执行时间(ns, min) | 121 | 121 (DS80C320) 222 (DS80C323) | 121 | 30. |
水晶乘数 | √(x2或x4) | |||
环形振荡器 | √ | √ | √ | |
内部程序存储器 | 没有一个 | 没有一个 | 16 kb | 16 kb (DS89C430) 64 kb (DS89C450) |
内部寄存器内存(字节) | 256 | 256 | 256 | 256 |
内部MOVX存储器 | 没有一个 | 没有一个 | 1 kb | 1 kb |
串口(UARTs) | 1 | 2 | 2 | 2 |
外部中断 | 6 | 6 | 6 | 6 |
端口引脚(总线活动) | 16 | 16 | 16 | 16 |
端口引脚(最大) | 16 | 16 | 32 | 32 |
定时器/计数器 | 三/ 16位 | 三/ 16位 | 三/ 16位 | 三/ 16位 |
监管机构 | √ | √ | √ | |
双数据指针 | √ | √ | √ | √ |
递增/递减 | √ | |||
停止模式 | √ | √ | √ | √ |
接通电源的重置 | √ | √ | √ | √ |
掉电中断 | √ | √ | √ |
表2. 器件引脚的差异
浸 | PLCC | TQFP | DS80C310 | DS80C320 DS80C323 | DS87C520 DS83C520 | DS89C430 DS89C450 |
1 | 2 | 40 | P1.0 (T2) | P1.0 (T2) | P1.0 (T2) | P1.0 (T2) |
2 | 3. | 41 | P1.1 (T2EX) | P1.1 (T2EX) | P1.1 (T2EX) | P1.1 (T2EX) |
3. | 4 | 42 | P1.2 | P1.2 (RXD1) | P1.2 (RXD1) | P1.2 (RXD1) |
4 | 5 | 43 | P1.3 | P1.3 (TXD1) | P1.3 (TXD1) | P1.3 (TXD1) |
5 | 6 | 44 | P1.4 (INT2) | P1.4 (INT2) | P1.4 (INT2) | P1.4 (INT2) |
6 | 7 | 1 | P1.5 (nINT3) | P1.5 (nINT3) | P1.5 (nINT3) | P1.5 (nINT3) |
7 | 8 | 2 | P1.6 (INT4) | P1.6 (INT4) | P1.6 (INT4) | P1.6 (INT4) |
8 | 9 | 3. | P1.7 (nINT5) | P1.7 (nINT5) | P1.7 (nINT5) | P1.7 (nINT5) |
9 | 10 | 4 | RST | RST | RST | RST |
10 | 11 | 5 | P3.0 (RXD0) | P3.0 (RXD0) | P3.0 (RXD0) | P3.0 (RXD0) |
11 | 13 | 7 | P3.1 (TXD0) | P3.1 (TXD0) | P3.1 (TXD0) | P3.1 (TXD0) |
12 | 14 | 8 | P3.2 (nINT0) | P3.2 (nINT0) | P3.2 (nINT0) | P3.2 (nINT0) |
13 | 15 | 9 | P3.3 (nINT1) | P3.3 (nINT1) | P3.3 (nINT1) | P3.3 (nINT1) |
14 | 16 | 10 | P3.4 (T0) | P3.4 (T0) | P3.4 (T0) | P3.4 (T0) |
15 | 17 | 11 | P3.5 (T1) | P3.5 (T1) | P3.5 (T1) | P3.5 (T1) |
16 | 18 | 12 | P3.6 (nWR) | P3.6 (nWR) | P3.6 (nWR) | P3.6 (nWR) |
17 | 19 | 13 | P3.7(”) | P3.7(”) | P3.7(”) | P3.7(”) |
18 | 20. | 14 | XTAL2 | XTAL2 | XTAL2 | XTAL2 |
19 | 21 | 15 | XTAL1 | XTAL1 | XTAL1 | XTAL1 |
20. | 22、23 | 16、17 | 接地 | 接地 | 接地 | 接地 |
- | 1 | 39 | 接地 | N/C(可接地) | 接地 | 接地 |
21 | 24 | 18 | A8 (P2.0) | A8 (P2.0) | A8 (P2.0) | A8 (P2.0) |
22 | 25 | 19 | A9 (P2.1) | A9 (P2.1) | A9 (P2.1) | A9 (P2.1) |
23 | 26 | 20. | A10 (P2.2) | A10 (P2.2) | A10 (P2.2) | A10 (P2.2) |
24 | 27 | 21 | A11 (P2.3) | A11 (P2.3) | A11 (P2.3) | A11 (P2.3) |
25 | 28 | 22 | A12 (P2.4) | A12 (P2.4) | A12 (P2.4) | A12 (P2.4) |
26 | 29 | 23 | 首次购物(P2.5) | 首次购物(P2.5) | 首次购物(P2.5) | 首次购物(P2.5) |
27 | 30. | 24 | 阿(P2.6) | 阿(P2.6) | 阿(P2.6) | 阿(P2.6) |
28 | 31 | 25 | A15 (P2.7) | A15 (P2.7) | A15 (P2.7) | A15 (P2.7) |
29 | 32 | 26 | nPSEN | nPSEN | nPSEN | nPSEN |
30. | 33 | 27 | 啤酒 | 啤酒 | 啤酒 | 啤酒/ nPROG |
31 | 35 | 29 | 恩颐投资 | 恩颐投资 | 恩颐投资 | 恩颐投资 |
32 | 36 | 30. | AD7 | AD7 | AD7 (P0.7) | AD7 (P0.7) |
33 | 37 | 31 | AD6 | AD6 | AD6 (P0.6) | AD6 (P0.6) |
34 | 38 | 32 | AD5 | AD5 | AD5 (P0.5) | AD5 (P0.5) |
35 | 39 | 33 | AD4 | AD4 | AD4 (P0.4) | AD4 (P0.4) |
36 | 40 | 34 | AD3粉 | AD3粉 | AD3粉(P0.3) | AD3粉(P0.3) |
37 | 41 | 35 | AD2 | AD2 | AD2 (P0.2) | AD2 (P0.2) |
38 | 42 | 36 | AD1 | AD1 | AD1 (P0.1) | AD1 (P0.1) |
39 | 43 | 37 | AD0 | AD0 | AD0 (P0.0) | AD0 (P0.0) |
40 | 44 | 38 | V (CC) (+ 5 V) | V(cc) + 5v (ds80c320) V(cc) + 3v (ds80c323) | V (CC) (+ 5 V) | V (CC) (+ 5 V) |
- | 12 | 6 | N / C | N / C | N / C | V (CC) (+ 5 V) |
- | 34 | 28 | N / C | N / C | N / C | 接地 |
表3.
地址 | DS80C310 | DS80C320 DS80C323 | DS87C520 DS83C520 | DS89C430 DS89C450 |
80 h | - | - | P0 | P0 |
81 h | SP | SP | SP | SP |
82 h | DPL | DPL | DPL | DPL |
83 h | 衰变时 | 衰变时 | 衰变时 | 衰变时 |
84 h | DPL1 | DPL1 | DPL1 | DPL1 |
85 h | DPH1 | DPH1 | DPH1 | DPH1 |
86 h | DPS | DPS | DPS | DPS |
87 h | PCON | PCON | PCON | PCON |
88 h | TCON | TCON | TCON | TCON |
89 h | TMOD | TMOD | TMOD | TMOD |
8啊 | TL0 | TL0 | TL0 | TL0 |
8黑洞 | TL1 | TL1 | TL1 | TL1 |
8 ch | TH0 | TH0 | TH0 | TH0 |
8 dh | TH1 | TH1 | TH1 | TH1 |
8是吗 | CKCON | CKCON | CKCON | CKCON |
90 h | P1 | P1 | P1 | P1 |
91 h | EXIF | EXIF | EXIF | EXIF |
96 h | - | - | - | CKMOD |
98 h | SCON | SCON0 | SCON0 | SCON0 |
99 h | SBUF | SBUF0 | SBUF0 | SBUF0 |
9 dh | - | - | - | ACON |
A0h | P2 | P2 | P2 | P2 |
A8h | 即 | 即 | 即 | 即 |
A9h | SADDR0 | SADDR0 | SADDR0 | SADDR0 |
啊 | - | SADDR1 | SADDR1 | SADDR1 |
B0h | P3 | P3 | P3 | P3 |
B1h | - | - | - | IP1 |
B8h | 知识产权 | 知识产权 | 知识产权 | IP0 |
B9h | SADEN0 | SADEN0 | SADEN0 | SADEN0 |
呸 | - | SADEN1 | SADEN1 | SADEN1 |
C0h | - | SCON1 | SCON1 | SCON1 |
C1h | - | SBUF1 | SBUF1 | SBUF1 |
C2h | - | - | ROMSIZE | ROMSIZE |
C4h | - | - | PMR | PMR |
C5h | 状态 | 状态 | 状态 | 状态 |
C7h | - | 助教 | 助教 | 助教 |
C8h | T2CON | T2CON | T2CON | T2CON |
C9h | T2MOD | T2MOD | T2MOD | T2MOD |
儿童和青少年卫生与发育司 | RCAP2L | RCAP2L | RCAP2L | RCAP2L |
CBh | RCAP2H | RCAP2H | RCAP2H | RCAP2H |
CCh | TL2 | TL2 | TL2 | TL2 |
鼎晖 | TH2 | TH2 | TH2 | TH2 |
D0h | PSW | PSW | PSW | PSW |
D5h | - | - | - | FCNTL |
D6h | - | - | - | FDATA |
D8h | WDCON | WDCON | WDCON | WDCON |
E0h | ACC | ACC | ACC | ACC |
E8h | 易爱易 | 易爱易 | 易爱易 | 易爱易 |
F0h | B | B | B | B |
F1h | - | - | - | EIP1 |
F8h | EIP | EIP | EIP | EIP0 |
表4.
SFR | 位(s) | 差异 |
P0 | - | DS8xC520 / DS89C430 DS89C450;控制端口0引脚。 |
DPS | 4 | DS89C430 / DS89C450只;控制活动数据指针的自动递增/递减函数。 |
5 | DS89C430 / DS89C450只;允许在某些操作码之后在数据指针之间自动切换。 | |
6 (ID0) | DS89C430 / DS89C450只;控制INC的DPTR(增加或减少)对DPTR的影响。 | |
7 (ID1) | DS89C430 / DS89C450只;控制INC DPTR(增加或减少)对DPTR1的影响。 | |
PCON | 4 (OFDE) | DS89C430 / DS89C450只;晶振故障检测使能。 |
5 (OFDF) | DS89C430 / DS89C450只;晶振故障检测标志。 | |
CKCON | 7 (WD1) 6 (WD0) | 在除DS80C310以外的所有设备上;这些位控制看门狗定时器周期。 |
EXIF | 0(英国) | 在除DS80C310以外的所有设备上;该位在停止模式期间启用/禁用带隙参考。 |
1 (RGSL) | 在除DS80C310以外的所有设备上;在晶体预热期间,该位控制环振荡器的执行。 | |
2 (RGMD) | 在除DS80C310以外的所有设备上;该标志表示当前时钟源(环形或水晶)。 | |
3. | DS8xC520 (XT / nRG);选择环形振荡器或晶体作为所需的时钟源。 DS89C430 / DS89C450 (CKRY);指示晶体振荡器或晶体乘法器已完成预热期。 | |
CKMOD | 3 (T0MH) | DS89C430 / DS89C450只;允许定时器0直接从系统时钟(时钟/1)运行。 |
4 (T1MH) | DS89C430 / DS89C450只;允许Timer 1直接从系统时钟(clock/1)运行。 | |
5 (T2MH) | DS89C430 / DS89C450只;允许Timer 2直接从系统时钟(clock/1)运行。 | |
ACON | 5 (PAGES0) 6 (PAGES1) | DS89C430 / DS89C450只;为外部总线操作选择页面模式配置。 |
7 (PAGEE) | DS89C430 / DS89C450只;为外部总线操作启用页模式(与标准8051扩展总线模式相反)。 | |
即 | 6 (ES1) | 在除DS80C310以外的所有设备上;这个位启用/禁用串口1中断。 |
SADDR1 | - | 在除DS80C310以外的所有设备上;这个寄存器控制串口1的从地址。 |
IP1 | - | DS89C430 / DS89C450只;这个寄存器与IP0/IP中的设置相结合,为每个中断提供四个优先级设置(而不是只有两个IP设置)。 |
SADEN1 | - | 在除DS80C310以外的所有设备上;这个寄存器为串口1设置从地址掩码。 |
SCON1 | - | 在除DS80C310以外的所有设备上;这个寄存器控制串口1的模式设置。 |
SBUF1 | - | 在除DS80C310以外的所有设备上;这个寄存器为串口1提供输入/输出缓冲区。 |
ROMSIZE | 2:0 (RMS2:0) | DS8xC520 / DS89C430 DS89C450;选择映射到程序空间的片上EPROM/闪存的范围。 |
3 (PRAME) | DS89C430 / DS89C450只;启用/禁用1kB内部RAM到程序空间的映射。 | |
PMR | 1:0 (DME1:0) | DS8xC520 / DS89C430 DS89C450;控制内部数据存储器到数据空间的映射。 |
2 | DS8xC520 (ALEOFF);当设置为1时,在板载内存访问期间禁用ALE。 DS89C430 / DS89C450 (ALEON);当设置为0时,在板载内存访问期间禁用ALE。 | |
3. | DS8xC520 (XTOFF);当设置为1时,禁用晶体振荡器(必须从环运行)。 DS89C430 / DS89C450 (4 x / n2X);设置晶体倍增器的模式。 | |
4 (CTM) | DS89C430 / DS89C450只;当设置为1时,启用晶体乘法器。 | |
5(主客观) | DS8xC520 / DS89C430 DS89C450;设置为1时,开启自动回切模式。 | |
6 (CD1:0) | DS8xC520 / DS89C430 DS89C450;控制时钟除法或乘法器模式。请注意,DS8xC520/DS89C430/DS89C450上的可用设置是不同的。 | |
状态 | 0 (SPRA0) | DS8xC520 / DS89C430 DS89C450;表示串口0当前正在接收一个字符。 |
1 (SPTA0) | DS8xC520 / DS9C430 DS89C450;表示串口0上当前有字符正在传输。 | |
2 (SPRA1) | DS8xC520 / DS89C430 DS89C450;表示串口1当前正在接收一个字符。 | |
3 (SPTA0) | DS8xC520 / DS89C430 DS89C450;表示串口1上有字符正在传输。 | |
4 (XTUP) | DS8xC520;指示晶体振荡器是否已完成预热周期。 | |
5(唇) | DS80C320 / DS80C323 DS8xC520;指示当前正在处理低优先级中断。 | |
6(臀部) | DS80C320 / DS80C323 DS8xC520;指示当前正在服务高优先级中断。 | |
7 (PIP) | DS80C320 / DS80C323 DS8xC520;指示当前正在处理掉电优先级中断。 | |
7:5 (PIS2:0) | DS89C430 / DS89C450只;指示中断的优先级正在被服务。 | |
助教 | - | 除DS80C310外;控制定时访问寄存器保护机制。 |
WDCON | 0 (RWT) | 在除DS80C310以外的所有设备上;复位看门狗定时器。 |
1(易) | 在除DS80C310以外的所有设备上;开启/关闭看门狗定时器。 | |
2 (WTRF) | 在除DS80C310以外的所有设备上;看门狗定时器复位。 | |
3 (WDIF) | 在除DS80C310以外的所有设备上;看门狗定时器中断。 | |
4 (PFI) | 在除DS80C310以外的所有设备上;指示发生掉电中断。 | |
5 (EPFI) | 在除DS80C310以外的所有设备上;启用/禁用掉电中断。 | |
6 | 在所有设备上;表示上电复位。 | |
7 (SMOD_1) | 在除DS80C310以外的所有设备上;启用/禁用串口1的波特率加倍模式。 | |
易爱易 | 4 (EWDI) | 在除DS80C310以外的所有设备上;启用/禁用来自看门狗定时器的中断。 |
EIP | 握(PX5:2) | 除DS89C430/DS89C450以外的所有器件;为外部中断2、3、4和5设置高/低优先级。 |
4 (PWDI) | DS80C320 / DS80C323 DS8xC520;设置看门狗定时器中断的高/低优先级。 | |
EIP1, EIP0 | - | DS89C430 / DS89C450只;这些寄存器为看门狗定时器中断和外部中断2、3、4和5设置优先级0-3。 |
超高速DS89C430 / DS89C450处理器工作在单周期指令,执行一条指令只需一个时钟周期,DS80C310 / DS80C320 / DS80C323 / DS8xC520高速处理器需要四个时钟周期完成一个机器周期,相比之下速度提高4倍。时钟速度的不同意味着相同晶体频率下,用DS89C430 / DS89C450替代高速器件就将速度提升4倍。
ds80c310 / ds80c320 / ds80c323DS8xC520, 16kB EPROM。
从DS80C310 / DS80C320 DS80C323向DS89C430 / DS89C450移植时,存储在外部罗,闪存或EPROM存储器的应用程序可以重新放置到超高速处理器的内部闪存。DS89C430提供与DS89xC520相同的内部程序存储器(16 kb),存储在DS8xC520中的所有应用程序都可以放入DS89C430,无需调整。对于外部程序存储器的应用,可以将程序装载到DS89C450 64 kb的内部闪存,只要没有占用端口扩展64 kb的程序存储空间。
最后,由于DS89C430 / DS89C450支持标准的8051复用地址总线,必要时,还可以使用外部程序存储器。
刘旭东,刘旭东,刘旭东
ds89c430 / ds89c450 http://www.qqqq.com http://www.qqqq.com笨笨,笨笨,笨笨,笨笨“”“”“”“”“”“”它另外,FCNTL和FDATA寄存器可以用于IAP,部分闪存可以在用户控制下进行擦除和重写。
由于DS89C430 / DS89C450(类似于DS8xC520)可以在没有外部程序和数据存储器的情况下工作,所以它们的8个P0口(复用总线有效时作为广告[7:0])可以用作通用I / O (GPIO)。不使用外部总线时,还有一些I / O引脚可以重新定义为通用I / O: 8个P2口(P2 [7:0]), P3.6 (nWR)和P3.7(”)引脚。
2、p、p、p、p、p、p、p、p、p、p、p、p、p、p、p这意味着如果这些端口被用作输出,它们必须接上拉电阻。。
DS89C430 / DS89C450的CKMOD寄存器增加了系统时钟直接驱动三个定时器(定时器0,定时器1和定时器2)的功能(与标准的4分频和12分频选项不同)。这一高速选择模式(由T0MH, T1MH和T2MH位控制)在复位后默认为禁用状态,保证定时器与DS80C310 / DS80C320 / DS80C323 / DS8xC520程序兼容。
DS89C430 / SD89C450包含一个片内晶振倍频器,可以使晶振频率提高2倍或4倍。5MHz, 10MHz, 20MHz。
DS89C430 / DS89C450扩展了可编程中断优先级方案,能够为任意外部中断,定时器中断,串口中断或看门狗中断指定一个用户定义的从0(最低)到3(最高非电源故障优先级)的中断等级。最高优先级等级4保留给电源故障中断。这个系统与DS80C310 / DS80C320 / DS80C323 / DS8xC520使用的低/高可编程优先级方案向后兼容。
ds89c430 / ds89c450,陆基,陆基,陆基,陆基,陆基,陆基,陆基,陆基,陆基,陆基在最大晶振频率工作条件下,DS89C430 / DS89C450消耗110毫安(75 ma典型值)的电源电流。因此,升级到DS89C430 / DS89C450时,由于功耗增大,可能需要为高速设计更改电源电路,更多细节请参考器件的数据资料。
超高速闪存控制器的性能提升源于核的重新设计,它降低了机器周期并显著增加了内部开关速度。由于这个原因,在用超高速闪存微控制器直接替代高速微控制器时,系统设计师可以看到数字噪声略有增加。这时,设计师应该查明设计中影响性能提升的因素。有些情况下,有必要给微控制器增加额外的旁路电容,或运用其它滤波手段降低数字噪声。
当从高速微控制器升级到超高速器件时,利用软件循环产生精确定时的应用程序可能需要调整。升级到DS89C430 / DS89C450后,由于并非所有指令的执行速度提高4倍,这种类型的定时循环必须逐一检查。例如,在所有高速微控制器上,
社群二维码
关注“华强商城“微信公众号
Copyright 2010-2023 hqbuy.com,Inc.All right reserved. 服务热线:400-830-6691 粤ICP备05106676号 经营许可证:粤B2-20210308