电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc

上传人:西安人 文档编号:5026085 上传时间:2020-01-29 格式:DOC 页数:15 大小:692.50KB
返回 下载 相关 举报
电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc_第1页
第1页 / 共15页
电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc_第2页
第2页 / 共15页
电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc_第3页
第3页 / 共15页
电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc_第4页
第4页 / 共15页
电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc》由会员分享,可在线阅读,更多相关《电子技术课程设计实验报告-ATMEGA16寄存器的作用.doc(15页珍藏版)》请在三一文库上搜索。

1、本科学生设计性实验报告学号 姓名 学院 信息学院 专业、班级 计科09级A班 实验课程名称 电子技术课程设计 教师及职称 开课学期 2011 至 2012 学年 第一 学期 填报时间 2011 年 11 月 14 日云南师范大学教务处编印一、实验设计方案实验序号2实验名称ATMEGA16寄存器的作用实验时间2011/9/12011/10/10实验室多媒体教室2小组成员1实验目的详细说明PORTA、DDRA、PINA、SREG、MCUCR、GICR、TCCR1B、TCNT1H、TCNT1L、TIMSK、ADCSRA、ADMUX、ACSR、UCSRA、UCSRB、UCSRC、UBRRL、UBRRH

2、、UCSRB等十九个特殊功能寄存器的作用; 说明必须详细到每一位的作用,并结合C语言进行举例说明; 范例:名称:PORTA功能:端口A的输出状态设置说明:该寄存器共有8位,从低到高分别是PORTA0、PORTA1、PORTA2、PORTA4、PORTA5、PORTA6、PORTA7。其中:PORTA0,表示A端口第0号引脚的电平高低,当进行如“PORTA|=0x01”的操作时,A端口第0号引脚呈高电平;当进行如“PORTA&=0xfe”的操作时,A端口第0号引脚呈低电平。PORTA1,表示2实验原理、实验流程或装置示意图实验原理:单片机主要是作为控制部分的核心部件。它是一种在线式实时控制计算机

3、,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性。由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言(近几年,C语言也开始广被应用),它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。 目前最常用的单片机为MCS-51,是由美国INTEL公司(生产CPU的英特尔)生产的,89C51是这几年在

4、我国非常流行的单片机,它是由美国ATMEL公司开发生产的,其内核兼容MCS-51单片机。实验流程:查阅ATMEGA16单片机的数据手册(DATASHEET),写出特殊功能寄存器的作用,并加以说明;学习并总结以上特殊寄存器的作用。装置示意图:3实验设备及材料ATMEGA16单片机的数据手册(DATASHEET);PC机、浏览器;相关的书籍。4实验方法步骤及注意事项试验方法步骤:查阅ATMEGA16单片机的数据手册(DATASHEET),写出特殊功能寄存器的作用,并加以说明;在相关网络以及书籍上查找此寄存器,并补充以上总结的不足之处;学习并总结以上特殊寄存器的作用。注意事项:多找相关方面的资料对照

5、,补充其不足,修改总结的错误之处;尽量找相关寄存器的实物观察。5实验数据处理方法总结出相关的资料后,再请相关的老师给予指导。6参考文献ATMEGA16单片机的数据手册(DATASHEET)郭天祥老师的51单片机C语言教程单片机快速入门51单片机开发与应用技术详解电子工业出版社教师对实验设计方案的意见签名: 年 月 日二、实验报告1实验现象与结果名称:PORTA功能:端口A的输出状态设置说明:该寄存器共有8位,从低到高分别是PORTA0、PORTA1、PORTA2、PORTA4、PORTA5、PORTA6、PORTA7。PORTA0,表示A端口第0号引脚的电平高低,当进行如“PORTA|=0x0

6、1”的操作时,A端口第0号引脚呈高电平;当进行如“PORTA&=0xfe”的操作时,A端口第0号引脚呈低电平;PORTA=0xFF;/全为1,全输出高电平 PORTA=0;/全为0,全输出低电平;PORTA1,PORTA2,PORTA3,PORTA4,PORTA5,PORTA 8 ,位宽的双向端口。它所对应的数据方向寄存器是TRISA (寄存器3-2)。将TRISA 的一个位置1(= 1)可以将相应的PORTA 引脚配置为输入(即,禁止输出驱动器)。清零TRISA 的一个位(= 0)可将相应的PORTA 引脚配置为输出(即,将输出锁器的内容输出到所选择的引脚)读PORTA 寄存器,读的是引脚的

