历史上的今天
返回首页

历史上的今天

今天是:2025年01月23日(星期四)

正在发生

2020年01月23日 | AVR单片机语言编译器的安装步骤及使用方法

2020-01-23 来源:elecfans

ICCAVR6.31AC语言编译器的安装在电脑中放入配套光盘,打开ICCAVR6.31A安装文件后进入安装界面(左图))安装目录可使用默认方式,将其安装在C盘的icc文件夹中(右图)。安装完成后,需进行注册才能得到无时间限制的完全版软件。注册方式如下:

1.打开ICCAVR6.31A编译器界面,单击菜单栏Help→RegistSOFt→ware(左图),系统会提示关掉计算机的防病毒程序,单击Continue按钮进入注册界面(右图)o2.选中并复制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/XP等操作系统上使用。双击配套光内的PonyProgV206f软件进行安装,安装过程中只需按照提示,单击Next按钮,逐步进行即可。安装完成后,还可以进行汉化,选中汉化程序包中的PonyProg2000文件(注意不要打开),然后复制,随后打开C:\ProgramFiles\PonyProg2000文件夹,直接点击粘贴。当弹出对话框提示是否需替换时,点确定,原文件即为中文版。下图为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标签页(下图):在属性中设置编译器的头文件目录(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标签页(下图):在DeviceConfiguration下拉列表中,选择我们所使用的单片机芯片型号,这里我们选择ATMegal6。其它栗用默认设置。

4).ConfigSalvo标签页:采用系统默认的为不带实时操作系统(DonotuseSalVOConfigu-rator)。

完成设置后,单击OK即完成ICCAVR的属性设置。如果我们在开发下一个工程项目时,使用这些已经做好的属性设置)则不必再次进行属性设置了。

2.建立一个工程项目在我的文档中新建一个acl的文件夹。在IC-CAVR软件界面中,单击Project,在弹出的下拉菜单选中New选项,屏幕显示为图16。在出现的SaveNewProiectAs对话框中,选择工程项目存放的路径(存放在刚才新建的ac1文件夹中)并输入新建工程项目的名称(这里我们取名acl),单击保存按钮,系统自动初始化成3个空文件夹Files、Headers、Docu-ments,如右图所示。

3.输入C源文件单击File菜单,在下拉菜单中选择New,随后在出现的Untitled-0文本文件编辑窗口中输入以下的源程序。

# include《 iom1 6v. h》

void delay(void )

}

unsigned int i, j;

for(i=0;i《1000;i++)

{

for(j= 0; j《 500; i++)

//========

void main(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,如图右所示。在添加文件窗口中选择acl.c源文件,鼠标单击打开按钮,这时acl.c文件便加入到工程项目中(下图)。

5.编译文件选择主菜单栏中的Project)在下拉菜单中选中MakeProject,这时编译输出窗口出现源程序的编译信息,如下图所示。如果编译出错,会在编译输出窗口中显示出来。用户可以在源程序编辑窗口重新输入、修改源程序文件,并再次编译,直到编译通过井生成用户所需的文件。

6.软件模拟仿真打开AVRStudio集成开发环境,这时出现一个欢迎进入AVRStudio的界面(下左图)。

单击Open按钮,选中acl,cof文件后点击打开,出现生成AVRStudio工程项目文件的界面后点保存,然后出现选择仿真平台的界面(下图)。

这里我们进行软件模拟仿真,DebugPlatform栏中选择AVRSimulator,Device栏选择At-megal6芯片(左图)。点击Finish后进入仿真界面(右图)。

在主菜单中打开Debug,从Debug的下拉菜单中可看到常用的仿真快捷键,这里我们选择F1O(StepOver)进行调试。

选择Debug-AVRSimulatorOptions,出现下图所示的仿真选项,我们将Frequency一项中的仿真频率改为8.OOMHz,使其与试验板的实际工作频率相符。

在左侧WorksPACe窗口中,存放着ATMeagl6的各种寄存器的状态值,我们将I/0ATMEGAl6前的加号展开,再将PORTB前的加号展开,将PORTB输出口打开(下图)。

鼠标在程序的光标箭头上点一下,随后按动F1O,可发现PORTB口的各寄存器会发生变化,DDRB全部为黑色(OxFF),说明方向寄存器的设置为输出方式,而随着继续按动F1O,PORTB与PINB则一会变黑(OxFF),一会儿变白(0xO0)。将Workspace窗口中的Processor前的加号展开,老下面有个StopWatch项,该项就是AVRStudio在选定时钟频率下计算出的运行时间(下图)。我们可发现,PORTB输出低电平到电平的时间间隔约0.439秒,反复循环。仿真调试通过后,关闭AVRStudio开发环境。

7.将HEX文件下载到单片机中将并口下载器插电脑的并口,下载线的另一端插AVR单片机综合试验板的ISP口将试验板上标示PBO-PB7的双排针上8个短路块拔下,插到标有LED的双排针上,使PB口与LED接通。试验板通电工作,注意,5V稳压电源接DC5V插座;若使用9V以上电源时,插9~l5V的插座。插错电源会损坏芯片!


一次使用PonyProg2000下载序时)需对PonyProg2000进行设置,选择合适的下载接口方式,并对端口进行校正。PonyProg2000支持串口及并口下载,这里我们采用井口SPI方式下载程序。


