AVR单片机与传感器基础
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2 创建第一个项目

CodeVision AVR中每编一个应用程序,都把它当作一个项目对待。一个项目可能包含多个文件及对编译器的设置。项目文件的扩展名是“.prj”,通常还有C源文件、头文件以及生成的列表文件等。

在Windows中启动CodeVision AVR应用程序后,软件界面如图2.1所示。上面是主菜单和工具栏,左面是文件导航窗口,其中列出了属于当前项目的文件和不属于该项目但项目用到的其他文件。请注意,只有在本项目名分支下列出的文件,才能作为项目的一部分被编译。而在“Other Files”中列出的文件是不能作为项目的一部分被编译的。中间部分是源文件编辑窗口,可以同时打开多个源文件进行编辑,通过上面的文件名标签进行切换。屏幕的底部是信息窗口,在项目编译过程中产生的错误和警告都会列出在这里。在工具栏中有一个常用的“生成按钮”,鼠标放上时的提示信息为“Build the project”,其作用为编译源文件,生成目标文件。

图2.1 CVAVR软件的用户界面

单击“File”→“New”→“Project”菜单命令,就会弹出一个窗口,如图2.2所示,询问是否使用代码生成向导来创建新项目。单击“Yes”按钮,然后又弹出图2.3所示的窗口,询问使用的单片机系列。选中上面的“AT90, ATtiny, ATmega”后,单击“OK”按钮,最后弹出一个所选单片机在编程过程中可能用到的参数与硬件资源选择窗口,如图2.4所示。

图2.2 是否启用向导程序

图2.3 选择单片机系列

图2.4 CVAVR代码向导界面

在左面的信息与资源列表窗口,从上到下分别是:

Project Information:备注项目名称、版本、作者、时间等信息,将出现在程序注释中;

Chip:单片机型号选择,在右边选“Chip”为“ATmega8A”,时钟频率为8MHz, “Program Type”为“Application”;

Ports:对单片机端口设置,包括:PORT B、PORT C和PORT D,可设置为输入或输出;

External Interrupts:外部中断的相关设置,包括INT0和INT1;

Timers/Counters:定时/计数器的相关设置,包括定时/计数器0、1、2;

Watchdog Timer:看门狗定时器;

USART:异步串口的相关设置;

Analog to Digital Converter:模/数转换的相关设置;

Serial Peripheral Interface:高速同步串口的相关设置;

Two Wire Interface:TWI总线的相关设置;

Bit - Banged I2C Bus Interface:位模拟I2C总线接口;

1 Wire Bus Interface:单线总线接口,用于类似DS1820芯片的通信;

Bit - Banged Peripherals:用于类似1302芯片的位模拟通信接口;

Alphanumeric LCD:用于Alphanumeric LCD液晶显示的软件支持;

Graphic Display:用于某些液晶图形显示的软件支持;

Risistive Touchscreen:用于某些电阻式触摸屏的软件支持。

以上列出的是ATmega8A单片机内部所有的硬件资源,以及部分常用的外部设备与接口的软件支持资源。单击左面的每一项资源,可以在右面进行相应的设置。其中那些在编程中将要用到的硬件资源,可以根据需要对相关的参数进行设置,而在编程中用不到的硬件资源,可不必管它,用其默认值即可。设置完成后,可单击主菜单“Program”→“Generate”命令,在右面窗口中将生成预览代码,可进行查看。也可以单击主菜单“Program”→“Generate, Save and Exit”命令,之后将生成代码、保存文件并退出代码生成向导。此时,需要输入将要保存的相应的C源文件名、项目文件名及向导程序配置CWP文件名。输入完文件名后,即完成了新项目的自动生成。

注意:保存文件时,最好新建一个与当前工程对应名字的文件夹,并将这些新建的文件都保存在这同一个文件夹中,上述三个文件名也最好相同(扩展名不同)。

CVAVR的源文件(程序代码)编辑窗口还是比较友好的。同一层次的前后两个大括号以及之间的代码用一灰色的轮廓线给标识出来,在编辑窗口左边框上还有一个减号“-”。单击减号就可以将两个大括号之间的所有代码隐藏起来,同时减号变成加号。若再单击加号“+”,则又恢复原状。这在代码比较多的时候,十分方便程序调试。另外,在上面工具栏的中间有4个比较常用的按钮:,从左到右,其作用分别是增加缩进、减小缩进、注释和解除注释。

当选择了一块(连续多行)代码后,单击这4个按钮,可调整这块代码的缩进,或者将这块代码同时变成注释及解除注释。编程时应尽量让代码分布得错落有致,同一层次的代码缩进相同,低一层次的代码要更多缩进,这样会方便自己,也方便别人阅读程序。调试程序时,可通过将整块代码注释掉或解除注释来查看程序执行的效果。

如果想改变源文件编辑窗口中代码的字体、字号以及颜色等属性,可单击主菜单“Settings”→“Editor”命令进行设置。

如果程序代码没有错误,编译通过后会弹出一个窗口,显示当前程序及编译结果的一些信息,如堆栈大小、位变量和全局变量所占内存、EEPROM的使用量以及Flash程序存储器的使用多少等。在左边的文件导航窗口,会列出当前工程项目中所有用到的文件和编译后产生的文件,从上到下分别有备注文件、C源文件、用到的头文件、编译产生的汇编文件和map文件等,这些文件都可以分别单击进行查看。