7、状态而写该寄存器将会写入端口锁存器。所有写操作都是读修改写操作。因此,写一个端口就意味着先读该端口;即使在PORTA 引脚用作模拟输入时, TRISA 寄存器(寄存器3-2)仍然控制PORTA; 引脚的方向。当将PORTA 引脚用作模拟输入时,用户必须确保TRISA 寄存器中的位保持为置1 状态。 配置为模拟输入的I/O 引脚总是读为0。名称:DDRA功能:DDRA表示A端口的方向寄存器,用来选择引脚的方向,控制端口是输入还是输出,某位为1配置为输出,某位为0配置为输入说明:DDRA=0xFF;/全作输出,设置一次即可DDRA=0;/全作输入,设置一次即可。名称:PINA功能:从引脚读输入信号

8、,无论DDRn为何值,都可以通过xPINn获得端口n的外部电平说明:a=PINA;/读A口。不论何时都可以读PINA来获得端口电平,不过因为锁存会有延时。名称:SREG功能:状态寄存器说明:该寄存器共有8位,从低到高分别是C、Z、N、V、S、H、T、I。I:全局中断使能位。 在I置位后,单独的中断使能由不同的中断寄存器控制。若I为0,则禁止中断。名称:MCUCR功能:MCU 控制寄存器包含中断触发控制位与通用 MCU 功能说明:该寄存器共有8位,从低到高分别是ISC00、ISC01、ISC10、ISC11、SM0、SM1、SE、SM2. SE:MCU休眠使能位: SM1SM0:MCU休眠模式选

9、择 SM2 SM1 SM0 休眠模式 0 0 0 空闲 0 0 1 ADC 噪声抑制模式 0 1 0 掉电模式 0 1 1 省电模式 1 0 0 保留 1 0 1 保留 1 1 0 Standby(1) 模式 1 1 1 扩展Standby(1) 模式 ISC11ISC10:外部中断1的中断检测方式:ISC11 ISC10 INT1中断 0 0 低电平中断 0 1 INT1 引脚上任意的逻辑电平变化都将引发中断 1 0 下降沿中断 1 1 上升沿中断 ISC01ISC00:外部中断0的中断检测方式:ISC01 ISC00 INT0中断 0 0 低电平中断 0 1 INT1 引脚上任意的逻辑电平

10、变化都将引发中断 1 0 下降沿中断 1 1 上升沿中断 名称:GICR功能:通用中断控制寄存器说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 INT1 INT0 INT2 - - - IVSEL IVCE INT1:使能外部中断请求1 INT0:使能外部中断请求0 INT2:使能外部中断请求2名称:TCCR1B功能:TCCR1B用来定时说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 ICNC1 ICES1 WGM13 WGM12 CS12 CS11 CS

11、10 ICNC1: 入捕捉噪声抑制器 置位ICNC1 将使能输入捕捉噪声抑制功能。此时外部引脚ICP1 的输入被滤波。其作用是从ICP1 引脚连续进行4 次采样。如果4 个采样值都相等,那么信号送入边沿检测器。因此使能该功能使得输入捕捉被延迟了4 个时钟周期。ICES1: 输入捕捉触发沿选择 该位选择使用ICP1 上的哪个边沿触发捕获事件。ICES 为0” 选择的是下降沿触发输入捕捉; ICES1 为1” 选择的是逻辑电平的上升沿触发输入捕捉。 按照ICES1 的设置捕获到一个事件后,计数器的数值被复制到ICR1 寄存器。捕获事件还会置为ICF1。如果此时中断使能,输入捕捉事件即被触发。 当I

12、CR1 用作TOP 值( 见TCCR1A 与TCCR1B 寄存器中WGM13:0 位的描述) 时,ICP1与输入捕捉功能脱开,从而输入捕捉功能被禁用。Bit 5 保留位 :该位保留。为保证与将来器件的兼容性,写TCCR1B 时,该位必须写入0”。 WGM13:2: 波形发生模式 :同TCCR1A 寄存器中的描述。 CS12:0: 时钟选择 :这3 位用于选择T/C 的时钟源:CS02 CS01 CS00 说 明 0 0 0 无时钟源 0 0 1 clkI/O/1 0 1 0 clkI/O/8 0 1 1 clkI/O/64 1 0 0 clkI/O/256 1 0 1 clkI/O/1024

