用 DS80C51/2 微控制器代替Atmel TS80C320U323

描述

DS80C320/323 微控制器是 Atmel 80C51 (TS80C51U2) 的更高性能替代品。本文详细介绍了将应用代码从 Atmel 微控制器转换为 DS80C320/DS80C323 的详细信息,包括时序变化、SFR 差异和新功能。

介绍

达拉斯半导体公司开发了一个创新的8051微控制器系列,每个机器周期运行4个时钟,而不是原来的12个时钟。虽然一些指令在机器周期中增加,但大多数应用程序实现的性能总体提高将是 2.5 倍。与原来的 8051 个周期相比,Atmel 6 系列以每机器周期 12 个时钟的速度运行,而不会增加每条指令的机器周期数。这比原来的 2 架构提高了 8051 倍。与原来的80相比,DS320C8051还具有多项增强功能,包括双数据指针、电源管理模式、增强型看门狗定时器、环形振荡器和用于外部存储器(MOVX)访问的拉伸周期。

本应用笔记旨在提供有关将应用代码从 Atmel TS80C51U2 转换为速度更快的 DS80C320 的信息。

特征

 

特征 描述 DALLAS ATMEL
最大工作频率 4.5V 至 5.5V   33兆赫(相当于82.5兆赫) 30兆赫(相当于60兆赫)
最大工作频率 2.7V 至 5.5V   18兆赫(相当于45兆赫) 20兆赫(相当于40兆赫)
MOVX 拉伸 延伸外部数据读/写,以允许访问较慢的外设 Y N
外部中断源   6 2
四个 I/O 端口 端口 0、1、2、3 Y Y
三个 16 位定时器/计数器 小时 0、1、2 Y Y
256 字节内部内存   Y Y
双数据指针 DPTR0, DPTR1 Y Y
省电模式 空闲模式,睡眠 Y Y
电源故障复位 掉电检测器 Y N
电源故障警告 早期电源故障警告中断 Y N
可编程看门狗定时器   Y Y
看门狗中断   Y N
中断优先级 可编程中断电平 2 4
两个全双工串行UART 7 或 8 个数据位、1 或 2 个停止位、奇偶校验、成帧错误识别、地址识别 Y Y

 

引脚排列

 

名字 DS80C320的区别 描述/注释
EI1 PLCC TQFP, VQFP
20 22, 23 16, 17 在党卫军 提供两个接地连接 在 TS80C51U2 上,PLCC 引脚 23 和 VQFP44 引脚 17 是常闭的。这些引脚可以浮动在DS80C320/323上,没有问题。
9 10 4 RST   重置。DS80C320/323不需要外部电容,但如果放置电容,也不会影响工作。
  互生 功能 评论
3 4 42 小1.2 无差别(注1) RXD1 串口 1 输入  
4 5 43 小1.3 无差别(注1) TXD1 串口 1 输出  
5 6 44 小1.4 可用作外部中断 INT2 外部中断 TS80C51U2 只有两个外部中断。
6 7 1 小1.5 可用作外部中断(注1) /INT3 外部中断 TS80C51U2 只有两个外部中断。
7 8 2 小1.6 可用作外部中断(注1) INT4 外部中断 TS80C51U2 只有两个外部中断。可以是 TS1C80U51 上的串行 2 输出。
8 9 3 小1.7 可用作外部中断(注1) /INT5 外部中断 TS80C51U2 只有两个外部中断。可以是 TS1C80U51 上的串行 2 输出。
-- 12 6 不适用 无连接 TS1C80U51 上的可选串行端口 2 输入(注 1)
-- 34 28 不适用 无连接 TS1C80U51 上的可选串行端口 2 输出(注 1)
-- 1 39 不适用 无连接 在党卫军在 TS80C51U2 上,DS80C320/323 上的接地引脚不会引起任何问题
注1:TS80C51U2 串口 1 输入/输出可以位于不同的位置,具体取决于 AUXR 位 M1UA1 和M0UA_1位。

 

SFR 内存映射

 


