摘要:介绍一种基于四时钟周期、高速8051内核的混合信号8位单片机MAX7651。探讨在开发基于MAX7651的应用系统时所面临的问题,并推荐相应的解决方案。
关键词:MAX7651 AT89LV55 8XC51RA/RB/RC ALL-07 Flash 四时钟周期
在全球8位单片机领域,英特尔(Intel)生产的MCS-51系列是毋庸质疑的领导者。借助英特尔广泛的授权行为,基于8051内核的8位单片机兼容产品早已根深叶茂。Dallas Semiconductor通过改良、优化传统的8051内核,开发出了高速、四时钟周期和单时钟周期8051内核,并在此基础上推出了一系列高速8位单片机。Maxim利用高速、四时钟周期8051内核开发出的第一款混合信号单片机MAX7651,内部集成了12位ADC、8位DAC以及16KB的Flash存储器,非常适合便携式设备应用。
1 MAX7651简介
MAX7651内部集成了一个完全的12位、8通道ADC、2通道DAC、3个定时/计数器、16KB Flash存储器以及一个兼容于工业标准8051的四时钟周期高速内核。其它特性包括:256字节RAM、4个8位I/O口、2个异步串行口、1个中断控制器以及独立的看门狗定时器,如图1所示。
MAX7651内部12位ADC具有可编程增益调节和独立的采样保持器。转换速率可达53ksps,8个输入通道可以配置为8个独立的单端信号输入或者4个差分信号输入。单片机通过特殊功能寄存器(SFR)ADCON控制模数转换的工作模式,转换结果存放在ADDAT0和ADDAT1两个寄存器中。
图1 MAX8651内部功能框图
2 MAX7651软件开发工具
MAX7651的程序指令集与8051系列完全兼容,具有广泛的第三方开发软件工具支持。比较著名的软件工具包括:Franklin公司的A51/C51、Keil公司的A51/C51以及Metalink公司的A51等汇编工具软件。笔者一直使用Keil公司的A51/C51,最新版本号是μP51V7.01。该版本C51已经具备MAX7651的头文件reg51ex.h,位于C51目录。如果需要使用A51宏汇编程序,用户要自己编制inc头文件。笔者已经完成reg7651.inc头文件,只需要将它拷贝到C51目录下即可随时调用。
reg7651.inc头文件见本刊网络补充版(http://www.dpj.com.cn)。
Keil C51同时提供软件模拟调试器功能。对于开发者来说,可以对应用程序进行小范围的分区模拟测试,十分方便小型应用程序的开发,不需要专用的硬件仿真器。
3 MAX7651硬件仿真调试工具
目前,并没有专用的硬件仿真器完全支持MAX7651源程序仿真,主要是不能支持内部模数转换功能。在我国市场上,笔者认为Micetek公司的EasyPack/E II 8052F和Insight公司的ME-52/ME-52 Plus是性价比较高的。特别是EasyPack/E II 8052F能够支持实时的源程序调试,用户界面非常友好,用它可以仿真MAX7651的绝大部分功能。注意:一般的仿真器只提供标准的40-DIP双列直插插座,用户必须自己制作64-TQFP(MAX7651)到40-DIP转换的插座适配器。
4 MAX7651的内部Flash编程
目前市面上没有硬件编程器直接支持MAX7651 Flash编程。可以采取一些简单措施解决这个问题,因为8051系列单片机都采用Intel标准的定时时序来编程器件内部存储器,MAX7651也不例外。MAX7651具有16KB的内部Flash,但是结构上与大多数单片机不同。它分为两个8KB的存储区,每个存储区又分为128个64字节的页面。
MAX7651支持两种Flash编程模式。第一种是在应用中编程,假定应用程序在某一个8KB的存储区内运行,并且保证程序只局限在这个8KB的存储区内运行,可以通过这种方式编程另一个8KB Flash存储区。MAX7651具有四个特殊功能寄存器(EEAL、EEAH、EEDAT、EESTCMD),用于实现此项功能。这里,可以将程序存储器作为数据存储器使用,用户不需要额外扩展数据存储器空间。第二种编程模式是,采用外部编程器的并行接口进行编程。目前我国市场比较通用的编程器有:台湾河洛公司的ALL-07和ALL-11P2、Xeltek公司的Superpro/680和Superpro/V等。其中ALL-07编程器目前支持的器件数目可达5000种以上,但是目前它并不直接支持MAX7651,可通过以下简单方法解决这个问题:
① 经过分析Atmel的AT89LV55以及Intel的8XC51RB两种单片机外部编程条件和时序可知,其与MAX7651几乎完全相同。从AT89LV55的外部编程条件(见表1)和硬件接线图(见图2)来看,唯一不同的是二者采用了不同的编程电压。
② 制作64-TQFP与40-DIP插座适配器,详细原理图请参考本刊网络补充版(http://www.dpj.com.cn)。请注意P2.5和P3.3的处理方式以及/VPP引脚可以直接与VCC相连接,也可以通过低压差线性稳压器与编程器连接。
③ 打开ALL-07,连接MAX7651。在ALL-07程序界面中选择AT89LV55或者87C51RB器件选项就可以直接编程MAX7651。注意:如果使用87C51RB,那么不能使用编程密码阵列命令;如果使用AT89LV55,必须设置编程最高地址空间为3FC0H,而不是3FFFH。
结 语
MAX7651是业界高性能混合工艺单片机的典型器件,可以极大降低模拟应用的设计难度。它的小封装、低功耗和高速特性非常适合便携式和嵌入式系统设计。Maxim拥有新一代的高速、低功耗8位和16位单片机内核技术,正在设计和规划更多的混合工艺单片机产品。