13、1 1 0 外部T1 1 1 1 外部T1 名称:TCNT1H功能:计数寄存器,T1的计数寄存器是16位的,高字节说明:该寄存器共有8位,从低到高分别bit7,bit6,bit5,bit4,bit3,bit2, bit1,bit0。FOC2仅在WGM21:0指明非PWM模式时才有效。但是,为了保证与未来器件的兼容性,使用PWM时,写TCCR2要对其清零。写1后,波形发生器将立即进行比较操作。比较匹配输出引脚OC2将按照COM21:0的设置输出相应的电平。要注意FOC2类似一个锁存信号,真正对强制输出比较起作用的是COM21:0的设置。FOC2不会引发任何中断,也不会在使用OCR2作为TOP的C

14、TC模式下对定时器进行清零。读FOC2的返回值永远为0。bit6,bit3WGM21:0:波形产生模式。例TCNT1H=0X85。名称:TCNT1L功能:计数寄存器,T1的计数寄存器是16位的,低字节说明:在PWM 输出之前,应先向定时器/ 计数器1 的16 位寄存器TCNT1H 和TCNT1L 赋计数最大值。当PWM 为8 位时,应赋0x00FF ,此时PWM 的频率为所选时钟的1/ 510 ;当PWM 为9 位时,应赋0x01FF ,此时PWM 的频率为所选时钟的1/1022 ;当PWM 为10 位时,应赋0x01FF ,此时PWM 的频率为所选时钟的1/ 2046. 最后,通过对定时器/

15、 计数器1 输出比较寄存器OCR1AH和OCR1AL 赋比较值来输出PWM ,改变输出比较寄存器中的比较值,即可改变PWM 的占空比。例如 :TCNT1L=0XED;/(65535-CPU频率/分频系数)为1S一次中断;TCNT1L=0XED。名称:TIMSK功能:T/C中断屏蔽寄存器说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 OCIE2 TOIE2 TICIE1 OCIE1A OCIE1B TOIE1 OCIE0 TOIE0 TOIE0: T/C0 溢出中断使能 当TOIE0 和状态寄存器的全局中断使能位I 都为”1”

16、 时,T/C0 的溢出中断使能。当T/C0发生溢出,即TIFR 中的TOV0 位置位时,中断服务程序得以执行。 OCIE0: T/C0 输出比较匹配中断使能 当OCIE0 和状态寄存器的全局中断使能位I 都为”1” 时,T/C0 的输出比较匹配中断使能。当T/C0 的比较匹配发生,即TIFR 中的OCF0 置位时,中断服务程序得以执行。 TOIE1: T/C1 溢出中断使能 当TOIE1 和状态寄存器的全局中断使能位I 都为”1” 时,T/C1 的溢出中断使能。当T/C1发生溢出,即TIFR 中的TOV1 位置位时,中断服务程序得以执行 OCIE1B: T/C1 输出比较 B 匹配中断使能 当

17、该位被设为1”,且状态寄存器中的I 位被设为1” 时,使能T/C1 的输出比较B 匹配中断使能。一旦TIFR 上的OCF1B 置位,CPU 即开始执行T/C1 输出比较B 匹配中断服务程序。 OCIE1A: 输出比较 A 匹配中断使能 当该位被设为1”,且状态寄存器中的I 位被设为1” 时, T/C1 的输出比较A 匹配中断使能。一旦TIFR 上的OCF1A 置位,CPU 即开始执行T/C1 输出比较A 匹配中断服务程序。 TICIE1: T/C1 输入捕捉中断使能 当该位被设为1”,且状态寄存器中的I 位被设为1” 时, T/C1 的输入捕捉中断使能。一旦TIFR 的ICF1 置位,CPU

18、即开始执行T/C1 输入捕捉中断服务程序。 TOIE2: T/C2 溢出中断使能 当TOIE2 和状态寄存器的全局中断使能位I 都为”1” 时,T/C2 的溢出中断使能。当T/C2发生溢出,即TIFR 中的TOV2 位置位时,中断服务程序得以执行。 OCIE2: T/C2 输出比较匹配中断使能 当OCIE2 和状态寄存器的全局中断使能位I 都为”1” 时,T/C2 的输出比较匹配中断使能。当T/C2 的比较匹配发生,即TIFR 中的OCF2 置位时,中断服务程序得以执行。名称:ADCSRA功能:ADC 控制和状态寄存器A说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit

