建议使用ICCAVR或CVAVR的向导生成代码功能

 作者:马潮老师 / 整理:armok / 2005-01-17/ www.OurAVR.com

  在ICCAVR和CVAVR中,都有程序生成的向导功能。应该学会很好的利用这些向导:

1.向导生成的程序,是一个非常好的学习程序,你应该仔细研究、理解和掌握其中的设计思想和方法,这些在一般的书中是没有的。如CVAVR的向导程序生成的UART的用户程序就是非常好的例子。它采用中断方式的发送和接收,给出了中断服务,GETCHAR()、SENDCHAR()底层的服务函数,在程序中有汇编和C的混合应用。你如果真正读懂了这段代码,不仅你的软件设计水平会上一个层次,而且对AVR的中断控制以及相应的硬件也了解的更透彻。一般的书上都只给一个采用轮循方式的UART程序例子,但在实用中,中断方式更为有效。仅这段程序,我认为就有必要化上一个晚上去逐句逐字的认真研究和体会。

2.利用向导生成的程序,作为你的程序的参考,可以提高和加快你的程序的编写,尤其是初始化程序的编写。AVR的寄存器比较多,设置参数也多,如果自己计算和编写,总会出现问题的。利用程序生成向导,可以立刻生成正确的初始化程序代码,你只要根据需要修改,就可以拼到你的程序中了。我做的所有项目,初始化部分肯定是利用向导生成的程序,再经过修改后完成的。

3.程序向导当然不能生成用户的主要程序,但利用程序向导可以对AVR的各种外围功能和使用有更加深刻的了解。另外,对你所使用的开发平台中所提供的程序示例也应该认真的学习,比如BASCOM-AVR中的程序示例就有几十个。这些程序示例比一般普通的教科书上的例子都要实用。

原文出处: OurAVR.com 技术论坛,欢迎参加讨论