高速单片机W77E58的特点及应用
一、前言
随着电子技术的发展,单片机的功能日益强大,集成度日益提高,运行速度也越来越快。过去,需要扩展几片外围芯片才能实现的功能现在完全可以由单片机自己去实现,本文介绍的W77E58就是这样一种具有许多功能的单片机。
W77E58是台湾华邦公司生产的与MCS51系列单片机兼容的可多次编程的快速微处理 器,在它内部集成有32K的可重复编程的flash ROM、256字节的片内存储器、1K的 用MOVX指令访问的SRAM、可编程的看门狗定时器、3个16位定时器、2个增强型的全双工串行口、片内RC振荡器、双16位数据指针等诸多功能。在很多场合,几乎不用扩展外围芯片就能够满足系统要求,而且,由于它采用了全新设计的微处理器内核,去除多余的时钟和存储周期,因此,在相同的晶振频率下,根据不同的指令类型,其运行速度一般比传统8051系列快1.5到3倍,一般情况下,平均可达 2.5倍以上。另外,由于W77E58采用全静态CMOS设计,能工作在低速晶振频率下,因此,和普通的8051相比,若W77E58采用低速工作频率,在相同的指令吞吐量下,W77E58的节电性能也将大大提高。
二、W77E58的特点及功能
1. 兼容性
77E58的指令功能完全兼容于80C52(包括对状态位和标志位的影响),只有一点不同的就是在普通80C52的指令系统中,没有操作指令(op-code)A5H,而在W77 E58的指令系统中,增加了一条指令DEC DPTR(数据指针DPTR减一),其操作指令 (op-code)为A5H。而且,W77E58也具有80C52的全部资源和功能,包括4个8位I /O口,3个16位定时器,全双工串口,中断源等。W77E58的增加的新功能都是用普通8052所保留的特殊功能寄存器实现的,不与普通80C52的资源产生任何冲突,因此,W77E58可以直接用在已设计好的80C52系统中使用,而为原有系统编写的程 序几乎不做任何改动,系统就可正常工作,需要注意的只是由于新的高速内核所造成的指令执行时间的改变及访问外部存储器的读写速度的限制。W77E58的封装也完全兼容于80C52,它所增加的与硬件有关的功能都是复用80C52的P1口,并且 W77E58 的44pin PLCC/QFP封装比普通的8051多一组4位的I/O口。
2. 高速性
77E58的外部工作时钟频率可达40MHz,而且,由于W77E58采用了重新设计的微处理器内核,去除了多余的时钟和存储周期,运行速度大大提高,这不仅仅是运行 晶振频率的提高,而是将普通8051的每个机器周期(machine cycle)包含12个 时钟周期(clock period)缩减到每个机器周期包含4个时钟周期,这样,即使在相同的时钟频率下,根据不同的指令类型,其运行速度一般比传统8051提高1. 5到3倍。因此,若程序中需要软件定时,其执行时间须根据W77E58的指令的执行时间应重新计算,一般情况下,每一个机器周期有一次取指(包括操作码和操作数)操作,由于在W77E58的256个操作码指令中,有128个是单字节指令,因此,W77E58的指令有一半的执行时间只须一个机器周期,即4个时钟周期。图1以单周期指令为例说明了W77E58的指令的时序关系。
3. 中断源
77E58除了具有80C52的6个中断源外,又另外增加了6个中断源,共有12个可定义两种优先级的中断源,每个中断源都有独立的中断使能位、中断优先权位、中断 标志位和中断向量。但是,为了同80C32兼容,所有新增加的中断的优先级都在 原有中断的优先级之后,其中断优先级及中断向量如下表1所示,除了同80C32有相同的两个外部中断INT0和INT1外,W77E58又增加了4个外部中断INT2、INT3、I NT4、INT5。同80C32一样,外部中断INT0和INT1有边沿触发和电平触发两种触发方式,当中断被响应后,其中断标志位由硬件自动清除;而外部中断INT2到INT5 只有边沿触发方式,其中断标志位可被独立设为由硬件或软件清除,缺省设置为 由软件清除,当然,用户可根据需要通过修改相对应的特殊寄存器,将外部中断 INT2到INT5设为由硬件清除中断标志位。
4. 两个增强全双工串口
和80C32相比,W77E58除了具有同80C32一样的全双工串口外,W77E58又增加了一个全双工串口,其外部引脚RXD1、TXD1和P1.2、P1.3复用。然而,这两个串口除了具有同原有80C32的串口相同的功能外,又增加了两个增强型的特点,即多机通讯自动地址识别和帧错误检测功能,但是需要注意的是,这两个串口也有一点细微的差别,那就是串口0(原有保留串口)可以用定时器0和定时器1作为波特率发生器,而串口1只能使用定时器1作为波特率发生器。
(1) 自动帧错误检测
自动帧错误检测指的是在数据传输的过程中,如果由于噪音等随机干扰造成接收方接收不到正确的停止位,W77E58能够自动检测出并设置标志
- 数字信号处理(DSP)应用系统中的低功耗设计(05-02)
- SHARC引领第四代通用DSP高端应用潮流(09-27)
- 在应用可编程测控网络设计(03-15)
- 基于dsPIC33F系列单片机的应用程序升级方法(04-03)
- 采用混合时钟模式提高Linux时钟精度的方法(05-10)
- MSP430低功耗原理及其在海温测量中的应用(06-06)