双击桌面上的PonyProg2000快捷图标运行软件(下图),出现小马头图标后点确认。

程序下载前先进行端口设置及校正。选择设置→接口设置,出现下图对话框。如果我们的电脑使用的操作系统是Windows95/98/ME,单击并行,选择AvrISPAPI,并选择LPT1;如果我们的电脑使用的操作系统是WindowsNT/2000/XP,则单击并行,选择AvrISPI/0,并选择LPT1。

然后选择设置→校正,对端口进行校正,出现下图的窗口。

单击Yes开始校正,校正完成后会有提示(下图),点OK即可。

选择器件→AVRmicro→At→megal6(下图)。

选择文件→打开程序(FLASH)文件,文件类型选*HEX,装载编程文件(下图)。

选择命令→擦除,先擦除器件(下图)。

选择命令→SecurityandCon-figurationBits.。。,按图36配置熔丝位。单击写入,写入熔丝位配置。


选择命令→写入所有,开始下载烧写文件(下图)。

在下载文件时,ISP旁的发光二极管DO会点亮。


8.应用下载烧写完成时,我们即可看到PB口驱动的8个发光二极管开始闪亮,周期约0.8s,即点亮0.4s、熄灭0.4s,反复进行。

推荐阅读

史海拾趣

西博臣(CYBERSEN)公司的发展小趣事

作为一家技术驱动型企业,西博臣始终将创新作为发展的核心动力。公司不断投入资源进行新技术和新产品的研发,积极申请各类专利和知识产权,以保护自己的技术成果。这些专利和知识产权不仅提升了公司的技术实力,也为其在市场中树立了良好的口碑。

Galaxy Microelectronics公司的发展小趣事

江苏飞翼智能科技有限公司成立于2023年,该公司迅速将无人机技术与大数据技术相结合,实现了从传统无人机表演企业向无人机应用型企业的转型。通过自主研发和技术创新,飞翼智能的无人机在地理测绘、土方开挖计算、三维建模等领域展现出强大实力。例如,在地理测绘领域,无人机通过镜头采集地面照片,结合后期处理,能够高效完成数据测绘,大大降低了人工用量,提高了工作效率。这一技术的成功应用,不仅为公司赢得了市场认可,也推动了无人机技术的智能化发展。

Advanced Power Solutions公司的发展小趣事

Advanced Power Solutions公司非常重视人才培养和企业文化建设。公司注重员工的职业发展和培训,为员工提供了广阔的职业发展空间和学习机会。同时,公司还倡导开放、创新的企业文化,鼓励员工提出新的想法和建议。这种积极向上的企业文化吸引了大量优秀人才的加入,也为公司的持续发展提供了强大的动力。

