AVR单片机原理及其在机电系统控制电路中的应用

上传人:fhgo****421 文档编号:253029228 上传时间:2024-11-27 格式:PPTX 页数:220 大小:5.49MB
返回 下载 相关 举报
AVR单片机原理及其在机电系统控制电路中的应用_第1页
第1页 / 共220页
AVR单片机原理及其在机电系统控制电路中的应用_第2页
第2页 / 共220页
AVR单片机原理及其在机电系统控制电路中的应用_第3页
第3页 / 共220页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,机电系统控制电路设计,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,机电系统控制电路设计,*,2024/11/27,1,2 AVR,单片机原理与应用,2.1,单片机电路开发过程,2.2AVR,单片机概述,2.3 Atmega128,硬件体系结构,2.4,基于,Atmega128,的电路系统设计,2024/11/27,2,2.1,单片机电路开发过程,明确系统,设计硬件电路,编写程序,调试和仿真,下载程序,软硬件联调,功能优化,程序优化,2024/11/27,3,明确系统,系统要求:,利用,AVR,单片机来控制一个红色,LED,和绿色,LED,。电路加电后,两个,LED,均点亮,,1s,后熄灭,然后点亮绿色的,LED,,,1s,以后,绿色的,LED,熄灭,然后红色的,LED,点亮,1s,。最后红色的,LED,和绿色的,LED,以,1Hz,左右的频率闪烁。,需要考虑的元器件:,AVR,单片机一片、,DC/DC,转换模块、发光二极管若干、电容若干、电阻若干、晶振一个、按钮一个等。,2.1,单片机电路开发过程,2024/11/27,4,设计硬件电路,2.1,单片机电路开发过程,2024/11/27,5,编写程序,2.1,单片机电路开发过程,2024/11/27,6,调试和仿真,编译项目,2.1,单片机电路开发过程,2024/11/27,7,程序下载,下载程序,2.1,单片机电路开发过程,返回,2024/11/27,8,2.2AVR,单片机概述,ATMEL,公司是世界上,高级半导体产品,设计、制造和行销的领先者,产品包括了,微处理器,、,可编程逻辑器件,、,非易失性存储器,、,安全芯片,、,混合信号及,RF,射频集成电路,。,1997,年,由,ATMEL,公司,挪威,设计中心的,A,先生与,V,先生利用,ATMEL,公司的,Flash,新技术,共同研发出,RISC,精简指令集,的高速,8,位单片机,简称,AVR,。,相对于出现较早也较为成熟的,51,系列单片机,,AVR,系列单片机片内资源更为丰富,接口也更为强大,同时由于其价格低等优势,在很多场合可以替代,51,系列单片机。,2024/11/27,9,2.2AVR,单片机概述,AVR,单片机特点,-,速度快,AVR,微处理器,以更快的速度运行程序,-MIPS/MHz,AVR RISC ,速度优先,5,个并行数据总线,32,个累加器,单时钟周期,8, 16, 24, 32,和64-,bit,算术操作,增强的,RISC,指令集,线性地址映射,为速度而设计,2,时钟周期的硬件乘法器,嵌入式高速存储器,MIPS,即,Million Instruction Per Second,的简写计算机每秒种执行的百万指令数。是衡量计算机速度的指标。,2024/11/27,10,2.2AVR,单片机概述,AVR,单片机特点,-,片上资源丰富,AVR,微处理器,减小,PCB,尺寸,AVR ALL INSIDE,高集成度,Flash,程序存储器,EEPROM,数据存储器,CPU,外部存储器接口,PWM,SRAM,数据存储器,TWI 8-bit,定时器,硬件乘法器,SPI 16-bit,定时器,中断处理,U(S)ART,实时时钟,上电复位,10-,bit ADC,输入捕捉,看门狗定时器 掉电检测 输出比较,片内振荡器,模拟比较器 上拉电阻,2022/12/30,11,2.2AVR,单片机概述,AVR,单片机特点,-,代码更少,AVR,微处理器,减小你的程,序,序代码,AVR RISC ,为最小代码,而,而设计,5,个并行数据,总,总线,32,个累加器,4,个数据/堆,栈,栈指针,8, 16, 24,32,和64-,bit,算术操作,增强的,RISC,指令集,线性地址影,射,射,适应,ANSIC,和汇编相比,付,付出代价极,小,小,指令集由编,译,译专家建构,和,和调整,2022/12/30,12,传统的折衷方式,适合于,ANSI C,速度,传统,CISC,传统,RISC,代码效率,速度,2.2AVR,单片机概述,AVR,单片机特点,-,代码更少,2022/12/30,13,AVR,微处理器,降低系统功,耗,耗,每一个电子,都,都被考虑在,内,内:,单时钟周期,执,执行,5,个并行数据,总,总线,6,种,MCU,睡眠模式,最小幅度振,荡,荡器,0,泄漏输入,1.8 6.0,V,工作电压,2.2AVR,单片机概述,AVR,单片机特点,-,功耗更低,2022/12/30,14,2.2AVR,单片机概述,AVR,单片机特点,-,可选择型号种类多,MEGAAVRATmegaxxx(16KB-128KB),针,对,对,需,需,要,要,大,大,程,程,序,序,容,容,量,量,的,的,复,复,杂,杂,应,应,用,用,ClassicAVRAT90Sxxxx(1KB-8KB),针,对,对,需,需,要,要,大,大,吞,吞,吐,吐,量,量,,,,,低,低,功,功,耗,耗,和,和,中,中,等,等,程,程,序,序,容,容,量,量,的,的,应,应,用,用,TinyAVRATtinyxx(1KB-2KB),针,对,对,需,需,要,要,低,低,价,价,格,格,的,的,低,低,端,端,8,位,MCU,市,场,场,2022/12/30,15,2.2AVR,单片机概述,AVR,单片机特点,-,可选择型号种类多,存,储,储,器,器,大,大,小,小,性,能,能,(1,KB-2KB),(1,KB-8KB),(16,KB-128KB),完,全,全,兼,兼,容,容,2022/12/30,16,低,功,功,耗,耗,mega8,新,产,产,品,品,已,淘,淘,汰,汰,主,流,流,产,产,品,品,未,来,来,产,产,品,品,90,S2313,90,S2323/43,tiny28,90,S8535,mega161,tiny15,90,S4433,mega128,mega8,90,S8515,tiny26,mega32,mega8515,mega8535,tiny13,mega169,mega162,mega64,tiny2313,mega256,mega16,90,S1200,tiny11/12,mega329,CANAVR,mega103,2.2AVR,单片机概述,AVR,单片机产品更新换代,2022/12/30,17,AVR,的中低档,Tiny,与,AT,90,S,系列产品,2.2AVR,单片机概述,2022/12/30,18,AVR,的中高档,Mega,系列产品,2.2AVR,单片机概述,2022/12/30,19,ATtiny10/11/12,特点,2.2AVR,单片机概述,2022/12/30,20,ATtiny10/11/12,特点,2.2AVR,单片机概述,2022/12/30,21,ATtiny10/11/12,特点,2.2AVR,单片机概述,2022/12/30,22,ATtiny10/11/12,特点,2.2AVR,单片机概述,2022/12/30,23,AT90S1200,单片机特点,2.2AVR,单片机概述,2022/12/30,24,AT90S1200,单片机特点,2.2AVR,单片机概述,2022/12/30,25,AT90S8515,单片机特点,2022/12/30,26,AT90S8515,单片机特点,2.2AVR,单片机概述,2022/12/30,27,AT90S8515,单片机特点,2.2AVR,单片机概述,2022/12/30,28,ATmega8,单片机特点,2.2AVR,单片机概述,2022/12/30,29,2.2AVR,单片机概述,ATmega8,单片机特点,2022/12/30,30,2.2AVR,单片机概述,ATmega8,单片机特点,2022/12/30,31,引脚配,置,置,2.2AVR,单片机概述,ATmega8,单片机特点,返回,2022/12/30,32,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,Atmega128,引脚配置及,说,说明,Atmega128,的存储器组,织,织,Atmega128,的重要寄存,器,器介绍,Atmega128,基本配置电,路,路,2022/12/30,33,Atmega128,的,I/O,端口,2.3 Atmega128,硬件体系结构,Atmega128,的中断处理,Atmega128,的定时,/,计数器,Atmega128,的,USART,Atmega128,的,TWI,(,I2C,),2022/12/30,34,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,高性能、低,功,功耗的,AVR 8,位微处理器,先进的,RISC,结构, 133,条指令,大多数可以,在,在一个时钟,周,周期内完成, 32x 8,通用工作寄,存,存器,+,外设控制寄,存,存器,全静态工作,工作于,16 MHz,时性能高达,16 MIPS,只需两个时,钟,钟周期的硬,件,件乘法器,2022/12/30,35,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,非易,失,失性,的,的程,序,序和,数,数据,存,存储,器,器,128K,字节,的,的系,统,统内,可,可编,程,程,Flash,寿命,:10,000,次写,/,擦除,周,周期,4K,字节,的,的,EEPROM,寿命,:100,000,次写,/,擦除,周,周期,4K,字节,的,的内,部,部,SRAM,多达,64K,字节,的,的优,化,化的,外,外部,存,存储,器,器空,间,间,可以,对,对锁,定,定位,进,进行,编,编程,以,以实,现,现软,件,件加,密,密,可以,通,通过,SPI,实现,系,系统,内,内编,程,程,2022/12/30,36,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,JTAG,接口,(,与,IEEE1149.1,标准,兼,兼容,),遵循,JTAG,标准,的,的边,界,界扫,描,描功,能,能,支持,扩,扩展,的,的片,内,内调,试,试,通过,JTAG,接口,实,实现,对,对,Flash,EEPROM,熔丝,位,位和,锁,锁定,位,位的,编,编程,2022/12/30,37,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,外设,特,特点,两个,具,具有,独,独立,的,的预,分,分频,器,器和,比,比较,器,器功,能,能的,8,位定,时,时器,/,计数,器,器,两个,具,具有,预,预分,频,频器,、,、比,较,较功,能,能和,捕,捕捉,功,功能,的,的,16,位定,时,时器,/,计数,器,器,具有,独,独立,预,预分,频,频器,的,的实,时,时时,钟,钟计,数,数器,两路,8,位,PWM,输出,比,比较,调,调制,器,器,6,路分,辨,辨率,可,可编,程,程(,2,到,16,位),的,的,PWM,2022/12/30,38,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,外,设,设,特,特,点,点,8,路,10,位,ADC,8,个,单,单,端,端,通,通,道,道,,,7,个,差,差,分,分,通,通,道,道,,,2,个,具,具,有,有,可,可,编,编,程,程,增,增,益,益,(,(,1x,10x,或,200x,),的,的,差,差,分,分,通,通,道,道,面,向,向,字,字,节,节,的,的,两,两,线,线,接,接,口,口,两,个,个,可,可,编,编,程,程,的,的,串,串,行,行,USART,可,工,工,作,作,于,于,主,主,机,机,/,从,机,机,模,模,式,式,的,的,SPI,串,行,行,接,接,口,口,具,有,有,独,独,立,立,片,片,内,内,振,振,荡,荡,器,器,的,的,可,可,编,编,程,程,看,看,门,门,狗,狗,定,定,时,时,器,器,片,内,内,模,模,拟,拟,比,比,较,较,器,器,2022/12/30,39,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,特,殊,殊,的,的,处,处,理,理,器,器,特,特,点,点,上,电,电,复,复,位,位,以,以,及,及,可,可,编,编,程,程,的,的,掉,掉,电,电,检,检,测,测,片,内,内,经,经,过,过,标,标,定,定,的,的,RC,振,荡,荡,器,器,片,内,内,/,片,外,外,中,中,断,断,源,源,6,种,睡,睡,眠,眠,模,模,式,式,:,空,闲,闲,模,模,式,式,、,、,ADC,噪,声,声,抑,抑,制,制,模,模,式,式,、,、,省,省,电,电,模,模,式,式,、,、,掉,掉,电,电,模,模,式,式,、,、,Standby,2022/12/30,40,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,模式以,及,及扩展,的,的,Standby,模式,可以通,过,过软件,进,进行选,择,择的时,钟,钟频率,通过熔,丝,丝位可,以,以选择,ATmega103,兼容模,式,式,全局上,拉,拉禁止,功,功能,I/O,和封装, 53,个可编,程,程,I/O,口线, 64,引脚,TQFP,与,64,引脚,MLF,封装,2022/12/30,41,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,工作电,压,压, 2.7- 5.5VATmega128L, 4.5- 5.5VATmega128,速度等,级,级, 0-8 MHzATmega128L, 0-16MHzATmega128,2022/12/30,42,2.3 Atmega128,硬件体系结构,Atmega128,芯片特性,返回,2022/12/30,43,Atmega128,引脚配置及说明,2022/12/30,44,2.3 Atmega128,硬件体系结构,Atmega128,引脚配置及说明,VCC,数字电,路,路的电源。,GND,地。,端口,A(PA7.PA0),端口,A,为,8,位双向,I/O,口,并具有,可,可编程的内,部,部上拉电阻,。,。其输出缓,冲,冲器具有对,称,称的驱动特,性,性,可以输,出,出和吸收大,电,电流。作为,输,输入使用时,,,,若内部上,拉,拉电阻使能,,,,则端口被,外,外部电路拉,低,低时将输出,电,电流。复位,发,发生时端口,A,为三态。,端口,B(PB7.PB0),端口,B,为,8,位双向,I/O,口,并具有,可,可编程的内,部,部上拉电阻,。,。其输出缓,冲,冲器具有对,称,称的驱动特,性,性,可以输,出,出和吸收大,电,电流。作为,输,输入使用时,,,,若内部上,拉,拉电阻使能,,,,则端口被,外,外部电路拉,低,低时将输出,电,电流。复位,发,发生时端口,B,为三态。,2022/12/30,45,2.3 Atmega128,硬件体系结构,Atmega128,引脚配置及说明,端口,C(PC7.PC0),端口,C,为,8,位双向,I/O,口,并具有,可,可编程的内,部,部上拉电阻,。,。其输出缓,冲,冲器具有对,称,称的驱动特,性,性,可以输,出,出和吸收大,电,电流。作为,输,输入使用时,,,,若内部上,拉,拉电阻使能,,,,则端口被,外,外部电路拉,低,低时将输出,电,电流。复位,发,发生时端口,C,为三态。,端口,D(PD7.PD0),端口,D,为,8,位双向,I/O,口,并具有,可,可编程的内,部,部上拉电阻,。,。其输出缓,冲,冲器具有对,称,称的驱动特,性,性,可以输,出,出和吸收大,电,电流。作为,输,输入使用时,,,,若内部上,拉,拉电阻使能,,,,则端口被,外,外部电路拉,低,低时将输出,电,电流。复位,发,发生时端口,D,为三态。,2022/12/30,46,2.3 Atmega128,硬件体系结构,Atmega128,引脚配置及说明,端口,F(PF7.PF0),端口,F,为,ADC,的模拟输入,引,引脚。如果,不,不作为,ADC,的模拟输入,,,,端口,F,可以作为,8,位双向,I/O,口,并具有,可,可编程的内,部,部上拉电阻,。,。其输出缓,冲,冲器具有对,称,称的驱动特,性,性,可以输,出,出和吸收大,电,电流。作为,输,输入使用时,,,,若内部上,拉,拉电阻使能,,,,则端口被,外,外部电路拉,低,低时将输出,电,电流。复位,发,发生时端口,F,为三态。,如,如果使能,了,了,JTAG,接口,则,复,复位发生,时,时引脚,PF7(TDI),、,PF5(TMS),和,PF4(TCK),的上拉电,阻,阻使能。,端,端口,F,也可以作,为,为,JTAG,接口。,端口,G(PG4.PG0),端口,G,为,5,位双向,I/O,口,并具,有,有可编程,的,的内部上,拉,拉电阻。,其,其输出缓,冲,冲器具有,对,对称的驱,动,动特性,,可,可以输出,和,和吸收大,电,电流。作,为,为输入使,用,用时,若,内,内部上拉,电,电阻使能,,,,则端口,被,被外部电,路,路拉低时,将,将输出电,流,流。复位,发,发生时端,口,口,G,为三态。,2022/12/30,47,2.3 Atmega128,硬件体系结构,Atmega128,引脚配置及说明,RESET,复位,输,输入引脚,。,。超过最,小,小门限时,间,间的低电,平,平将引起,系,系统复位,。,。低于门,限,限时间的,脉,脉冲不能,保,保证可靠,复,复位。,XTAL1,反向,振,振荡器放,大,大器及片,内,内时钟操,作,作电路的,输,输入。,XTAL2,反向,振,振荡器放,大,大器的输,出,出。,AVCC,AVCC,为端口,F,以及,ADC,转换器的,电,电源,需,要,要与,VCC,相连接,,即,即使没有,使,使用,ADC,也应该如,此,此。使用,ADC,时应该通,过,过一个低,通,通滤波器,与,与,VCC,连接。,AREF,AREF,为,ADC,的模拟基,准,准输入引,脚,脚。,PEN,PEN,是,SPI,串行下载,的,的使能引,脚,脚。在上,电,电复位时,保,保持,PEN,为低电平,将,将使器件,进,进入,SPI,串行下载,模,模式。在,正,正常工作,过,过程中,PEN,引脚没有,其,其他功能,。,。,返回,2022/12/30,48,2.3 Atmega128,硬件体系结构,Atmega128,基本配置电路,Atmega,128,单片机,复位电路,时钟电路,下载电路,电源,2022/12/30,49,Atmega128,基本配置电路,电源模块,任,何,何,电,电,路,路,控,控,制,制,系,系,统,统,,,,,首,首,要,要,解,解,决,决,的,的,问,问,题,题,是,是,电,电,源,源,问,问,题,题,。,。,对,对,于,于,单,单,片,片,机,机,控,控,制,制,系,系,统,统,而,而,言,言,,,,,电,电,源,源,系,系,统,统,的,的,稳,稳,定,定,性,性,决,决,定,定,着,着,控,控,制,制,系,系,统,统,的,的,稳,稳,定,定,性,性,,,,,也,也,是,是,系,系,统,统,能,能,否,否,可,可,靠,靠,工,工,作,作,的,的,前,前,提,提,条,条,件,件,。,。,如,如,何,何,设,设,计,计,一,一,个,个,单,单,片,片,机,机,控,控,制,制,系,系,统,统,的,的,电,电,源,源,?,?,这,这,是,是,我,我,们,们,设,设,计,计,过,过,程,程,中,中,首,首,要,要,解,解,决,决,的,的,问,问,题,题,。,。,2022/12/30,50,Atmega128,基本配置电路,复位电路,复,位,位,电,电,路,路,可,可,以,以,由,由,简,简,单,单,的,的,RC,电,路,路,构,构,成,成,,,,,但,但,在,在,对,对,稳,稳,定,定,性,性,有,有,较,较,高,高,要,要,求,求,的,的,应,应,用,用,场,场,合,合,,,,,一,一,般,般,要,要,采,采,用,用,专,专,用,用,的,的,复,复,位,位,芯,芯,片,片,(,(,如,如,MAX809/810,等,),),。,。,这,这,里,里,给,给,出,出,常,常,见,见,的,的,RC,复,位,位,电,电,路,路,,,,,可,可,以,以,满,满,足,足,一,一,般,般,应,应,用,用,的,的,需,需,要,要,。,。,系,统,统,上,上,电,电,复,复,位,位,:,:在,系,系,统,统,上,上,电,电,时,时,,,,,通,通,过,过,电,电,阻,阻,R,1,向,电,电,容,容,C,1,充,电,电,,,,,当,当,C,1,两,端,端,的,的,电,电,压,压,未,未,达,达,到,到,高,高,电,电,平,平,的,的,门,门,限,限,电,电,压,压,时,时,,,,,Reset,端,输,输,出,出,为,为,低,低,电,电,平,平,,,,,系,系,统,统,处,处,于,于,复,复,位,位,状,状,态,态,;,;,当,当,C,1,两,端,端,的,的,电,电,压,压,达,达,到,到,高,高,电,电,平,平,的,的,门,门,限,限,电,电,压,压,时,时,,,,,Reset,端,输,输,出,出,为,为,高,高,电,电,平,平,,,,,系,系,统,统,进,进,入,入,正,正,常,常,工,工,作,作,状,状,态,态,。,。,手,动,动,复,复,位,位,:,:当,按,按,下,下,复,复,位,位,按,按,钮,钮,S,1,时,,,,,C,1,两,端,端,的,的,电,电,荷,荷,被,被,放,放,掉,掉,,,,,Reset,端,输,输,出,出,为,为,低,低,电,电,平,平,,,,,系,系,统,统,进,进,入,入,复,复,位,位,状,状,态,态,,,,,再,再,重,重,复,复,以,以,上,上,的,的,充,充,电,电,过,过,程,程,,,,,系,系,统,统,进,进,入,入,正,正,常,常,工,工,作,作,状,状,态,态,。,。,2022/12/30,51,Atmega128,基本配置电路,复位电路,MAX809,是一,种,种单,一,一功,能,能的,微,微处,理,理器,复,复位,芯,芯片,,,,用,于,于监,控,控微,控,控制,器,器和,其,其他,逻,逻辑,系,系统,的,的电,源,源电,压,压。,它,它可,以,以在,上,上电,、,、掉,电,电和,节,节电,情,情况,下,下向,微,微控,制,制器,提,提供,复,复位,信,信号,。,。当,电,电源,电,电压,低,低于,预,预设,的,的门,槛,槛电,压,压时,,,,器,件,件会,发,发出,复,复位,信,信号,,,,直,到,到在,一,一段,时,时间,内,内电,源,源电,压,压又,恢,恢复,到,到高,于,于门,槛,槛电,压,压为,止,止。,从,从图,中,中可,以,以看,出,出,,MAX809,是低,电,电平,有,有效,的,的复,位,位器,件,件,,而,而同,类,类的,MAX810,是高,电,电平,有,有效,的,的复,位,位输,出,出。,MAX809,复位电路,2022/12/30,52,Atmega128,基本配置电路,上电,复,复位:当,电,电源,电,电压,低,低于,上,上电,复,复位,门,门限,(V,POT,),时,,MCU,复位,。,。,外部,复,复位:当,引,引脚,RESET,上的,低,低电,平,平持,续,续时,间,间大,于,于最,小,小脉,冲,冲宽,度,度时,MCU,复位,。,。,看门,狗,狗复,位,位:当,看,看门,狗,狗使,能,能并,且,且看,门,门狗,定,定时,器,器超,时,时时,复,复位,发,发生,。,。,掉电,检,检测,复,复位:当,掉,掉电,检,检测,复,复位,功,功能,使,使能,,,,且,电,电源,电,电压,低,低于,掉,掉电,检,检测,复,复位,门,门限,(V,BOT,),时,MCU,即复,位,位。,JTAGAVR,复位:当,复,复位,寄,寄存,器,器为,1,时,MCU,即复,位,位。,ATmega128,有,5,个复位源:,2022/12/30,53,Atmega128,基本配置电路,ATmega128,复位逻辑,2022/12/30,54,Atmega128,基本配置电路,ATmega128,复位特性,2022/12/30,55,Atmega128,基本配置电路,上电复位时序,MCU,启动过程,,RESET,连接到,VCC,2022/12/30,56,Atmega128,基本配置电路,上电复位时序,MCU,启动过程,,RESET,由外电路控制,2022/12/30,57,Atmega128,基本配置电路,外部复位时序,工作过程中发生外部复位,2022/12/30,58,看门狗,定,定时器,溢,溢出时,将,将产生,持,持续时,间,间为,1,个,CK,周期的,复,复位脉,冲,冲。在,脉,脉冲的,下,下降沿,,,,延时,定,定时器,开,开始对,t,TOUT,记数。,Atmega128,基本配置电路,看门狗复位时序,2022/12/30,59,Atmega128,基本配置电路,看门狗定时器,看门狗,定,定时器,的,的设定,可,可以调,解,解看门,狗,狗复位,的,的时间,间,间隔。,看,看门狗,定,定时器,由,由独立,的,的,1 Mhz,片内振,荡,荡器驱,动,动。不,同,同供电,电,电压,,振,振荡器,频,频率不,同,同。通,过,过设置,看,看门狗,定,定时器,的,的预分,频,频器可,以,以调节,看,看门狗,复,复位的,时,时间间,隔,隔。看,门,门狗复,位,位指令,WDR,用来复,位,位看门,狗,狗定时,器,器。此,外,外,禁,止,止看门,狗,狗定时,器,器或发,生,生复位,时,时定时,器,器也被,复,复位。,复,复位时,间,间有,8,个选项,。,。如果,没,没有及,时,时复位,定,定时器,,,,一旦,时,时间超,过,过复位,周,周期,,ATmega128,就复位,,,,并执,行,行复位,向,向量指,向,向的程,序,序。,2022/12/30,60,看门狗,定,定时器,预,预分频,器,器选项,Atmega128,基本配置电路,看门狗定时器,2022/12/30,61,Atmega128,基本配置电路,看门狗定时器,要实现,看,看门狗,定,定时器,的,的功能,,,,必须,了,了解看,门,门狗定,时,时器控,制,制寄存,器,器,WDTCR,。,Bits 7.5,Res:,保留,保留位,,,,读操,作,作返回,值,值为零,。,。,2022/12/30,62,Atmega128,基本配置电路,看门狗定时器,Bit4, WDCE:,看门狗,修,修改使,能,能,清零,WDE,时必须,先,先置位,WDCE,,否则,不,不能禁,止,止看门,狗,狗。一,旦,旦置位,,,,硬件,将,将在紧,接,接的,4,个时钟,周,周期之,后,后将其,清,清零。,要实现,看,看门狗,定,定时器,的,的功能,,,,必须,了,了解看,门,门狗定,时,时器控,制,制寄存,器,器,WDTCR,。,2022/12/30,63,Atmega128,基本配置电路,看门狗定时器,Bit3 WDE:,看门狗使,能,能,WDE,为,1 ,时,看门,狗,狗使能,,否,否则看门,狗,狗将被禁,止,止。只有,在,在,WDCE,为,1 ,时,WDE,才能清零,。,。,以下为关,闭,闭看门狗,的,的步骤:,1.,在同一个,指,指令内对,WDCE,和,WDE,写,1 ,,即使,WDE,已经为,1 ,。,2.,在紧接的,4,个时钟周,期,期之内对,WDE,写,0 ,。,2022/12/30,64,Atmega128,基本配置电路,看门狗定时器,Bits2.0 WDP2, WDP1,WDP0:,看门狗定,时,时器预分,频,频器,2, 1,和,0,2022/12/30,65,Atmega128,基本配置电路,软件设置看门狗定时器,2022/12/30,66,Atmega128,基本配置电路,时钟电路,所谓时钟,实际上,就,就是以一,个,个特定频,率,率连续不,断,断出现的,方,方波。单,片,片机在每,一,一个方波,的,的上升沿,执,执行指令,。,。一条指,令,令如果能,在,在一个时,钟,钟周期(,即,即方波的,一,一个周期,),)内执行,完,完,成为,“,“单周期,指,指令”,,否,否则称为,“,“多周期,指,指令”。,2022/12/30,67,Atmega128,基本配置电路,时钟电路,应当注意,的,的是,这,里,里所说的,“,“一个指令”,指的,是,是一条汇编语句,而不是,C,语句。一条,C,语句可能,会,会被编译,成,成若干条,汇,汇编语句,,,,而不同,的,的,C,编译器编,译,译的结果,可,可能是不,同,同的,即,便,便是同一,个,个,C,编译器,,在,在不同条,件,件下对同,一,一条,C,语句进行,编,编译的结,果,果也可能,是,是不同的,。,。这就意,味,味着,无,法,法预知一,条,条,C,语句将占,用,用多少个,时,时钟周期,(,(即运行,多,多长时间,),)。这就,是,是用,C,语言对单,片,片机进行,编,编程的缺,点,点,在某,些,些对时序,要,要求极高,的,的情况下,,,,人们通,常,常采用汇,编,编语言或,者,者将,C,语言,与,与汇,编,编语,言,言混,合,合使,用,用。,但,但对,于,于初,学,学者,而,而言,,,,用,C,语言,对,对单,片,片机,进,进行,编,编程,简,简单,易,易学,,,,且,足,足以,满,满足,大,大部,分,分的,需,需要,。,。,2022/12/30,68,Atmega128,基本配置电路,时钟电路,2022/12/30,69,Atmega128,基本配置电路,时钟电路,2022/12/30,70,Atmega128,基本配置电路,时钟电路,程序内部显示时钟,软件设置时钟频率,2022/12/30,71,芯片有如下几种通过,熔丝位,选择的时钟源,Atmega128,基本配置电路,时钟电路,2022/12/30,72,Atmega128,基本配置电路,时钟电路,AVR,系,列,列,单,单,片,片,机,机,在,在,仿,仿,真,真,调,调,试,试,之,之,前,前,,,,,首,首,先,先,必,必,须,须,对,对,AVR,的,熔,熔,丝,丝,位,位,和,和,锁,锁,定,定,位,位,进,进,行,行,配,配,置,置,。,。,如,如,果,果,配,配,置,置,不,不,当,当,,,,,则,则,可,可,能,能,造,造,成,成,单,单,片,片,机,机,不,不,能,能,正,正,常,常,工,工,作,作,,,,,严,严,重,重,时,时,可,可,能,能,导,导,致,致,单,单,片,片,机,机,死,死,锁,锁,。,。,因,因,此,此,,,,,对,对,单,单,片,片,机,机,熔,熔,丝,丝,位,位,和,和,锁,锁,定,定,位,位,的,的,正,正,确,确,配,配,置,置,显,显,得,得,尤,尤,为,为,重,重,要,要,。,。,熔,丝,丝,位,位,是,是,对,对,单,单,片,片,机,机,具,具,体,体,功,功,能,能,和,和,工,工,作,作,模,模,式,式,的,的,限,限,定,定,,,,,其,其,正,正,确,确,配,配,置,置,与,与,否,否,直,直,接,接,影,影,响,响,到,到,单,单,片,片,机,机,能,能,否,否,正,正,常,常,工,工,作,作,;,锁,定,定,位,位,是,是,对,对,单,单,片,片,机,机,的,的,程,程,序,序,和,和,数,数,据,据,进,进,行,行,加,加,密,密,,,,,以,以,防,防,止,止,单,单,片,片,机,机,中,中,的,的,程,程,序,序,和,和,数,数,据,据,被,被,读,读,出,出,或,或,写,写,入,入,。,。,在,在,进,进,行,行,配,配,置,置,时,时,,,,,一,一,般,般,先,先,配,配,置,置,熔,熔,丝,丝,位,位,,,,,再,再,配,配,置,置,锁,锁,定,定,位,位,。,。,2022/12/30,73,ATmega128,的熔丝位共,有,有,3,个字节:,熔,熔丝位扩展,字,字节、熔丝,位,位高字节和,熔,熔丝位低字,节,节。,Atmega128,基本配置电路,时钟电路,软件设置熔丝位,2022/12/30,74,Atmega128,基本配置电路,下载电路,当,RESET,位低电平,时,时,可以,通,通过串行,SPI,总线对,Flash,及,EEPROM,进行编程,。,。串行接,口,口包括,SCK,、,MOSI(,输入,),及,MISO(,输出,),。,RESET,为低之后,,,,应在执,行,行编程,擦,擦除操作,之,之前执行,编,编程允许,指,指令。,不,不是所有,的,的器件都,使,使用,SPI,引脚专用,于,于内部,SPI,接口。,注意,在,串,串行载入,的,的说明中,,,,,MOSI,与,MISO,分别描述,连,连续数据,的,的输入与,输,输出。在,ATmega128,中,这些,引,引脚映射,为,为,PDI,与,PDO,。,SPI,串行编程,及,及,JTAG,编程,2022/12/30,75,Atmega128,基本配置电路,下载电路,Atmega128 SPI,串行编程,引,引脚映射,尽管,SPI,编程接口,重,重用,SPII/O,模块,但,其,其中有一,点,点不同:,MOSI/MISO,引脚映射,到,到,SPII/O,模块的,PB2,与,PB3,在编程接,口,口并不使,用,用。 而,PE0,与,PE1,用来传递,数,数据,.,2022/12/30,76,Atmega128,基本配置电路,下载电路,通过,JTAG,接口进行,编,编程需要,控,控制,4,个,JTAG,专用引脚,:,TCK,、,TMS,、,TDI,及,TDO,。,reset,及时钟引,脚,脚不用控,制,制。,JTAG(Joint TestAction Group;,联合测试,行,行动小组,),是一种国,际,际标准测,试,试协议(,IEEE1149.1,兼容),,主,主要用于,芯,芯片内部,测,测试。现,在,在多数的,高,高级器件,都,都支持,JTAG,协议,如,MCU,、,DSP,、,FPGA,器件等。,JTAG,编程方式,是,是在线编,程,程,传统,生,生产流程,中,中先对芯,片,片进行预,编,编程现再,装,装到板上,因,因此而改,变,变,简化,的,的流程为,先,先固定器,件,件到电路,板,板上,再,用,用,JTAG,编程,从,而,而大大加,快,快工程进,度,度。,2022/12/30,77,Atmega128,基本配置电路,下载电路,返,回,回,2022/12/30,78,2.3 Atmega128,硬件体系结构,Atmega128,的,CPU,内核结构,2022/12/30,79,CPU,的,主,主,要,要,任,任,务,务,是,是,保,保,证,证,程,程,序,序,的,的,正,正,确,确,执,执,行,行,。,。,因,因,此,此,它,它,必,必,须,须,能,能,够,够,访,访,问,问,存,存,储,储,器,器,,,,,执,执,行,行,运,运,算,算,,,,,控,控,制,制,外,外,设,设,以,以,及,及,处,处,理,理,中,中,断,断,。,。,为,了,了,得,得,到,到,最,最,大,大,程,程,度,度,的,的,性,性,能,能,以,以,及,及,并,并,行,行,性,性,,,,,AVR,采,用,用,了,了,Harvard,结,构,构,,,,,具,具,有,有,独,独,立,立,的,的,数,数,据,据,和,和,程,程,序,序,总,总,线,线,。,。,程,程,序,序,存,存,储,储,器,器,的,的,指,指,令,令,通,通,过,过,一,一,级,级,流,流,水,水,线,线,运,运,行,行,。,。,CPU,在,执,执,行,行,一,一,条,条,指,指,令,令,的,的,同,同,时,时,读,读,取,取,下,下,一,一,条,条,指,指,令,令,(,在,本,本,文,文,称,称,为,为,预,预,取,取,),。,这,这,个,个,概,概,念,念,实,实,现,现,了,了,指,指,令,令,的,的,单,单,时,时,钟,钟,周,周,期,期,运,运,行,行,。,。,程,程,序,序,存,存,储,储,器,器,为,为,可,可,以,以,在,在,线,线,编,编,程,程,的,的,FLASH,。,快速访,问,问寄存,器,器文件,包,包括,32,个,8,位通用,工,工作寄,存,存器,,而,而且都,可,可以在,一,一个时,钟,钟周期,内,内访问,。,。从而,实,实现单,时,时钟周,期,期的,ALU,操作。,在,在典型,的,的,ALU,操作过,程,程中,,两,两个位,于,于寄存,器,器文件,中,中的操,作,作数同,时,时被访,问,问,然,后,后执行,相,相应的,运,运算,,结,结果再,被,被送回,寄,寄存器,文,文件。,整,整个过,程,程仅需,要,要一个,时,时钟周,期,期。,Atmega128,的,CPU,内核结构,2022/12/30,80,2.3 Atmega128,硬件体系结构,Atmega128,的存储器组织,Flash,程序存储器,SRAM,数据存储器,EEPROM,数据存储器,2022/12/30,81,Flash,程序存储器,Atmega128,的存储器组织,ATmega128,具有,128K,字节的,在,在线编,程,程,Flash,。因为,所,所有的,AVR,指令为,16,位或,32,位,故,尔,尔,FLASH,组织成,64Kx16,的形式,。,。考虑,到,到软件,安,安全性,,,,,Flash,程序存,储,储器分,为,为两个,区,区:引,导,导程序,区,区和应,用,用程序,区,区。,Flash,存储器,至,至少可,以,以擦写,10,000,次。,ATmega128,的程序,计,计数器,PC,为,16,位,因,此,此可以,寻,寻址,64K,的程序,存,存储器,。,。,可,利用,SPI,或,JTAG,接口实,现,现对,Flash,的串行,下,下载。,2022/12/30,82,Flash,程序存储器,Atmega128,的存储器组织,一般,而,而言,,,,,C,程序,中,中的变量可以,选,选择,存,存放,在,在,SRAM,或者,EEPROM,中,,而,而常量可以,选,选择,放,放在,SRAM,或者,Flash,中。,标,标准,C,的变,量,量类,型,型一,般,般都,适,适用,于,于单,片,片机,的,的,C,语言,,,,如,char,、,float,、,double,、,unsignedint,等。,CodeVisionAVRC,编译,器,器中,的,的数,据,据类,型,型如,下,下表,所,所示,。,。,2022/12/30,83,AVR,单片,机,机中,的,的,Flash,本来,是,是用,作,作程,序,序存,储,储空,间,间的,,,,但,可,可以,利,利用,其,其存储,容,容量,大,大的特,点,点,,在,在剩,余,余足,够,够空,间,间的,前,前提,下,下,,将,将一,些,些在,使,使用,中,中没,有,有必,要,要改,变,变的,数,数值,或,或者,字,字符,串,串等,存,存放,在,在,Flash,中。,当,当然,,,,也,可,可以,将,将其,存,存放,在,在,SRAM,中,,但,但,Flash,比,SRAM,的空,间,间大,好,好几,倍,倍;,此,此外,这,这些,数,数值,或,或字,符,符串,在,在使,用,用过,程,程中,没,没有,必,必要,改,改动,,,,存,放,放在,Flash,中会比,存,存放在,SRAM,更合适,。,。,CodeVisionAVR C,编译器,对,对于用,户,户没有,指,指定只,能,能保存,在,在,Flash,中的字,符,符串,,在,在启动,时,时将字,符,符串从,程,程序存,储,储区复,制,制到数据存,储,储区。,Char *ptr_to_sram,”thisisplacedinSRAM”;,上面例,子,子中没,有,有指定,字,字符串,只,只存储,于,于,Flash,,因此,启,启动时,会,会将该,字,字符串,复,复制到,数,数据存,储,储空间,。,。,Charflash*ptr_to_flash,”thisisplacedinFlash”;,在上例,中,中,用,户,户使用,了,了,flash,关键字,,,,因此,字,字符串,只,只存储,于,于,Flash,空间。,Flash,程序存储器,Atmega128,的存储器组织,2022/12/30,84,Flash,程序存储器,Atmega128,的存储器组织,2022/12/30,85,Atmega128,的存储器组织,SRAM,数据存储器,ATmega128,支持两,种,种不同,的,的,SRAM,配置,普通模,式,式,兼容模,式,式,2022/12/30,86,EEPROM,数据存储器,Atmega128,的存储器组织,ATmega128,包含,4K,字节的,EEPROM,。它是,作,作为一,个,个独立,的,的数据,空,空间而,存,存在的,,,,可以,按,按字节,读,读写。,EEPROM,的寿命,至,至少为,100,000,次(擦,除,除)。,EEPROM,的访问,由,由地址寄,存,存器,数据寄,存,存器和控制寄,存,存器决定。,EEPROM,的访问,寄,寄存器,位,位于,I/O,空间。,当执行,EEPROM,读操作,时,时,,CPU,会停止,工,工作,4,个周期,,,,然后,再,再执行,后,后续指,令,令;当,执,执行,EEPROM,写操作,时,时,,CPU,会停止,工,工作,2,个周期,,,,然后,再,再执行,后,后续指,令,令。,2022/12/30,87,CodeVisionAVR C,编译器,中,中,可,以,以用,eeprom,关键字,将,将全局,变,变量分,配,配至,EEPROM,中,如,:,:,eeprominta;,也可以,在,在定义,时,时对变,量,量初始,化,化,如,:eeprominta=1;,CodeVisionAVR C,编译器,中,中还可,以,以将数,组,组、字,符,符串、,结,结构体,分,分配至,EEPROM,中,如,:,:,eepromchar a4=,0,1,2,3,;/,数组,Chareeprom*,ptr_to_eeprom,”,this is placedinEEPROM,”,;/,字符串,Eepromstructa,char b; intc;chare15;,f;,在,CodeVisionAVR C,编译器,中,中可以,直,直接访,问,问,EEPROM,中的全,局,局变量,,,,与访,问,问,SRAM,中的数,据,据方式,相,相同。,EEPROM,数据存储器,Atmega128,的存储器组织,2022/12/30,88,EEPROM,数据存储器,Atmega128,的存储器组织,EEPROM,地址寄存器,EEARH,和,EEARL,89,EEPROM,数据存储器,Bits15.12 Res:,保留,保留位,读,操,操作返回值,为,为零。在写,数,数据时要写,入,入,0,以保证与未,来,来产品的兼,容,容。,Bits11.0, EEAR11.0: EEPROM,地址,EEARH,和,EEARL,指定了,4K,字节的,EEPROM,空间。,EEPROM,的地址是线,性,性的,从,0,到,4096,。,EEAR,的初始值没,有,有定义。在,访,访问,EEPROM,之前必须为,其,其赋予正确,的,的数据。,2022/12/30,90,EEPROM,数据存储器,EEPROM,数据寄存器,EEDR,Bits7.0, EEDR7.0:EEPROM,数据,对于,EEPROM,写操作,,EEDR,是需要写到,EEAR,单元的数据,;,;对于,EEPROM,读操作,,EEDR,是从地址,EEAR,读取的数据,。,。,2022/12/30,91,EEPROM,数据存储器,EEPROM,控制寄存器,EECR,Bits7.4, Res:,保留,保留位,读,操,操作返回值,为,为零。,Bit 3, EERIE:EEPROM,就绪中断使,能,能,若,SREG,的,I,为,1 ,,则置位,EERIE,使能,EEPROM,就绪中断。,清,清零,EERIE,则禁止此中,断,断。当,EEWE,清零时,EEPROM,就绪中断即,可,可发生。,Bit 2, EEMWE:EEPROM,主机写使能,EEMWE,决定设置,EEWE,为,1 ,是否可以启,动,动,EEPROM,写操作。当,EEMWE,为,1 ,时,在,4,个时钟周期,内,内置位,EEWE,将把数据写,入,入,EEPROM,的指定地址,;,;若,EEMWE,为,0 ,,则,EEWE,不起作用。,EEMWE,置位后,4,个周期,硬,件,件对其清零,。,。,2022/12/30,92,EEPROM,数据存储器,EEPROM,控,制,制,寄,寄,存,存,器,器,EECR,Bit1,EEWE:EEPROM,写,使,使,能,能,当,EEPROM,数,据,据,和,和,地,地,址,址,设,设,置,置,好,好,之,之,后,后,,,,,需,需,置,置,位,位,EEWE,以,便,便,将,将,数,数,据,据,写,写,入,入,EEPROM,。,此,此,时,时,EEMWE,必,须,须,置,置,位,位,,,,,否,否,则,则,EEPROM,写,操,操,作,作,将,将,不,不,会,会,发,发,生,生,。,。,Bit0,EERE:EEPROM,读,使,使,能,能,当,EEPROM,地,址,址,设,设,置,置,好,好,之,之,后,后,,,,,需,需,置,置,位,位,EERE,以,便,便,将,将,数,数,据,据,读,读,入,入,EEAR,。,EEPROM,数,据,据,的,的,读,读,取,取,只,只,需,需,要,要,一,一,条,条,指,指,令,令,,,,,且,且,无,无,需,需,等,等,待,待,。,。,读,读,取,取,EEPROM,时,CPU,要,停,停,止,止,4,个,时,时,钟,钟,周,周,期,期,。,。,用,用,户,户,在,在,读,读,取,取,EEPROM,时,应,应,该,该,检,检,测,测,EEWE,。,如,如,果,果,一,一,个,个,写,写,操,操,作,作,正,正,在,在,进,进,行,行,,,,,就,就,无,无,法,法,读,读,取,取,EEPROM,,,也,也,无,无,法,法,改,改,变,变,寄,寄,存,存,器,器,EEAR,。,2022/12/30,93,voidEEPROMwrite(intlocation,unsignedchardatabyte),unsignedcharsavedSREG;,EEAR=location;/setaddress,EEDR=databyte;/setdata,savedSREG=SREG;/keepsettingsoitcanberestored,CLI();/disableinterrupts,EECR|=BIT(EEMWE);/setwriteenablebit,EECR|=BIT(EEWE);/setwritebit,SREG=savedSREG;/restoreSREG,EEAR=0;,EEPROM,数据存储器,向,EEPROM,中写,数,数据,程,程序,2022/12/30,94,unsignedcharEEPROMread(intlocation),EEAR=location;/setaddress,EECR|=
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!