19、4 bit3 bit2 bit1 bit0 ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 ADEN: ADC使能 ADEN置位即启动ADC,否则ADC功能关闭。在转换过程中关闭ADC将立即中止正在进行的转换。 ADSC: ADC开始转换 在单次转换模式下,ADSC置位将启动一次ADC转换。在连续转换模式下,ADSC置位将启动首次转换。第一次转换(在ADC启动之后置位ADSC,或者在使能ADC的同时置位ADSC)需要25个ADC 时钟周期,而不是正常情况下的13 个。第一次转换执行ADC初始化的工作。在转换进行过程中读取ADSC的返回值为1”,直到转换结

20、束。ADSC 清零不产生任何动作。 ADATE: ADC自动触发使能 ADATE置位将启动ADC自动触发功能。触发信号的上跳沿启动ADC转换。触发信号源通过SFIOR寄存器的ADC触发信号源选择位ADTS设置。 ADIF: ADC中断标志 在ADC转换结束,且数据寄存器被更新后, ADIF置位。如果ADIE及SREG中的全局中断使能位I也置位,ADC 转换结束中断服务程序即得以执行,同时ADIF硬件清零。此外,还可以通过向此标志写1来清ADIF。要注意的是,如果对ADCSRA进行读修改写操作,那么待处理的中断会被禁止。这也适用于SBI及CBI指令。 ADIE: ADC 中断使能 若ADIE及S

21、REG 的位I置位, ADC转换结束中断即被使能。 ADPS2:0: ADC 预分频器选择位 由这几位来确定XTAL 与ADC 输入时钟之间的分频因子。ADPS2 ADPS1 ADPS0 分频因子 名称:ADMUX功能:ADC 多工选择寄存器,模数转换器说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 REFS1 REFS0 ADLAR MUX4 MUX3 MUX2 MUX1 MUX0 REFS1:0: 参考电压选择 通过这几位可以选择参考电压。如果在转换过程中改变了它们的设置,只有等到当前转换结束(ADCSRA寄存器的ADI

22、F置位)之后改变才会起作用。如果在AREF引脚上施加了外部参考电压,内部参考电压就不能被选用了。REFS1 REFS0 参考电压选择 0 0 AREF, 0 1 AVCC, 1 0 保留 1 1 2.56V ADLAR: ADC 转换结果左对齐 ADLAR影响ADC转换结果在ADC数据寄存器中的存放形式。ADLAR置位时转换结果为左对齐,否则为右对齐。ADLAR 的改变将立即影响ADC 数据寄存器的内容,不论是否有转换正在进行。MUX4:0: 模拟通道与增益选择位 通过这几位的设置,可以对连接到ADC 的模拟输入进行选择。也可对差分通道增 益进行选择。如果在转换过程中改变这几位的值,那么只有到

23、转换结束 (ADCSRA 寄存器的ADIF 置位) 后新的设置才有效。MUX4.0 单端输入正差MUX4.0 单端输入正差MUX4.0 分输入负差分输入增益 分输入负差分输入增益 00000 ADC0 ADC1 ADC2 ADC3 ADC4 ADC5 ADC6 ADC7 00001 00010 00011 00100 00101 00110 00111 ADC0 N/A ADC0 ADC0 10x 01001 ADC1 ADC0 10x 01010(1) ADC0 ADC0 200x 01011(1) ADC1 ADC0 200x 01100 ADC2 ADC2 10x 01101 ADC3

24、ADC2 10x 01110(1) ADC2 ADC2 200x 01111(1) ADC3 ADC2 200x 10000 ADC0 ADC1 1x 10001 ADC1 ADC1 1x 10010 ADC2 ADC2 ADC1 10011 ADC3 ADC1 1x 10100 ADC4 ADC1 1x 10101 ADC5 ADC1 1x 10110 ADC6 ADC1 1x 10111 ADC7 ADC1 1x 11000 ADC0 ADC2 1x 11001 ADC1 ADC2 1x 11010 ADC2 ADC2 1x 11011 ADC3 ADC2 1x 11100 ADC4 AD

