C504单片机.docx
- 文档编号:2880889
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:15
- 大小:121.73KB
C504单片机.docx
《C504单片机.docx》由会员分享,可在线阅读,更多相关《C504单片机.docx(15页珍藏版)》请在冰豆网上搜索。
C504单片机
1.介绍
C504是C501微控制器经修正和延伸的版本。
它在功能上有了很大的提高,尤其是捕捉比较单元(CCU),它能是MCU运用在电动机控制中。
而且,C504与SAB80C52/C501微控制器兼容,并且在现有的应用中可以替代它。
C504-2R包含一个16K×8只读程序存储器,一个512×8读写数据存储器,4个8位宽端口,3个16位定时器/计数器,1个16位捕捉/比较单元,一个10位比较定时器,12个中断源,2个优先级中断结构,1个串行端口,片内仿真支持逻辑和1个10位A/D转换器。
C504-2E是C504微控制器OTP版本,它具有16K×8一次性可编程程序存储器。
除非在其他情况特别指出,“C504”指本文中提到的所有版本。
片内仿真支持模式
振荡器看门狗
XRAM
256×8
RAM
256×8
端口0
I/O
8位数字I/O
4位模拟输入
10位ADC
定时器2
T0
C504核心
8位USART
端口1
16位比较/捕捉单元
………………………
10位比较单元
T1
端口2
I/O
看门狗定时器
ROM/OTP
16×8
端口3
8位数字I/O
4位模拟输入
下表是C504的主要特征:
·与标准8051微控制器完全兼容
·高达40MHZ外部工作频率
·16K字节片内程序存储器
·256×8RAM
·256×8XRAM
·4个8位端口(2个端口具有模拟/数字信号混合I/O功能)
·3个16位定时器/计数器(定时器2具有向上/向下记数功能)
·捕捉/比较单元,可产生PWM信号和捕捉信号
—通道3,16位捕捉/比较单元
—通道1,10位比较单元
·USART,能完成异步通信的硬件电路,通用异步接受器/发送器
·具有8输入的10位A/D转换器
·12个中断源,2个优先级
·片内仿真支持逻辑
·可编程15位看门狗定时器
·振荡器看门狗
·快速复位
·节能模式
·M-QFP-44包装
·工作温度范围:
SAB-C504:
TA:
0~70℃
SAF-C504:
TA:
-40℃~85℃
SAH-C504:
TA:
-40℃~110℃(最大工作频率:
TBD)
SAK-C504:
TA:
-40℃~125℃(最大工作频率:
12MHZ)
C504外部信号及其功能:
端口1:
8位双向端口,可作为数字量输入/输出端口。
P1.0—P1.3也可用作A/D转换器的模拟量输入端.作为辅助的数字的功能时,端口1包含定时器2口线,以及捕捉/比较输入/输出。
通过寄存器P1ANA可把端口1设定为模拟量输入。
复位RESET:
在该口线持续两个机器周期的高电平将使单片机复位。
端口3:
8位双向端口,P3.0(RXD)和P3.1(TXD)按照C501定义的工作。
P3.2—P3.7包含外部中断输入,定时器输入,另4个模拟量输入通道。
通过SFRP3ANA中的几位可将端口3设定为模拟量输入。
P3.6/WR可作为第3个中断信号输入端。
XTAL2:
反向晶振放大器的输出端。
XTAL1:
反向晶振放大器的输入,和内部时钟产生电路的输入。
当采用外部振荡器时,要驱动XTAL1,XTAL2要悬空。
端口2:
双向I/O口,内部具有上拉电阻。
P2口作为输入口时,应向引脚写1,该引脚有内部上拉电阻拉成高电平。
作为输入端,由于内部上拉电阻的关系,被外部电路将电平拉低的端口2引脚上将有电流产生(IIL,根据直流特性)。
当寻址外部程序存储器和16位地址的外部数据存储器时,端口2输出高8位地址。
PSEN:
程序存储器使能。
当读取外部指令时,该端输出外部程序存储器读选通指令。
除了访问外部数据存储器外,每6个振荡周期出现1次PSEN信号。
ALE:
地址锁存使能。
该端输出用于正常操作时将低8位地址信息锁存到外部存储器。
除了访问外部数据存储器外,每6个振荡周期出现一次有效信号。
当程序由内部ROM执行是,可通过设定SFRSYSCON中EALE取消ALE信号的产生。
COUT3:
10位比较通道输出。
该引脚用于10位计较定时器2单元的输出。
它可被禁止也可设定为高或低电平状态。
EA:
外部访问使能信号。
当为高电平时,且PC值小于4000H时,指令将从内部ROM中获取。
当它为低电平时,C504从外部程序存储器获取所有指令。
端口0:
端口0是一个8位漏极开路型双向I/O口。
在访问外部存储器时可作为地址(低8位)/数据分时复用总线使用。
当P0作为地址/数据分时复用总线使用时,在访问存储器期间它能激活内部的上拉电阻。
VAREF:
A/D转换的参考电压
VAGND:
A/D转换的参考地
VSS:
地(0V)
VCC:
电源电压(+5V)
2.CPU
C504是有效的控制器和算法处理器。
它具有广泛的处理二进制和BCD算法的装置,并且具有优秀的位处理能力。
程序存储器的有效使用源自44%单字节,41%双字节,15%三字节指令的指令设置。
由于使用12MHZ晶振,58%的指令在1us内执行完毕(40MHZ:
300ns)。
C504的CPU由指令解码器、算法部分、程序控制部分组成。
每个程序的指令由指令解码器解码。
这个单元产生控制CPU内各个单元功能的内部信号。
它们将影响数据传输的数据源和目的单元,并控制ALU过程。
处理器的算法部分执行大量的数据处理。
它由算术/逻辑单元(ALU),A寄存器,B寄存器和PSW寄存器组成。
程序控制部分控制程序存储器内执行指令的顺序。
16位程序计数器记录下一条指令的地址。
3.存储器
C504在以下四个地址空间执行操作:
—高达64KB内/外部程序存储器
—高达64KB外部数据存储器
—256字节内部数据存储器
—256B内部XRAM数据存储器
—128B特殊功能寄存器区域
3.1程序存储器
C504-2R具有16KB只读程序存储器,而C504-L无内部程序存储器,C504-2E提供16KBOTP程序存储器.程序存储器可向外扩展到64KB。
EA引脚是高电平时,C504从内部ROM获取指令。
PC值超过3FFFH时,C504从外部程序存储器地址从4000H到FFFFH内取指令。
如EA为低电平,C504从外部程序存储器获取全部指令。
3.2数据存储器
数据存储器地址空间有内、外部存储器空间。
内部数据存储器可从物理分为3个不同的块:
00H~07FH单元组成的低128字节的RAM块,80H~0FFH单元组成的高128字节的RAM块,以及80H~0FFH高128字节的专用寄存器块(SFR)。
高128字节的RAM块与专用寄存器块的地址是重合的。
访问高128字节RAM时采用寄存器间接寻址方式,访问SFR块时则只能采用直接寻址方式。
访问低128字节RAM时,两种寻址方式都可以采用。
4个寄存器区(每个区由8个8位多功能寄存器组成),占据了低128字节RAM从0到1FH的地址。
接下来的16个字节,地址从20H—2FH,包含128个可直接寻址位地址区。
堆栈区可位于内部数据存储器地址空间的任何位置,也可扩展到256字节。
外部数据存储器可扩展到64K字节,也可被16位或8位地址的指令访问。
3.3通用工作寄存器区
内部RAM的低32字节是4个寄存器区,每个含有8个通用工作寄存器。
一次只能激活一个工作区。
程序状态字中的两位PSW.3(RS0)和PSW.4(RS1)决定了使用哪一个工作区。
选定的寄存器区内的8个通用工作寄存器可通过寻址寄存器被访问。
寻址寄存器,指令OP码将显示哪个寄存器正被使用。
间接寻址时,R0,R1就作为寻址内部或外部存储器的指示寄存器。
复位是,堆栈指针指向07H,并从08H(区1的第一个寄存器R0地址)向上自加。
所以,如果要使用1个以上寄存器区,SP必须初始化为指向不用于数据储存的RAM中另外的区域。
3.4XRAM
C504中XRAM是逻辑上位于外部存储空间最上部分的存储区域。
但它是集成在片上的。
因为XRAM和外部数据存储器一样使用,所以访问XRAM的指令类型与访问外部数据存储器相同。
特殊功能寄存器SYSCON(地址B1H)
—
—
EALE
RMAP
—
—
—
XMAP
XMAP:
XRAM使能信号。
XMAP=0时,XRAM被禁止使用;XMAP=1时,XRAM可被使用,8位使用Ri的MOVX指令访问片内XRAM而不会访问外部扩展的寄存器;16位使用DPTR的MOVX指令将访问地址范围为FF00H—FFFFH的XRAM,而不会访问该地址范围的外部扩展寄存器。
3.5特殊功能寄存器区
除了程序计数器PC和4个通用工作寄存器区外,所有寄存器都位于特殊功能寄存器区。
它有两部分区域:
标准特殊功能寄存器区和影射特殊功能寄存器区。
C504的3个特殊功能寄存器(PCON1,P1ANA,P3ANA)位于影射特殊功能寄存器区。
要访问影射特殊功能寄存器区,SYSCON中的RMAP位需置位。
C504的其它特殊功能寄存器都位于标准特殊功能寄存器区。
特殊功能寄存器:
SYSCON(地址B1H)
RMAP:
特殊功能寄存器影射位
RMAP=0时,可访问标准特殊功能寄存器区;RMAP=1时,可访问影射特殊功能寄存器区。
RMAP位不会自动被硬件清0,所以当影射/标准寄存器被访问时,RMAP位必须由软件置位/清0。
在标准/影射特殊功能寄存器区也有128个可直接寻址的位。
所有地址为80H,88H,90H,……F8H,FFH的SFRS的位都可寻址。
C504共有63个特殊功能寄存器(SFR),包括指针寄存器以及向CPU与其它片上外围设备提供界面的寄存器。
4.10位A/D转换器
C504含有一个高性能离速的10位A/D转换器,带有8个输入通道。
A/D转换器有以下特征:
──8模拟/数字输入通道(端口1,3),该两端口也可作为数字输出/输入通道。
──10位输出结果。
──单次或连续转换模式。
──每次转换结束产生中断请求信号。
──外部应用的参考电压范围必须稳定在说明书内指定的值。
4.1A/D转换器的运行
对ADDATL的写指令是启动一次A/D转换的内部开始信号。
开始的这个步骤是与写入ADDATL的值无关的。
当单一转换模式中,(ADM位=1)一次A/D转换结束后一次新的A/D转换会自动开始直到ADM被复位。
忙标志位BSY(ADCON0.4)会自动置位当某个A/D转换在进行时。
转换结束后它会被硬件复位。
该标志位只可读,写是不起作用的。
一次A/D转换结束后,中断请求标志IADC(IRCON0.0)被置位。
特殊功能寄存器ADCON0和ADCON1中的MX0到MX2位是用来选择模拟输入通道的。
MX0到MX2在ADCON0和ADCON1中都有,但他们是一致的。
所以哟有两种选择模拟输入通道的方法:
如果在ADCON1中选择了新的通道,那么在ADCON0中相应的MX0到MX2会自动改变,端口1和端口3,每个端口的4个引脚都是双向输入/输出端口。
他们既可以作数字量输入/输出功能使用又可以作模拟量输入。
如果模拟输入量少于8个,那端口1和3的多余的不用于模拟输入的引脚就可以用于数字输入/输出。
4.2A/D转换寄存器
特殊功能寄存器ADDATH(地址D9H)
ADDATL(地址DAH)
ADDATH
MSB.9
.8
.7
.6
.5
.4
.3
.2
ADDATL
.1
LSB.0
寄存器ADDATH和ADDATL存放的是正式数据形式的10位A/D转换的结果。
该结果中最重要的一位是ADDAT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C504 单片机