No.51979 作者:zhouzhou110 邮件:zhouzhou110@sina.com ID:115344 登陆:1次 文章数:1篇 最后登陆IP:118.249.35.63 最后登陆:2008/7/3 21:14:05 注册:2008/7/3 21:11:10 财富:105 发帖时间:2008/7/3 21:14:05 发贴者IP:118.249.35.63 标题:zhouzhou110:一款“双核”单片机 摘要:No.51979一款“双核”单片机 最近看到一篇帖子十分有新意,是一个叫许意义的工程师推介的一款“双核”51单片机。仔细阅读 这篇帖子,感觉该单片机的体系结构不简单,竟能实现硬件级的多任务处理,虽然只有2道,也能感觉到 他的强大。想象一下,如果该单片机能支持6道的话,那么它将完全不需要处理那些复杂的中断。。。 如果将单片机变为DSP或者PC机的CPU呢。。。实在太令人期待了,我看好该芯片的生产公司,并期待他有 新的产品出来。 下面是原贴: 价格不到3元!国产“双核”51单片机—LS2051,闪亮登场! 作者:许意义 2008.6.28 一次偶然的机会,看到一款国产的“双核”51单片机—LS2051,价格不到3元! 厂商样本上介绍其指令系统与MCS-51 兼容,内部功能、引脚功能、引脚排列以及引脚的电气特性与 AT89C2051 全兼容,可直接替换AT89C2051 以及与其兼容的芯片。 LS2051 还支持独立或关联的两道程序(类拟双核)同时运行。执行第1 道程序的性能是AT89C2051 的 1.27 倍,第1 道和第2 道程序同时运行时的处理能力最高可达到AT89C2051 的2.55 倍。 经向生产厂商申请了LS2051 样片和下载器,收到后烧录程序,上机试用,性能稳定,未发现不兼容现 象。 产品应用成功后,怀着好奇的心理,重点研究其特有的“双核”特点,两道程序同时运行?有点不可思 异。在网上搜索后,发现这方面的资料几乎是空白,于是自己编了点应用程序,下载后测试其性能,以下 是一些使用总结。 1、好多中高挡的单片机硬件自带XXX 功能,LS2051 不带这些功能,这些功能用单片机大多都能模拟, 但有些功能费时,有些功能不能分时操作,故一般单片机软件难于胜任某些功能,只能靠硬件来解决, LS2051 特有的“双核”特性,两道程序可同时运行。各管各的,互不干涉,可用其中的一道程序来模拟 某些硬件功能,有些功能只有高挡单片机才有,如正交编码信号输入,16位ADC 模数转换等等。 2、调试时用Keil C51,但厂商未提供第二道程序使用的头文件及库函数,为方便使用,我自已编了一 个。当主程序为C语言时,头文件为ls4051.h,二道程序使用的库函数文件原型为astart_c.a51(未编译 ),可直接调用。当主程序为汇编语言时,头文件为ls4051_asm.inc。 3、第二道处理引擎设置独立的ACC、B、DPTR、PSW、R0~R7 和SP 特殊功能寄存器(这些特殊功能寄存 器初始化值全部为0),但第1 道所属的通用寄存器为32 个(分为4个区域),而第2 道所属的通用寄存 器为8 个(只有一个区域)。堆栈级数为8 级硬件堆栈(SP初始化值为0),因此,在第2 道程序的设计 中要考虑不能过多的压栈。 4、由于LS2051 特有的第2 道处理引擎,使芯片的中断处理比AT89C2051 更加灵活和高效。若第1 道的 中断使能EA 打开,而第2 道的中断使能AEA 未打开,那么,中断由第1 道处理;若第1 道和第2 道中断 使能都打开,且第2 道应用程序未启动或没有第2 道应用程序,那么,两道都可以执行中断处理,这由硬 件自动完成,不需用户考虑;若第1 道中断使能关闭,而第2 道中断使能打开,且第2 道应用程序未启动 或没有第2 道应用程序,那么,由第2 道处理引擎执行中断处理,这由硬件自动完成,不需用户考虑。 5、第2 道程序一旦被启动,则不能被任何事件打断。 6、若同时使用两道程序(含中断程序使用第二道程序),特别要注意的是,由于二道程序处理引擎分 别设置独立的ACC、B、DPTR、PSW、R0~R7 和SP 特殊寄存器,在传递参数时,不能使用这些特殊寄存器 来传递,否则结果可能为不可预知的,应使用其他的公共资源来传递,同时要考虑使用公共资源时可能发 生的冲突问题。 7、与第2 道处理引擎相关的跳转指令,指令及跳转地址必须全部为第一页(000H-0FFH),在C语言中 ,编译程序自动安排程序地址,不需用户考虑。但用汇编编写程序时,可适当调 ......
>>返回讨论的主题
|