您的位置:网站首页 > 电器维修资料网 > 正文 >
AVR单片机入门----C语言高效设计实践(二)
来源: 日期:2013-11-1 14:21:39 人气:标签:
iccavr6.31ac语言编译器的安装在电脑中放入配套光盘,打开iccavr6.31a安装文件后进入安装界面(上图))安装目录可使用默认方式,将其安装在c盘的icc文件夹中(下图)。安装完成后,需进行注册才能得到无时间限制的完全版软件。注册方式如下:
1.打开iccavr6.31a编译器界面,单击菜单栏help→registsoft→ware(上图),系统会提示关掉计算机的防病毒程序,单击continue按钮进入注册界面(下图)。
2.选中并复制emailunlockcode栏右侧框内的7组数值。
3.打开注册器,粘贴刚才复制的数值(下图)。
4.点击得到解锁码(下图)。复制该解锁码。
5.在iccavr6.31a编译器的注册界面的paste(~v)theunlockcodefromimagecraft`semail栏中,粘贴入解锁码(上图),单击license按钮后再单击ok完成注册(下图)。
注册完成后的iccavr6.31a启动界面如上图所示,主要由菜单栏、工具栏、源文件编辑窗口、工程窗口和编译输出窗口五部分组成。avrstudio集成开发环境的安装打开配套光盘内的avrstudio安装文件,双击setup.exe文件,按照提示步骤进行安装。安装结束后,会出现一个关于安装usb驱动的界面,由于我们这里不用usb驱动的器件,只需点击cancel关闭即可。安装完成后的avrstudio启动界面下图所示。
ponyprog2000下载软件的安装prog2000软件主要用于avr片机及pic单片机的程序下载,在windows95/98/me/nt/2000/p等操作系统上使用。双击配套光内的ponyprogv206f软件进行安装,安装过程中只需按照提示,单击next按钮,逐步进行即可。安装完成后,还可以进行汉化,选中汉化程序包中的ponyprog2000文件(注意不要打开),然后复制,随后打开c:\programfiles\ponyprog2000文件夹,直接点击粘贴。当弹出对话框提示是否需替换时,点确定,原文件即为中文版。图11为ponyprog2000的启动界面。我们讲座中的avr单片机开发程为:
1.设置iccavr:
2.建立一工程项目;
3.输入c源文件;
4.向工程项目中添加源文件;
5.编译文,编译通过后生成coff/hex文件;
6,在avrstudio集成开发环境打开coff文件,使用jtag仿真行实时在线仿真或进行软件模拟仿真;7.使用ponyprog2000软件将hex文件下载到单片机中;8.应用。
avr入门程序
接下来我们做的第一个avr程序是控制avr单片机综合试验板上的8个led,让它们亮、灭进行闪烁。
1.设置iccavr通过iccavr
编译连接工程之前,需要对编译器属性进行设置,设置好的某些属性可保留起来作为新建工程的默认属性。
打开iccavr软件界面,选择project→option进入属性设置对话窗。共有paths、compiler、target、configsalvo四个属性标签页。
1).paths标签页(图12):在属性中设置编译器的头文件目录(in-cludepath{s):)和库文件目录(li-brarypath:)。我们使用系统默认的头文件目录和库文件目录。
由于我们不使用汇编语言进行开发,因此汇编语言头文件路径(asmincludepath(s):)空着不填。输出文件目录(outputdirec-tory:)空着不填,则输出文件自动存放在工程目录中,否则存放在用户填写的路径下。
2).compiler标签页(下图):strictansiccheckings选中表示进行严格的c语法检查。
acceptextensions(c++com-ments,binaryconstants)选中表示接受c++风格的程序注释。
intsizeenum(forbackwordcompatibility)选中表示可以向下兼容程序。
0ptimizations栏可以选择默认设置(default)或使能代码压缩功能(enablecodecompression),对程序的编译进行优化。
outputformat栏选择格式输出。coff格式的文件用于程序的仿真调试,hex格式的文件可烧写入单片机。
avrstudioversion(coff)栏中选择studio4.06andabove。
3).target标签页(图14):在deviceconfiguration下拉列表中,选择我们所使用的单片机芯片型号,这里我们选择atmegal6。其它栗用默认设置。
4).configsalvo标签页(下图):采用系统默认的为不带实时操作系统(donotusesalvoconfigu-rator)。
完成设置后,单击ok即完成iccavr的属性设置。如果我们在开发下一个工程项目时,使用这些已经做好的属性设置)则不必再次进行属性设置了。
2.建立一个工程项目在我的文档中新建一个acl的文件夹。在ic-cavr软件界面中,单击project,在弹出的下拉菜单选中new选项,屏幕显示为下图。
在出现的savenewproiectas对话框中,选择工程项目存放的路径(存放在刚才新建的ac1文件夹中)并输入新建工程项目的名称(这里我们取名acl),单击保存按钮,系统自动初始化成3个空文件夹files、headers、docu-ments,如图17所示。
3.输入c源文件单击file菜单,在下拉菜单中选择new,随后在出现的untitled-0文本文件编辑窗口中输入以下的源程序(如图18)。
#include<iom16v.h>voiddelay(void)}
unsignedinti,j;
for(i=0;i<1000;i++)
{for(j=0;j<500;i++)}}
//========
voidmain(void)
{ddrb=oxff;
portb=oxff;
while(1)
{portb=ox00;
delay();
portb=oxff;
delay();}}
程序输入完成后,选择file,在下拉菜单中选中saveas,保存在ac1文件夹中,源文件名为ac1.c,保存后可看到源文件名由untitled-0变为acl.c。
4.向工程项目中添加源文件选中工程项目区的file文件夹右击。在出现的下拉窗口中选择addfiles,如图19所示。在添加文件窗口中选择acl.c源文件,鼠标单击打开按钮,这时acl.c文件便加入到工程项目中(图20)。
5.编译文件选择主菜单栏中的project)在下拉菜单中选中makeproject,这时编译输出窗口出现源程序的编译信息,如图21所示。如果编译出错,会在编译输出窗口中显示出来。用户可以在源程序编辑窗口重新输入、修改源程序文件,并再次编译,直到编译通过井生成用户所需的文件。
6.软件模拟仿真打开avrstudio集成开发环境,这时出现一个欢迎进入avrstudio的界面(图22)。
单击open按钮,选中acl,cof文件后点击打开,出现生成avrstudio工程项目文件的界面后点保存,然后出现选择仿真平台的界面(图23)。这里我们进行软件模拟仿真,debugplatform栏中选择avrsimulator,device栏选择at-megal6芯片(图24)。点击finish后进入仿真界面(图25)。
在主菜单中打开debug,从debug的下拉菜单中可看到常用的仿真快捷键,这里我们选择f1o(stepover)进行调试。
选择debug-avrsimulatoroptions,出现图26所示的仿真选项,我们将frequency一项中的仿真频率改为8.oomhz,使其与试验板的实际工作频率相符。
在左侧workspace窗口中,存放着atmeagl6的各种寄存器的状态值,我们将i/0atmegal6前的加号展开,再将portb前的加号展开,将portb输出口打开(图27)。鼠标在程序的光标箭头上点一下,随后按动f1o,可发现portb口的各寄存器会发生变化,ddrb全部为黑色(oxff),说明方向寄存器的设置为输出方式,而随着继续按动f1o,portb与pinb则一会变黑(oxff),一会儿变白(0xo0)。将workspace窗口中的processor前的加号展开,老下面有个stopwatch项,该项就是avrstudio在选定时钟频率下计算出的运行时间(图28)。我们可发现,portb输出低电平到电平的时间间隔约0.439秒,反复循环。仿真调试通过后,关闭avrstudio开发环境。
7.将hex文件下载到单片机中将并口下载器插电脑的并口,下载线的另一端插avr单片机综合试验板的isp口将试验板上标示pbo-pb7的双排针上8个短路块拔下,插到标有led的双排针上,使pb口与led接通。试验板通电工作,注意,5v稳压电源接dc5v插座;若使用9v以上电源时,插9~l5v的插座。插错电源会损坏芯片!
一次使用ponyprog2000下载序时)需对ponyprog2000进行设置,选择合适的下载接口方式,并对端口进行校正。ponyprog2000支持串口及并口下载,这里我们采用井口spi方式下载程序。
双击桌面上的ponyprog2000快捷图标运行软件(图29),出现小马头图标后点确认。
程序下载前先进行端口设置及校正。选择设置→接口设置,出现图30对话框。如果我们的电脑使用的操作系统是windows95/98/me,单击并行,选择avrispapi,并选择lpt1;如果我们的电脑使用的操作系统是windowsnt/2000/xp,则单击并行,选择avrispi/0,并选择lpt1。
然后选择设置→校正,对端口进行校正,出现图31的窗口。单击yes开始校正,校正完成后会有提示(图32),点ok即可。选择器件→avrmicro→at→megal6(图33)。
选择文件→打开程序(flash)文件,文件类型选*hex,装载编程文件(图34)。选择命令→擦除,先擦除器件(图35)。选择命令→securityandcon-figurationbits...,按图36配置熔丝位。单击写入,写入熔丝位配置。
选择命令→写入所有,开始下载烧写文件(图37)。在下载文件时,isp旁的发光二极管do会点亮。
8.应用下载烧写完成时,我们即可看到pb口驱动的8个发光二极管开始闪亮,周期约0.8s,即点亮0.4s、熄灭0.4s,反复进行。
【看看这篇文章在百度的收录情况】
相关文章
- 上一篇: 控制电路与功率驱动电路的隔离方式
- 下一篇: AVR单片机入门----C语言高效设计实践(七)