yyj123 发表于 2008-1-10 07:16:03

BASCOM-AVR IDE 1.11.8.7的Wait命令软件仿真有问题?

有个怪问题,请大侠们指点迷津,在此先谢过。
刚学avr ,图快,就用的BASCOM-AVR IDE 1.11.8.7 特别版,试编了几个程序觉得还算方便,想仿真一下,问题来了,似乎“硬件仿真”不起作用,最后干脆网上找了个简单到头的程序(附后),结果仿真时仍有问题,直接仿真运行PORTC.5的灯就是一动不动,一次次单步调试,灯才偶而闪一下,无意中发现仿真窗口的下沿中的时间累计极慢,后把Waitms的值500改为1,提示指针的跳复才是大约1Hz,但“硬件仿真”中的灯还是不自己闪,只有单步执行才变。问题一,是不是BASCOM-AVR IDE 1.11.8.7 的软件仿真本身就有问题(好象网上也有人怀疑)?问题二,Waitms或Wait命令有没有问题?想想如此简单的程序都出错好象也不可能,那么哪位大侠有好用的BASCOM-AVR 能推荐一下吗?或者是我哪个选项没设置妥?请诸大侠指教,谢谢!

原始程序:
$regfile = "m88def.dat" ' 定义目标单片机是ATmega88
$crystal = 1000000      ' 定义单片机时钟周期是1000000Hz
DDRC.5 = 1            ' 定义PC5端口作为输出
Led:                  ' 语句行标号,后面以冒号结尾,在编译器的标签栏Label可以看到
    PORTC.5 = 1         ' 定义PC5口输出高电平
    Waitms 500                                                ' 等待500ms秒钟
    PORTC.5 = 0         ' 定义PC5口输出的电平
    Waitms 500
Goto Led                ' 无条件转移到Led标签处继续运行
End

miraclelife 发表于 2008-1-10 08:52:12

BASCOM-AVR 仿真时钟的时候本身就是这么慢,一般在有延时语句的情况下,需将延时语句忽略才行,否则非常慢,烧到片子里就正常的,我一开始也是用BASCOM-AVR 后来发现BUG太多,用AVRStudio仿真的时候居然无法查看变量。

还是专用C吧,CodeVisionAVR 比较不错,提供了很多现成的函数。

yaya001 发表于 2008-1-10 11:09:41

建议还是下载到芯片中看效果。

不论什么语言使用纯软件仿真,对延时支持的都不是很好。C语言在AVRSTUDIO中也是同样。

我经常使用bascom做一些项目,效果和开发速度都是不错的。

yc21 发表于 2008-1-10 13:29:26

不是程序有问题,是你使用还不熟练。

Bascom软件仿真时,一定要在程序头要加上 $sim 命令忽略延时语句,否则会慢的吐血!下载时再去掉这个命令。

xinhoujue 发表于 2008-3-2 10:32:30

呵呵,另外还有一个加快运行速度的按钮也要按下的.你都没做,能不慢么?!

yyj123 发表于 2008-3-4 08:26:43

谢谢各位,看来是这么回事

GunGun 发表于 2012-12-1 09:14:27

一开始也是用BASCOM-AVR 后来发现BUG太多,用AVRStudio仿真的时候居然无法查看变量
————————————————————————————————————————————————
请问如何用BASCOM-AVR编程,用AVRStudio仿真?能讲一下方法步骤吗?
页: [1]
查看完整版本: BASCOM-AVR IDE 1.11.8.7的Wait命令软件仿真有问题?