REGISTER
BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 ADDR COMMENT
DPL1                 84H TS80C51U2 DPL1/DPL use SFR address 82h (DPL on DS80C320/323).
DPH1                 85H TS80C51U2 DPH1/DPH use SFR address 83h (DPH on DS80C320/323).
DPS 0 0 0 0 0 0 0 SEL 86H TS80C51U2 uses DPS bit in AUXR1 SFR.
CKCON
DS80C320/323
WD1 WD0 T2M T1M T0M MD2 MD1 MD0 8Eh WD1,0 watchdog timeout. See Watchdog Section T2M, T1M, T0M (timer speed); See Timer Section MD2, MD1, MD0 (Stretch MOVX) TS80C51U2 does not support stretch. M1UA_1/M0UA_1 on TS80C51U2 selects UART1 pin out.
AUXR
TS80C51U2
M1UA_1 M0UA_1 -- -- -- -- -- A0  
CKCON
TS80C51U2 only
              X2 8Fh 12/6 clock select on TS80C51U2, register not used on DS80C320/323.
EXIF IE5 IE4 IE3 IE2 -- RGMD RGSL BGS 91h IE5, 4, 3, 2
Additional external interrupts supported by DS80C320/323.
BRL
TS80C51U2 only
BRL7 BRL6 BRL5 BRL4 BRL3 BRL2 BRL1 BRL0 9Ah Baud rate generator on TS80C51U2. Register not used on DS80C320/323.
BDRCON
TS80C51U2
-- -- -- BRR TBCK_0 RBCK_0 SPD SRC 9Bh See serial port baud section below.
BDRCON_1
TS80C51U2
SMOD1_1 SMOD0_1 RCLK_1 TCLK_1 TBCK_1 RBCK_1 -- -- 9Ch See serial port baud section below.
AUXR1
TS80C51U2
-- -- -- -- -- -- -- DPS A2h DPS select is handled in register DPS.0 on DS80C320/323.
WDTRST
TS80C51U2
                A6h Watchdog reset handled in WDCON register on DS80C320/323.
WDTPRG
TS80C51U2
T4 T3 T2 T1 T0 S2 S1 S0 A7h Watchdog timeout handled in CKCON register on DS80C320/323.
IPH
TS80C51U2
-- PSH_1 PT2H PSH_0 PT1H PX1H PT0H PX0H B7h Interrupt priorities handled in IP and EIP registers on DS80C320/323.
STATUS PIP HIP LIP 1 1 1 1 1 C5h Interrupt status for clock control. Not present in Atmel TS80C51U2.
TA                 C7h Timed Access Control
EIE -- -- -- EWD1 EX5 EX4 EX3 EX2 E8h Enable watchdog interrupt and enable extended interrupts. Additional features not supported on TS80C51U2.
EIP -- -- -- PWDI PX5 PX4 PX3 PX2 F8h Watchdog interrupt and extended interrupts. Additional features not supported on TS80C51U2.

 

双数据指针

与使用影子寄存器的 Atmel TS80C51U2 不同,DS80C320/323 将两个数据指针映射到不同的寄存器。DPL0 位于 SFR 地址 82h,DPH0 位于 83h,DPL1 位于 84h,DPH1 位于 85h。DPL 在 Atmel TS82C83U80 上映射在 SFR 51h,DPH 映射在 SFR 2h。要在DS80C320/323上的活动DPTR之间切换,请在TS0C1U80上使用DPS.51而不是AUXR2。为双数据指针提供单独的寄存器允许访问任一组寄存器,而无需更改活动的 DPTR。

看门狗定时器

Dallas DS80C320/323实现了高级看门狗复位,支持在定时器到期复位之前中断看门狗。看门狗中断向量位于 63 小时,在看门狗超时之前向量为 512 个周期。应用程序可以重置看门狗并推迟重置,也可以执行清理功能并让重置在 512 个周期结束时发生。