以上五个故事框架仅用于说明Advanced Power Solutions公司可能的发展路径和成就,并不代表公司的实际历史。在实际撰写时,需要根据公司的具体情况进行调整和补充。

Fibrefab Limited公司的发展小趣事

Fibrefab始终坚持以客户为中心的服务理念。为了提升客户满意度和忠诚度,Fibrefab不断加强售前咨询、售中服务和售后支持等方面的投入。公司建立了一套完善的服务体系,为客户提供从方案设计、产品选型、安装调试到后期维护等全方位的服务支持。此外,Fibrefab还积极收集客户反馈和建议,不断优化产品和服务以满足客户需求。

Boundary Devices公司的发展小趣事

近年来,电子行业面临着诸多变革和挑战,如物联网的快速发展、人工智能的崛起等。面对这些变革,Boundary Devices积极调整战略,加强在物联网和人工智能领域的研发投入,推出了一系列符合市场趋势的新产品。同时,公司还加强与高校和研究机构的合作,共同推动电子行业的创新与发展。

Fabrimex AG公司的发展小趣事

1979年,Fabrimex AG接管了ARCO-Solar(美国)的代表处,标志着公司正式进入光伏领域。这一举措为公司带来了新的增长点,并推动了相关产品的研发和生产。随着光伏技术的不断发展,Fabrimex AG在光伏领域逐渐取得了显著的成绩,为公司带来了可观的收益。

问答坊 | AI 解惑

外围元件最少的2×15W功放电路

外围元件最少的2×15W功放电路…

查看全部问答>

lpcxpresso.intro[LPCZONE]

分享点LPCXpresso的视频教程,呵呵,来自NXP网站。 [ 本帖最后由 lixiaohai8211 于 2010-4-20 08:46 编辑 ]…

查看全部问答>

cf2.0安装错误

Installation error. Stop all applications and processes, maximize available storage space, and run installation again. Support info: 3 我今天自己的WINCE5.0开发板上安装net cf2.0时出现 了上述错误,我看了一下stroage space 有20M可用 ...…

查看全部问答>

mini 2440程序固化的问题

    我的板子是友善的MINI 2440,就利用给的资料,自己在ADS下建立了一个工程文件,把头文件和主函数都包括进去,只是实现LED灯的亮灭,生成BIN文件,用J-TAG调试也运行正常,但是用SUPER VIVI烧写进NAND FLASH就是不运行?请高手提点一 ...…

查看全部问答>

关于anydata的短信接收解码问题

我使用的是 AnyDATA CDMA DTGS800-6025模块 接收短信提前设置  AT+UGSM=1(使用第二套短信接口)  AT+CMGF=0(普通编码输出格式) AT+CMGR=0 接收第一条短信.模块的输出内容是 13 10 43 67 77 71 82 58 32 48 48 48 48 48 50 5 ...…

查看全部问答>

问个关于按键的问题

先描述一下,我程序要用一个读键的函数,已经差不多了,但这是判断读一个键的情况,而我要判断读2键的按下该怎么写呢??? 因为从微观上看,两个键不可能同时按下的,该怎么写呢????? 下面是单个按键的思路,假如我里面要判断一个键3和键4同时按下的状态, ...…

查看全部问答>

求2812EvA计时器诡异问题解答

本人编了一个电机控制程序,由EvA的Timer1作为采样计时器,周期中断后在中断服务程序中进行相关计算(计算与EvA无关)。随后返回等待下一次中断。开始时Timer1的周期值始终不能修改,我赋值0x00ff的值,而查看时他始终为0x1770.后在程序中删除Timer ...…

查看全部问答>

Android系统一些资料下载

【Android系统原理与开发要点详解】09_Android的多媒体系统.pdf The.Android.Developers.Cookbook 2011.pdf Visual_C++_6.0教程_从入门到精通.pdf…

查看全部问答>

求SWD中文协议

小弟想学习一下SWD接口调试的具体过程,那位大侠有SWD中文协议,帮忙发一个,或者帮忙解释一下这个协议。小弟英文不好,看ARM网站上的资料,看不懂。谢谢各个大侠…

查看全部问答>