25、C2 1x 11101 ADC5 ADC2 ADC2 1x 11110 1.22V N/A 11111 0V 名称:ACSR功能:模拟比较器控制和状态寄存器说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 ACD ACBG ACO ACI ACIE ACIC ACIS1 ACIS0 ACD: 模拟比较器禁用。ACD置位时,模拟比较器的电源被切断。可以在任何时候设置此位来关掉模拟比较器。这可以减少器件工作模式及空闲模式下的功耗。改变ACD位时,必须清零ACSR寄存器的ACIE位来禁止模拟比较器中断。否则ACD改变时可能会产生中断

26、。ACBG: 选择模拟比较器的能隙基准源 ACBG置位后,模拟比较器的正极输入由能隙基准源所取代。否则,AIN0连接到模拟比较器的正极输入。 ACO: 模拟比较器输出 模拟比较器的输出经过同步后直接连到ACO。同步机制引入了1-2 个时钟周期的延时。 ACI: 模拟比较器中断标志 当比较器的输出事件触发了由ACIS1及ACIS0定义的中断模式时,ACI置位。如果ACIE和SREG寄存器的全局中断标志I也置位,那么模拟比较器中断服务程序即得以执行,同时ACI被硬件清零。ACI也可以通过写1”来清零。 ACIE: 模拟比较器中断使能 当ACIE位被置1”且状态寄存器中的全局中断标志I也被置位时,模

27、拟比较器中断被激活。否则中断被禁止。 ACIC: 模拟比较器输入捕捉使能 ACIC置位后允许通过模拟比较器来触发T/C1的输入捕捉功能。此时比较器的输出被直接连接到输入捕捉的前端逻辑,从而使得比较器可以利用T/C1输入捕捉中断逻辑的噪声抑制器及触发沿选择功能。ACIC为0”时模拟比较器及输入捕捉功能之间没有任何联系。为了使比较器可以触发T/C1 的输入捕捉中断,定时器中断屏蔽寄存器TIMSK的TICIE1必须置位。 ACIS1, ACIS0: 模拟比较器中断模式选择 这两位确定触发模拟比较器中断的事件。Table79给出了不同的设置。ACIS1 ACIS0 中断模式 0 0 比较器输出变化即可

