打印
[国产单片机]

不支持彩色语**

[复制链接]
3693|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
McuPlayer|  楼主 | 2008-5-14 02:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们正在开发的单片机软仿,通过切换DLL以实现几家单片机的软仿。以义隆单片机为切入点,几经波折,架构做了好几次大的变动。

最早,IDE内置Simulator,浑然一体,架构最简单,实现最容易,指令软仿就是在这个阶段调试完成的。

随后,就遇到了问题,仿真不仅仅是单片机,还有外围电路,常见的元件尤其是UI类要可以仿真,比如LED、Key等。这意味着必须容易扩展,于是决定把IDE和Simulator分开,做成两个独立的exe。每个器件包在DLL里面,再挂到Simulator的exe里去。IDE的exe跟Simulator的exe使用进程间通讯互相联系。

这时,问题又来了,Simulator Platform是个非常庞大的东西,除去仿真部分外,用户必须很容易组织自己的电路,这时候人机界面的东西太多了,开发工作量远远偏离了软仿真的中心。

最后,决定借道Proteus的Simulator Platform,只需开发一个元件DLL,挂到Proteus上,IDE跟DLL通讯即可。目前仍采用的是进程间通讯,稳定后会改为TCPIP通讯,参考或者直接使用RDI协议。目前的简单协议主要是为了调试便捷,但也做好了扩充准备。TCPIP有个优点,可单机还可以联网调试,一台PC跑Proteus的硬件平台,一台Notebook跑IDE的单片机调试环境。

相关帖子

沙发
McuPlayer|  楼主 | 2008-5-14 02:11 | 只看该作者

沙发保留,做更新用途

测试环境:Proteus 6.9 SP4
相关链接:https://bbs.21ic.com/upfiles/img/20077/200771518368520.rar

使用特权

评论回复
板凳
chunyang| | 2008-5-14 02:23 | 只看该作者

好东西

使用特权

评论回复
地板
谈的元| | 2008-5-14 20:41 | 只看该作者

虽然没看到东西。还是得顶

使用特权

评论回复
5
weihualong| | 2008-5-15 10:51 | 只看该作者

最好发布一个试用版本

大家给你多提意见...

使用特权

评论回复
6
McuPlayer|  楼主 | 2008-5-15 22:33 | 只看该作者

最快本月就可Release一个版本

只能加载cds文件然后RUN,调试功能暂时不挂上去。
因为调试器还不完善,会给user造成很多困扰。

使用特权

评论回复
7
sunlimcu| | 2008-5-20 14:58 | 只看该作者

不错,就是楼主快点啊!

使用特权

评论回复
8
chunyang| | 2008-5-29 23:24 | 只看该作者

软仿需要做的事情确实非常多,尤其要注重细节

工作量很大

使用特权

评论回复
9
McuPlayer|  楼主 | 2008-5-30 01:00 | 只看该作者

软仿的工作量更在于架构的规划

以现在PC的速度模拟几M OSC的单片机,基本不用过多考虑优化的问题。
但是我们不能每次做一个软仿都要从头再来,所以就要思考一个Frame可以很容易实现一个新MCU的软仿。正如我们要做一条裤子,兄弟几个都可以穿。
如果要要source code级调试器相连,又有很多detail的问题。

使用特权

评论回复
10
McuPlayer|  楼主 | 2008-5-31 14:46 | 只看该作者

Proteus仿真EM78P260的元件

请设定CDS文件,即可使用。
因为中断和ADC没有做完,所以没有打开。

使用特权

评论回复
11
gtw| | 2008-5-31 22:31 | 只看该作者

调试时看不到源程序


也看不到rom、ram数据、当前指令

以前下载过毛子的一个自制的mcu仿真文件,除了单步外,其他的还行,lz可以借鉴一下
 
哦,现在不能上传文件了

使用特权

评论回复
12
gtw| | 2008-5-31 22:35 | 只看该作者

例子

使用特权

评论回复
13
McuPlayer|  楼主 | 2008-5-31 23:59 | 只看该作者

请教楼上,你上传的这个如何看“看不到rom、ram数据、当前

我是另外做一个IDE环境,可以和Proteus联调。

使用特权

评论回复
14
gtw| | 2008-6-1 11:03 | 只看该作者

ls兄弟做的这个dll在proteus下应该是和一个常规器件差不多。
但是作为mcu的话,调试时能看到源码、rom数据、ram数据要好的多。
上面我上传的例子可以看到,但还是不能单步执行。
据说编写这个dll的牛人去labcenter了

使用特权

评论回复
15
gtw| | 2008-6-1 11:06 | 只看该作者

lz的意思是 另外一个ide可以实现和proteus的完整联调?包括单步、全速、暂停等等?
能否贴个图?

使用特权

评论回复
16
McuPlayer|  楼主 | 2008-6-1 21:09 | 只看该作者

目前只有单步和暂停

这个IDE目前可以源代码级调试,但是看变量还不行,主要是变量类型还没有处理好。

使用特权

评论回复
17
Anymcu| | 2008-6-1 21:33 | 只看该作者

不支持彩色语**

使用特权

评论回复
18
McuPlayer|  楼主 | 2008-6-1 22:23 | 只看该作者

这个IDE是基于BCG的,有彩色语法,被我Disable了

在调试功能可用之前,彩色语法没有任何意义。

使用特权

评论回复
19
gtw| | 2008-6-2 00:10 | 只看该作者

lz干的不错

不过尽量考虑支持标准调试文件如elf、cof等可能会更利于今后的扩展

使用特权

评论回复
20
从一开始| | 2008-6-21 14:18 | 只看该作者

proteus的缺陷

用proteus仿真当然好,但是它也有它的局限性,比如有的元件只能有一个。我曾经用单片机做了一个万年历数字钟,用了三片7219,仿真就有问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

338

主题

7307

帖子

26

粉丝