增强型51系列单片机W77E58的存储器访问
发布时间:2007/9/11 0:00:00 访问次数:559
摘要:W77E58是Winbond公司推出的新一代增强型51系列单片机,文中介绍了W77E58对存储器访问的特点,并举例给出多种有关的应用程序实例。
关键词:单片机 存储器 程序 W77E58
增强型51系列单片机W77E58可与标准的8052兼容,它内含4个8位I/O口、3个16位计数器和全双工串行通信接口。由于W77E58对处理器内核进行了重新设计,因而其性能较之于标准的8052有了很大提高。
W77E58改进了传统处理器的时序。机器周期与时钟之比可以由软件来控制,最快时一个机器周期仅需4个时钟,最慢时一个机器周期需1024个时钟。在同样的时钟频率下,当时钟/机器周期等于4时,W77E58的指令速度比传统的51单片机提高了1.5~3倍(平均2.5倍)。如果以时钟/机器周期等于4为正常工作方式,那么时钟/机器周期等于1024就可以认为是经济模式了。W77E58为全静态CMOS设计,其工作时钟最高为40MHz,最低可以为0,因此W77E58可以工作在空闲方式和掉电方式。
W77E58片内的可多次编程的程序存储器为32kB,还具有1kB的片内数据存储器。在大程序量和稍大数据量的应用时,W77E58不需要扩展外部程序外储器和数据存储器,因而可为用户节省出较多的I/O线。为了方便程序对数据的操作,W77E58增加了一个数据指针(DPTR1)和一条指针运算指令(DEC DPTR)。
W77E58还另外增加了一个串口中,因而它具有两个全双工的串行接口,从而大大增强了其在通信方面的能力。值得注意的是,W77E58新增的串行口只能以Timer1做波特率发生器。此外W77E58还增加了一个片内的看门狗。
1 W77E58的程序存储器
W77E58对程序存储器的寻址能力为64kB。片内程序存储器的使用和8052基本相同,区别是程序存储器的容量由8kB增加到32kB。如果访问程序存储器的地址超出了32kB,则W77E58自动寻址外部的程序存储器,这时端口P0和P2将参与访问操作。使用MOV C指令可以访问存放在片内程序存储器中的数据。
下面是访问程序存储器中数据的C语言程序。
程序1:访问程序存储器中数据的方法
unsigned char code * code message [ ]={ /*程序存储器数据的初始化*/
“r”,
“W77E58 C51 Program”,
“Written by Hu You Nong”,
“1999-7”,
};
unsigned char code seg-table [ ] ={0x3f,0x06,0x6b,0x4f,0x66,0x6d,0x7d};
x=seg-table[2]; /*程序存储器数据的引用*/
2 W77E58的数据存储器
W77E58对数据存储器的寻址能力为64kB,与传统51系列芯片不同的是:W77E58增加了1kB的片内SRAM,位于地址0000H~03FFH之间,对此存储器的访问只能用MOVX指令。由于片内SRAM与片外扩展SRAM共同使用0000H~03FFH同一个地址空间,且都用MOVX指令访问,因此具体访问到哪个存储器还需通过设置有关SFR来决定。然而,当寻址超出3FFH后,W77E58将自动访问片外SRAM,这时端口P0和P2将参与访问操作。此外,W77E58还具有标准的256B的RAM,访问这256RAM的方法与普通8052系列CPU的操作相同。方法是:对低128B(00H~7FH)RAM的访问可以使用直接寻址或间接寻址的指令,但用直接寻址的指令读写高128B(80H~FFH)RAM时,访问的是SFR,用间接寻址的指令读写高128B(80H~FFH)RAM时,访问的是数据存储单元。
图1是W77E58数据存储器的结构示意图:
下面是访问数据存储器的C语言程序。
摘要:W77E58是Winbond公司推出的新一代增强型51系列单片机,文中介绍了W77E58对存储器访问的特点,并举例给出多种有关的应用程序实例。
关键词:单片机 存储器 程序 W77E58
增强型51系列单片机W77E58可与标准的8052兼容,它内含4个8位I/O口、3个16位计数器和全双工串行通信接口。由于W77E58对处理器内核进行了重新设计,因而其性能较之于标准的8052有了很大提高。
W77E58改进了传统处理器的时序。机器周期与时钟之比可以由软件来控制,最快时一个机器周期仅需4个时钟,最慢时一个机器周期需1024个时钟。在同样的时钟频率下,当时钟/机器周期等于4时,W77E58的指令速度比传统的51单片机提高了1.5~3倍(平均2.5倍)。如果以时钟/机器周期等于4为正常工作方式,那么时钟/机器周期等于1024就可以认为是经济模式了。W77E58为全静态CMOS设计,其工作时钟最高为40MHz,最低可以为0,因此W77E58可以工作在空闲方式和掉电方式。
W77E58片内的可多次编程的程序存储器为32kB,还具有1kB的片内数据存储器。在大程序量和稍大数据量的应用时,W77E58不需要扩展外部程序外储器和数据存储器,因而可为用户节省出较多的I/O线。为了方便程序对数据的操作,W77E58增加了一个数据指针(DPTR1)和一条指针运算指令(DEC DPTR)。
W77E58还另外增加了一个串口中,因而它具有两个全双工的串行接口,从而大大增强了其在通信方面的能力。值得注意的是,W77E58新增的串行口只能以Timer1做波特率发生器。此外W77E58还增加了一个片内的看门狗。
1 W77E58的程序存储器
W77E58对程序存储器的寻址能力为64kB。片内程序存储器的使用和8052基本相同,区别是程序存储器的容量由8kB增加到32kB。如果访问程序存储器的地址超出了32kB,则W77E58自动寻址外部的程序存储器,这时端口P0和P2将参与访问操作。使用MOV C指令可以访问存放在片内程序存储器中的数据。
下面是访问程序存储器中数据的C语言程序。
程序1:访问程序存储器中数据的方法
unsigned char code * code message [ ]={ /*程序存储器数据的初始化*/
“r”,
“W77E58 C51 Program”,
“Written by Hu You Nong”,
“1999-7”,
};
unsigned char code seg-table [ ] ={0x3f,0x06,0x6b,0x4f,0x66,0x6d,0x7d};
x=seg-table[2]; /*程序存储器数据的引用*/
2 W77E58的数据存储器
W77E58对数据存储器的寻址能力为64kB,与传统51系列芯片不同的是:W77E58增加了1kB的片内SRAM,位于地址0000H~03FFH之间,对此存储器的访问只能用MOVX指令。由于片内SRAM与片外扩展SRAM共同使用0000H~03FFH同一个地址空间,且都用MOVX指令访问,因此具体访问到哪个存储器还需通过设置有关SFR来决定。然而,当寻址超出3FFH后,W77E58将自动访问片外SRAM,这时端口P0和P2将参与访问操作。此外,W77E58还具有标准的256B的RAM,访问这256RAM的方法与普通8052系列CPU的操作相同。方法是:对低128B(00H~7FH)RAM的访问可以使用直接寻址或间接寻址的指令,但用直接寻址的指令读写高128B(80H~FFH)RAM时,访问的是SFR,用间接寻址的指令读写高128B(80H~FFH)RAM时,访问的是数据存储单元。
图1是W77E58数据存储器的结构示意图:
下面是访问数据存储器的C语言程序。
热门点击
- MCS96系列单片机的一种大容量的外部RAM
- 公共闪存接口CFI在Flash Memory
- 实时单片机通讯网络中的内存管理
- 增强型51系列单片机W77E58的存储器访问
- 采用段式管理的大容量外部RAM扩展技术
- 基于AT90S8515单片机的瞬变信号捕获与
- 闪速存储器硬件接口和程序设计中的关键技术
- 闪存K9F3208W0A在放射性勘查仪数据采
推荐技术资料
- 循线机器人是机器人入门和
- 循线机器人是机器人入门和比赛最常用的控制方式,E48S... [详细]