28、触发中断 0 1 保留 1 0 比较器输出的下降沿产生中断 1 1 比较器输出的上升沿产生中断 需要改变ACIS1/ACIS0时,必须清零ACSR寄存器的中断使能位来禁止模拟比较器中断。否则有可能在改变这两位时产生中断。名称:UCSRA功能:USART 控制和状态寄存器A(说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 RXC TXC UDRE FE DOR PE U2X MPCM RXC: USART 接收结束 接收缓冲器中有未读出的数据时RXC 置位,否则清零。接收器禁止时,接收缓冲器被刷新,导致RXC 清零。RXC 标

29、志可用来产生接收结束中断( 见对RXCIE 位的描述)。 TXC: USART 发送结束 发送移位缓冲器中的数据被送出,且当发送缓冲器 (UDR) 为空时TXC 置位。执行发送结束中断时TXC 标志自动清零,也可以通过写1 进行清除操作。TXC 标志可用来产生发送结束中断( 见对TXCIE 位的描述)。 UDRE: USART 数据寄存器空 UDRE标志指出发送缓冲器(UDR)是否准备好接收新数据。UDRE为1说明缓冲器为空,已准备好进行数据接收。UDRE标志可用来产生数据寄存器空中断(见对UDRIE位的描述)。复位后UDRE 置位,表明发送器已经就绪。 FE: 帧错误 如果接收缓冲器接收到的

30、下一个字符有帧错误,即接收缓冲器中的下一个字符的第一个停止位为0,那么FE 置位。这一位一直有效直到接收缓冲器(UDR) 被读取。当接收到的停止位为1 时, FE 标志为0。对UCSRA 进行写入时,这一位要写0。 DOR: 数据溢出 数据溢出时DOR 置位。当接收缓冲器满( 包含了两个数据),接收移位寄存器又有数据,若此时检测到一个新的起始位,数据溢出就产生了。这一位一直有效直到接收缓冲器 (UDR) 被读取。对UCSRA 进行写入时,这一位要写0。 PE: 奇偶校验错误 当奇偶校验使能(UPM1 = 1),且接收缓冲器中所接收到的下一个字符有奇偶校验错误时UPE 置位。这一位一直有效直到接

31、收缓冲器 (UDR) 被读取。对UCSRA 进行写入时,这一位要写0。 U2X: 倍速发送 这一位仅对异步操作有影响。使用同步操作时将此位清零。此位置1可将波特率分频因子从16降到8,从而有效的将异步通信模式的传输速率加倍。 MPCM: 多处理器通信模式 设置此位将启动多处理器通信模式。MPCM置位后,USART 接收器接收到的那些不包含地址信息的输入帧都将被忽略。发送器不受MPCM设置的影响。名称:UCSRB功能:USART控制和状态寄存器B说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 RXCIE TXCIE UDRIE

32、 RXEN TXEN UCSZ2 RXB8 TXB8 RXCIE: 接收结束中断使能 置位后使能RXC中断。当RXCIE为1,全局中断标志位SREG置位,UCSRA寄存器的RXC亦为1时可以产生USART接收结束中断。 TXCIE: 发送结束中断使能 置位后使能TXC中断。当TXCIE为1,全局中断标志位SREG置位,UCSRA寄存器的TXC亦为1时可以产生USART发送结束中断。 UDRIE: USART 数据寄存器空中断使能 置位后使能UDRE中断。当UDRIE 为1,全局中断标志位SREG置位,UCSRA寄存器的UDRE 亦为1时可以产生USART数据寄存器空中断。 RXEN: 接收使能

33、 置位后将启动USART接收器。RxD 引脚的通用端口功能被USART功能所取代。禁止接收器将刷新接收缓冲器,并使 FE、DOR及PE标志无效。 TXEN: 发送使能 置位后将启动将启动USART发送器。TxD引脚的通用端口功能被USART功能所取代。TXEN 清零后,只有等到所有的数据发送完成后发送器才能够真正禁止,即发送移位寄存器与发送缓冲寄存器中没有要传送的数据。发送器禁止后,TxD引脚恢复其通用I/O功能。 UCSZ2: 字符长度 UCSZ2与UCSRC寄存器的UCSZ1:0结合在一起可以设置数据帧所包含的数据位数(字符长度)。 RXB8: 接收数据位8 对9位串行帧进行操作时,RXB

34、8 是第9个数据位。读取UDR包含的低位数据之前首先要读取RXB8。 TXB8: 发送数据位8 对9位串行帧进行操作时,TXB8是第9个数据位。写UDR之前首先要对它进行写操作。名称:UCSRC功能:USART控制和状态寄存器C说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 URSEL UMSEL UPM1 UPM0 USBS UCSZ1 UCSZ0 UCPOL UCSRC寄存器与UBRRH寄存器共用相同的I/O地址。对该寄存器的访问。URSEL: 寄存器选择 通过该位选择访问UCSRC寄存器或UBRRH寄存器。当读UCSR

35、C时,该位为1 ;当写UCSRC时,URSEL为1。 UMSEL: USART 模式选择 通过这一位来选择同步或异步工作模式。UMSEL 模式 0 异步操作 1 同步操作 UPM1:0: 奇偶校验模式 这两位设置奇偶校验的模式并使能奇偶校验。如果使能了奇偶校验,那么在发送数据,发送器都会自动产生并发送奇偶校验位。对每一个接收到的数据,接收器都会产生一奇偶值,并与UPM0 所设置的值进行比较。如果不匹配,那么就将UCSRA 中的PE 置位。UPM1 UPM0 奇偶模式 0 0 禁止 0 1 保留 1 0 偶校验 1 1 奇校验 USBS: 停止位选择 通过这一位可以设置停止位的位数。接收器忽略这

36、一位的设置USBS 停止位位数 0 1 1 2 UCSZ1:0: 字符长度 UCSZ1:0与UCSRB寄存器的 UCSZ2结合在一起可以设置数据帧包含的数据位数(字符长度)。UCSZ2 UCSZ1 UCSZ0 字符长度 0 0 0 5 0 0 1 6 0 1 0 7 0 1 1 8 1 0 0 保留 1 0 1 保留 1 1 0 保留 1 1 1 9 UCPOL: 时钟极性 这一位仅用于同步工作模式。使用异步模式时,将这一位清零。UCPOL 设置了输出数据的改变和输入数据采样,以及同步时钟XCK 之间的关系。UCPOL 发送数据的改变(TxD引脚的输出) 接收数据的采样(RxD 引脚的输入)

37、0 XCK上升沿XCK 下降沿 1 XCK下降沿XCK 上升沿 名称:UBRRL 和UBRRH功能:USART波特率寄存器说明:该寄存器共有8位,从低到高分别是bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 URSEL UBRR11:8 UBRR7:0 UCSRC寄存器与UBRRH寄存器共用相同的I/O地址。对该寄存器的访问。 URSEL: 寄存器选择 通过该位选择访问UCSRC 寄存器或UBRRH 寄存器。当读UBRRH时,该位为0;当写UBRRH时, URSEL为0。 Bit 14:12 保留位 这些位是为以后的使用而保留的。为了与以后的器件兼容

38、,写UBRRH时将这些位清零。 UBRR11:0: USART 波特率寄存器 这个12位的寄存器包含了USART的波特率信息。其中UBRRH包含了USART波特率高4 位,UBRRL包含了低8位。波特率的改变将造成正在进行的数据传输受到破坏。写UBRRL 将立即更新波特率分频器。名称:UCSRB功能:USART控制和状态寄存器B说明:该寄存器共有8位,从低到高分别是bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 RXCIE TXCIE UDRIE RXEN TXEN UCSZ2 RXB8 TXB8 RXCIE: 接收结束中断使能 置位后使能RXC中断。当RXCI

39、E为1,全局中断标志位SREG置位,UCSRA寄存器的RXC亦为1时可以产生USART接收结束中断。 TXCIE: 发送结束中断使能 置位后使能TXC中断。当TXCIE为1,全局中断标志位SREG置位,UCSRA寄存器的TXC亦为1时可以产生USART发送结束中断。 UDRIE: USART 数据寄存器空中断使能 置位后使能UDRE中断。当UDRIE 为1,全局中断标志位SREG置位,UCSRA寄存器的UDRE 亦为1时可以产生USART数据寄存器空中断。 RXEN: 接收使能 置位后将启动USART接收器。RxD 引脚的通用端口功能被USART功能所取代。禁止接收器将刷新接收缓冲器,并使 F

40、E、DOR及PE标志无效。 TXEN: 发送使能 置位后将启动将启动USART发送器。TxD引脚的通用端口功能被USART功能所取代。TXEN 清零后,只有等到所有的数据发送完成后发送器才能够真正禁止,即发送移位寄存器与发送缓冲寄存器中没有要传送的数据。发送器禁止后,TxD引脚恢复其通用I/O功能。 UCSZ2: 字符长度 UCSZ2与UCSRC寄存器的UCSZ1:0结合在一起可以设置数据帧所包含的数据位数(字符长度)。 RXB8: 接收数据位8 对9位串行帧进行操作时,RXB8 是第9个数据位。读取UDR包含的低位数据之前首先要读取RXB8。 TXB8: 发送数据位8 对9位串行帧进行操作时

41、,TXB8是第9个数据位。写UDR之前首先要对它进行写操作。2对实验现象、实验结果的分析及其结论实验还是相当成功的;对这19个特殊功能的寄存器有了一定的了解;由于没有实物可以用来操作,不能对着19个特殊寄存器的功能有准确、全面、深刻的认识。所以还有写认识不到位的地方。可能资料有限,有的地方也不能做太详尽的阐说。三、实验总结1本次实验成败及其原因分析此次试验是成功的,但有些细节导致完成得有些波折。通过此次实验,虽然对这这19个特殊功能的寄存器有了一定的了解,但是却称不上透彻;没有结合实物操作,导致理解不透彻;因为没有实际接触过单片机的特殊寄存器,实验开始时总找不到切入点,导致试验时间太长;因为不

42、知道要准备些什么,导致实验准备不是很充分实验过程中没有一个整体的把握,因为实验前没有对单片机有一个细致全面的了解。2本实验的关键环节及改进措施关键环节:看不懂的时候千万要查查单词意思,还有找相关书籍看看;要对单片机有一定能的了解;最后在去非常细致的去理解每一个寄存器的功能作用;相关单片机寄存器的介绍方面的书要多去阅读; ATMEGA16单片机的数据手册(DATASHEET)要仔细阅读;改进措施:对单片机整体的了解时最好准备一块单片机,边做边了解,这样了解更深刻、全面、细致、准确;理解每一个寄存器的功能作用的时候须非常细致要对所查找到的资料细细分析,认真总结;对很重要的ATMEGA16单片机的数据手册(DATASHEET)要很细致的去了解学习;对相关方面的书的选择与阅读上要去粗取精,选择权威书籍;指导教师评语及评分:签名: 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1