5. 本章知识要点
1) #include<cdefBF592-A.h>,#include <ccblkfn.h> #说明这是个预处理命令(在编译之前进行的处理),include 是文件包含命令。C 语言的预处理主要有三个方面的内容:
1-宏定义
2-文件包含
3-条件编译
Blackfin所有的头文件都在安装目录下能找到:C:\Program Files\Analog Devices\VisualDSP 5.0\Blackfin\include
cdefBF592-A.h这个文件里又包含了cdefBF59x_base.h,而cdefBF59x_base.h又包含了defBF59x_base.h,从defBF59x_base.h 的内容可以看到,头文件主要定义了端口和特殊功能寄存器的物理地址,包含这个头文件后,我们在程序中就可以直接使用定义过的标识符。如果需要对*pPLL_DIV进行操作,因为*pPLL_DIV的寄存器地址是0xFFC00004,我们不需要了解BF592具体内部结构和地址,直接针对*pPLL_DIV 进行操作,单片机内部就会对0xFFC00004这个地址操作,*pPLL_DIV =pssel;语句的作用是直接将pssel这个值写到0xFFC00004地址中,根据不同程序实现的功能不一样,我们需要添加更多的头文件,以后的在例子程序中用到了我们会再做介绍。
2) main()函数。C 程序最大的特点就是所有的程序都是用函数来装配的。main()称之为主函数,是所有程序运行的入口。其余函数分为有参或无参两种,均由main()函数或其它一般函数调用,若调用的是有参函数,则参数在调用时传递。一个程序有且只有一个 main 函数。
3) // 和 /* */ 这2种符号表示注释,注释不是程序,不影响程序结果,注释是给程序员看的,可以通过注释了解程序的意图,尤其在程序庞大时,注释尤为重要,如果没有注释,一段时间后,自己写的程序自己都看不懂了。所以养成一个好的习惯,写程序的时候及时注释。上述 2 种注释符号的区别如下,//后面的语句都为注释,换行后无效,/* */中间的内容皆为注释,换行有效。上述样例中开头的描述使用了/* */注释,而程序中各个语句后面的注释使用了// 。这个注释可以根据个人喜好和习惯,并没有具体要求。