



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
AVR单片机介绍AVR,它来源于:1997年,由ATMEL公司挪威设计中心的A先生与V先生利用ATMEL公司的Flash新技术,共同研发出RISC精简指令集的高速8位单片机,简称AVR。 AVR单片机特点每种MCU都有自身的优点与缺点,与其它8-bit MCU相比,AVR 8-bit MCU最大的特点是: 哈佛结构,具备1MIPS / MHz的高速运行处理能力; 超功能精简指令集(RISC),具有32个通用工作寄存器,克服了如8051 MCU采用单一ACC进行处理造成的瓶颈现象; 快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号FLASH非常大,特别适用于使用高级语言进行开发; 作输出时与PIC的HI/LOW相同,可输出40mA(单一输出),作输入时可设置为三态高阻抗输入或带上拉电阻输入,具备10mA-20mA灌电流的能力; 片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠; 大部分AVR片上资源丰富:带E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等; 大部分AVR除了有ISP功能外,还有IAP功能,方便升级或销毁应用程序。 性价比高。开发AVR单片机,需要哪些编译器、调试器?软件名称类型简介官方网址AVR StudioIDE、汇编编译器ATMEL AVR Studio集成开发环境(IDE),可使用汇编语言进行开发(使用其它语言需第三方软件协助),集软硬件仿真、调试、下载编程于一体。ATMEL官方及市面上通用的AVR开发工具都支持AVRSGCCAVR (WinAVR) C编译器GCC是Linux的唯一开发语言。GCC的编译器优化程度可以说是目前世界上民用软件中做的最好的,另外,它有一个非常大优点是,免费!在国外,使用它的人几乎是最多的。但,相对而言,它的缺点是,使用操作较为麻烦。 ICC AVRC编译器(集烧写程序功能)市面上(大陆)的教科书使用它作为例程的较多,集成代码生成向导,虽然它的各方面性能均不是特别突出,但使用较为方便。虽然ICCAVR软件不是免费的,但,它有Demo版本,在45天内是完全版。 CodeVision AVR C编译器(集烧写程序功能)与KeilC51的代码风格最为相似,集成较多常用外围器件的操作函数,集成代码生成向导,有软件模块,不是免费软件,Demo版为限2KB版。www.hpinfotech.ro ATman AVR C编译器支持多个模块调试(AVRStudio不支持多个模块调试)。IAR AVR C编译器IAR实际上在国外比较多人使用,但它的价格较为昂贵,所以,中国大陆内,使用它的开发人员较少,只有习惯用IAR的工程师才会去使用它。AVR的仿真方式一般来说,AVR有三种仿真方式:(1)JTAG仿真方式,适用于具备JTAG仿真接口的AVR。如:Atmega16/32,Atmega64/128等。JTAG是IEEE的标准规范, 通过这个标准,可对具有JTAG接口的芯片的硬件电路进行边界扫描和故障检测。部分AVR型号带JTAG仿真调试接口,可使用JTAG仿真方式。(2)debugWIRE仿真方式,适用于具备debugWIRE仿真接口的AVR。如:Attiny13/24/2313,Atmega48/88/168等。debugWIRE 是用以降低成本和调试引脚的开销,ATMEL在AVR器件上使用的新的调试接口:debugWIRE,与JTAG相比其主要区别在于仅使用一根信号线(RESET),即可完成调试信息的交互,达到控制程序流向,执行指令以及编程熔丝位的功能。它的总的连接图如下:这里的 RESET 信号被用于传递调试信息。(3)采用仿真头替代AVR MCU仿真方式,适用于不带仿真接口的AVR。如Attiny26,Atmega8,Atmega8515等。AVR的烧写方式一般来说,AVR的编程方式有:(1)串行编程(即ISP编程)ISP是In System Program的缩写,意思是在系统编程。目前的AVR芯片基本上都具备ISP接口,可通过ISP接口进行编程。它一共使用了两条电源线:VCC、GND,三条信号线:SCK、MOSI、MISO,以及复位线:RESET。由于仅仅使用了几条数据线,所以我们亦常将其称为串行编程。值得注意的是,虽然下载器端使用的信号线名为SCK、MOSI、MISO,但AVR MCU的信号端不一定是名为SCK、MOSI、MISO。AVR的串行编程方式有很多种,如:(1)STK200/STK300:并口下载器多采用该烧写方式,最早期的一种烧写方式,支持型号少,烧写速度低,不支持AVR Studio。(2)STK500:ATMEL最推荐的编程方式,由于采用ATMEL官方的STK500固件,使得它可烧写全系列AVR(若对固件进行升级亦可支持未来的AVR型号),烧写速度非常快,支持AVR Studio。(3)AVRISP(准STK500):由于采用ATMEL官方的STK500固件,使得它可烧写大部分AVR(若对固件进行升级亦可支持未来的AVR型号),烧写速度非常快,支持AVR Studio。(4)AVRISPmkII:由于采用ATMEL官方的AVRISPmkII固件,使得它可烧写大部分AVR(若对固件进行升级亦可支持未来的AVR型号),烧写速度非常快,支持AVR Studio。(5)当然还有其它的ISP方式,但已经那些均不是最为常见的串行编程方式,在此不在作一一介绍。(2)高压/并行编程AVR的高压编程/并行编程,实际上是更早出现的编程方法,它功能强大,但需要:1)连接较多的引脚(故称“并行编程”)2)使用12V电压(故称“高压编程”)联合起来一般叫高压/并行编程。实际上,有些编程是高压/串行编程,如Attiny13。(Attiny13端口非常少)高压/并行编程(理论上)能修复任何熔丝位,例如:1)Attiny13/24/2313、Atmega8/48/88/168等AVR的RESET端口与IO端口是共用的,由于这类AVR的引脚一般较少,(如Attiny13仅有6个IO口),经常出现IO不够用的情况,需要将RESET端口设置为IO端口使用,然而,一旦将RESET设置为IO,便无法再进行ISP编程了,更无法使用ISP恢复RESET功能,因为ISP编程需要RESET功能。然而,这种情况下,使用高压/并行编程,可以恢复RESET功能,(注意:RESET端口与IO端口是共用的AVR,具备debugWIRE功能,“dW”熔丝位必须为启动状态)因为高压/并行编程不需要RESET功能。2)当设置错了熔丝位导致芯片锁死,这种情况下,使用高压/并行编程,可恢复熔丝位。(3)JTAG编程JTAG烧写方式仅适用于带JTAG接口的AVR,另外,JTAG对比ISP烧写方式主要有个缺点:必须占用JTAG对应的IO端口。例如,ATMEGA16必须占用PC2-PC5这几个端口。然而,有时候,缺点也是优点,因为对于IO够用的AVR来说,在产品开发过程,可以用JTAG接口来仿真调试,产品量产后,产品板预留的JTAG接口还可以用来烧写程序。(4)IAP编程AVR MCU的ISP功能和debugWIRE功能是互斥的,也就是说,使能了AVR MCU的 debugWIRE 功能后ISP功能就无法使用,使能了ISP功能后debugWIRE功能就无法使用。那么,怎样确定AVR的RESET引脚 为ISP功能使用还是debugWIRE功能使用呢?在具备debugWIRE 的AVR 器件中,有一个可编程的熔丝位DWEN,如果该熔丝被编程(且lockbits未被编程),则debugWIRE 功能被启用,AVR的RESET 引脚将被作为debugWIRE 功能使用,可与调试器进行debugWIRE仿真通信(此时,ISP 功能被禁用)。AVR芯片出厂时,DWEN熔丝位是未编程的,也即是说ISP 功能是使能的,debugWIRE 被禁用。使用ISP 功能时,通过调试器对debugWIRE熔丝进行编程使能,可启用debugWIRE功能;使用debugWIRE功能时,对通过调试器对debugWIRE熔丝禁止,可使能ISP 功能。编程语言建议使用C而不是汇编开发AVR首先说说C的优点。1、直观,可读性强:这点很重要。对于一个产品,周期是很长的,即使出第一台产品之后,还有很长的维护时间。这中间维护人员可能经常变动,如果可读性强,将给维护工作省下很大的成本。即使是在开发,可读性强的程序也便于查错。 2、模块化可以做的很好:这点也是很重要的。模块化做得好,当然程序得重用性就高。对于公司来说,这一点是关系到公司长远发展的。程序可以重用,说明下一次开发的投入就可以减少,时间也可以加快,多好的事呀。还有很多有点,当然也就是高级语言相对于汇编语言的优点,这里就不一一列举了。再来看看汇编的优点:应该来说,汇编语言操作硬件直观,对于硬件非常熟悉的人来说,直接操作很方便。另外可能就是很多人说的效率要高了。 针对以上两点我来说说,首先“汇编语言操作硬件直观”,这是在代码编写阶段,对于整个产品周期来说,应该是要避免使用汇编语言的,这个在C语言的优点中已经说明。对于第二点,效率问题,目前C语言的编译器优化也做的很好,对于一个汇编不是很熟练的来说,C编出来的程序应该不会效率比汇编低。当然这样就对开发人员的要求降低了很多,人员的限
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 住宅保修管理制度
- 体育锻炼管理制度
- 作业治疗管理制度
- 佳源成本管理制度
- 漳州理工职业学院《体育志愿者服务与管理》2023-2024学年第二学期期末试卷
- 供方选择管理制度
- 供水回收管理制度
- 供热催费管理制度
- 促销执行管理制度
- 南京工业大学《论文写作与统计分析》2023-2024学年第二学期期末试卷
- GB/T 18723-2002印刷技术用黏性仪测定浆状油墨和连接料的黏性
- 绿色数据中心创新实践-冷板液冷系统设计参考白皮书
- 生活饮用水消毒剂和消毒设备卫生安全评价规范(2019年版)
- 《网店运营实务》课程标准
- 岗位练兵中药专业前一百题测试(一)测试题
- 中华传统文化教育学生学习能力评价量化表
- 服装色彩设计(PPT57页)课件
- DLT 596-2021 电力设备预防性试验规程
- 内分泌系统疾病病例分析
- 铝箔轧制油过滤技术
- 基于BIM模型技术交底应用
评论
0/150
提交评论