CKCON 寄存器中的 WD1 和 WD0 位控制看门狗超时值。表 4 显示了可能的设置。在更改 WD1 和 WD0 位的值之前,应设置重置监视器计时器位 (WDCON.0) 以避免监视程序计数损坏。设置 EWDI (EIE.4) 位将启用监视器计时器中断,而 EWT (WDCON.1) 将启用监视器计时器。若要重置监视器计时器,应用程序代码将设置 RWT (WDCON.0) 位。为避免看门狗超时,必须在超时之前由应用程序代码设置此位。定时访问,DS80C320/323数据资料第18页,保护看门狗使能和看门狗复位位,防止失控代码意外复位或禁用看门狗定时器。

 

WD1 WD0 中断超时 时间(毫秒)(在 33MHz 时) 重置超时 时间(毫秒)(在 33MHz 时)
0 0 217时钟 3.97 217+ 512 个时钟 4
0 1 220时钟 31.76 220+ 512 个时钟 31.79
1 0 223时钟 254.2 223+ 512 个时钟 254.22
1 1 226时钟 2034 226+ 512 个时钟 2037

 

SFR 寄存器 WDTRG 位 S0、S1 和 S2 对 TS80C51U2 看门狗超时期限进行编程。在 3MHz 时,超时可编程范围为 26.418ms 至 30ms。Atmel 微控制器要求先将 1Eh 写入 1Eh,然后再写入 E<>h,以启用或复位定时器。

定时器

DS80C320/323允许定时器0、1和2以原始8051 Xtal/12或Xtal/4模式运行。要在 4 时钟定时器模式下运行,必须为每个定时器设置 T2M、T1M 或 T0M 位。与 TS80C51U2 不同,定时器可以独立设置为以 12 或 4 时钟模式运行。这使得DS80C320/323在定时器速率方面具有更大的灵活性。在 TS80C51U2 上,所有定时器都以 6 时钟或 12 时钟模式运行,具体取决于 CKCON 中的 X2 位。

必须重新计算每个计时器的重载值,以考虑 Xtal/6 或 Xtal/4 模式下的差异。请参考DS80C320/323数据资料,了解计算重载值的详细功能。

PCON UART 控制

DS80C320/323和TS80C51均支持波特率倍增和成帧错误检测。DS80C320/323的波特率倍增标志在PCON中SMOD_0,在WDCON中SMOD_1。设置这些位可实现波特率加倍。要启用成帧错误检测,请设置 SMOD0 (PCON.6)。

UART

TS80C51U2 包括 DS80C320/323 所没有的专用波特率发生器。必须将使用波特率发生器的串行代码转换为使用可用的计时器。请参阅《高速微控制器用户指南》,了解有关使用定时器生成波特率的详细信息(第 12.3 节)。

中断

DS80C320/323提供2级中断优先级,具有自然优先级选择。表5显示了DS80C320/323与TS80C51U2相比的优先级。

注意:TS80C51 串行端口 1 中断向量位于地址 33h。在DS80C320/323上,串口1中断向量位于3Bh,电源故障中断位于33h。

 

名字 DALLAS
LEVEL
ATMEL
LEVEL
VECTOR COMMENT
电源故障指示灯 1 不可用 33小时 警告 ATMEL 串行端口 1 中断向量
外部中断 0 2 1 03小时  
计时器 0 溢出 3 2 0兆位  
外部中断 1 4 3 13小时  
计时器 1 溢出 5 4 1兆位  
串行端口 0 6 5 23小时  
计时器 2 溢出 7 6 2兆位  
串行端口 1 8 7 3兆位 警告 ATMEL 串行端口 1 矢量在 33h
外部中断 2 9 不可用 43小时  
外部中断 3 10 不可用 4兆位  
外部中断 4 11 不可用 53小时  
外部中断 5 12 不可用 5兆位  
看门狗中断 13 不可用 63小时  

 

复位和电源故障

DS80C320/323包括内部带隙复位电路,用于监视V电压抄送以确保保持适当的操作水平。如果工作电压超过电源故障警告级别,则会触发电源故障中断,从而允许应用程序代码干净地关闭系统。Atmel TS80C51U2 不包括带隙复位功能,通常需要使用外部 IC 来实现此目的,这会增加总体成本、器件数量和工作电流。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分