51内核8位单片机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简介
牐燤ax7651内部集成了一个完全的12位、8通道adc、2通道dac、3个定时/计数器、16kb flash存储器以及一个兼容于工业标准8051的四时钟周期高速内核。其它特性包括:256字节ram、4个8位i/o口、2个异步串行口、1个中断控制器以及独立的看门狗定时器,如图1所示。
牐燤ax7651内部12位adc具有可编程增益调节和独立的采样保持器。转换速率可达53ksps,8个输入通道可以配置为8个独立的单端信号输入或者4个差分信号输入。单片机通过特殊功能寄存器(sfr)adcon控制模数转换的工作模式,转换结果存放在addat0和addat1两个寄存器中。
图1 max8651内部功能框图
2 max7651软件开发工具
牐燤ax7651的程序指令集与8051系列完全兼容,具有广泛的第三方开发软件工具支持。比较著名的软件工具包括:franklin公司的a51/c51、keil公司的a51/c51以及metalink公司的a51等汇编工具软件。笔者一直使用keil公司的a51/c51,最新版本号是μp51v7.01。该版本c51已经具备max7651的头文件reg51ex.h,位于c51目录。如果需要使用a51宏汇编程序,用户要自己编制inc头文件。笔者已经完成reg7651.inc头文件,只需要将它拷贝到c51目录下即可随时调用。
牐爎eg7651.inc头文件见本刊网络补充版(//www.dpj.com.cn)。
牐燢eil 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字节的页面。
牐燤ax7651支持两种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插座适配器,详细原理图请参考本刊网络补充版(//www.dpj.com.cn)。请注意p2.5和p3.3的处理方式以及/vpp引脚可以直接与vcc相连接,也可以通过低压差线性稳压器与编程器连接。
③ 打开all-07,连接max7651。在all-07程序界面中选择at89lv55或者87c51rb器件选项就可以直接编程max7651。注意:如果使用87c51rb,那么不能使用编程密码阵列命令;如果使用at89lv55,必须设置编程最高地址空间为3fc0h,而不是3fffh。
结 语
牐燤ax7651是业界高性能混合工艺单片机的典型器件,可以极大降低模拟应用的设计难度。它的小封装、低功耗和高速特性非常适合便携式和嵌入式系统设计。maxim拥有新一代的高速、低功耗8位和16位单片机内核技术,正在设计和规划更多的混合工艺单片机产品。