最近在捣鼓Atmel Studio 7.0找个软件。安装后,打开进入,界面确实很漂亮,功能也很丰富。但说实话,对AVR单片机的初学者,这界面太复杂。 好了。既然说到初学者,那肯定少不了Proteus这款软件。这款软件,也是挺好的,是单片机入门者的有力工具。至少在我看来,对调试代码,效率很高。
之前,一直使用keil与Proteus联调,keil生成的hex文件,Proteus 8直接引用执行,效果很好。 这里要说到使用keil编程的基本功能,就是文件化编程。说白了,就是XXX.h和xxx.C文件的关联。然后XXX.c 在main.c文件里的编译。 OK!想必有经验的工程师是有所了解的。当然,这种编译通过,并且生成的Hex文件,是能够被Proteus软件准确地仿真。
好了,现在用Atmel Studio 7.0这款软件,按keil的编程方式,也使用XXX.h和XXX.c的方式。那么Atmel Studio 7.0确实能够编译OK,也生成了HEX文件,但是!注意!问题来了,按这种方式,Proteus 8里放置的AVR单片机,比如atmega16,居然无法仿真!
那么如何"真实"的仿真出来呢? 试了其他方式才行: 哈哈,就是不得使用XXX.h和XXX.C这种编程方式,那就是把所有的变量声明;函数声明;函数体声明。都堆砌在main.c文件里!
想必有经验的工程师,估计很抵触这种编程方式了。这太令人难受了!
问题就这样。特意出来吐槽一下。希望有经验的大佬出来指点.
以下是部分截图:
以上是仿真不成功
-------------------------------------------------------------------------------------------
以上是仿真成功
结束
|